/* --------------------------------------------------------------------------------
		Global Styles
-------------------------------------------------------------------------------- */

body {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	font-size: 16px;
	line-height: 1.55;
	color: #606060;
	background: #fff;
	font-family: 'Open Sans', Arial, sans-serif;
	text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

/* ----- Typography -------------------- */

p {
	font-size: 16px;  
	line-height: 1.6;
	margin:10px;
}

a {
	color: #337ab7; 
	text-decoration: none;
}

a:focus {
    outline: dotted thin;
    outline: -webkit-focus-ring-color auto 5px;
    outline-offset: -2px;
}

a:focus, a:hover {
    color: #23527c;
    text-decoration: none;
}

h1, h2, h3, h4, h5, h6, .h2 {
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 500;
	color: #000;
	margin: 10px 0 20px 0;
}
.home h1, .home h2, .home h3 {
	text-transform: none;
	color: #333;
} 

h1 {
	text-align: center;
	display: flex;
	width: 100%;
	justify-content: center;
	align-items: center; 
	font-size: 2.4rem;
	font-family: "Parisienne", cursive;
	letter-spacing: .05em;
}

h2, .h2 { 
	font-size: 1.25rem; 
	text-align: center;
	margin: 10px;
	width: 100%;
	justify-content: center;
	align-items: center; 
	color: #000;
	margin: 10px 0 20px 0;
	display: flex;
}  /* ~32px */
.home h2, .home .h2 {
	font-size: 22px;
}
/*h1:before, 
h1:after,
h2:before,
h2:after {   
	content: '' !important;
    border-top: 2px solid !important;
    margin: 0 20px 0 0 !important;
    flex: 1 0 20px !important;
}

h1:after,
h2:after {   
    margin: 0 0 0 20px !important;
} */
h3 {
	font-size: 1.125rem;
	display: flex;
	width: 100%;
	justify-content: center; 
	align-items: center;
}  /* ~26px */

h3:before,
h3:after {
	content: '';
	border-top: 2px solid;
	margin: 0 20px 0 0;
	flex: 1 0 20px;
} 

h3:after {
	margin: 0 20px 0 20px; 
}

h4 {
	font-size: 1.3rem;
}  /* ~21px */

h5 {
	font-size: 1.1rem;
}  /* ~18px */

h6 {
	font-size: 1rem;
}  /* ~16px */


/* ----- Elements -------------------- */
hr {
	height: 0;
    margin: 20px 0;
    border-top: 1px solid #eee;
	opacity: 1;
}

.img-responsive {
	margin-left: 15px;
}

.btn {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    letter-spacing: 0.5px;
}
.btn-md {
    background: #59774b;
    color: #000;
    border: 1px solid #59774b;
    border-radius: 4px;
    text-transform: uppercase;
}
.btn-md:hover {
    background: #59774b;
    color: #fff;
    border: 1px solid #60061D;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
}

body .btn-primary, 
.btn-default,
body .btn-lg {
    background: #fff;
    color: #000;
    border-radius: 0px;
    border: 1px solid #000;
	font-size: 14px;
	width: 100%;
	max-width: 185px;
	padding: 10px 15px;
}
.popup-banner {
    padding: 20px;
    color: #fff;
    text-align: center;
    background: #59774b;
    margin-top: 48px;
}
.blank-space {
	margin-top: 50px;
}
.hentry .entry-content a.btn {
	text-decoration: none;
}

.btn-primary:hover {
    background: #59774b;
    border: 1px solid #59774b;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
}

.faqs {
	display: grid;
	grid-template-columns: minmax(min-content, 170px) 1fr;
	gap: 20px 0;
	text-align: left;
	max-width: 960px;
	margin: auto;
	padding: 0 20px;
}

.faqs dt,
.faqs dd {
	border-bottom: 1px solid #eee;
	padding: 0 10px;
}

.faqs dt {
	font-style: italic;
	color: #008000;
	font-weight: normal;
}

.faqs dd {
	margin-bottom: 0;
	padding-bottom: 50px;
}

body.page-template-default .faqs dd p {
	margin-left: 0;
	margin-bottom: 20px;
	margin-right: 0;
	max-width: 100%;
}

body.page-template-default .faqs dd p:last-child {
	margin-bottom: 0;
}



.hours {
	display: grid;
	grid-gap: 10px;
	grid-template-columns: auto 1fr;
	max-width: 400px;
	text-align: left;
}
/* homepage reviews */
.google-review-card,
.google-review-card * {
	box-sizing: border-box;
}

.google-review-card {
	position: relative;
	overflow: auto;
	margin: 20px 0;
	line-height: normal;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;;
	background: #FFF;
	border-radius: 3px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, .4);
}

.google-review-card-header {
	padding: 30px 20px;
}
.google-review-card-header p,
.google-review-rating p{
	display: inline-block;
	text-align: left;
}
.google-review-card-title {
	color: #555;
	font-size: 24px;
	line-height: 1;
}

.google-review-card-address {
	color: #777;
	font-size: 12px;
	line-height: 1em;
}

.google-review-card-reviews {
	max-height: 150px;
	overflow: auto;
	text-align: left;
}

.google-review-card-rating {
	color: #FCC000;
}

.google-review-card .star-container {
	position: relative;
}

.google-review-card .star-half::after {
	position: absolute;
	top: 0;
	left: 0;
	color: #FCC000;
	font-family: 'FontAwesome';
	content: '\f089';
}

.google-review-card .star-gold {
	color: #FCC000;
}

.google-review-card .star-grey {
	color: #CCC;
}

.google-review-card .google-review {
	padding: 15px;
	border-bottom: 1px solid #EEE;
}

.google-review-card .google-review:last-child {
	border: none;
}

.google-review-card .google-review-date {
	display: inline;
	padding-left: .6em;
	color: #AAA;
	font-style: italic;
}

.google-review-card-link,
.google-review-card-link:focus,
.google-review-card-link:visited,
.google-review-card-link:hover {
	display: table;
	margin-top: 20px;
	padding: 15px 30px;
	color: #FFF;
	text-decoration: none;
	background: #069;
	border-bottom: 4px solid #048;
	border-radius: 3px;
}

.google-review-card-link:hover {
	background: #006DA3;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .3);
}

.google-review-card-link-text {
	font-size: 1.2em;
	font-weight: bold;
}

.google-review-card-reviewer,
.google-review-card-reviewer:hover {
	color: #222 !important;
	font-size: 12px;
	font-weight: bold;
	text-decoration: none;
}

.google-review-card-reviewer-photo {
	float: left;
	display: block;
	width: 40px;
	margin: 0 10px 10px 0;
	display: none;
}

.google-review-card .google-review-text {
	clear: both;
	font-size: 12px;
}

.google-review-card .powered-by-google {
	width: 144px;
	height: 18px;
	margin-top: 20px;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(/images/2026/08/powered-by-google.png);
}

html.dark .powered-by-google {
	background-image: url(/assets/images/powered-by-google-dark.png);
}

@media (min-width: 540px){
	.google-review-card-header {
		float: left;
		width: 250px;
	}

	.google-review-card-reviews {
		position: absolute;
		top: 0;
		right: 0;
		left: 250px;
		bottom: 0;
		max-height: none;
		overflow: auto;
	}

	.google-review-card .google-review {
		padding: 30px 20px;
	}

	.google-review-card .google-review-card-reviewer-photo-placeholder {
		float: left;
		display: flex;
		flex-direction: column;
		justify-content: end;
		align-items: center;
		width: 40px;
		height: 40px;
		margin: 0 10px 10px 0;
		color: #FFF;
		font-size: 22px;
		font-family: arial, freesans, sans-serif;
		text-align: center;
		line-height: 40px;
		background: #c7d9fc;
		border-radius: 100px;
		overflow: hidden;
	}

	.google-review-card .google-review-card-reviewer-photo-placeholder::before {
		width: 12px;
		height: 12px;
		margin-bottom: 3px;
		content: '';
		background: #5f95fc;
		border-radius: 100px;
	}

	.google-review-card .google-review-card-reviewer-photo-placeholder::after {
		width: 26px;
		height: 16px;
		content: '';
		background: #5f95fc;
		border-radius: 10px;
	}
}
.google-review-card .google-review-text { 
   
    color: black;
}


.google-review-card-reviews {
	position: static;
	max-height: none;
}

