body {
	width: 100%;
	padding: 0;
	margin: 0 auto;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  
  color: #606060;
	background: #fff;
	
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased; 
	  
}
#delivery_date { 
    display: none;
}
.flower-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px 0;
    width: 100%;
}

.flower-divider::before,
.flower-divider::after {
    content: "";
    flex: 1;
    max-width: 80px;
    height: 1px;
    background: #cfcfcf;
}

.flower-divider::before {
    margin-right: 12px;
}

.flower-divider::after {
    margin-left: 12px;
}

.flower-icon {
    font-size: 18px;
    color: #777;
    line-height: 1;
}
/* HOMEPAGE ONLY */

/* DESKTOP */
body.homepage #top-navigation,
body.homepage #header,
body.homepage #new-header,
body.homepage #sticky-navigation {
    position: relative;
    z-index: 1000;
    background: rgba(0, 0, 0, .45);
}

body.homepage .collection-banner {
    margin-top: -171px;
    padding-top: 0;
}
body.homepage #sticky-navigation.floating a.lv-1 {
    color: #fff;
}
body.homepage #new-header .contact-info .address, 
body.homepage #new-header .contact-info .span-separator, 
body.homepage #new-header .contact-info .phone-number a {
  
color: #fff;      
  	text-transform: uppercase;
}


/* TABLET */
@media (max-width: 1091px) {
    body.homepage .collection-banner {
        margin-top: -209px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    body.homepage {
        padding-top: 0;
    }

    body.homepage #header .address {
        background: rgba(0, 0, 0, .25);
    }

    body.homepage.show-search #search-container {
        display: block !important;
        position: absolute !important;
        top: 56px !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 999999 !important;
        padding: 10px !important;
        background: rgba(0, 0, 0, .85) !important;
    }

    body.homepage #top-navigation {
        z-index: 999999 !important;
    }

    body.homepage #header,
    body.homepage #logo {
        z-index: 1000 !important;
		
    }

    html body.homepage #navigation {
        position: fixed;
    }

    body.homepage #top-navigation{
        position:sticky;
		background: #000;
    }
}

.form-group {
    margin: 15px;
}
.callout-btn {
/*color: #242424;
   width: auto;
    border: 1px solid #242424; 
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .98px;
    border-radius: 0;
    text-decoration: none !important;*/
	
	background: #000000; 
    
    border: 1px solid #000000;
	width:		40%;
        min-width: 95px;
        margin: auto;
        
	padding: 15px;
}
.callout-btn a {
	color: #fff;
}

p {
	  font-size: 16px; 
  line-height: 1.5; 
	
	
}


.container-widest {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
    margin-bottom: 0;
    max-width: 1920px;
}
.container.go-wide{
	max-width:2500%;
	margin:0 auto;
	
}

.square {
	display: block;
		float: left;
		position: relative;
		background-size: 100% auto;
	max-height: 500px;
	background: no-repeat;
	border: 10px solid #fff;
	}
.square1 {
	display: block;
		float: left;
		position: relative;
		background-size: 100% auto;
	max-height: 250px;
	background: no-repeat;
	border: 10px solid #fff;
	}
.square1::after {
		display: block;
		content: '';
		padding-top: 100%;
	}
.square1:hover .caption {
		margin-top: -5px;
		background: rgba(89, 119, 75, .5);
	}


	.square1:hover .caption {
		margin-top: -5px;
		background: rgba(89, 119, 75, .5);
	}


	.square::after {
		display: block;
		content: '';
		padding-top: 50%;
	}

	.square:hover .caption {
		margin-top: -5px;
		background: rgba(255, 255, 255, .9);
	}

.square-third {
		width: 33.333%;	
	background-position: center center;
}
.square-one {
		width: 100%;	
}

.square-half {
		width: 50%;	
}

	.caption {
		
		position: absolute;
		top: 50%;
		left: 20%;
		width: 60%;
		padding: 20px;
		line-height: 1.6em;
		
		text-align: center;
		transform: translate(0, -50%);
		background: rgba(255, 255, 255, .6);
		border: 1px solid #fff;
		transition: .2s;
		max-width: 350px; 
	}

	.super-title {
		color: #000;
		font-size: 1em;  
	}

	.title {
		color: #000;
		font-size: 1.3em;
		   
	}

.option .title {
	color: #000;
	font-size: 1em;
}

.columns {
    padding-left: 0;
    padding-right: 0;
}


