@font-face {
    font-family: 'Noto Sans';
    src: url('fonts/NotoSans.eot');
    src: url('fonts/NotoSans.eot?#iefix') format('embedded-opentype'),
        url('fonts/NotoSans.woff2') format('woff2'),
        url('fonts/fonts/NotoSans.woff') format('woff'),
        url('fonts/NotoSans.ttf') format('truetype'),
        url('fonts/NotoSans.svg#NotoSans') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root {
  --darkGreen: #3e8e41;;
  --lightGreen: #4CAF50;
  --darkBlue:#3f87a6;
  --lightBlue:#e4f0f5;
  --gray:#ddd;
  --textBlue:#00008B;
}

body {
   margin:0 auto;
   padding:0;
   background-color: var(--lightBlue);
   font-family: 'Noto Sans', Helvetica, sans-serif;
}

#pagecontainer {
	position: relative;
	height:100%;
	min-height: 100vh;
    background-color: var(--lightBlue);
}

.sideNavList{
	list-style-type:none;
	margin:0;
	padding:0;
}
.sideNavTitle{
	font-size:32px;
}
.sideNavList li{
	padding:1px;
	text-shadow:0px 0px 0px black;
}
.sideNavList a{
	text-decoration:none;
	color:#00008B;
}
.sideNavList a:hover{
	color:#4CAF50;
}
.sideNavList a:active{
	font-weight:bold;
}

#footer {
	width: 100%;
    background-color: #3f87a6;
    color: #fff;
	bottom: 0;
	padding-top:10px;
	text-align:center;
}

#footContainer {
	display:flex;
	flex-direction: row;
	flex-wrap:wrap;
	justify-content:center;
	align-items: center;
}

.footColumn {
	padding: 15px 3vw;
	height:100%;
}
.footSplitColumn{
	display:flex;
	flex-direction:column;
}

.footLink{
	color:white;
}

#header {
	background: url("../images/succulents-1030982.jpg");
    background-color: #3f87a6;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top;
    color: #fff;
	text-align: center;
	padding-top:10px;
	padding-bottom:8px;
	box-shadow:0px 0px 4px #000000;
}
.headerLink{
	color:white;
	font-weight:bold;
}
#login{
	display:block;
	width:100%;
}
.contrastShadow{
	-webkit-filter: drop-shadow( 0 0 2px white);
  	filter: drop-shadow( 0 0 10px white);
}
#titleImg{
	max-width:600px;
	width:100%;
	max-height:30vh;
}
#mainLogo{
	height:150px;
	max-height:30vh;
}
/*
#mainLogo:hover{
	animation-name: example;
	animation-duration: 4s;
}
*/

@keyframes example {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(20deg);
	}
}

#maincontent {
	width:90%;
	margin:0 auto;
    border-collapse: collapse;
    letter-spacing: 1px;
    text-align: center;
	overflow: hidden;
	height:100%;
}

#categories {
	float:left;
	min-width: 150px;
	border: 1px solid black;
	border-radius:10px 25px 10px 50px;
	min-height: 450px;
	box-shadow: 2px 2px 4px #000000;
	padding: 0 1% 20px 1%;
	margin: 10px 20px 10px 0;
}

.dontWrap{
	overflow:hidden;
}

h1,h2,h3 {
	text-shadow:1px 1px 1px #000000;
	width: 100%;
	position:relative;
}
h1.outOfStock::before{
	content: "(Out of stock)";
	top:-20px;
	color:red;
	position:absolute;
	font-size:.7em;
	text-shadow:none;
}
#content h2:not(:first-child){
	margin-top:50px;
}

#content {
	padding:20px;
}

ul.menustrip {
	text-align: center;
	width: 100%;
	list-style-type:none;
}
ul.menustrip li{
	margin-right:5px;
	float:left; 
	margin-left:0px;
}

#cartLogo{
	width:15px;
	height:15px;
}

#menuMobile{
	display:none;
}