@media (min-width: 720px){
	.google-review-card {
		height: 100%;
	}

	.google-review-card-reviews {
		position: absolute;
		height: 100%;
	}
}

.review-links {
    display: flex;
    max-width: 960px;
    margin: 40px auto;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    text-align: center;
    font-size: 20px;
}
.review-link{
    display: block;
    max-width: 280px;
    margin: 40px 0;
    color: #000;
    text-decoration: none !important;
}
.review-provider {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 150px;
    height: 150px;
    margin: auto;
    background: #FFF;
    border-radius: 1000px;
    border: 2px solid rgba(0, 0, 0, .2);
    box-shadow: 0 0 0 5px #FFF;
    transition: border .4s;
}
.review-provider-icon{
    width: 32px;
    height: 32px;
}
.review-button{
    margin-top: 10px;
    padding: 15px 30px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 500;
    text-shadow: -1px -1px 1px #004499;
    background: #0066CC;
    border-radius: 3px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .3);
}

/* ----- Page Layout -------------------- */

.col-full {
    width: 100%;
    max-width: 100%;
    margin: 0;
    box-sizing: border-box;
}
.home .col-full {
	max-width: 1400px;
	margin: auto;
	text-align: center;
	padding: 0px 20px;
}
.home .storefront-primary-navigation .col-full {
	max-width: 100%;
}
#primary {
    position: relative;
    z-index: 1;
    max-width: 1400px;
    margin: auto;
    padding-top: 30px;
	float: none;
}

/* --------------------------------------------------------------------------------
		Default Page Template
-------------------------------------------------------------------------------- */

/* ----- Main Content -------------------- */

body.page-template-default article {
	max-width: 1400px;
	margin: 0 auto;
}

body.page-template-default .entry-title {
	font-size: 36px;
}
.home article .entry-header .entry-title {
		/*font-size: clamp(28px, 4vw, 34px) !important;
		text-transform: none !important;*/
		display: none;
	}
body.page-template-default article p {
    max-width: 80%;
    margin: auto;
    margin-bottom: 1em;
    text-align: center;
}

/* body.page-template-default article h2 {
	color: #000;
    margin: 10px 0 20px 0;
	font-size: 20px;
}

body.page-template-default article h3 {
	font-size: 16px;
} */

/* --------------------------------------------------------------------------------
		Header Styles
-------------------------------------------------------------------------------- */

#masthead {
	margin-bottom: 0;
	background: #57242d;
}

.site-header {
	padding-top: 0;
	border-bottom: 1px solid rgba(0,0,0,.1);
}

/* ----- Header Notice Text -------------------- */
.header-notice-text {
    padding: 43px 40px 20px 40px;
    color: #000;
    text-align: center;
    background: #f0e7e2;
}

.header-notice-text p {
	max-width: 1160px;
	margin: auto;
	text-align: center;
	white-space: pre-line;
}

/* ----- Top Navigation -------------------- */

#top-navigation {
    color: #Fff;
    line-height: 0px;
    text-transform: uppercase;
    background-color: #000;
    font-weight: 400;
    box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
   font-size: 18px;
   height: 50px;
}

#top-navigation .wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1400px;
    margin: auto;
    align-items: center;
}

#top-navigation .address {
    padding-left: 5px;
}

#top-navigation .icon {
    color: #fff;
    font-size: 18px;
}

#top-navigation a {
    color: #fff;
}

#top-navigation .header-phone,
#top-navigation .header-contact {
	position: relative;
	left: -10px;
}

#top-navigation .header-contact .location {
	margin-right: 5px;
}

/* ----- Header Content -------------------- */

#header-content {
	max-width: 1400px;
    margin: auto;
    text-align: center;
    text-transform: uppercase;
	background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
	padding: 0 15px;
}

/* Logo */
.logo-wrapper {
	margin: 10px auto 0;
}

.woocommerce-active .site-header .site-branding {
	margin: 16px 0 16px 0;
	width: 100%;
}

.site-header .site-branding img {
	max-width: 405px;
	text-align: center;
	margin: auto;
}


/* Locations */
.menu-items {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: nowrap;
	text-align: center;
	padding: 0 15px;
	position: relative;
}

.menu-items a {
    color: #000;
    padding: 15px 13px;
}
a.menu-item.menu-user-circle {
    font-size: 18px;
}
#mobile-menu-toggle {
	font-size: 21px;
}
.header-address,
.rt-side-header {
	width: 37%;
	position: relative;
	text-align: center;
	text-transform: capitalize;
    font-size: 16px;
    line-height: 1.6;
}

.header-address:first-child {
	min-width: 255px;
}


/* Account Actions */
#mobile-nav-bar > span {
	font-size: 20px;
}

#toggle-navigation {
	display: none;
}

#toggle-search {
	padding: 15px;
}

.custom-cart-count-badge::before {
	content: '(';
}

.custom-cart-count-badge::after {
	content: ')';
}

/* Search Form */
#search-container {
	position: absolute;
	z-index: 10000;
	top: 50px;
	bottom: auto;
	width: 100%;
	left: 0px;
	border-bottom-left-radius: 3px;
	border-bottom-right-radius: 3px;
	box-shadow: 0 2px 3px rgba(0, 0, 0, .3);
	padding: 10px;
	background: #111;
}
.site-search .widget_product_search {
    margin-bottom: 0px;
}
.site-search {
	margin-bottom: 0px;
}
.woocommerce-active .site-header .site-search {
	width: 100%;
	float: none;
	margin: 0;
	clear: both;
}


/* ----- Primary Navigation -------------------- */
#primary-nav-wrapper {
	border-top: 1px solid rgba(0, 0, 0, .1);
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    background: #000;
    display: flex;
}

#site-navigation {
	display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    cursor: default;
    margin: auto;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
	min-height: 50px;
	line-height: 50px;
	width: 100%;
	max-width: 100%;
	text-align: left;
}
.storefront-primary-navigation {
	background: #57242d;
}
.main-navigation ul.menu {
	margin-left: 0;
}
#menu-main-menu a {
	color: #fff;
}
#menu-main-menu .sub-menu a {
	color: #000 !important;
	font-size: 12.6px !important;
	font-weight: 400;
}
.main-navigation ul.menu > li > a,
.main-navigation ul.nav-menu > li > a {
	font-size: 14px;
    padding: 0 12px;
    font-weight: 500;
	text-transform: uppercase;
	color: #fff;
}

.main-navigation ul.menu > li.menu-item-has-children > a::after {
	margin-left: .6em;
	font-size: 9px;
}

.main-navigation .sub-menu {
	box-shadow: 0 6px 10px rgba(0, 0, 0, .3), 0 2px 2px rgba(0, 0, 0, .2);
	line-height: 44px;
}
.woocommerce-active .site-header .main-navigation {
	float: none;
}
#menu-main-menu li:hover > a {
    color: #fff;
	text-decoration: none;
	background: rgba(110, 93, 69, .2);
}
.floating #menu-main-menu li:hover > a {
    color: #fff;
}
#menu-main-menu ul li {
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}

#menu-main-menu ul li a {
	background: #fff;
	padding: 0 15px;
	color: #fff;
}

/* ----- Breadcrumbs -------------------- */

.storefront-breadcrumb {
	/*box-shadow: 0 1px 4px rgba(13, 13, 13, .1); */
	margin-bottom: 0;
	padding: 10px 15px;
	font-size: 14px;
	line-height: 24px;
}

.storefront-breadcrumb > .col-full {
	max-width: 1400px;
	margin: auto;
}

.woocommerce-breadcrumb a {
	text-decoration: none;
}

.woocommerce-breadcrumb a:hover {
	text-decoration: underline;
}

.woocommerce-breadcrumb a:first-of-type::before {
	display: none;
}

.woocommerce-breadcrumb .breadcrumb-separator {
	width: 20px;
}




/* --------------------------------------------------------------------------------
		Footer Styles
-------------------------------------------------------------------------------- */

#footer {
	padding: 30px 0 0 0;
    color: #fff;
    text-align: center;
    background: #57242d;
    border-top: 1px solid #222;
}
#footer li {
	font-size: 14px;
}
#footer .footer-title {
	color: #fff;
	margin-bottom: 20px;
	font-weight: 600;
	text-transform: uppercase;
}
#footer a {
	color: #ccc;
}