/* Added from old design*/
#homepagetext-wrapper {
    background: #000000;
    color: #fff;
}
.homepage-text {
	width: 80%;
	font-size: 15px;
	margin: auto;
	padding: 15px;
	text-align: justify;
	
		
}
.homepage-text p {
	color: #fff;
}

.areas-served{
	text-align: center;
	color: #ff0;
}
.footer-text {
	color: #fff;
	
	font-size: 1em;
}



/*collection banner*/


.banner-title {
	color: #fff;
	text-shadow: 0 0 5px #000, 0 0 5px #000, 0 0 25px #000, 0 0 50px #000;
	font-size: 3rem;
	 
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

.banner-subtitle {
	display: inline-block;
	
	color: #fff;
	text-shadow: 0 0 5px #000;
	
	
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  
	line-height: 1.4em;
	margin-bottom: 15px;
	
}


@media screen and (min-width: 480px){
	.banner-title {
		font-size: calc(34px + 22 * (70vw - 480px) / 480);
	}

	.banner-subtitle {
		font-size: calc(12px + 7 * (70vw - 480px) / 480);
	}
}

@media screen and (min-width: 1200px){
	.banner-title {
		z-index: 1000000;
		position: relative;
		text-transform: uppercase; 
		 
  
 /* letter-spacing: 0.2em; /* Widened for elegance */
	}

	.banner-subtitle {
		font-size: 50px; 
		/*letter-spacing: 0.1em;*/
		margin-top: -15px; 
		margin-bottom: 15px;
		line-height: 60px;
	}
}

.banner-button {
	display: table;
	margin: auto;
	min-width: 170px;
	text-transform: uppercase;
	font-size: 18px;
	line-height: 50px;
	color: rgba(255, 255, 255, .9);
	background: #59774b;
	text-shadow: 0 0 2px rgba(255, 255, 255, .6);
	
	box-shadow: 0 0 3px rgba(255, 255, 255, .3);
	border-radius: 3px; 
}

.main-banner{
	position: relative;
	
	
	text-align: center;
	background-position: center;
    background-repeat: no-repeat;
    	
}
a.banner.main-banner {
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
	/* min-height: 450px !important; */
}
.banner {
	width: 100%;
}

.banner-contents-wrapper {
	position: absolute; 
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	justify-content: center; 
	align-items: center;
}

.banner-contents {
	min-width: 60%;
	max-width: 600px;
	padding: 30px 0;
		
}


/*collection banner*/





.custom-hero {
  text-align: center;
  padding: 40px 20px;
  background: #f8f8f8;
}

.custom-hero h1 {
  font-size: clamp(28px, 4vw, 42px);
  margin-bottom: 10px;
}

.hero-sub {
  font-size: 18px;
  margin-bottom: 20px;
}

.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;
}

.product {
  position: relative;
}

#category .product:nth-child(3) .same-day-delivery, #category .product:nth-child(2) .same-day-delivery, #category .product:nth-child(4) .same-day-delivery, #category .product:nth-child(1) .same-day-delivery {
    display: block;
}
.same-day-delivery {
    display: none;
   
    font-size: 18px;
    padding: 10px 0 3px 0;
	background: #f00;
	color: #fff; 
	
	
	
    
}

/*for dicount code box*/
.btn-link {
  	padding: 15px;
     border-radius: 2px;
	font-weight: 500;
   	color: #000;
background: rgba(255,255,255,.05);
    border: 2px solid rgba(0,0,0,.1);
}
/*for dicount code box*/
#store-pickup {
	text-align: center;
}
.addon .name {
display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
	padding: .5em 0;
    font-size: 16px;

}
#breadcrumbs {
	font-size: 14px;
	background-color: #f4f2ef;
    border-bottom: 1px solid #e4e3de;
}
/* Container */
.toggle-group {
    display: flex;
    width: 100%;
    justify-content: center;
    gap: 15px;
    
    padding: 15px;
    border-radius: 10px;
    
    margin-bottom: 20px;
    flex-wrap: wrap;
}

/* Remove spacing around forms */
.toggle-group form {
    margin: 0;
    flex: 1 1 100%;
}

/* Hide radios */
.toggle-group input[type="radio"] {
    position: absolute;
    opacity: 0;
}

/* Default button style */
.toggle-group label {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 16px 20px;
    background: #fff;
    color: #333;
    font-size: 17px;
    font-weight: 600;
    border-radius: 10px;
    border: 1px solid #ccc;
    cursor: pointer;
    transition: 0.25s ease;
    width: 100%;
}