.navbar {
	height: 33px;
	position: relative;
	z-index: 99;
	width:70%;
	display:inline-block;
}
.navbarCart{
	height: 28px;
	position: relative;
	z-index: 99;
	display:inline-block;
}
.cartMenuItem{
	border:1px solid black;
	margin-top:-1px;
}
#aboveTheFold{
	display:flex;
	align-items: center;
	justify-content: start;
	flex-direction: column;
	margin:0 auto;
	padding:0px 10px;
	background-image: url('../images/yousef-espanioly-u16ZFBf4yUI-unsplash.jpg');
	background-size: cover;
	background-repeat: no-repeat;
    background-position: center;
	max-width:800px;
	height:100%;
}
.aboveTheFoldButton{
	display:inline-block;
	cursor:pointer;
	margin:0 auto;
	margin-top:20px;
	margin-bottom:10px;
	background-color:var(--lightGreen);
	padding:20px;
	width:70vw;
	max-width:65vw;
	width:200px;
	box-shadow:1px 1px 3px black;
	border-radius:5px;
	color:white;
}
.noEdges {
	padding:0;
	margin:0;
	width:auto;
	display:inline;
	line-height:.6em;
}
#menuCart {
	margin-top: 10px;
	display:inline-block;
	height:28px;
	z-index: 98;
}
/* Links inside the dropdown */
.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

/* Dropdown Button */
.menutop {
  background-color: #4CAF50;
  color: white;
  padding: 10px;
  border: none;
  box-shadow: 1px 1px 2px #000000;
  border-radius: 5px;
}
.mobileMenuImage{
	height:20px;
	width:20px;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f1f1f1;
  min-width: 160px;
  margin-top: 9px; /*change if height of a.menutop padding changes */
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  color:black;
}
/* Links inside the dropdown */
/* Links inside the dropdown */
.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {background-color: #ddd;}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {display: block;}

/* Change the background color of the dropdown button when the dropdown content is shown */
.dropdown:hover .menutop {background-color: #3e8e41;}

.productitem {
	position:relative;
	border-radius:20px;
	border: 1px solid black;
	height: 260px;
	width: 220px;
	display:inline-block;
	overflow:hidden;
	margin-bottom:-6px;
	margin-right:-1px;
	max-width:100vw;
}
.productitem a{
	text-decoration:none;
	color:#00008B;
}
.productitem:hover{
	opacity:.5;
}

.contactForPrice{
	font-size:.9em;
}

.imagefromcategory {
	width:12em;
	height:12em;
	border-radius:5px;
	object-fit: cover;
	position:absolute;
	bottom:5px;
	margin-left: auto;
	margin-right: auto;
	left:0;
	right:0;
}
#productimages {
	float:left;
	width:33%;
	max-width:33%;
	padding-bottom:10px;
	padding-right:10px;
	margin:0 auto;
	overflow:hidden;
}
#mainImage{
	width:100%;
	max-height:400px;
	object-fit: cover;
}
.imageThumb{
	width:23%;
	margin-left:1%;
	margin-right:1%;
}
.imageThumb:hover {
	opacity:0.5;
}
#productorder {
	text-align:center;
}

.leftCell{
	text-align:right;
	width:50%;
}
.rightCell{
	text-align:left;
	width:50%;
}

.tableInput{
	width:100px;
	max-width:90%;
}

.inputTable{
	display:table;
	margin:0 auto;
}
.inputRow{
	display:table-row;
	max-width:500px;
	width:100%;
	padding-bottom: 10px;
}
.inputCell{
	display:table-cell;
	margin:0 auto;
	padding-top:10px;
	text-align:right;
}
.inputCell:last-child{
	text-align:left;
}
@media screen and (max-width:290px){
	.inputCell{
		display:block;
		width:100%;
		text-align:center;
		margin:0 auto;
	}
	.inputCell:last-child{
		text-align:center;
	}
}

.inlineImage{
	float:left;
}

.defaultTable{
	margin:0 auto;
}

#logos{
	display:flex;
	justify-content: center;
	align-items:center;
	padding-top:10%;
}
.logo {
	height:50px;
}

#cartTable{
	margin:0 auto;
	border-collapse: collapse;
	margin-bottom:10px;
	max-width:100vw;
}
#cartTable tr{
	border:solid;
	border-width:1px 0;
	border-color:#3e8e41;
}
#cartTable td{
	padding:1vh 1vw;
}
.cartTableTitle{
	font-weight:bold;
}
.cartImage {
	max-width:9vw;
}
@media screen and (max-width:420px) {
	.cartTableCell{
		font-size:3.5vw;
	}
}