#footer > .container-fluid {
    max-width: 1400px;
    margin: 0 auto;
    width: 100%;
}

#footer2 {
    padding: 20px 0;
    margin: auto;
    color: #555;
    font-size: 11px;
    background: #57242d;
    border-top: 1px solid #161616;
}
#footer2 a {
	color: #555;
}
/* ----- Newsletter -------------------- */

/* ----- Footer Widgets -------------------- */
.footer-widgets-row .col-xs-12 {
	padding: 0;
}

.footer-widgets {
	width: auto;
	margin: 0 -15px;
	padding: 0 15px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.footer-widgets.col-4 .block {
	width: auto;
	padding: 15px;
	margin-right: 0;
}

.footer-widgets.col-4 .widget {
	margin-bottom: 20px;
}

/* pic links */
.footer-widgets.col-4 .widget:first-child {
	margin-bottom: 10px;
}

#footer a {
	color: #ccc;
    text-decoration: none;
}

#footer ul {
    position: relative;
    padding: 0 0 20px 0;
    list-style-type: none;
}

.footer-text-widget-wrapper address {
	color: #ccc;
	line-height: 1.6;
}

.footer-text-widget-wrapper h3 {
	display: inline-block;
    padding: 10px 0;
    color: #FFF;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
	margin-bottom: 0;
	font-family: 'Arial', freesans, sans-serif;
}

.footer-text-widget-wrapper h3::before,
.footer-text-widget-wrapper h3::after {
	display: none;
}

.footer-text-widget-wrapper p {
	margin-top: 0;
	text-align: center;
	color: #ccc;
	line-height: 1.6;
}

.footer-text-widget-wrapper dl {
    margin-bottom: 20px;
	color: #ccc;
	line-height: 1.6;
}

.footer-text-widget-wrapper dl dt {
	margin-right: 5px;
}

.footer-text-widget-wrapper dl div {
    display: flex;
    justify-content: center;
}

.footer-text-widget-wrapper p,
.footer-text-widget-wrapper ul {
	margin-bottom: 0;
	line-height: 1.6;
	padding-left: 0;
}

.footer-text-widget-wrapper dl:last-child {
    margin-bottom: 0;
}

.footer-text-widget-wrapper dl dt {
	font-weight: normal;
}

.footer-text-widget-wrapper dl dd {
	margin-bottom: 0;
}

.footer-text-widget-wrapper .fa-phone {
    margin-right: 5px;
}

.footer-text-widget-wrapper .fa-map-marker {
    margin-left: 5px;
}

#footer .footer-social {
	font-size: 16px;
    color: #ccc;
    line-height: 1.6;
	list-style: none;
}

#footer .social {
	float: none;
    display: inline-block;
    margin: 0 0 5px 5px;
    width: 32px;
    height: 32px;
    text-align: center;
    text-shadow: none;
    line-height: 32px;
    border-radius: 22px;
    opacity: .7;
	color: #fff;
}

#footer .footer-social .social:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    box-shadow: 0 1px 2px rgba(0, 0, 0, .3);
}

.social.instagram {
    background: #517fa4;
}

.social.yelp {
    background: #af0606;
}
.social.facebook {
    background: #3b5998;
}
.social.pinterest {
    background: #cb2027;
}

/* ----- Footer Copyright Info -------------------- */
#footer .footer-copyright-info {
	padding: 15px 0;
    margin: auto;
    color: #ccc;
    font-size: 11px;
    background: #f4f4f4;
    border-top: 1px solid #f4f4f4;
	max-width: 100%;
}

#footer .footer-copyright-info .row {
	max-width: 1400px;
    margin: 0 auto;
}

#copyright,
#attribution {
	width: 50%;
}

#copyright {
	text-align: left;
}

#attribution {
	text-align: right;
}

#copyright a:hover,
#attribution a:hover {
	text-decoration: underline;
}


/* ----- Footer Notice Text -------------------- */
#footer .footer-notice-section {
	background: #eee;
    color: #1C1C1C;
    text-align: left;
    padding: 40px 0;
	max-width: 100%;
	display: none;
}

body.home #footer .footer-notice-section {
	display: flex;
}

.footer-notice-section .row {
	max-width: 1400px;
	margin: 0 auto;
}

.footer-notice-section h2 {
	text-align: left;
    display: block;
    margin-left: 0;
    margin-right: 0;
    font-size: 1.25em;
}

.footer-notice-section p,
.footer-notice-seciton li {
    font-size: .8em;
}

#footer .footer-notice-section a {
	color: rgba(68, 68, 68, .8);
    text-decoration: none;
}

.footer-notice-section h3 {
	justify-content: flex-start;
    font-size: 1.1em;
    padding-left: 5px;
    margin-top: 10px;
}

.footer-notice-section h3::before,
.footer-notice-section h3::after {
	display: none;
}



/* ----- Footer Bottom Nav -------------------- */
.footer-notice-nav {
	padding-top: 15px;
    border-top: 2px solid rgba(96, 96, 96, .2);
    margin-top: 30px;
}

#footer .footer-notice-nav ul {
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	margin: 0;
    padding-bottom: 10px;
}

.footer-notice-nav ul li {
	font-size: .8em;
	list-style: none;
    padding: 0 10px 0 5px;
    margin-left: 5px;
    border-right: 2px solid rgba(96, 96, 96, .2);
}

.footer-notice-nav ul li:last-child {
	border-right: none;
}

/* to-top button */
#to-top {
	z-index: 999999;
}

#to-top .to-top-icon {
	display: block;
    width: 100%;
    margin-top: 10px;
	font-size: 15px;
	line-height: 15px !important;
}

#to-top .to-top-caption {
	margin-top: 0 !important;
}



/* ----- Mobile Nav Bar -------------------- */

.storefront-handheld-footer-bar {
	top: 0;
	bottom: auto;
	background: #000;
	padding: 0 10px;
	left: 0;
	line-height: 59px;
	height: 59px;
	border-top: none;
	display: none;
}

.storefront-handheld-footer-bar ul li > a {
	background: none;
	height: 59px;
	line-height: 59px;
	border: none;
}

#footer .storefront-handheld-footer-bar a,
#footer .storefront-handheld-footer-bar a .fa-bars,
#footer .storefront-handheld-footer-bar a .fa-phone {
	color: #fff;
	display: flex;
    justify-content: center;
    align-items: center;
}

#footer .storefront-handheld-footer-bar a .fa-bars,
#footer .storefront-handheld-footer-bar a .fa-phone {
	display: block;
	font-size: 20px;
}


/* Search Form */

.storefront-handheld-footer-bar ul li.search .site-search {
	bottom: 100%;
	background: #000;
    left: 0;
    width: auto;
    padding: 0 10px;
    background: #111;
	margin: 0 -10px;
}

.storefront-handheld-footer-bar ul li.search.active .site-search {
	bottom: auto;
	
}

.storefront-handheld-footer-bar ul {
	display: flex;
	justify-content: space-between;
	padding-left: 0;
}

.storefront-handheld-footer-bar ul.columns-5 li {
    flex: 0 1 auto;
	width: auto;
    min-width: 50px;
}

.storefront-handheld-footer-bar ul li > a::before {
	font-size: 20px;
	line-height: 60px;
}

.storefront-handheld-footer-bar ul li.cart > a::before {
	content: "\f07a";
}

.storefront-handheld-footer-bar ul li.my-account>a::before {
    content: "\f2bd";
}

#footer .storefront-handheld-footer-bar .footer-cart-contents {
	justify-content: space-between;
	min-width: 85px;
}

.storefront-handheld-footer-bar .footer-cart-contents::before {
	display: block;
	flex: 0 1 auto;
}

.storefront-handheld-footer-bar ul li.cart .count {
	background: none;
	border: none;
	display: block;
	position: relative;
	top: 2px;
    left: -3px;
    font-size: 16px;
}

.storefront-handheld-footer-bar ul li.cart .count::before {
	content: "(";
}

.storefront-handheld-footer-bar ul li.cart .count::after {
	content: ")";
}


.custom-cart-icon-wrapper {
	text-decoration: none;
    font-size: 22px;
}

.custom-cart-count-badge {
	font-size: 18px;
}

.custom-cart-count-badge::before {
	content: '(';
}

.custom-cart-count-badge::after {
	content: ')';
}



