@import url('dropdown.css');


@import 'https://fonts.googleapis.com/css?family=Lato|Gilda+Display';



body {
	background-color: #fff;
	margin: 0;
	font-family: Gilda Display, Lato, sans-serif, Arial, Sans;
	text-rendering: optimizeLegibility !important;
}

a{
	text-decoration: none;
	color: #eee;
}
img {
	border: 0;
	max-width: 100%; 
}
table{
	width: 100%;
	border-collapse: collapse;	
}
td {
	vertical-align: top;
	padding: 8px 1.5vw;
}
tr:nth-child(odd){
    background-color: #f3f3f3 !important;
}
tr:nth-child(even) {
    background-color: #fcfcfc !important;
}
h1 {
	font-size: 28px;
	font-weight: normal;
	display: block;
	padding: 5px 0 5px 70px;
    font-family: Gilda Display;
/*    font-style: italic; */
}
.ribbon{
	margin-top: 160px;
	text-align: right;
}
.sculptglass{
	text-align: center; 
	margin: 20px auto;
	display: grid;
	gap: 0.5rem; 
	justify-content: center;
	font-size: 2rem; 
}
#rosalies{
	text-align: center;
	padding: 25px 0 0 0;
	font-size: 54px;
	color: #94ad74;
}
#rosalies span {
	white-space: nowrap;
}
#products{
	font-size: 30px;
	color: #fff;
	margin: 30px auto 10px auto;
	text-align: center;
/*	font-style:italic;  */
}
#launching{
	margin: 50px auto 10px auto;
	font-size: 30px;
	color: #68784e;
	text-align: center;

}
#mainribbon{
	margin: 50px auto 10px auto;
	max-width: 80vw;
	min-height: 40px;
	padding: 0 20px; 
	text-align:center; 
	color: #fff;
	background-color:#7C876B;
	line-height: 40px;	
}
.basket{
	position: absolute;
	height: 38px;
	width: 120px;
	padding: 10px;
	right: 0;
	top: 0;
	z-index: 2000; 
}
.arc{
	background-color: #fff;
	width: 800px;
	border-radius: 50% 50% 50px 0 / 80px 80px 0px 0;
	max-width: 80vw;
	margin: 30px auto -30px auto;
	padding: 0px 20px 10px 20px;
}
#container{
	max-width: 1300px;
	margin: 0 auto;
}
#mainwhite{
	background-color: #fff;
	padding	: 0 20px;
}
#mainwhite a{
	color: #000;
}
.beautiful{
	font-size: 22px;
	padding: 15px 10px 5px 10px;
	text-align:center;
	color: #94AD74;
/*    font-style: italic; */
}


.bigheader{
	font-size: 50px;
	color: #fff;
	line-height: 60px;
	margin: auto !important;
	font-family: Archivo Black, Arial, Helvetica, sans-serif;
	transition: 1s;
	text-shadow: 3px 3px rgba(0,0,0,0.8);
	max-width: 950px;

}
.bigheader a{
	color: #fff;
	text-decoration: none;
}
.bigheader div {
	padding: 50px 10px 10px 10px;
	text-align: right;
}
.bullettext {
	text-align: center;
	color: #fff; 
	font-size: 30px;
	position: absolute;
	bottom: 0; 
	width: 100%; 
	line-height: 34px;
	background-color: rgba(0,0,0,0.6);
/*    font-style: italic; */
}
.bullettext div{
	padding: 10px;
}
 .bullettext a{
	color: #fff; 
}
.masonry {
    margin: 1.5em 0 0 0;
    padding: 0;
    -moz-column-gap: 1.5em;
    -webkit-column-gap: 1.5em;
    column-gap: 1.5em;
    font-size: .85em;
    -moz-column-count: 3;
    -webkit-column-count: 3;
    column-count: 3;
	overflow: hidden;
    -moz-column-fill: balance;
}
.masonry4 {
    margin: 1.5em 0 0 0;
    padding: 0;
    -moz-column-gap: 1.5em;
    -webkit-column-gap: 1.5em;
    column-gap: 1.5em;
    font-size: .85em;
    -moz-column-count: 4;
    -webkit-column-count: 4;
    column-count: 4;
}
.item {
    display: block;
    background: #fff;
    margin: 0 0 1.5em;
    width: 100%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
	/* height: 200px; */
	position: relative;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	color: #444;
/*    font-style: italic; */
    -webkit-column-break-inside: avoid;
}
.prodimage{
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}
.frontpage{
	margin: 2rem auto;

}
.prodbox .item{
	background-size: cover;
}
.prodbox .item div{
	font-size: 16px !important;
}
.prodbox h2, .prodbox p{
	display: block
}
.item a{
	color: #333 !important;
	display: block;
}
.item img {
	width: 100%;
	height: auto;
}
.item .div{
	padding: 5px;
	line-height: 1.4;
	font-size: 28px;
	color: #333;
	text-align: center;
}