/*The negative margin value is negated by the flex-box margins to have consistent margins. This is a workaround hack*/
.wrapper{
	display:flex;
	padding-top:20px;
	margin-top:-20px;
	flex-wrap:wrap;
	flex-direction:row;
	justify-content:space-between;
	align-items: center;
}
.wrapper div,table{
	margin:0 auto;
}
.wrapper>div,table{
	margin-top:20px;
}
.message {
	color: red;
}
.goodMessage{
	color:green;
}
.badMessage{
	color:red;
}
.myButton{
	display:inline-block;
	cursor:pointer;
	margin:0 auto;
	margin-top:20px;
	background-color:var(--lightGreen);
	padding:20px;
	width:70vw;
	max-width:65vw;
	width:200px;
	box-shadow:1px 1px 3px black;
	border-radius:5px;
	color:white;
}
.myButton:hover {
	background-color:var(--darkGreen);
}
.myButton.addToCartButton{
	width:20vw;
}
/*
#proceedToCheckout{
}
*/
#proceedToCheckout:hover {
	background-color:var(--darkGreen);
}
#proceedToCheckoutLink{
	color:white;
	font-size:1.2em;
}

#socialMediaLinksTop{
	position:absolute;
	right:0px;
}
/* Add a hover effect if you want */
.fab{
	text-decoration:none;
}
.fab:hover {
	opacity: 0.5;
}
.fa-ebay {
	background: white;
}
.fa-facebook {
	background: #3B5998;
	color: white;
}
.fa-twitter {
	background: #55ACEE;
	color: white;
}
.fa-youtube {
  background: #bb0000;
  color: white;
}
.fa-instagram {
  background: #125688;
  color: white;
}
.fa-pinterest {
  background: #cb2027;
  color: white;
}

.fa-tumblr {
  background: #2c4762;
  color: white;
}

.shopnowCategoryContainer{
	white-space: nowrap;
	height:240px;
	overflow:hidden;
}
.shopnowLeftButton{
	float:left;
	width:5%;
	color:red;
	height:240px;
	position:relative;
}
.shopnowLeftArrow{
	margin: 0;
	position: absolute;
	top:50%;
	left:50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.shopnowRightButton{
	float:right;
	width:5%;
	height:240px;
	color:red;
	position:relative;
}
.shopnowRightArrow{
	margin: 0;
	position: absolute;
	top: 50%;
	left:50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.shopnowProductContainer{
	display:inline-block;
	width:200px;
}
.shopnowProductImage{
	height:198px;
	width:198px;
}
.shopnowProductTitle{
	white-space: normal;
}

#confirmFinancials{
	display:inline-block;
	vertical-align:top;
}
#paymentPersonal {
	margin-top:3px;
	display:inline-block;
	vertical-align:top;
}

.paymentProductImage {
	height:20px;
	width:20px;
}

.createAccountInput{
	margin-top:0px;
}

#customerDetails{
	width:50%;
	max-width:80%;
	display:inline-block;
	margin:0 auto;
}
.inputField {
	margin-top: 10px;
	display: flex;
	flex-direction: column;
	text-align:left;
	padding: 5px;
	border: 1px solid darkgray;
	border-radius: 3px;
	outline-width: 3px;
	outline-offset: -2px;
	background-color: #F6F6F6;
	box-shadow: inset 0 0 2px #999999;
	height:40px;
}
.inputField > span {
	color: darkgray;
	font-family: sans-serif;
	font-size: 12px;
	margin-bottom: 5px;
}
.inputField > input, .inputField > select {
	border: none;
	outline: none;
	background: none;
	font-size: 16px;
}
.inputField:focus-within > span, .infield.non-empty > span {
	color: blue;
	font-weight: bold;
}
.inputField.error {
	outline-color: red;
	outline-style: auto;
	background-color: #FFEEEE;
}
.inputField.error > span {
	color: red;
	font-weight: bold;
}
.accountSub {
	display:none;
	vertical-align:top;
	width:60%;
}

#createAccountDiv{
	width:80%;
	margin:0 auto;
	max-width:400px;
}

#accountMenu{
	display:inline-block;
	padding:0 3vw;
}
#accountDetails{
	display:inline-block;
	padding: 0 3vw;
}

#accountOrderHistory{
	margin:0 auto;
	width:auto;
}