/* --------------------------------------------------------------------------------
		Home Page Template
-------------------------------------------------------------------------------- */

/* ----- Banner -------------------- */
.banner-slider {
	background: url(/images/2026/08/background.jpg);
}
.banner-slide img {
	height: auto;
	border-radius: 0px;
	max-width: 1200px;
	margin: auto;
	object-fit: contain;
}

.banner-overlay {
	width: 100%;
	height: 100%;
	background: none;
	left: 0;
	top: 0;
	transform: translateY(0);
	display: flex;
	align-items: center;
	justify-content: center;
}

.banner-overlay h2 {
	display: none;
}

.banner-overlay .banner-btn {
	width: 50vw;
	height: 50%;
	opacity: 0;
}
.home .banner-rotator .banner-button {
    display: none;
}

/* ----- Hero Section -------------------- */
.home .home-banner {
	background: #57242d;
	color: #fff;
	padding: 20px 0px;
	margin-bottom: 20px;
}
.home .home-banner a {
	color: #fff;
}
.home .col-blank {
	display: none;
}
.home .img-grid .caption {
    position: absolute;
    top: 50%;
    left: 20%;
    width: 60%;
    padding: 20px;
    line-height: 1.6em;
    text-align: center;
    transform: translate(0, -50%);
    background: rgba(0, 0, 0, .3);
    transition: .2s;
    /* max-width: 400px; */
}
.home .img-grid {
	position: relative;
}
.home .img-grid .img-box {
	position: relative;
}
.home .img-grid .img-box a{
	color: #fff;
	font-size: 1.2em;
}
.home .img-grid .img-box a:hover .caption{
	margin-top: -5px;
	background: rgba(87, 36, 45, .9);
}
.home article .entry-content p {
    max-width: 1400px;
    text-align: center;
}
.home .entry-content .custom-hero {
    text-align: center;
    padding: 0px;
}

.home .entry-content .custom-hero h1 {
    font-size: clamp(28px, 4vw, 42px);
    margin-bottom: 10px;
	display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
	color: #000;
	font-family: 'Montserrat';
    font-weight: 600;
	letter-spacing: normal;
}

.home .entry-content .hero-sub {
	font-size: 18px;
    margin-bottom: 20px;
    text-align: center;
}

.home .entry-content .hero-sub a {
	color: #337ab7 !important;
    text-decoration: none !important;
}

.home .entry-content .hero-sub a:focus,
.home .entry-content.hero-sub a:hover {
	color: #23527c;
    text-decoration: underline;
}

.home .entry-content .hero-buttons a {
	display: inline-block;
    padding: 12px 22px;
    margin: 8px;
    border-radius: 30px;
    text-decoration: none;
    font-weight: 600;
}

.btn-main {
    background: #2f6f4f;
    color: #fff;
}

.btn-alt {
    border: 1px solid #2f6f4f;
    color: #2f6f4f;
}

.hero-trust {
	margin-top: 15px;
    font-size: 14px;
}


/* ----- Home Featured Products -------------------- */

body.home .fs_category_title {
	display: none !important;
}

.fs_category_wrap {
	padding-top: 10px;
	margin-bottom: 60px;
}

.fs_product_wrap {
	display: grid !important;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	justify-content: space-between;
	gap: 20px;
}

.fs_product_wrap .col-6 {
	width: 100%;
}

.fs_featured_product_image {
    width: 90%;
    max-height: 335px !important;
	transition: transform 0.65s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    will-change: transform;
	object-fit: contain;
}
.fs_product_wrap .btn-primary {
    margin-bottom: 30px;
}
.fs_product_wrap a {
	color: #333;
	text-decoration: none !important;
	font-weight: 400 !important;
}

.fs_product_wrap a .justify-content-center {
	overflow: hidden;
}

.fs_product_wrap a:hover {
	text-decoration: none;
	color: #333;
}

.fs_product_wrap .col-6 {
    position: relative;
}

.best-seller-badge {
    display: block;
    font-size: 18px;
    padding: 6px 0px;
    background: #f00;
    color: #fff;
    z-index: 1000000;
}
.best-seller-badge .svg-inline--fa {
    box-sizing: content-box;
    display: var(--fa-display, inline-block);
    height: 1em;
    overflow: visible;
    vertical-align: -0.125em;
    width: var(--fa-width, 1.25em);
}
.best-seller-badge .fa-star{
    color: gold;
}
/*.fs_product_wrap a:hover .fs_featured_product_image {
    transform: scale(1.08);
} */

span.h4.pt-4.pb-2.d-block {
	font-size: 1em;
	font-family: 'Montserrat', 'Helvetica Nue', sans-serif;
	font-weight: 500;
	padding-top: .25rem !important;
	padding-bottom: .25rem !important;
    margin-bottom: 0;
	text-transform: none; !important;
	margin-top: 10px;
}
/*.home span.h4.pt-4.pb-2.d-block {
	text-transform: uppercase; !important;
}*/

span.h6.pt-2.pb-4.d-block {
	padding-top: 0;
	font-size: 1.1em;
}
.home span.h6.pt-2.pb-4.d-block {
	padding-bottom: 10px !important;
}

/* ----- Rose CTA Section -------------------- */

.home-rose-title {
	font-size: 2.4rem;
    text-align: center;
	font-family: 'Montserrat', 'helvetica nue', sans-serif;
    color: #000;
    text-transform: uppercase;
    font-size: 24px;
    font-weight: 600;
    margin: 10px 0 20px 0;
}

.home-rose-btn {
	background: #dbe0da;
    color: #000;
    border: 1px solid #dbe0da;
    border-radius: 4px;
    text-transform: uppercase;
	text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    font-family: 'Montserrat', 'Helvetica Nue', sans-serif;
}

.home-rose-btn:focus,
.home-rose-btn:hover {
	background: #59774b;
    color: #fff;
    border: 1px solid #59774b;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
	text-decoration: underline;
}


/* ----- Florist SEO Content -------------------- */

.florist-seo-content {
    max-width: 1000px;
    margin: auto;
    line-height: 1.6;
    font-family: Arial, Helvetica, sans-serif;
}

.florist-seo-content h1 {
	font-size: 32px;
    margin-bottom: 15px;
	color: #000;
	text-align: center;
	text-transform: uppercase;
	font-family: 'Montserrat', 'Helvetica Nue', sans-serif;
}

.florist-seo-content h2 {
    margin-top: 30px;
    font-size: 24px;
	text-align: center;
	color: #505050;
	text-transform: uppercase;
	font-weight: 600;
}

.florist-seo-content p {
	text-align: justify;
}

.florist-seo-content a {
	color: rgba(68, 68, 68, .8);
    text-decoration: none;
}

.florist-seo-content a:focus,
.florist-seo-content a:hover {
	color: #23527c;
    text-decoration: underline;
}

/* --------------------------------------------------------------------------------
		Individual Page Styles
-------------------------------------------------------------------------------- */

/* ----- 404 Page ----------------------- */
.error404 .site-content {
	text-align: center;
}

/* ----- Hours -------------------- */
.hours-page-wrapper {
	max-width: 555px;
    margin: auto;
	padding: 0 20px;
}

body.page-template-default .hours-page-wrapper p {
	margin-top: 40px;
	text-align: center;
}


/* ----- Weddings -------------------- */
body.page-id-1308 .img-responsive {
	margin: 0;
	border-radius: 0;
}

.wedding-content {
	max-width: 66.6%;
	margin: 0 auto;
}

.wedding-content h1 {
	font-size: 24px;
}

.wedding-pic-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 0 40px;
	padding: 0 30px;
}

.wedding-pic-row h3 {
	font-size: 16px;
	margin: 10px 0 20px 0;
}

body.page-template-default .wedding-pic-row p {
	margin-bottom: 0;
	text-align: center;
}

.gallery-page .gallery-image-wrap {
  position: relative;
}
.gallery-page .gallery-image-wrap .title {
    position: absolute;
    left: 0;
    right: 15px;
    box-sizing: border-box;
    bottom: 0px;
    width: 100%;
    padding: 6px 20px;
    margin: 0;
    font-weight: normal;
    font-size: 1.5em;
    background: rgba(255, 255, 255, .5);
    color: #000;
    text-shadow: 0 0 10px #FFF;
}
.gallery-page .gallery-image-wrap img {
    max-height: 370px;
    width: 100%;
    object-fit: cover;
    height: 100%;
    min-height: 370px;
    margin-bottom: 20px;
    border-radius: 0px;
}