.item  #one, .item #div1 {
	background-color: rgba(136, 71, 137,0.6);
}
.item  #two, .item #div2 {
	background-color: rgba(100, 127, 66,0.6);
}
.item  #three, .item #div3 {
	background-color: rgba(71, 87, 127,0.6);
}
.item #div4, .blogbanner  #four, .blogbanner #div4{
	background-color: rgba(0,0,0,0.6);
}
/*.prodbox .item  #four{
	background-color: rgba(0,0,0,0.6);
}*/
.item #div1,.item #div2,.item #div3,.item #div4 {  
	opacity: 0; 
	height: 270px;
	transition: 1s;
}
 .blogbanner #div4 {  
	opacity: 0; 
	height: 400px;
	transition: 1s;
}
.item #div1:hover,.item #div2:hover, .item #div3:hover, .item #div4:hover, .blogbanner #div4:hover {
	opacity: 1;
}
.item #div1 div,.item #div2 div,.item #div3 div,.item #div4 div{
	padding: 5px 20px;
	font-size: 20px;
	overflow: hidden; 
	height: 180px;
}
.blogbanner #div4 div {
	height: 190px;
	padding: 40px;
	font-size: 20px;
	overflow: hidden; 
}
.ribbon{
	position: absolute;
	right: 0;
	top: -120px;

	min-height: 45px;
	color: #fff;

/*    font-style: italic; */
	font-size: 24px;
	z-index: 1010;
	padding: 0px 60px;
	line-height: 45px;
}
.purple{

	min-height: 45px;
	color: #fff;

/*    font-style: italic; */
	font-size: 24px;
	padding: 0px 60px;
	line-height: 45px;
	background-size: 100% 100%;
	text-align: center;
	margin-top: 10px;
}
.purple a{
	text-align: right;
	display: block;
	color: #333 !important;
} 
.blue{
	min-height: 45px;
	color: #fff;

/*    font-style: italic; */
	font-size: 24px;
	padding: 0px 60px;
	line-height: 45px;
	background-size: 100% 100%;
	text-align: center;
	margin-top: 20px;
}
.green{
	min-height: 45px;
	color: #fff;
	padding: 0px 60px;
	line-height: 45px;
	background-size: 100% 100%;
	text-align: center;
	top: 20px;
}
.breadcrumb{
	margin-top: 20px; 
    font-family: Gilda Display;
/*     font-style: italic; */
	line-height: 45px;
	font-size: 28px;
}