/* Simple hover (rollover) effect */
.toggle-group label:hover {
    background: #efefef;
    border-color: #bbb;
}

/* Selected state */
.toggle-group input[type="radio"]:checked + label {
    background: #e1e1e1;
    border-color: #888;
    color: #111;
    box-shadow: 0 0 6px rgba(0,0,0,0.15);
}

/* Icons */
.toggle-group label i {
    font-size: 18px;
}

/* Mobile: full width stacked buttons */
@media (max-width: 768px) {
    .toggle-group {
        flex-direction: column;
    }

    .toggle-group form {
        width: 100%;
    }
}

/* Heading */
.toggle-heading h3 {
    margin-top: 25px;
    text-align: center;
    font-weight: 600;
    color: #333;
}


#product .description {
	
   font-size: 1.3em; 
	padding-top: 20px;
    padding-bottom: 0; 
    color: #888;  
	text-align: justify;
		
}
#addons > .row{
		display: flex;
		align-items:start;
		flex-wrap:wrap;
		justify-content:space-between
	}

	#addons > .row .addon {
    width: 15%;
}
.row.value {
	margin-left: 15px;
}
#product .prices {
    font-size: 1.7em;
    padding-bottom: 10px;
	display: contents;
}



#addons {
    margin-bottom: 20px;
    border: 1px solid #fffdf8;
    border-radius: 2px;
}
.sympathy-buttons {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin: 30px 0;
}
.sympathy-btn {
    display: block;
    padding: 22px 24px;
    border: 2px solid #e3e3e3;
    border-radius: 10px;
    text-decoration: none;
    background: #ffffff;
    transition: all 0.25s ease;
}
.btn-title {
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: #222;
    margin-bottom: 6px;
}
.btn-sub {
    font-size: 14px;
    color: #666;
    line-height: 1.4;
}

.description1 {
	background-color: #f4f2ef;  
   
	border: 1px solid #e4e3de;
    border-radius: 3px; 
    color: #999;   
	padding: 0px 20px 0px 20px;
	margin-top: 15px;
	margin-bottom: 15px;
	text-align: center;
	max-width: 60%;
	margin: auto;
}


 #product .price::before {
    content: '$';
    vertical-align: baseline;  
	
}
	
#category .product .sale-price, #product .sale-price, #shopping-cart .product .sale-price {
    display: inline-table;
    position: relative;
    color: #D11;
	font-size: .8em;
}
.checkout .heading {
   
     background: #fff; 
  border-top: 1px solid #fff; 
    border-bottom: 1px solid #fff; 
}
html body .btn-default {
  
    color: #000;
    border: 1px solid #000000; 
}
body .btn-primary, .btn-default, body .btn-lg {
   background: #000000;
		color: #fff; 
    
    border: 1px solid #242424;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .98px;
   
    border-radius: 0;
    text-decoration: none !important;
	 width: 50%;
	margin: auto; 
}

 body .btn-md {
    background: #dbe0da;
    color: #000;
    border: 1px solid #dbe0da;
	border-radius: 4px;
	text-transform: uppercase;
}
.btn-md:hover {
    background: #000000;
	color: #fff;
    border: 1px solid #000000;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .2);
}

.preserve-newlines {
    white-space: pre-line;
}
.container {
	max-width: 1400px !important;
}
#header-wrapper {
	       
}
 
#header { 
	
	
	margin: auto;
	text-align: center;
	text-transform: uppercase;
/*	background: rgba(0, 0, 0, .25);*/
	background: #000000;
       position: relative;
    z-index: 1000;
    width: 100%;
   

}

/*Pull banner up behind header */
.collection-banner {
  /*   margin-top: -110px !important; */
/*	margin-top: -120px !important;   */
	 z-index: 10000;  
	background: #000;
    
}

/* Ensure banner is tall enough */
a.banner.main-banner {
    min-height: 650px !important;
}

#header .address {
/*	margin: 0 0 20px;*/
}

#logo { 
	position: relative;
	display: inline-block;
	
}



#logo img {
	
	
	margin: auto;
}

#header .address {
	display: block;
}
html #product .values .value {
    min-height: 3.5em; 
     padding-top: 5px; 
     padding-bottom: 5px; 
	color: #888;
	
}
#product .values label {
   
    border-left: 1px solid #fffdf8; 
}