/* ----- Contact Us -------------------- */
.contact-locations-hours-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 30px;
	padding: 0 20px;
	text-align: left;
	margin-bottom: 20px;
}

.contact-locations-hours-wrapper .location-hours address {
	padding-left: 35px;
	margin-bottom: 0;
}

.contact-locations-hours-wrapper .location-hours a {
	text-decoration: none;
}

.contact-locations-hours-wrapper .location-hours a:hover,
.contact-locations-hours-wrapper .location-hours a:focus {
	text-decoration: underline;
}

.contact-locations-hours-wrapper .location-hours dl {
	padding-left: 35px;
	display: grid;
	grid-template-columns: 75px 1fr;
}

.contact-locations-hours-wrapper .location-hours dl dt {
	font-weight: normal;
	white-space: nowrap;
}

.contact-locations-hours-wrapper .location-hours dl dd {
	margin-bottom: 0;
}

body.page-id-1298.page-template-default p {
	margin-bottom: 80px;
}

body.page-id-1298.page-template-default p a {
	text-decoration: none;
}

body.page-id-1298.page-template-default p a:hover,
body.page-id-1298.page-template-default p a:focus {
	text-decoration: underline;
}




/* --------------------------------------------------------------------------------
		Gravity Forms Styling
-------------------------------------------------------------------------------- */

/* ----- Global -------------------- */

.gform-theme--framework {
	--gf-color-primary: green !important; /* primary highlight color? */
	--gf-ctrl-size: 34px !important; /* height of inputs */
	--gf-ctrl-radius: 4px;
	--gf-ctrl-border-color: #ccc !important;
}

.gform_wrapper {
	width: 100%;
	max-width: 1200px;
	float: right;
	padding: 0 15px;
}

.gform_required_legend {
	display: none;
}

.gform-theme--foundation .gform_fields {
	row-gap: 15px;
}

.gfield,
.gfield.gfield--type-date {
	display: grid;
	grid-template-columns: minmax(150px, max-content) minmax(min-content, 760px);
	justify-content: end;
}

.gform-footer {
	display: grid !important;
	grid-template-columns: minmax(140px, max-content) minmax(min-content, 760px) !important;
	justify-content: end !important;
	padding-left: 0 !important;
}

.gfield--type-textarea label {
	align-items: start !important;
	padding-top: 10px;
	text-align: right;
}

.gfield_label,
.gfield.gfield--type-date legend.gfield_label.gform-field-label {
	display: grid !important;
    grid-template-columns: max-content 5px !important;
    align-items: end !important;
    justify-content: end !important;
    width: 100% !important;
	padding-right: 20px !important;
}

.gfield_required {
	line-height: 1.5;
    align-self: start;
    margin-top: 10px;
}

.gfield.gfield_contains_required label,
.gfield label {
	display: block !important;
	text-align: right !important;
	font-weight: bold !important;
	color: #000 !important;
	font-size: 16px !important;
	/*text-wrap: nowrap !important;*/
	max-width: 400px;
}

.ginput_container {
	width: 100% !important;
}

.ginput_container input.large,
.ginput_container select.large,
.ginput_container textarea.large {
	width: 100%;
	height: 34px;
	padding: 6px 12px;
	color: #555;
	border: 1px solid #ccc;
	border-radius: 4px;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
	-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
	-o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	line-height: 1.33em;
	text-align: left;
	outline-color: transparent;
}

.ginput_container textarea.textarea.large {
	min-height: 75px !important;
}

.ginput_container input.large:focus,
.ginput_container select.large:focus,
.ginput_container textarea.large:focus {
	border-color: #66afe9;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
}

#gform_submit_button_1 {
	background: #59774b;
    color: #fff;
    border-radius: 3px;
    border: 3px solid #59774b;
    width: 100%;
    padding: 10px 16px;
    font-size: 18px;
    line-height: 1.3333333;
    /*max-width: 760px;*/
    /*float: right;
    margin-left: auto;*/
	font-family: 'Montserrat', 'Helvetica Nue', sans-serif;
	font-weight: bold;
	grid-column: 2;
}

#gform_submit_button_1:hover,
#gform_submit_button_1:focus {
	background: #771d6a;
    border: 3px solid #913c85;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
}





@media screen and (max-width: 768px) {
	
	.gfield,
	.gform-footer {
		grid-template-columns: 1fr !important;
	}
	
	#gform_submit_button_1  {
		grid-column: 1;
	}
	
	.gfield.gfield_contains_required .gfield_label,
	label.gfield_label {
		justify-content: center !important;
		padding: 0 15px !important;
		font-size: 15px !important;
		max-width: 100% !important;
		text-align: center !important;
	}
	
}


/*Newsletter Signup */
.row.footer-newsletter-signup {
	width: 100%;
	margin-bottom: 40px;
}
#footer .ginput_container {
	width: 100% !important;
}
#gform_wrapper_3 {
	width: 100%;
	margin: auto;
	max-width: 800px;
	height: auto;
	padding: 0;
}

#gform_3 {
	display: grid;
	grid-template-columns: 1fr 110px;
}

#gform_3 .gform-body .gfield {
	display: grid;
	grid-template-columns: max-content 1fr;
}

#gform_3 .gform-body .gfield_required {
	display: none;
}

#gform_3 .gfield.gfield_contains_required label {
	max-width: 233px;
	height: 44px !important;
	background: #1c1c1c;
	height: 100%;
	margin-bottom: 0;
	padding: 0 25px;
    line-height: 44px !important;
    color: #fff !important;
    font-weight: 500 !important;
    font-family: 'Montserrat', 'Helvetica Nue', sans-serif;
	text-transform: uppercase;
}

#gform_3 .gform-footer.top_label {
	margin: 0;
	display: grid !important;
	grid-template-columns: 1fr !important;
}

#input_3_1 {
	border-radius: 0;
	height: 44px;
	color: rgb(85, 85, 85);
}

#input_3_1::placeholder {
	color: rgb(85,85,85);
	opacity: .6;
}

#gform_submit_button_3 {
	border-radius: 0;
	padding: 8px;
	grid-column: 1;
	background-color: #59774b !important;
	font-weight: 600 !important;
	font-family: 'Montserrat', 'Helvetica Nue', sans-serif;
	text-transform: uppercase;
	height: 44px;
	color: #1c1c1c;
	border: 1px solid #59774b !important;
	border-left: none !important;
}
#gform_submit_button_3:hover {
	color: #fff;
	border: 1px solid #fff !important;
	border-left: none !important;
}
#gform_3 div[id^="validation_message"] {
	display: none;
}

div[id^="gform_confirmation_wrapper"] {
	min-height: 50px;
}

@media screen and (max-width: 768px) {

	.row.footer-newsletter-signup {
		margin: 0 0 40px 0;
	}

	#gform_wrapper_3 {
		height: auto;
		max-width: 100%;
		margin: 0;
        width: 100%;
	}

	#gform_3 {
		grid-template-columns: 1fr;
	}

	#gform_3 .gform-body {
		height: 88px;
	}

	#field_3_1 .ginput_container {
		width: auto !important;
		margin-right: 110px;
	}

	#gform_submit_button_3 {
		width: 110px;
		margin-top: -110px;
		grid-column: 2;
		height: 44px;
		align-self: end;
	}

}


/* Checkout */
body.page-id-12 .site-content {
	padding: 0px 15px;

	#payment .place-order .button {
		background: #59774b;
	}
	.woocommerce-billing-fields .form-row-last {
		margin-right: auto !important;
	}
}

