html,body{
min-height:100vh;
min-width:100vw;
padding:0px;
margin:0px;
box-sizing:border-box;
color: #949494;
font-family: "Roboto",sans-serif;
font-size: 15px;
}




.clear{clear:both; }
.item {
background-color: #eee;
margin: 10px 0px 10px 10px;
padding:10px;
float:left;

}


table{ font-size:80%; }

form#options{
border-color:red;
background-color: #fff;
display: block;
padding: 20px;
position: fixed;
top:128px;
width: 20vw;
min-width:335px;
min-height:100vh;
overflow-y:scroll;
overflow-x:auto;
}

div#container{
width:77.5vw;
float:right;
background-color:#fff;
top:85px;
padding-top: 30px;
}


tr td:first-child{ text-align:right; }



form#options,div#container {

}



.logo {
height: auto;
margin: 25px 0 0 20px;
position: absolute;
width: 250px;
display:none;
}




h2{
 background-color: #fff;
    border-radius: 0 0 5px 5px;
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
    font-size: 1.2em;
    font-weight: 500;
    margin: 0;
    min-height:127px;
    padding: 11px 11px 0;
    text-align: center;
}





h2.filter-title{
background-color: #fff;
border-radius: 0 0 5px 5px;
box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
font-size: 1.5em;
font-weight: 700;
margin: 0;
min-height: 76px;
padding: 23px 11px 0;
text-align: left;
}





fieldset, .item{
background-color: #f7f7f7;
border: 0 none;
border-radius: 2px;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
display: block;
margin: 0 20px 20px 0;
overflow: hidden;
padding: 11px;
}




div#container{
min-width:80vw;
width:80vw;
max-width:80vw;
 
}

.item{
margin:0px 0px 20px 20px;
width:21%;
padding: 0;
}

.item img{
border-radius:5px 5px 0 0;
border:1px solid rgba(0,0,0,0.2);
}


.tab-wrapper {
top: 20px; 
}

small sup{
font-weight:900;
font-size:10px;
color:#37913e;
}
 

form#options, div#container{ top:96px;  }

.plant-type-tab{ padding:8px 16px 7px; }

.plant-type-tab.active {

background-color: #fff;
    border-right: 1px solid #bbb;
    border-top: 1px solid #ddd;
    font-weight: bold;
    top: 1px;
    z-index: 1;
}



body{ background-color:#FFF; }



header{
background-color: rgba(0,0,0,0.016);
    border-bottom: 1px solid #ddd;
    height: 55px;
    margin: 0;
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: 90;
}

header:after{
border-top: 10px solid #f5f5f5;
    box-shadow: 0 0 10px #eee;
    content: " ";
    height: 0;
    margin: 0;
    padding: 0;
    position: fixed;
    top: 55px;
    width: 100vw;
}




form#options{
background-color: #fff;
    display: block;
    height: auto;
    min-height: 100vh;
    min-width: 335px;
    overflow-x: auto;
    overflow-y: scroll;
    padding: 20px;
    position: absolute;
    top: 128px;
    width: 20vw;}

span.human_filtered,span.human_unfiltered{ font-weight:900;font-size:9px; }
span.human_filtered{ color:#38761d;  }
span.human_unfiltered{ color:#990000;  }

.image-container{
width:calc(100% - 22px);
height:400px;
background-size:cover;
background-position:bottom right;
margin:11px;
border-radius:4px;
}








.product-details-form-submit{
    padding-top: 30px;
    background-color: #53c68c;
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 3px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
    color: #fff;
    display: block;
    font-size: 20px;
    margin: 11px;
    min-height: 94px;
    padding: 15px 10px;
    text-decoration: none;
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
    width: calc(100% - 22px);
    
}    
    



/*** FIELDSET ACCORDIFICATION ***/

fieldset{


background-color: #f7f7f7;
    border: 0 none;
    border-radius: 0;
    box-shadow: 1px 0 3px 0 rgba(0, 0, 0, 0.2);
    display: block;
    margin: -8px 20px 0 0;
    overflow: hidden;
    padding: 13px;
 width: 100%;
}


legend {
font-weight:700; 
    position: relative;
    top: 17px;
cursor:pointer;
transition: all .3s ease 0s;
width: 100%;
}


legend.legend-active{
top:0px;
color:#3b9340;
top: 20px;

}








/*** END FIELDSET ACCORDIFICATION  ***/








h2 a{
   background-color: #53c68c;
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 3px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
    color: #fff;
    display: block;
    font-size:20px;
    min-height:94px;
    padding: 15px 10px;
    text-decoration: none;
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
    width: calc(100% - 22px);
	margin:11px;
   
   }



h2 a.one-line{ padding-top:30px; }
h2 a.two-line{ }



    
    
.checkbox-wrapper{

border-top: 1px dashed #ddd;
margin-bottom: 20px;
margin-top: 20px;
padding-top: 10px;
}    


    
    

fieldset input[type='checkbox'],fieldset label{
cursor: pointer;
display: inline;
line-height: 25px;
margin: 10px 10px 0 0;
padding: 0;

}


    
    
    
    
    
    
    
    
form#search,form#options, form#favorites, form#share-your-favorites {
    background-color: #fff;
    display: block;
    height: auto;
    min-height: 100vh;
    min-width: 335px;
    overflow-x: auto;
    overflow-y: scroll;
    padding: 20px;
    position: absolute;
    width: 20vw;

}

form#search{ top: 128px; }

form#favorites { top: 992px; }

form#share-your-favorites{ top: 434px; }

form#options { top: 434px; }

h2.filter-title{ box-shadow:none; }

.search-fieldset{ box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); 

cursor:auto;
}