#product .values .value-name {
    line-height: 1.5em;
	display: flex;
	font-size: 16px;
}

	
#product .values .icon {
    
    padding-top: 0; 
}

#top-navigation {
	color: #fff;
	line-height: 56px;
	background: #000;
	
	
}

#top-navigation .wrapper {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 1400px;
	margin: auto;
}

#top-navigation .address {
	display: none;
	line-height: 1.5;
    letter-spacing: .15px;
	
	font-size: 18px;
	padding: 10px;color: #fff; 
	text-shadow: 0 0 5px #000, 0 0 5px #000, 0 0 25px #000, 0 0 50px #000;
	
}

#top-navigation .icon {
	color: #fff; 
	font-size: 21px !important; 
}

#top-navigation .menu-item.desktop {
	display: none;
}

#top-navigation .menu-items {
	display: flex;
	position: relative;
	justify-content: space-evenly;
	align-items: center;
	flex: 1;
	width: 100%;
	text-align: center;
}

#top-navigation .menu-item {
	cursor: pointer;
	position: relative;
	display: inline-block;
	flex: 1;
	padding: 0;
	color: #fff; 
	text-shadow: 0 0 5px #000, 0 0 5px #000, 0 0 25px #000, 0 0 50px #000;
	
	font-size: 14px;
	text-decoration: none !important;
}

#top-navigation .menu-item:hover {
	color: #FFF;
	background: #111;
}

#top-navigation .phone-number a {
	color: #fff;
}
#toggle-search,
#toggle-navigation {
	cursor: pointer;
	user-select: none;
}

#search-container {
	display: none;
	position: absolute;
	z-index: 1000;
	top: 56px;
	left: 0;
	width: 100%;
	padding: 10px;
	background: #111;
}

#search {
	position: relative;
	width: 100%;
	max-width: none;
	line-height: 0;
}

.show-search #search-container {
	display: block;
}

#search input {
	margin: auto;
	height: 44px !important;
}

#search [type=submit] {
	line-height: 44px;
}


h1, h2, h3, h4,  h6 {
  font-family: "Cormorant", serif;
    font-weight: 600;
    color: #444;
  	text-transform: capitalize;
}


.h1, h1 {
   
	text-align: center;
	
}
	h1 {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center; 
		margin-bottom: 20px;
   
}
h1 { 
	font-size: 2.8em !important;  
    font-weight: 600;  
    
	 
	
}  /* ~38px */
h2 { font-size: 2.8rem;   }  /* ~32px */
h3 { font-size: 2.6rem; }  /* ~26px */
h4 { font-size: 2.3rem; }  /* ~21px */
h5 { font-size: 4.1rem;
font-family: "Ballet", cursive;}  /* ~18px */
h6 { font-size: 1rem;   }  /* ~16px */


.h2, h2 {
    
	
	
	text-transform: capitalize;
}
	
	h2 {
   text-align: center;
    width: 100%;
    
    align-items: left; 
		color: #676855;
   
}


h3 {
    display: flex;
    width: 100%;
    justify-content: center; 
    align-items: center; 
	
   
}


#checkout-shipping {
	padding-left: 10px;
	padding-right: 10px;

}
#product .price {
    display: block;
    position: relative;
    color: #444;
    font-size: 16px;
	text-align: center;
	margin-bottom: 15px;
}

#product .price .decimal
{
	vertical-align: baseline; 
     opacity: 10; 
    width: 0;
     margin: 0 -.1em;
}
.row {
     margin-left: 0; 
    margin-right: -15px;
}
#login {
	padding: 10px;
}
#shopping-cart {
    padding: 15px;
    padding-bottom: 50px;
}
#checkout-success

 {
    margin: auto;
    padding: 30px 0 50px;
	     max-width: 1000px;
}



@media (min-width: 460px){
	#top-navigation .menu-item {
		padding: 0 10px;
		font-size: 18px;
	}
}