/* ----- Cart -------------------- */
body.page-id-11 {

    --section-border: 1px solid #DDD;
    --section-border-radius: 3px;
    --section-padding: 15px;

    /* --- Page Setup --- */
    .site-content {
    	padding: 0px 15px;
    	margin-bottom: 50px;
    }
    .hentry.type-page .entry-header {
        padding-bottom: 0;

        .entry-title {
            grid-column: 1 / span 2;
            margin: 0;
            color: #333;
            font-size: 25px;
            font-weight: 500;
            font-family: 'Quicksand', sans-serif;
            text-align: left;
        }
    }

    th, td { padding: 5px 10px; }

    .edit-link { display: none; }

    .wc-empty-cart-message .cart-empty {
        margin-bottom: 0;
    }

    .wc-empty-cart-message {
        grid-column: 1 / span 2;
    }
    .woocommerce .button.wc-backward {
    	position: absolute;
    	left: 0px;
    }

    /* --- Cart with Products --- */
    .entry-content .woocommerce {

        /* setup */
        display: grid;
        grid-template-columns: 2fr 1fr;
        grid-gap: 20px;
        width: 100%;

        /* notices */
        .woocommerce-notices-wrapper {
            grid-column: 1 / span 2;
            margin-top: 15px;
        }

        /* shared layout styling */
        .woocommerce-cart-form,
        .cart-collaterals .cart_totals {
            border: var(--section-border);
            border-radius: var(--section-border-radius);
            padding: var(--section-padding);
        }

        /* cart form */
        .woocommerce-cart-form {
            margin-bottom: 0;
            background: #fff;

            h3 {
                margin-top: 50px;
                margin-bottom: 30px;
            }

            /* refactored my addon grid below to flatten */
        }

        .wc-addon-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
        }

        .wc-addon-grid > div {
            width: 100%;
        }

        .wc-addon-grid .addon-product {
            border: none !important;

            .addon-add-variable,
            .addon-add-to-cart {
                width: 100%;
                padding: 7px 10px;
                border-radius: 5px;
                margin-top: 5px;
            }
        }

        /* cart collaterals */
        .cart-collaterals .cross-sells {
        	display: none;
        }
        .cart-collaterals .cart_totals {
            float: none;
            width: 100%;
            background: #fff;

            .wc-proceed-to-checkout {
                margin-bottom: 0;

                a {
                    background: #59774b !important;
                    font-size: 16px !important;
                    font-weight: normal;
                    border-radius: 5px;
                    margin-bottom: 0;
                }
            }
        }
    }

    /* --- Media Queries --- */
    @media screen and (max-width: 850px) {

        .entry-content .woocommerce {
            grid-template-columns: 1fr;

            .woocommerce-notices-wrapper,
            .woocommerce-cart-form,
            .wc-empty-cart-message,
            .cart-collaterals {
                grid-column: 1;
            }
        }
    }

    @media screen and (max-width: 768px) {

        .coupon {
            border-bottom: none !important;
        }

        .entry-content .woocommerce .wc-addon-grid {
            grid-template-columns: repeat(3, 1fr);
        }
    }

    @media screen and (max-width: 500px) {
        .entry-content .woocommerce .wc-addon-grid {
            grid-template-columns: repeat(2, 1fr);
        }
    }

} /* //end Cart */


/* --------------------------
		LOCAL PAGES
-----------------------------*/
.page-template-template-local-page .site-content {
	padding: 0px 15px;
}
.local-page .fs_category_title,
.local-page article {
  display: none !important;
}
.local-page h2 {
	color: #1e280f;
	font-weight: bold;
}
.local-page h3 {
  text-align: left;
  font-weight: bold;
  margin-top: 30px;
}
.local-page p {
	max-width: 80%;
	margin: auto;
	text-align: center;
}
.local-page .fs_product_wrap .col-6.col-lg-4 {
  margin-bottom: 30px;
}
.local-page .fs_product_wrap .col-6.col-lg-4 a{
  color: #000;
}
.local-page .fs_product_wrap .col-6.col-lg-4 .h4{
  display: block;
}
.local-page .woocommerce .products {
    margin-top: 30px;
}
.local-page .woocommerce .products .add_to_cart_button {
    background: #fff;
    color: #000;
    border: 1px solid #000;
}
.local-page .woocommerce .products .product img {
    object-fit: contain;
    max-height: 200px;
}
.local-page .distance_from_city_center {
  font-weight: bold;
}
.local-page .city-links a {
	padding-right: 15px;
	color: #2f6f4f;
}
.local-page .delivery-countdown.delivery-countdown-clock {
    font-weight: bold;
    font-size: 22px;
    margin-top: 20px;
}
/* --- Weather Widget --- */
    .weather-widget-wrapper {
        overflow: hidden;
    }

    #local-page-weather-widget > div > div {
      height: auto;
      color: #000;
      background: transparent;
      border-radius: 0;
      float: none;
        width: 110px;
        padding: 15px;
        margin: 0 30px 20px 0;
        text-align: center;
        line-height: 1;
        border: 1px solid #EEE;

        > div {

            &.mm-widget__header-wrap {
              display: none;
            }

            &.mm-widget__vertical-forecast-wrap {
              display: none;
            }

            &.mm-widget__temp-vertical-wrap {
              padding-bottom: 0;
                margin-bottom: 0;
                border: none;
                display: grid;
            }

            &.mm-widget__copyright {
                &, & a { color: #000; }
            }

            &.mm-widget__temp-vertical-wrap > div {

                &.mm-widget__temp-range-wrap > div.mm-widget__temp-range {
                  display: none;
                }

                &.mm-widget__temp-range-wrap > div.mm-widget__temp-range-icon > img {
                  filter: brightness(0) !important;
                  width: 100%;
                }

                &.mm-widget__temp-range-wrap {
                  grid-row: 1;
                }

                &.mm-widget__temp-value {
                  font-size: 40px;
                  color: rgb(96,96,96);
                  margin-bottom: 10px;
                }

                &.mm-widget__temp-range-wrap > div.mm-widget__temp-range-icon {
                  width: 100%;
                  max-width: 50px;
                }
            }
        }
    } /* --- //end #local-page-weather-widget --- */

     /* --- Delivery Countdown --- */
    .delivery-countdown-clock {
        display: block;
        clear: both;
        padding: 15px 10px;
        text-align: center;
        /*background: #EEE;
        border: 2px solid #CCC;*/

        .fs-delivery-countdown {
            display: grid;
            grid-template-columns: repeat(3, max-content);
            justify-content: center;
            align-items: center;
            grid-gap: 10px;
            color: #000;

            span.delivery-countdown-text-before,
            span.delivery-countdown-text-after{
            	color: #606060;
            }

            @media screen and (max-width: 1200px) {
                grid-template-columns: 1fr;
            }

            span[data-role="remaining-time"] {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                grid-gap: 5px;

                @media screen and (max-width: 1200px) {
                    width: max-content;
                    justify-self: center;
                }
            }

            span[data-role="remaining-time-hours"],
            span[data-role="remaining-time-minutes"],
            span[data-role="remaining-time-seconds"] {
                display: grid;
                grid-template-columns: 1fr;
                text-align: center;
                color: #606060;
            }

            span[data-role="remaining-time-hours"] span:first-child,
            span[data-role="remaining-time-minutes"] span:first-child,
            span[data-role="remaining-time-seconds"] span:first-child {
                font-size: 52px;
                line-height: 1;
            }

            span[data-role="remaining-time-hours"] span:first-child::after,
            span[data-role="remaining-time-minutes"] span:first-child::after {
                content: ":";
                margin-left: 10px;
            }

            span[data-role="remaining-time-hours"] span:last-child,
            span[data-role="remaining-time-minutes"] span:last-child,
            span[data-role="remaining-time-seconds"] span:last-child {
                text-transform: uppercase;
                font-size: 12px;
                text-align: left;
                padding-left: 5px;
            }
        }
    }



/* --------------------------------------------------------------------------------
		Style Overrides
-------------------------------------------------------------------------------- */
#product .description {
    padding-top: 10px;
	padding-bottom: 20px;
	color: #000;
}