.breadcrumb a{
	color: #444 !important; 
}
.breadcrumb a:hover{
	color: #000 !important; 
}
.topcat{
	display: inline-block; 
	padding-left: 3vw;

}
.topcat2{
	display: inline-block; 
}
.thiscat{
	display: inline-block;;

}
.manu{
	display: inline-block;
	background: url('/images/ribbon2-blue.png') no-repeat left center;
	padding: 0px 0 0px 60px;

}
.frontproducts {
    margin: 1.5em 0 0 0;
    padding: 0;
    -moz-column-gap: 1.5em;
    -webkit-column-gap: 1.5em;
    column-gap: 1.5em;
    -moz-column-count: 6;
    -webkit-column-count: 6;
    column-count: 6;
	font-size: 18px;
}
.frontproducts  .prods{
    display: block;
    width: 100%;
}
.prodbox .prods {
	margin: 10px 20px;
}
 .prods {
	width: 200px;
    background: #fff;
    margin: 0 0 1.5em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
	height: 200px;

/*     font-style: italic; */
	text-align: center;
}

 .prods img {
	max-width: 160px;
	max-height: 120px;
}
.frontproducts .money, .frontproducts .money a{
	color: #723E6E;
}
.frontproducts .prods a{
	color: #000; 
}
#mainfooter{
    padding: 0px 20px;
	margin:  2rem auto 0 auto;
	background-color: #444;
	color: #fff;
	font-size: 16px;
	clear: both; 
	line-height: 180%; 

}
#mainfooter .flex {
	justify-content: center;	
	display: flex;
}
#mainfooter .flex div {
	padding: 20px 3vw; 
}
.copy {
	text-align: center;
	padding: 20px; 
}
.copy a{
	color: #fff;
}
#mainfooter ul, .subcats ul {
	width: 230px;
	margin: 0;
	padding: 0;
}
#mainfooter li{
	list-style: outside none none;
	border-bottom: 1px solid #505C3C; 
	margin: 0;
}
#mainfooter li a, .subcats li a{
	padding: 3px 20px;
	display: block;
}
#mainfooter li a:hover, .subcats li a:hover{
	background-color: #000;
	color: #fff !important;
}
/*	.subcats{
	width: 230px; 
border-right: 1px solid #aaa;
	float: left;
} */
.subcats ul {
	margin-top: 15px; 
}
.subcats li{
	list-style: outside none none;
	border-bottom: 1px solid #ddd; 
	margin: 0;
}
.subcats li a {
	color: #666 !important;
}
/* .categories .prodbox{
	margin-left: 200px; 
} */
.categories{
	display: grid;
	gap: 2rem;
}
.prodbox {
	display: grid;
	justify-content: center;
	gap: 1rem; 
}
.prodbox .item {
	width: 100%;
	max-width: 300px;
	margin: 5px 5px 20px 5px;
	min-height: 240px;
}
.prodimage img{
	height: 190px;
	width: 100%;
}
.productpage{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.productpage .left{
	border-right: 1px solid #ccc;

}


.productpage .left, .productpage .right{
	padding: 20px;
	width: calc( 50% - 43px ); 
}
.productpage .left .mainpic{
	text-align: center; 
}
.productpage .left .mainpic img{
	margin: auto;

	height: auto;

}
.pics {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 50px;
}
.pics img {
	border-radius: 5px;
} 
.frame-square {
  display: inline-block;
  vertical-align: top;
  width: 133px;
  height: 133px;
  margin: 5px;

}
.crop {
  height: 100%;
  overflow: hidden;
  position: relative;

}  
.crop img {
    display: block;
    min-width: 100%;
    min-height: 100%;
    margin: auto;
    position: absolute;
    top: -100%;
    right: -100%;
    bottom: -100%;
    left: -100%;
	max-width: none;
}
.right h1 {
	font-size: 28px;
	font-weight: normal;
	display: block;
	color: #333;
	background: transparent;
	padding: 0px;

/*     font-style: italic; */
}
.right h2 {
	font-size: 24px;
	font-weight: normal;
	display: block;
	color: #333;
	background: transparent;
	padding: 0px;

/*     font-style: italic; */
}
.cost {
	font-size: 20px;
	font-weight: normal;

/*     font-style: italic; */
	vertical-align: middle;
}
.cartform{
	display: inline-block;
	padding: 10px 20px 10px 0px;
}
.cartform input{
	font-size: 14px;
	padding: 4px; 
/*     font-style: italic; */
}
.cartform input, .cartform select{
	font-size: 14px;
	padding: 4px; 

}

input.search  {
    font-family: Calibri,"Trebuchet MS",Arial,Helvetica,sans-serif,Sans;
    font-size: 14px;
    border-radius: 5px;
    padding: 7px;
    border: 2px solid #757761;
    background-color: #FFF;
	max-width: 60vw;
	width: 400px;
}
input[type="submit"]{
	color: #333;
	border:0;
	min-width: 150px;
	font-size: 14px;
	padding: 20px; 
	cursor: pointer;
}

.gap {
	margin-bottom: 20px; 
}
.also {
		color: #734C6B;
font-family: Gilda Display;	
	font-size: 24px;
/*     font-style: italic; */
}
.clear{
	clear: both;
	height: 20px; 
}
.justtext{
	padding: 30px;
	margin-left: 250px; 
}
.justtext h2{
	font-size: 28px;
	font-weight: normal;
} 
.blogbanner{
	height: 400px;
	background-position: center center;
	background-size: cover;
	position: relative;
} 
.blogbanner .black{
	background-color: rgba(0, 0, 0, 0.6);

	position: absolute;
	bottom: 0;
	width: 100%;
	color: #fff;
	text-align: center;
/*     font-style: italic; */
}
.blogbanner a{
	color: #fff !important;
}
.blogbanner a:hover{
	color: #ccc !important;
}
.blogbanner .black .title{
	font-size: 28px;
	padding: 15px 20px 5px 20px;
}
.blogbanner .black .subheading{
	font-size: 20px;
	padding: 5px 20px 15px 20px;
}
.newsItem {
	padding: 15px 30px;
	font-size: 18px;
	color: #333;
	line-height: 150%;
}
.newsItem .head a{
	color: #fff !important;
	text-decoration: none;
	padding: 5px;
} 
.newspic{
	width: 180px;
	text-align: center;
	margin:  10px;
	float: right;
}
.newsItem img {
	max-height: 130px;
	max-width: 180px;
}
.justleft a{
	text-align: left;
}

.catdescription {
	padding-block: 1rem;
	color: #333;
}

/* source: http://www.ehow.com/how_12214447_make-collapsing-lists-java.html */
.FAQ { 
    display : block;
    margin: 20px;
    vertical-align: top; 
    height:auto !important; 
	clear: left;

}
.list {
    display:none; 
    height:auto;
    margin:0;
    float: left;
	transition: 1s;
}
.show {
    display: none; 

}
.hide:target + .show {
    display: inline; 
}
.hide:target {
    display: none; 
}
.hide:target ~ .list {
    display:inline; 

}

/*style the (+) and (-) */
.hide, .show {
	border-radius: 40px;
	width: 40px;
	height: 40px; 
	font-size: 40px;
	padding: 5px; 
	color: #67784E !important;
	text-align: center;
	text-decoration: none;
	float: left;
	font-weight: bold;
/*	border: 3px solid #67784E;*/

}

.hide:hover, .show:hover {
	color: #000;
/*	text-shadow: 0 0 1px #666;
	text-decoration: none;
	box-shadow: 0 0 4px #222 inset;
	opacity: 1;
	margin-bottom: 25px;
	transition: 0.5s;*/
}
.list p{
    height:auto;
    margin:0;

}
.question {
	float: left;
	height: auto;
	width: 90%;
	line-height: 20px;
	padding-left: 20px;
	margin-bottom: 25px;
	font-style: italic;
}
.nomargin {
	margin-left: 0 !important; 
}
.iw {
	font-size: 12px;
	padding: 4px 100px;
	text-align: right;

} 
.iw a{
	color: #bbb;
	text-decoration: none;

}
.social img{
	width: 50px;
	height: 50px;
	margin: 10px; 
	
}
#map{
	height: 700px;
	width: 100%;
	max-height: 100%; 
}
.maintext{
	padding: 30px 5vw;
	line-height: 180%;
	font-size: 1.1rem;
	color: #333;
} 
.maintext h2{
	font-size: 1.25rem;
}
.vt{
	height: 700px;
	max-height: 60vh;
	border: 0;
	frame-border: 0;
	width: 100%; 
	margin: 50px 0
}