@media (min-width: 768px){
	#top-navigation {
		line-height: 50px;
	}

	#top-navigation .menu-item.mobile {
		display: none;
	}

	#top-navigation .menu-item.desktop {
		display: inline-block;
	}

	#top-navigation .menu-items {
		justify-content: flex-end;
		flex: initial;
		width: auto;
	}
	#sticky-navigation.floating a.lv-1, #sticky-navigation.floating span.lv-1
	{
    color: #fff;
}

	#top-navigation .menu-item {
		flex: initial;
	}

	#top-navigation .address {
		display: inline-block;
		
	}

	#header .address,
	#toggle-navigation {
		display: none !important;
	}

	#sticky-navigation {
		position: -webkit-sticky;
		position: sticky;
		top: 0;
		z-index: 2;
		transition: none;
	/*	background: rgba(0, 0, 0, .25);*/
		background: #000; 
		

	}

	#sticky-navigation.floating {
		background: rgba(0, 0, 0, .65);
		/*box-shadow: 0 1px 3px rgba(0, 0, 0, .2);*/
		transition: background .3s;
	}

	#search-container {
		position: absolute;
		z-index: 10000;
		top: 44px;
		left: -80px;
		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);
	}
	
}

#navigation {
	display: table;
	cursor: default;
	/*max-width: 1400px;*/
	margin: auto;
	font-family: 'Montserrat', sans-serif;
  font-weight: 500; 
}

#navigation a {
	color: #fff; 
	/*text-shadow: 0 0 5px #000, 0 0 5px #000, 0 0 25px #000, 0 0 50px #000;*/
	text-transform: uppercase;
}

#navigation a.lv-1 {
	font-size: 16px;
	padding: 0 13px;
	font-weight: 600 !important;
	 
	
}

#navigation li:hover a {
	color: #fff;
}

#navigation li:last-child ul {
	left: 0;
	right: auto;
}

#navigation ul {
	display: inline !important;
	float: none !important;
}

@media (max-width: 767px){
	html body {
		padding-top: 49px;
	}

	html body #navigation {
		top: 56px;
	}

	#navigation,
	#navigation ul ul {
		line-height: 56px;
	}

	#navigation li.active {
		border-top: 1px solid #111 !important;
	}

	#navigation li.active > a {
		color: #000;
		background: #222;
	}

	html body #navigation .lv-1 {
		    background-color: #f4f2ef;
    border-bottom: 1px solid #e4e3de; 
	}

	html body #navigation a {
		border-bottom: 1px solid rgba(0, 0, 0, .1) !important;
	}

	html body #navigation li.active > a.lv-1::before {
		display: inline-block;
		float: none;
		color: #999;
		margin-right: 10px;
		font-family: initial;
		content: '\2039';
	}

	#addons > .row{
		display: flex;
		align-items:start;
		flex-wrap:wrap;
		justify-content:space-between
	}

	
	#header .phone-number a {
		
		margin-bottom: 20px;
		color: #fff;
		line-height: 1.8em;
		
	}
	#header .address {
   
		color: #fff;
		font-size: 1.4em;
        
        padding: 10px;
        line-height: 1.8em;
		background: #000;
}
	#addons > .row .addon{
		width:50%;
	}
	h1 {
    font-size: 1.8em !important; 
    font-weight: 400;
    letter-spacing: .05em;
		margin-top: 15px;
}
	.description1 {
    
    max-width: 94%; 
		margin-bottom: 15px;
    
}
	
  h2 { font-size: 1.7rem; }
  h3 { font-size: 2.4rem; 
	margin-top: 15px;}
  body { font-size: 15px; }
}

@media (min-width: 768px){
	
	#navigation ul ul {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity .5s;
	}

	#navigation li:hover ul {
		visibility: visible;
		pointer-events: all;
		opacity: 1;
	}
}

#navigation li ul a,
#navigation li:hover ul a {
	color: #000;
}
#navigation li ul a { 
	text-transform: capitalize;
	border-bottom: 1px solid rgba(0,0,0,.1); 
}

#navigation li:not(.active) a.parent::after {
	display: inline-block;
	margin-left: .6em;
    content: '\203A';
}

@media (min-width: 768px){
	#navigation li a.parent::after {
		display: inline-block;
		margin-left: .6em;
		content: '\203A';
	}

	#navigation a.parent::after {
		transform: rotate(90deg);
	}
}

#page {
	position: relative;
	z-index: 1;
/*	max-width: 1400px;*/
    margin: auto;
	
}

#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%;
}

@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+5),
	.homepage-callout:nth-child(9n+8),
	.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;
}

.btn {
	font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  letter-spacing: 0.5px;
}
.btn-sm {
    display: inline;
    padding: 5px 10px;
    font-size: 14px !important;
    line-height: 1.5;
    border-radius: 3px;
    margin: auto;
	
	
	font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  letter-spacing: 0.5px;
}