.description1 {
    /*background-color: #f2dede;
    border: 1px solid #ebccd1;
    border-radius: 3px;*/
    color: #a94442 !important;
    margin-top: 15px;
    margin-bottom: 15px;
    padding: 15px;
}
.description1.desc-txt {
    background-color: #f4f2ef;
    border: 1px solid #e4e3de;
    border-radius: 3px;
    color: #000 !important;
    margin-top: 0px;
}
.description1 h2 {
	margin-top: 20px;
}
.description1 p {
    padding-bottom: 5px;
    margin-bottom: 5px;
}
.description1 .related h2 {
	text-align: left !important;
	justify-content: flex-start !important;
	font-size: 18px;
	display: block;
}
.description1 .related h2::before, 
.description1 .related h2::after, 
.description1 .related .woocommerce-loop-product__title::before,
.description1 .related .woocommerce-loop-product__title::after{
	content: none !important;
}
.description1 .related .woocommerce-loop-product__title {
	text-align: center !important;
	justify-content: center !important;
	display: flex;
}
.description1 .related .button {
	background: #fff;
	color: #000;
	border: 1px solid #000;
}
.description1 .related .button:hover {
	background: #59774b;
	color: #fff;
	border: 1px solid #59774b;
}
.gform_required_legend {
    display: none;
}
.gform_button{
    background: #59774b !important;
    border: 1px solid #59774b !important;
}
#gform_submit_button_2 {
	width: 100% !important;
	grid-column: 2;
}
label.gfield_label.gform-field-label, legend.gfield_label.gform-field-label.gfield_label_before_complex{
    font-weight: bold;
    font-family: 'Roboto Condensed', sans-serif; !important;
    font-size: 14px !important;
    letter-spacing: .5px;
}
.gform-theme--foundation .gform_fields {
	row-gap: 20px !important;
}

/* Woocommerce Products */
.single-product div.product .summary, 
.single-product div.product .woocommerce-product-gallery {
	width: 100% !important;
}
.single-product div.product .summary {
	margin-top: 0px;
	padding-left: 10px;
	margin-bottom: 0px !important;
}
.single-product div.product .summary .base-price h3{
	border: none;
	font-size: 20px;
}
.single-product div.product .summary h2 {
	font-size: 20px;
}
.single-product .product-num {
    margin-bottom: 5px;
    padding-bottom: 5px;
    font-size: 20px;
    font-weight: 500;
}
.single-product .product-title {
    margin-top: 0px;
    font-size: 2.4em;
    /*border-bottom: 1px solid #ccc;*/
    text-transform: none;
    font-family: "Parisienne", cursive;

}
.single-product div.product .woocommerce-product-gallery img {
	width: 100%;
}
.single-product .single_add_to_cart_button {
	background: #fff;
	color: #000;
	border: 1px solid #000;
	margin: auto;
}
.single-product .single_add_to_cart_button:hover {
	background: #59774b;
	color: #fff;
	border: 1px solid #59774b;
}
.single-product div.product .variations_button {
	display: flex;
	justify-content: center;
}
.single-product div.product p.price {
	margin: 0px 0px 10px 0px;
	text-align: center;
}
.single-product div.product form.cart {
	display: flex;
	justify-content: center;
	flex-direction: column;
}
.single-product .quantity {
	display: none !important;
}
#product .price {
	font-size: 1em;
	text-align: center;
}
#product .prices {
	margin-top: 20px;
}
.archive .storefront-sorting {
	display: none;
}
.archive .woocommerce-products-header {
	padding-bottom: 50px;
}
.archive .woocommerce-products-header .term-description {
	padding-bottom: 0px;
	display: flex;
	justify-content: center;
	max-width: 80%;
	margin: auto;
	text-align: center;
	color: #999;
	flex-direction: column;
}
.archive .woocommerce-products-header__title.page-title {
    margin-bottom: 0;
    /*text-transform: uppercase; */
}
.archive .product .button {
	content: 'View Details' !important; 
    display: block;
    width: 100%;
    max-width: 135px;
    margin: 10px auto;
    padding: 10px 0;
    padding: 5px 10px;
    font-size: 16px !important;
    line-height: 1.5;
    background: #fff;
    color: #000;
    border-radius: 0px;
    border: 1px solid #000;
}
.archive .product .button:hover {
	background: #59774b;
	color: #fff;
	border: 1px solid #59774b;
	box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
}
.archive .product .woocommerce-loop-category__title {
	position: absolute;
    bottom: 10px;
    padding: 10px 0;
    color: #000;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 2px 3px rgba(0, 0, 0, .4);
    border-radius: 3px;
    text-transform: none;
    max-width: 270px;
}
.archive .product .woocommerce-loop-category__title::before {
	border: none !important;
}
.archive .product .woocommerce-loop-category__title::after {
	border: none !important;
}
.archive .product .count {
	display: none;
}
.woovr-variation-price .dollars, 
.woocommerce-variation-price .dollars,
.single-product .price .dollars {
	color: #333 !important;
	font-size: 31px !important;
}
.woovr-variation-price .cents, 
.woocommerce-variation-price .cents,
.single-product .price .cents {
	font-size: 18px;
	vertical-align: super;
	color: #000;
	position: relative;
	top: -1px;
	left: -1px;
}
.woovr-variation-price .currency, 
.woocommerce-variation-price .currency,
.single-product .price .currency {
	font-size: 18px;
    vertical-align: super;
    position: relative;
    top: -1px;
    left: 4px;
    color: #000;
}


.single-product .product-addon .price .dollars {
	color: #333 !important;
	font-size: 20px !important;
}
.single-product .product-addon .price .cents {
	font-size: 13px;
	vertical-align: super;
	color: #000;
	position: relative;
	top: 1px;
}
.single-product .product-addon .price .currency {
	font-size: 13px;
    vertical-align: super;
    position: relative;
    top: 0px;
    left: 1px;
    color: #000;
}

.woocommerce-checkout .woocommerce .col-1,
.woocommerce-checkout .woocommerce .col-2 {
    width: 100% !important;
}

.home .fs_product_wrap .cents, .home .fs_product_wrap .cents {
	font-size: 11px;
	vertical-align: super;
	position: relative;
	top: 2px;
	left: -3px;
}
.home .fs_product_wrap .currency, .home .fs_product_wrap .currency {
	font-size: 11px;
    vertical-align: super;
    position: relative;
    top: 2px;
    left: 4px;
}
.archive h2 {
	color: #000;
	border: none;
	margin-bottom: 5px !important;
	font-size: 16.8px !important;
	text-transform: uppercase;
}
.archive .product .price {
	font-size: 17px;
	color: #000 !important;
}
.archive .product .cents, .archive .product .cents {
	font-size: 11px;
	vertical-align: super;
	position: relative;
	top: 2px;
	left: -3px;
}
.archive .product .currency, .archive .product .currency {
	font-size: 11px;
    vertical-align: super;
    position: relative;
    top: 2px;
    left: 4px;
}
.woocommerce ul.products li.product-category img
 {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.woocommerce ul.products li.product-category a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 296px;
    flex-direction: column;
}
.woocommerce ul.products li.product img
 {
    object-fit: contain;
    width: 100%;
    height: 335px;
    display: block;
    margin: 0;
    border-radius: 0px;
    object-position: center;
}
.woocommerce ul.products li.product .woocommerce-loop-product__link {
    display: flex;
    flex-direction: column;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	text-transform: uppercase;
} 
.woocommerce ul.products li.product .woocommerce-loop-product__title:before {
	border: none !important;
} 
.woocommerce ul.products li.product .woocommerce-loop-product__title:after {
	border: none !important;
} 
.woocommerce .products .product .price {
	margin-bottom: 10px;
}
.woocommerce .products {
	padding: 0px 20px;
}
.single_variation_wrap .button {
    background: #fff;
    opacity: 1 !important;
    color: #000;
    border: 1px solid #000;
}
.single_variation_wrap .button:hover {
    background: #59774b;
    color: #fff;
    border: 1px solid #59774b;
    opacity: 1 !important;
}
.woovr-variation-price .decimal, 
.woocommerce-variation-price .decimal, 
.home .fs_product_wrap .decimal,
.archive .product .decimal,
.single-product .price .decimal  {
	display: none;
}
.woovr-variations .woovr-variation {
	align-items: normal;
	flex-direction: row;
}
.woovr-variations {
    padding-top: 5px;
    padding-bottom: 5px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.woovr-variations > * {
    flex: 1 1 calc(33.333% - 14px);
    box-sizing: border-box;
}
.product-addon {
	margin-top: 40px;
}
.addon-product {
	border: none !important;
	text-align: center;
	color: #333 !important;
}
.addon-product .add-on-title {
	margin-top: 5px;
	height: auto  !important;
	font-size: 13px;
}
.addon-product .add-on-price {
	margin-bottom: 10px;
	font-size: 11.5px;
	letter-spacing: -0.5px;
}
.addon-product .add-on-image img {
    width: 105px;
    min-height: 105px;
    object-fit: contain;
    margin: auto;
}

/*.product-addon .wc-addon-grid {
    border: 1px solid #ddd;
}*/
.entry-summary .variations label {
    font-weight: bold;
    color: #000;
}

/* --------------------------------------------------------------------------------
		Media Queries
-------------------------------------------------------------------------------- */

@media screen and (max-width: 1340px) {
	.fs_product_wrap {
		grid-template-columns: 1fr 1fr 1fr;
	}
}

@media screen and (max-width: 1000px) {
	.fs_product_wrap {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 992px){

	h1 {
		font-size: 2rem;
	}

	h2 {
		font-size: 1.7rem;
	}

	h3 {
		font-size: 1.4rem;
	}

	body {
		font-size: 15px;
	}
	
	/* ----- Header -------------------- */
	
	/* Top Nav */
	/*#top-navigation {
		display: none;
	} */
	
	/* Header Content */
	#header-content {
		flex-direction: column;
	}
	
	.logo-wrapper {
		width: 250px;
	}
	
	.site-header .logo-wrapper .site-branding {
		width: 100%;
	}
	
	.header-address {
		width: 100%;
	}
	
	.header-address a {
		text-decoration: none;
	}
	
	#mobile-nav-bar {
		display: none;
	}
	
	#top-navigation .address, .menu-items {
		font-size: 16px;
	}

	#address-mobile {
		font-size: 20px;
		text-align: center;
		padding-top: 10px;
		color:#fff;
		text-transform: uppercase;
	}
	#address-mobile .phone {
		padding-top: 10px;
	}
	#address-mobile .phone a{
		font-size: 20px;
		color: #fff;
	}


	/* ----- Footer -------------------- */

	.storefront-handheld-footer-bar {
		display: block;
	}
	
	body.logged-in .storefront-handheld-footer-bar {
		top: 32px;
	}
	
	.footer-widgets {
		flex-direction: column;
		align-items: center;
	}
	
	.footer-notice-section > .row {
		max-width: 750px;
	}


	/* ----- Default Pages -------------------- */
	body.page-template-default article .entry-title {
		font-size: 20px;
	}
	
	body.page-template-default article h2 {
		font-size: 17px;
	}
	
	body.page-template-default article h3 {
		font-size: 14px;
	}
	.home article .entry-header .entry-title {
		font-size: clamp(28px, 4vw, 42px) !important;
		text-transform: none !important;
	}
	/* ----- Wedding Page -------------------- */
	.wedding-pic-row {
		grid-gap: 0 20px;
	}
	.site-search {
		display: block;
	}
	.woocommerce-product-search{
    	margin-bottom: 0;
	}
	.local-page .map-col {
		flex-direction: column;
	}

}