input[type=text],input[type=email]{
    margin: 0;
    outline: 0;
    -webkit-appearance: none;
    line-height: 1.2142em;
    padding: .67861429em 1em;
    font-size: 1em;
    background: #fff;
    border: 1px solid rgba(34,36,38,.15);
    color: rgba(0,0,0,.87);
    border-radius: .28571429rem;
    box-shadow: 0 0 0 0 transparent inset;
width:100%;
}

input[type=submit],button{
	background-color: #53c68c;
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 3px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 15px;
    font-style: normal;
    font-weight: 700;
    line-height: 1em;
    margin: 0 0.25em 0 0;
    min-height: 1em;
    outline: 0 none;
    padding: 0.6em 1.5em;
    text-align: center;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    vertical-align: baseline;
}

.heart{
	background-position: right top;
	background-size: cover;
	border: medium none;
	content: "";
	cursor: pointer;
	display: block;
	height: 16%;
	min-height: 88px;
	min-width: 88px;
	opacity: 0.5;
	position: absolute;
	right: 10px;
	top: 10px;
	transition: all 0.25s ease-in-out 0s;
	width: 20%;
}


.image-container:hover + .heart, .heart:hover{ opacity:1; }

.heart.unhearted{

	background-image: url("/assets/images/common/outline-heart-green-top-right-corner.png");

}


.heart.hearted{

	background-image: url("/assets/images/common/filled-heart-green-top-right-corner.png");
	opacity:.95;

}



.pseudo-image-link{

	display:block;
	width:100%;
	height:100%;
	padding:0px;
	margin:0px;

}

.search-header{
	background-color: #fff;
	border-radius: 0 0 5px 5px;
	box-shadow: none;
	display: block;
	font-size: 2rem;
	font-weight: normal;
	line-height: 2.5em;
	margin: 0;
	max-width: none;
	min-height: 0;
	min-width: 0;
	padding: 11px 11px 0;
	text-align: left;
	width: auto;
}
input[type="email"].search-input-text,
input[type="text"].search-input-text,
input[type="submit"].search-input-submit{

	display:block;
	float:left;

}



input[type="text"].text-input-filter,
input[type="email"].search-input-text{

	margin-right: 2%;
	width: 100%;

}

input[type="submit"].search-input-submit{ width:30%; }

.searchable-text{ display:none; }

.favdebug{
    
    display:none;
    font-weight: normal;
    height: auto;
    margin: 20px 20px 0 0;
    padding: 20px;
    position: fixed;
    right: 0;
    text-align: center;
    top: 0;
    width: auto;
    z-index: 999;

}

span.quick-delete{
	background-color: rgba(255, 0, 0, 0.1);
    border: 2px solid rgba(255, 0, 0, 0.2);
    border-radius: 50%;
    box-sizing: border-box;
    color: rgba(255, 0, 0, 0.2);
    cursor: pointer;
    display: none;
    font-size: 12px;
    font-weight: 900;
    height: 20px;
    line-height: 0;
    padding: 8px 0 0 4px;
    position: absolute;
    right: 50px;
    top: 109px;
    width: 20px;

}


    
    
    

form#favorites {
    
    display: block;

    left: 0;
    max-width: 20vw;

    min-width: 100px;
    overflow: hidden;
    padding-top: 0;
    position: absolute;
    top: 294px;
    width: 80%;





}





form#favorites p, form#favorites ul, form#share-your-favorites p, .favorites-send-result{

	background:rgba(255,255,255,0.5) none repeat scroll 0 0;
	border: 1px solid rgba(34,36,38,0.15);
	border-radius: 0.285714rem;
	box-shadow: 0 0 0 0 transparent inset;
	color: #999;
	font-size: 1em;
	font-weight: 400;
	line-height: 1.2142em;
	margin: 0 2% 0 0;
	outline: 0 none;
	padding: 0.678614em 1em;
	width: 100%;

}