.btn-primary {
	min-width: 200px;
	background: #60061D;
	border: 1px solid #60061D;
	border-radius: 0;
}

.btn-primary:hover {
	color: #fff;
    background-color: #59774b;
    border: 1px solid #fff;
    text-shadow: 0px 0px 8px rgba(0, 0, 0, .3);
}

#to-top {
	z-index: 9999999;
}

.google-review-card {
	width: 100%;
	margin: 0;
	background: rgba(255, 255, 255, .6);
	border: none;
	box-shadow: none;
}

.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%;
	}
}
#product {
	
	max-width: 1400px;
	margin: auto;
	margin-top: 0;
	padding-top: 0;
}

#category {
	margin-left: 0;
	margin-right: 0;
	max-width: 1400px;
	margin: auto;
}

#category h1,
#product .product-name {
	margin: 10px auto;
	color: #000000 !important; 
	font-size: 36px;
	 
	border-bottom: none;
}


#product #details {
    margin-top: 0;
}
#product .option {
	display: none; 
	margin-left: 0px;
    margin-right: 0px;
	
	
	
    padding-top: 1em;
    padding-bottom: 1em;
    color: #000;
    background: #fff;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff; 
	text-transform: uppercase;
}

#category .product .price .cents, #product .price .cents, #shopping-cart .product .price .cents {
    vertical-align: baseline;
}


#product #image .image-wrapper,
#product #image img{
	width:100%;
}

.category-heading {
/*	display: table;*/
	position: relative;
	max-width: 80%;
	margin: 0 auto 20px;
	padding: 0 10px;
	text-align: center;
	color: #999;
}

.subcategories,
.category-products {
	width: 100%;
	margin-bottom: 10px;
	display: grid;
	grid-gap: 10px;
	grid-auto-rows: auto;
	grid-template-columns: 1fr 1fr; 
}

.product a,
.category a {
	display: flex;
	flex-direction: column;
	position: relative;
	width: 100%;
	 
	
}

.product a .btn,
.category a .btn{
	width:auto; 
} 

#addons-wrapper {
    margin-top: 0;
	padding: 10px;
}

#shopping-cart .product .price {
    
    color: #f00;
	font-size: bold;
}

.category a {
	padding-bottom: 0;
}

.product img,
.category img {
/*	width: 100%;*/
	height: 100%;
	object-fit: cover;
	object-position: top;
}

.product .details {
	display: block;
	z-index: 1;
	bottom: 0;
	left: 0;
	width: 100%;
	color: #333;
}


.product:hover .details {
	/*padding: 30px 15px 60px;
	opacity: .9;
	background: rgba(0, 0, 0, .5);*/
}


#category .product .details .price {
	color: #222 !important;
	
	font-size: 16px;
  line-height: 1.5;
}
html #category .product .price::before  {
    content: '$'; 
    vertical-align: baseline;
}

.subcategories .category .name {
	position: absolute;
	bottom: 10px;
	left: 10%;
	right: 10%;
	padding: 10px 0;
	font-size: 13px;
	color: #000;
	background: rgba(255, 255, 255, .9);
	box-shadow: 0 2px 3px rgba(0, 0, 0, .4);border-radius: 5px;
}

@media (min-width: 840px){
	.product a {
		padding-bottom: 50px;
	}

	.product .details {
	/*	font-size: 1.2em;*/
		
	}

	.subcategories,
	.category-products {
		margin-bottom: 0;
		grid-gap: 20px;
		grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	}

	.subcategories .category .name {
		bottom: 10px;
		font-size: 16px;
	}
}

#category .product .name {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 16px;
  line-height: 1.5; 
	 
}

#category .product .price .cents,
#product .price .cents,
#shopping-cart .product .price .cents {
	margin-left: .15em;
	    font-size: 1.6em;
}

#content {
	max-width: 1200px;
	margin: auto;
	text-align: center;
}

#content p {
	max-width: 80%;
	margin: auto;
/*	font-size: 1.3em;*/
	margin-bottom: 2em;
}

.email-subscription-form {
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	align-items: center;
	flex-wrap: wrap;
	max-width: 800px;
	margin: auto;
}

.email-subscription-form h4 {
	width: 100%;
	margin: 0;
	padding: 0 25px !important;
	line-height: 44px;
	background: #1C1C1C;
}

.email-subscription-form br {
	display: none;
}

.email-subscription-form input {
	flex: 1;
	height: 44px;
	border: none;
	border-radius: 0;
}