#tableOrderHistory {
	margin: 0 auto;
	border: 1px solid black;
	border-collapse:collapse;
	width: 90%;
}
#tableOrderHistory td{
	border: 1px solid black;
	padding: 5px;
}
#tableOrderHistory td:first-child{
	white-space: nowrap;
}
#tableOrderHistory td:last-child{
	width:20vw;
	max-width:150px;
}

#bulletin {
	color:red;
	background-color:black;
	text-align:center;
	font-size: 1.4em;
}

#blankBackground{
	display:none;
	background-color: rgba(0,0,0,0.5);
	width:100vw;
	height:100vh;
	position:fixed;
	top:0;
	z-index:98;
}

#blankBackgroundGallery{
	display:none;
	background-color: rgba(0,0,0,0.5);
	width:100vw;
	height:100vh;
	position:fixed;
	top:0;
	left:0;
	margin-left: -5px;
	z-index:99;
}

#galleryImage{
	height:90vh;
	background-image: url("../images/fruittree.jpg");
	background-size: contain;
	background-repeat: no-repeat;
    background-position: center;
	margin-top:5vh;
}

#galleryDescription{
	position:fixed;
	color:white;
	font-size:1.6em;
	bottom:0;
	text-align:center;
	opacity:0.7;
	background-color:black;
	font-size:4vh;
	width:100vw;
	padding:0.15vh;
}

#galleryLeftArrow{
	top:50%;
	position:fixed;
	left:0;
	height:20vh;
	margin-top: -10vh; /* Negative half of height. */
	width:auto;
	opacity:0.7;
	max-width:20vw;
}
#galleryRightArrow{
	position:fixed;
	top:50%;
	right:0;
	height:20vh;
	margin-top: -10vh; /* Negative half of height. */
	width:auto;
	opacity:0.7;
	max-width:20vw;
}
#galleryLeftArrow:hover, #galleryRightArrow:hover, #galleryExit:hover{
	opacity:1;
}
#galleryExit{
	position:fixed;
	height:10vh;
	opacity:0.7;
	top:0;
	right:0;
	max-width:10vw;
}

.mobileMenu{
	display:none;
	background-color:#f1f1f1;
	border:1px solid black;
	width:100%;
	z-index:99;
	position:fixed;
	top:0;
	height:auto;
	margin-top:35px;
	color:black;
}
.mobileMenu a {
	color: black;
	padding: 12px 16px;
	text-decoration: none;
	display: block;
}

#mobileUserMenu{
	position:absolute;
	right:0;
	max-width:200px;
}
#mobileGeneralMenu{
	position:absolute;
	right:0;
	max-width:200px;
}
#mobileBasketMenu{
	position:absolute;
	right:0;
	width:auto;
	max-height:95vh;
	overflow-y:scroll;
}

/* Change color of dropdown links on hover */
.mobileMenu a:hover {background-color: #ddd;}

#dropdownContentCart{
	position:absolute;
	right:0;
	font-size:0.90em;
}

#menuCartTable{
	padding-top:0;
	margin:0 auto;
	table-layout: fixed;
}
#menuCartTable tr:nth-child(even) {
	background-color: #D3D3D3;
}
#menuCartTable td:first-child{
	white-space: nowrap;
}
@media (max-width:500px){
	#menuCartTable td:first-child{
		white-space: normal;
	}
}
#menuCartTable td:nth-child(3){
	white-space: nowrap;
}
#menuCartSubtotal {
	float:right;
	margin-right:10px;
	margin-bottom:10px;
}

.quote{
	padding:0 100px;
	margin: 70px 0;
	overflow:hidden;
}
.quote>div{
	background-color:var(--darkBlue);
	color:white;
	font-weight: 550;
	padding:10px 0;
	font-size:1.5em;
	box-shadow: 0px 0px 45px 50px var(--darkBlue);
}

/* Style the tab */
.tab {
	overflow: hidden;
	background-color: var(--lightBlue);
  }
  
  /* Style the buttons that are used to open the tab content */
  .tab button {
	background-color: var(--darkBlue);
	margin:0 auto;
	border: none;
	outline: none;
	cursor: pointer;
	padding: 14px 16px;
	transition: 0.3s;
	color:white;
	font-size:1.3em;
  }
  
  /* Change background color of buttons on hover */
  .tab button:hover {
	background-color: #ddd;
  }
  
  /* Create an active/current tablink class */
  .tab button.active {
	background-color: var(--lightGreen);
  }
  
  /* Style the tab content */
  .tabContent {
	display: none;
	padding: 6px 12px;
	outline: 1px solid var(--lightGreen);
	border-top: none;
  }