.thumbnails {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;

}
.thumbnails div{
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	flex: 1 1 auto;
	margin: 5px 0;
	height: auto;
	width: auto; 
	padding: 5px 0; 
}
@supports(gap:5px){
.thumbnails {
	margin: 5px auto 0 auto;
	gap: 10px;
	padding:  0; 
}
.thumbnails div{
	margin: 0;
	padding: 0;
	overflow: hidden; 
}
}
.thumbnails div img{
	width: 100%; 
	display: block;
}
.vimeo-wrapper, .vimeo-wrapper2 {
  width: 100%;
	background-size: cover; 
  overflow: hidden;
  position: relative; 
	background-image: url('/images/video-frame.jpg'); 
	background-position: center center; 
}
.vimeo-wrapper:after {
    padding-top: 33.33%;
    display: block;
    content: ""; 
}

.vimeo-wrapper iframe, .vimeo-wrapper2 iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; 
}



@media only screen and ( max-width: 1024px )
{
.frontproducts{
    -moz-column-count: 3;
    -webkit-column-count: 3;
    column-count: 3;
}
.sculptglass{
	margin-top: 60px; 
}
.sculptglass img {
	width: 250px; 
}
.vimeo-wrapper{
	height: 500px; 
	margin-block: 2rem; 
}
}