.email-subscription-form input[type=submit] {
	padding: 8px;
	min-width: auto;
	max-width: 125px;
	text-transform: uppercase;
	background: #59774b;
}

.social-icons {
	padding-top: 25px;
	text-align: right;
}

.social {
	float: none;
	display: inline-block;
	margin: 0 0 5px 5px;
}

#footer {
	padding: 50px 0;
	color: #fff; 
	text-align:center;
	background: #000000;
	border-top: 1px solid #333;
}

@media (min-width: 720px)
{
	#footer {
		margin-top: 20px;
	}

	.email-subscription-form h4 {
		width: auto;
	}
	

}

#footer a {
	color: #ccc;
	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: #000000;
	
}

.checkout #footer2 {
	margin: auto;
}

#footer2 a {
	color: #fff; 
}

#footer2 a:hover {
	color: #CCC;
}

.social.knot {
	background: #a7d2f3;
}

.fa-knot:before {
	content: "\f004";
}
#product .values .unchecked {
	    line-height: 1.5em;
}

#product .values :checked+.icon .checked {
	line-height: 1.5em;
}

.social.ww {
    background: #19b5bc;
}

.fa-ww:before {
	content: "\f1e7";
}

img.alignleft {
	float: left;
	margin: 0 15px 5px 0px;
	display: block;
    max-width: 100%;
    height: auto;
}

img.alignright {
	float: right;
	margin: 0 0 5px 15px;
	display: block;
    max-width: 100%;
    height: auto;
}

@media (max-width: 767px)
{
	#top-navigation {
		position: absolute;
		top: 0;
		width: 100%;
	}
	#logo {
		padding-top: 10px;
		display: ruby;
		
	}
	#header {
		height: auto; 
	}
	.banner-contents {
    min-width: 60%;
    max-width: 600px;
    padding: 30px 0;
		margin-top: 100px; 
	}
	
	#top-navigation {
    
    line-height: 54px;
	}
	.banner-subtitle {
		font-size: 22px;
		max-width: 80%;
		
	}
	
	#product .prices .price {
    color: #000;
    text-align: center;
}
	#product .price::before {
    content: '$';
    vertical-align: super;
	}
	h1 {
		font-size: 2.0272865295rem;
		
	}
	#product {
     padding-top: 4px; 
}
	#footer2 {
		font-size: .65em;
	}

	#navigation .lv-1 {
		color: black;
		background: #fff;
	}

	#category h1, #product .product-name{
		font-size: 30px;
	}

	#product .values{
		
		flex-direction: row;
		flex-wrap:nowrap;
		align-items:center;
		justify-content:space-between;
	}

	.subcategories .product .btn,
	.category-products .product .btn{
		min-width:auto;
		width:auto;
	}

	.subcategories,
	.category-products{
		padding: 0 8px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.square-third {
		width: 100%;	
}
	.square-half {
		width: 100%;
		background-position: center center;
}
	
}

@media (min-width: 768px)
{
	#top-navigation {
	/*	line-height: 44px;*/
		background: #000;
		  margin-top: 0 !important;
	}

	#website-controls {
		position: relative;
		z-index: 1;
		margin-top: 20px;
	}

	#navigation li:hover {
		background: rgba(110, 93, 69, .2);
	}

	#navigation ul ul {
		box-shadow: 0 6px 10px rgba(0, 0, 0, .3), 0 2px 2px rgba(0, 0, 0, .2);
	}

	#navigation ul {
		display: table;
		width: auto;
		margin: auto;
	}
}

@media (min-width: 992px)
{
	.container {
		width: auto;
	}
	
}

@media (min-width: 1400px)
{
	#footer {
		margin-top: 50px;
	}
}

.ratio{
	height:0;
	padding-top:100%;
	position:relative;
}

.ratio > img{
	position:absolute;
	inset:0;
	height:100%;
	width:100%;
} 
@media (min-width: 767px)
{
	.combo-text-image {
		display: table;
		width: 100%;
		min-height: 500px;
		overflow: hidden;
		text-align: center;
		background: #ecefe6;
		
	}

	.combo-text {
		display: table-cell;
		padding: 4em 2em;
		font-family: inherit;
		font-weight: normal;
		font-size: 1em;
		line-height: 1.6;
		margin-bottom: 1.25rem;
		text-rendering: optimizeLegibility;
		 vertical-align: middle;
	}

	.combo-image {
		display: table-cell;
		position: relative;
		width: 50%;
		height: 100%;
		overflow: hidden;
	}

	.combo-image img {
		position: absolute;
		top: 0;
		left: 50%;
		max-width: none;
		height: 100%;
		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;
	}
	
	
	
}