form#favorites ul{
list-style: none;
}

form#favorites ul li:before {
content: "❤";
font-size:100%;
font-weight:900;
 margin-right:10px;
}









aside, form#search, form#options, form#favorites, form#share-your-favorites{
min-width:20vw;
width:20vw;
max-width:20vw;
float:left;
position: relative;
top: 39px;
display:block;
}


form#search, form#options, form#favorites, form#share-your-favorites {
top:auto;
left:auto;
position:relative;

min-height:auto;
height:auto;
max-height:auto;
min-width: 280px;
}






span.clear-favorites-text{
box-sizing: border-box;
color: rgba(255, 0, 0, 0.2);
cursor: pointer;
font-size: 14px;
font-weight: 900;
height: 19px;
line-height: 0;
padding: 8px 0 0 4px;
position: absolute;
right: 9px;
top: 30px;
width: 72px;

    }







span.quick-favorites-delete{
	position:absolute;
	content: 'X';
    background-color: rgba(255, 0, 0, 0.1);
    border: 2px solid rgba(255, 0, 0, 0.2);
    border-radius: 50%;
    box-sizing: border-box;
    color: rgba(255, 0, 0, 0.2);
    cursor: pointer;
    
    font-size: 12px;
    font-weight: 900;
    height: 20px;
    line-height: 0;
    padding: 8px 0 0 4px;
    position: absolute;
    right: 21px;
    top: 28px;
    width: 20px;
}



    
    
form#favorites input[type=email],form#favorites input[type=submit],form#favorites button{ margin-top:20px; }

form#favorites input[type=email]{ width:70%; float:left; }

form#favorites input[type=submit],form#favorites button{
	float: right;
	height: 2.7rem;
	min-height: 40px;
	width: 27%;
	text-shadow: 0 0 2px rgba(0, 0, 0, 0.25);
}


form#favorites button:before{color: #558855;
	content: "✉";
	display: block;
	float: right;
	font-size: 1.75em;
	font-weight: 700;
	height: 20px;
	line-height: 0;
	margin: 5px -10px 0 0;
	padding: 0;
	position: relative;
	width: 20px;
	text-shadow: 0 0 2px rgba(0, 0, 0, 0.25);
}
    
    
    
    
    
    
    
    
    
    
    
    
.favorites-send-result{
display: block;
    margin: 20px 0 0;
    position: relative;
    top: 7px;
    width: 100%;
}    
    



.favorites-send-result .error{

background-color: rgba(255, 0, 0, 0.1);
    border: 2px solid rgba(255, 0, 0, 0.2);
    border-radius: 5px;
    color: rgba(255, 0, 0, 0.82);
    display: block;
    margin: 0;
    padding: 10px;
}










.favorites-send-result .success{


background-color: rgba(48,163,22,0.1);
    border: 2px solid rgba(48,163,22,0.2);
    border-radius: 5px;
    color: rgba(48,163,22,0.82);
    display: block;
    margin: 0;
    padding: 10px;
}



#send-favorites-email-address,button#email-favorites, .favorites-send-result{ display:none; }

div.loader{
background-color: rgba(255, 255, 255, 0.75);
height: 100vh;
overflow: hidden;
position: fixed;
width: 100vw;
text-align:center;
display:none;
}		
		
div.loader svg{
  height: 25vw;
    margin: 25vh auto auto;
    width: 25vw;
}
    
div#no-matches{
    color:#0e5713;
    display: none;
font-size:1.5;
    font-weight: 900;
    left: 50vw;
    position: fixed;
    text-align: center;
    top: 50vh;
    width: 20vw;
    }

   




header::after{
display:none;
}




@media only screen and (min-width: 1200px) and (max-width: 1440px) {
	
	/*** .logo{ border:1px solid red; } ***/
	
	.item {
		width:29%; 
	}
	
	div#container{
	max-width: 77vw;
    min-width: 77vw;
    width: 77vw;
	}
	h2 a.one-line{ padding-top:auto; }
	
	
	
}







@media only screen and (min-width: 768px) and (max-width: 1200px) {




	/*** .logo{ border:1px solid green; } ***/

	.item {
		width:45%; 
	}
	
	/***
	form#options{ 
	    max-width: 30%;
	    min-width: 30%;
	    width: 30%;	
	}
	***/
	div#container{
		min-width: 68%;
    	width: 68%;
    	max-width: 68%;
	}



}





@media only screen and (min-width: 4px) and (max-width: 768px) {



	/*** .logo{ border:1px solid blue; } ***/

	.item {
		width:91%; 
		}
		
			

	
	form#options,div#container{
	top:96px;
	}
	
	.tab-wrapper {
		display: none;
	}
	
	
	

}