@media screen and (max-width: 782px) {
	
	body.logged-in .storefront-handheld-footer-bar {
		top: 46px;
	}
	
}

@media screen and (max-width: 768px) {
	
	/*.banner-slide img {
		height: 145px;
	}*/
	.storefront-breadcrumb {
		border-top: 1px solid rgba(96,96,96,0.1);
	}
	
	.contact-locations-hours-wrapper {
		grid-template-columns: 1fr 1fr;
	}
	/*.banner-slider {
		display: none;
	}*/
	.site-header .site-branding img {
		padding: 0px 15px;
	}
	#site-navigation {
        top: 48px;
        margin-top: 0;
        margin-bottom: 0;
        position: fixed;
        background: #fff;
        padding: 0px;
        left: 0px;
        text-align: left;
    }
    	/* ----- Mobile Nav -------------------- */
	.handheld-navigation {
		width: 100%;
		position: fixed;
        left: 0;
        top: 55px;
        bottom: 0;
        height: auto;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        background: #fff;
	}
	#primary-nav-wrapper {
		position: absolute;
		top: 0px;
		bottom: 0;
		width: 100vw;
		overflow-y: scroll;
		left: -200%;
		transition: all .2s ease;
	}
	
	#primary-nav-wrapper.show {
		left: 0;
	}
	
	#site-navigation-menu-toggle {
		display: none;
	}
	
	#site-navigation {
		display: none;
	}
	#site-navigation.toggled {
		display: block;
		justify-content: flex-start;
		margin-top: 0;
		margin-bottom: 0;
		box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.3);
	}
	
	.primary-navigation {
		width: 100%;
		display: none;
	}
	
	#menu-main-menu {
		display: flex;
		flex-direction: column;
		padding-left: 0;
		max-height: 100%;
		flex: 1;
	}
	
	#menu-main-menu ul li {
		border-bottom: none;
	}
	
	#menu-main-menu li a,
	#menu-main-menu li.current-menu-item a {
		color: #000;
	}
	
	#menu-main-menu li a {
		border-bottom: 1px solid rgba(0, 0, 0, .1);
		background: #fff;
		width: 100%;
	}
	
	#menu-main-menu li a:hover,
	#menu-main-menu li a:focus {
		text-decoration: none;
	}
	
	#menu-main-menu ul {
		position: relative;
		top: 0;
		width: 100%;
		box-shadow: none;
		padding: 0;
		margin: 0;
		display: none;
	}
	
	#menu-main-menu li.focus > ul {
		display: block;
		left: 0;
	}
	.main-navigation ul.menu > li > a {
		border-bottom: 1px solid rgba(0, 0, 0, .1);
		color: #000;
	}
	
	/*.main-navigation ul.menu>li.menu-item-has-children>a::after {
		-webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        font-weight: normal;
        line-height: 1;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        line-height: inherit;
        vertical-align: baseline;
        content: "";
        margin-left: 1em;
	} */
	#site-navigation .dropdown-toggle::after {
		border: none;
	}
	.main-navigation .sub-menu {
		box-shadow: none;
	}
	#top-navigation {
		position: fixed;
		top: 0px;
		left: 0px;
		width: 100%;
		z-index: 999999999999999999999999;
	}
	#footer ul {
    	margin-left: 0px;
    }
    .woocommerce-active .site-header .site-branding {
    	margin: 20px 0 16px 0;
	}
	#mobile-menu-toggle {
		font-size: 18px;
	}
	.menu-items {
		width: 100%;
		flex-direction: row;
		font-size: 18px;
	}
	.menu-items a {
		font-size: 18px;
		padding: 14px 5px;
	}
	.main-navigation ul li a {
		padding: .3em 0;
	}
	#gform_submit_button_2 {
		grid-column: auto;
	}
	.local-page p {
		max-width: 100%;
	}
}

@media screen and (min-width: 768px) {
	#search-container {
        position: absolute;
        z-index: 10000;
        top: 50px;
        left: 0px;
        bottom: auto;
        max-width: 260px;
        border-bottom-left-radius: 3px;
        border-bottom-right-radius: 3px;
        box-shadow: 0 2px 3px rgba(0, 0, 0, .3);
    }
    /* desktop sticky nav */
	.sticky-nav #navigation {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		background: #000;
		
	}
	.sticky-nav .main-navigation a{
		color: #fff;
	}
    #site-navigation.floating {
        position: fixed;
        left: 0;
        top: 0;
        z-index: 2;
        transition: display .3s, background .3s;
        background: rgba(0, 0, 0, .65);
        border-top: 1px solid rgba(0, 0, 0, .1);
        border-bottom: 1px solid rgba(0, 0, 0, .1);
        box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
        padding: 0;
        width: 100%;
        max-width: 100%;
    }
    #site-navigation.floating a {
    	color: #fff;
    }
    #site-navigation.floating a:hover {
    	color: #fff;
    }
    .floating .primary-navigation {
    	max-width: 100%;
    	text-align: left;
    }
    .review-links {
        flex-direction: row;
    }
}

@media screen and (max-width: 600px) {
	
	#wpadminbar {
		position: fixed;
	}
	
	.wedding-pic-row {
		grid-template-columns: 1fr;
		grid-row-gap: 30px;
	}
	
}

@media screen and (max-width: 500px) {
	.contact-locations-hours-wrapper {
		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 530px) {

	body.page-template-default .hours-page-wrapper .img-responsive {
		display: none;
	}

	body.page-template-default .hours-page-wrapper .hours {
		max-width: 300px;
		margin: auto;
	}
	
	body.page-template-default .hours-page-wrapper .hours dd {
		text-align: right;
	}

}

@media screen and (max-width: 425px) {
	
	.faqs {
		grid-template-columns: 1fr;
		margin-top: 20px;
		gap: 10px 0;
	}
	
	.faqs dt,
	.faqs dd {
		border-bottom: none;
	}
	
}