/*NEW HEADER STUFF*/
    /*MOBILE*/
@media only screen and (max-width: 819px){
    div#new-header {
        display:none;
    }
}
    /*DESKTOP*/
@media only screen and (min-width: 820px){
    div#header,
    div#top-navigation {
        display:none;
    }

    div#new-header {
        display: flex;
        padding: 0 30px;
        justify-content: space-between;
        align-items: center;
        margin: auto;
        text-align: center;
        text-transform: uppercase;
        /* background: rgba(0, 0, 0, .25); */
        background: #000000;
        position: relative;
        z-index: 1000;
        width: 100%;
        padding-top: 15px;
    }

    #new-header .other-header-items {
        display: flex;
        flex-grow: auto;
    }

    #new-header .contact-info {
        display: flex;
        color: white;
    }
    #new-header .contact-info a{
        color:white
    }

    #new-header .address{
        display:block!important /* IN STYLE.CSS */;
        margin: 0; /* IN STYLE.CSS */
        text-transform: none;
    }


    #new-header {
        gap: 24px;
        padding-top: 15px;
    }

    #new-header .other-header-items {
        display: flex;
        align-items: center;
        gap: 14px;
        flex: 0 0 auto;
    }

    #new-header .contact-info {
        display: flex;
        align-items: center;
        white-space: nowrap;
        flex: 0 0 auto;
        color: #fff;
        font-size: 13px;
    }
	
	#new-header .contact-info > span {
	    transform: translateY(2px);
	}

    #new-header .contact-info .address,
    #new-header .contact-info .phone-number,
    #new-header .contact-info .phone-number a {
        white-space: nowrap;
        color: #fff;
    }

    #new-header .other-header-items #search {
        flex: 0 0 230px;
    }

    #new-header .other-header-items .btn {
        width: auto !important;
        min-width: 95px;
        margin: 0;
        height: 36px;
    }

    #new-header span.separator {
        margin: 0 3px;
    }


    #new-header .other-header-items {
        display: flex;
        flex-grow: auto;
    }

    #new-header .contact-info {
        display: flex;
        color: white;
    }
    #new-header .contact-info a{
        color:white
    }

    #new-header .address{
        display:block!important;
        margin: 0;
        text-transform: none;
    }


    #new-header {
        gap: 24px;
        padding-top: 15px;
    }

    #new-header .other-header-items {
        display: flex;
        align-items: center;
        gap: 14px;
        flex: 0 0 auto;
		font-size: 16px;
		
    }

    #new-header .contact-info {
        display: flex;
        align-items: center;
        white-space: nowrap;
        flex: 0 0 auto;
        color: #fff;
        
		
		font-size: 16px;
    
    font-weight: 600 !important;
		 
    }

    #new-header .contact-info .address, 
    #new-header .contact-info .phone-number,
    #new-header .contact-info .phone-number a {
        white-space: nowrap; 
        color: #fff;
		
		font-size: 16px; 
    }

    #new-header .other-header-items #search {
        flex: 0 0 230px;
    }

    #new-header .other-header-items .btn {
        width: auto !important;
        min-width: 95px;
        margin: 0;
        height: 36px;
		 
    }

    #new-header span.separator {
        margin: 0 5px; 
		color: #000;
    }


    #navigation {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: nowrap;
		
		
    }

    #navigation > ul {
     /*   display: flex !important;*/
		display: table;
        align-items: center;
        margin: 0;
        padding: 0;
    }

    #navigation > ul > li.lv-1 {
        position: relative;
    }

    #navigation > ul > li.lv-1::before {
        content: "";
        width: 1px;
        height: 18px;
        background: rgba(255,255,255,.55);
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
    }

    #navigation > ul:first-child > li.lv-1:first-child::before {
        display: none;
    }

    #navigation a.lv-1 {
        padding: 0 22px;
    }




} 


    #search [type=submit],
    #search input{
        height: 36px !important;
    }
	
	#search [type=submit] {
		line-height: 36px;
	}

    body:not(.homepage) #sticky-navigation,
    body:not(.homepage) #sticky-navigation.floating{
        background-color: #000000!important;
    }