@media only screen and ( max-width: 640px )
		
{
#rosalies{

	padding: 10px 20px;
	font-size: 34px;

}
#rosalies span {
	display: block;
}
.masonry, .frontproducts, .masonry4 {
    -moz-column-count: auto;
    -webkit-column-count: auto;
    column-count: auto;
	text-align: center;
}
.frontproducts .prods {
	max-width: 160px;
}
#mainwhite{
	padding	: 0;
}
.ribbon{
	background: rgba(100, 127, 66,0.8);
}
#mainfooter .flex{
	display: block;
}
.purple, .blue{
	margin: 10px 20px 0 20px;
}
.topcat, .thiscat{
	display: block;
	width: auto;
	margin: 0;
	padding-left: 3vw;
}
.breadcrumb{
	background: transparent;
	width: auto;
}
.productpage .left, .productpage .right{
	width: calc( 100% - 40px ); 
	border: 0;
}
.categories {
	padding: 0 20px;
} 
.subcats{
	display: block;
	float: none; 
	width: 100%;
	border: 0;
}
.categories .prodbox{
	margin: 0;
}
.subcats ul {
	width: auto;
}
.justtext{
	margin: 0; 
}
.catdescription {
	margin-left: 0;
	padding: 10px 20px; 

}

}


@media only screen and ( min-width: 640px )
		
{

@supports(object-fit: cover) {
.thumbnails div img{
	height: 100%;
	object-fit: cover;
}
.thumbnails div{
	height: 200px;
}
}
@supports(display:grid) {
	.thumbnails{
	display: grid;
	grid-template-columns: 1fr 1fr
}	
}
blockquote {
    border-radius: 3px;
    position: relative; 
    text-align: center;
    padding: 1rem 1.2rem;
    color: #4a4a4a;
    margin: 1rem 0 0.5rem 0;
    color: #4a4a4a;
    background: #E8E8E8;
}
 /* blockquote:before,
 blockquote:after{
    font-family: FontAwesome;
    position: absolute;
    top: 13px;
    color: #666;
    font-size: 34px;
}
 blockquote:before{
    content: "\f10d";
    margin-right: 13px;
    right: 100%;
}
 blockquote:after{
    content: "\f10e";
    margin-left: 13px;
    left: 100%;  
    top: auto;
    bottom: 13px;
} */
blockquote em{
	display: block;
	text-align: right; 
}
}




@media only screen and ( min-width: 900px )
		
{
	.categories{
		grid-template-columns: 230px auto;
	}
	.prodbox{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
	}
	.prodbox .item{
		margin: auto; 
		width: 100%; 
		min-height: 300px; 
		display: grid;
		max-width: 100%;
	}
	.prodbox .item img{
		width: 100%; 
		min-height: 250px; 
	}
	.prodbox.frontpage{
		padding-inline: 5vw;
	}
}