@media screen and (max-width:550px) {
	.quote{
		padding:0 50px;
	}
	.quote>div{
		box-shadow: 0px 0px 22.5px 25px var(--darkBlue);
	}
}
@media screen and (max-width:400px){
	.quote{
		padding:0 20px;
	}
	.quote>div{
		font-size:1.3em;
		box-shadow: 0px 0px 11px 12.5px var(--darkBlue);
	}
}

.badges{
	display:flex;
	flex-direction: row;
	justify-content: space-evenly;
	align-items: center;
}
.badges div{
	flex-grow: 1;
    flex-basis: 0;
	height:100%;
}
.badge{
	max-height:150px;
	width:auto;
	filter: brightness(0%);
}
.badges p{
	font-weight:600;
	font-size:1.3em;
}
@media screen and (max-width:500px) {
	.badges p{
		font-size: 5vw;
	}
	.badge {
		max-height:90px;
		width:auto;
	}
}

@media screen and (max-width: 470px){
	#productimages{
		width:100%;
		max-width:100%;
	}
}

@media screen and (max-width: 500px){
	#titleImg{
		max-height:25vh;
	}
	ul.menustrip li{
		float:right;
	}
	#menuDesktop{
		display:none;
	}
	#menuMobile{
		display:inline;
	}
	.navbar{
		float:right;
	}
	#login{
		display:none;
	}
	.navbarCart{
		display:none;
	}
	#menuCart{
		display:none;
	}
	.cartTable td{
		padding:1vw;
	}
	.cartTableTitle{
		font-size:3.2vw;
	}
	.myButton{
		width:80%;
		display:inline-block;
	}
	#customerDetails{
		width:80%;
		display:block;
	}
	#aboveTheFold{
		height:100%;
		margin-bottom:50px;
	}
	@media screen and (max-width:230px){
		#aboveTheFold{
			margin-bottom:90px;
		}
	}
	.aboveTheFoldButton{
		display:inline-block;
	}
	#header{
		padding:0;
	}
	h1, h2 {
		font-size:6vw;
	}
	@media (max-width:320px){
		h1, h2 {
			font-size:8vw;
		}
	}
}
.profileContainer{
	margin:50px 0;
	display:inline-block;
	border-radius:4px;
	overflow: hidden;
	width:auto;
	box-shadow:0 0 5px black;
	background-color: #ebf2f5;
}
.profile{
	overflow: hidden;
	display:flex;
	flex-direction: row;
	justify-content: center;
	align-items: stretch;
	max-width:900px;
	margin:0 auto;
	font-size:1.1em;
}
@media (max-width:768px){
	.profile{
		flex-direction: column;
	}
}
.profile .leftProfile{
	min-width:300px;
	background-color: #ebf2f5;
}
.profile .rightProfile{
	background-color: var(--darkBlue);
	color:white;
	align-items: center;
	display:flex;
	font-weight: 700;
	box-shadow: -10px 5px 5px 10px var(--darkBlue);
	max-width:100vw;
}
.profile ul{
	list-style-type:none;
	padding:0;
}
.profile li{
	font-weight:600;
	padding:7px 16px 7px 0;
	color:var(--darkBlue);
}
.profile li:nth-child(odd){
    color:darkGreen;
}

@media screen and (max-width: 630px){
	#cartShortcutText {
		display:none;
	}
	#menuDesktop {
		padding-left: 10px;
	}
}

@media screen and (max-width: 768px) {
	#categories {
		display:none;
	}
	
	#content {
		padding-left:3px;
		padding-right:3px;
	}
	
	#maincontent{
		width:99%;
	}
	
	.navbar {
		position:fixed;
		top:0;
		left:0;
		width:100%;
	}
	
	.footSplitColumn{
		display:flex;
		flex-direction:column;
	}
	#socialMediaLinksTop{
		display:none;
	}
	.navbarCart {
		position:fixed;
		top:3px;
		right:0;
		margin-top:10px;
		margin-right:1.5vw;
		width:auto;
	}
}

@media screen and (max-width:850px){
	#categories{
		display:none;
	}
	#productimages{
		width:50%;
		max-width:50%;
	}
}

@media screen and (min-width: 1000px) {
	#header {
		background-size: 1000px;
	}
}