@import url('https://fonts.googleapis.com/css2?family=Source+Code+Pro&display=swap');


* {
    margin: 0;
	padding: 0;
	box-sizing: border-box;
}


body {
	background-color: blue;
	font-family: Source Code Pro;
	font-size: 12px;
}

/*==================
  Typography
  ==================*/
  
h1, h2, h3, h4, h5, h6 {
  color: white;
}

p {
	color: white;
}

a {
	color: white;
	text-decoration: none;
}

/*==================
  Layout
  ==================*/
  
header {
	padding: 0.5rem;
}

.title {
	margin: 1rem 0 1rem 0;
	display:flex;
	flex-direction: column;
	align-items: center;

	
}

.title h1 {
	font-size: 3rem;

}

.title p {
	font-size: 16px;

}

/*==================
  nav
  ==================*/
  
.navbar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: blue;

}

.navbar-links ul {
	margin: 0;
	padding: 0;
	display: flex;
}

.navbar-links li {
	list-style: none;
}

.navbar-links li {
	list-style: none;
}

.navbar-links li a {
	
	padding: 1rem;
	display: block;
	font-size: 17px;

}

.navbar-links li:hover {
	background-color: grey;
	
}

.toggle-button {
	position: absolute;
	top: .75rem;
	right: 1rem;
	display: none;
	flex-direction: column;
	justify-content: space-between;
	width: 30px;
	height: 21px;
}

.toggle-button .bar {
	height: 3px;
	width: 100%;
	background-color: white;
	border-radius: 10px;
}

/*==================
  Footer
  ==================*/
  
footer p {
	margin: 0px 0px 5px 0px;
	text-align: center;
	font-size: 16px;
  
}

/*==================
  News/blog
  ==================*/
  

#blog-post__container {
	width: 100%;
	justify-content: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 2rem 0 2rem 0;
}

.blog-post {
	
	border: 1px solid black;
	width: 70%;
	max-width: 98rem;
	background-color: white;
	display: flex;
	align-items: center;
	justify-content: space-around;
	padding: 1rem;
	margin: 0.5rem 0 0.5rem 0;
}

.blog-post__img {
	width: 30%
}

.blog-post__info {
	width: 60%;
}

.blog-post__img img {
	width: 100%;
	
}

.blog-post__date span {
	display: block;
	color: grey;
	font-size: 1.2rem;
	font-weight: 600;

}

.blog-post__title {
	font-size: 2.5rem;
	color: black;
	margin: 0.5rem 0 0.5rem;
}
	
.blog-post__text {
	color: black;
	font-size: 1rem;
	margin-bottom: 1.5rem;
}
	
.blog-post__cta {
	display: inline-block;
	color: white;
	font-weight: 600;
	font-size: 1.2rem;
	padding: 1.5rem 3rem;
	background-color: blue;
}

.blog-post__cta:hover {
	transform: scale(1.05);
}


	

/*==================
  Items
  ==================*/
  
#item-wrapper {
	width: 100%;
	padding: 50px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
}


.item {
    background-color: white;
	border: 1px solid black;
	flex: 0 1 calc(25% - 1em);
	padding: 30px;
	margin: 15px 0 15px 0;	
}

.item-content {
	display: flex;	
	flex-direction: column;
	align-items: center;

}

.item-content h2 {
	flex:1;
	color: black;
	font-size: 18px;
	margin: 0px 0 10px 0;

	
}

.item-content h3 {
	flex: 1;
	color: blue;
	font-size: 17px;

}

.item-content a {
	flex:1;
	display: flex;
	flex-direction: column;
	align-items: center;
}
	

.item-content img {
    /*flex:1;*/
	width: 100%;
	border: 1px solid black;
	margin: 10px;
	cursor: pointer;	
}

.item:hover {
	transform: scale(1.05);
}



/*==================
  Product Page
  ==================*/
#product-page {
	display: flex;
	justify-content: center;
}

.product-container {
	width: 70%;	
	display: flex;
	background-color: white;
	border: 2px solid black;
	justify-content: space-between;
	padding: 50px;
	margin: 0 0 30px 0;
}

.product-imgs {
	flex-basis: 47%

}

.product-imgs img {
	border: 1px solid black;
	width: 100%;
}

.small-img-row {
	display: flex;
	justify-content: space-between;
	margin: 5px 0 0 0;
}

.small-img-col {
	flex-basis: 24%;
	cursor: pointer;
}
.small-img {
	width: 100%;
}

.product-info {
	flex-basis: 47%;
}	
  
.product-info h2 {
	color: black;
	text-align: center;
	font-size: 28px;
}

.product-info h3 {
	color: grey;
	text-align: center;
	font-size: 20px;
	margin: 0 0 20px 0;
}	

.product-info p {
	color: black;
	font-size: 18px;
}
	
.product-form {
	display: flex;
	flex-direction: column;
}

.product-form label{
	font-size: 14px;
	color: grey;
	font-weight: 600;
	margin: 0 0 5px 0;

}


.product-form select {
	margin: 0 0 10px 0;
	text-align: center;
    width: 40%;
	
	
	
}

.product-form input {
	margin: 0 0 10px 0;	
	text-align: center;
	width: 20%;
}
		
#cart-button {
    flex-basis: 100%;
	text-align: center;
	padding: 10px;
	background-color: blue;
	font-size: 18px;
	margin: 0 0 10px 0;
}
  
  
#cart-button:hover {
	transform: scale(1.05);
} 
  
  
  

/*==================
  Releases/Gallery
  ==================*/
  
#releases-page__wrapper {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.releases-page {
	display: flex;
    width:80%;
	flex-direction: column;
	align-items: center;


}


.list-wrapper {
    width:100%;
	background-color: blue;
	border: 3px solid white;
	padding: 2rem;
	margin: 1rem 0 1rem 0;
	
}	


.ascii-art {
    font-family: monospace;
    white-space: pre;
	color: white;
}

.list-wrapper ul {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
    text-align: center;
	width: 100%;
}

.list-wrapper li {
	list-style: none;
	width: 100%;
	border: 3px dotted white;
	margin: 1rem 0 1rem 0;
}


.list-wrapper li a {
	
	padding: 1rem;
	display: block;
	font-size: 16px;

}

.list-wrapper li:hover {
	background-color: black;
	
}

	
	
.releases-wrapper {
	display: flex;
	flex-direction: column;
	align-items: center;

}

.release {
	display: flex;
	flex-direction: column;
	width: 75%;
	border: 2px solid black;
	background-color: white;
    margin: 3rem 0 1rem 0;
	padding: 3rem;
	color: black;
	
}

.release h2 {
	color: black;
	margin: 0 0 1rem 0;
	text-align: center;	
	font-size: 1.5rem;

}

.release img {
	width: 100%;
	margin: 0 0 1rem 0;
}

.release p {
	color: black;
	font-size: 1rem;
	text-align: left;
	
}

/*==================
  Contact Page/info
  ==================*/
  
#contact-page {
	display: flex;
	flex-direction: column;
	align-items: center;

}
	
#contact {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 50%;
	padding: 20px;
	margin: 20px 0 20px 0;
	border: 5px dotted white;
	
}



#contact h2 {
	font-size: 24px;
	margin: 0 0 20px 0;
}

#contact p {
	font-size: 16px;
	font-weight: 400;
}

#contact address {
	text-align: center;
	margin: 20px 0 0 0;
	font-size: 18px;
	color: white;
	font-weight: 600;
}
#googleMap {
	margin: 10px 0 20px 0;

}

/*==================
  Responsivity
  ==================*/
  
@media all and (max-width: 1000px) {
	
	.title h1 {
	font-size: 2rem;
    }
	
	/*blog post*/
	.blog-post {
		
		width: 100%;
		padding: 0.5rem;
	}
	
	
	/*items*/
	
	#item-wrapper {
	    display: flex;
	    justify-content: space-between;
	    flex-wrap: wrap;
	}		
	

    .item {
	      flex: 0 1 calc(50% - 1em);
	      margin: 0 auto 10px auto; 		
    }
	
     /*product_page*/
	 
    .product-container {
		width: 100%;
	}
		
	 
	.product-info h2 {
	font-size: 26px;
    }
	
	
	
	
	/*release*/
	
	
	.ascii-art {
	margin: 30px;
	}
	
	.releases-page {
	display: flex;
	width: 100%;
	flex-direction: column;
    }
	
	.releases-wrapper {
	align-items: center;
	}
	
	.list-wrapper {
    width: 100%;
	padding: 0;
	border: none;
	margin:0;

	}
	
	.list-wrapper li {
	border: 0px;
	margin: 0 0 0 0;
    }
	
	
	.release {
	width: 80%;
	margin: 2rem 0 2rem 0;
    }
	
    #contact {
		width: 70%;
	}
	

	
	
	
	
	
	
}

@media screen and (max-width: 600px) {
	
	.title h1 {
	font-size: 1.5rem;
    }
	
	/*blog post*/
	.blog-post {
		width: 100%;
		padding: 1rem;
		flex-direction:column;
	}
	
	
    .blog-post__info {
	   width: 100%;

	}
	
	.blog-post__img {
		width: 100%;
	}
	
	
	/*items*/
	
	#item-wrapper {
		flex-direction: column;
	}
	
	
	/*product_page*/
	 

    .product-container {
		width: 100%;
		flex-direction: column;
		padding: 30px;
	}
	
	.product-info h2 {
		margin: 10px 0 0 0;
	    font-size: 24px;
	}
	

	
	/*navbar*/
	
	.toggle-button {
		display: flex;
	}
	
	.navbar-links {
		display: none;
		width: 100%;
	}
	
	.navbar {
		flex-direction: column;
		align-items: flex-start;
	}
	
	.navbar-links ul {
		flex-direction: column;
		width: 100%;
	}
	
	.navbar-links li {
		text-align: center;
	}
	
	.navbar-links li a {
		padding: .5rem 1rem;
	}
	 
	.navbar-links.active {
		display: flex;
	}
	
    /*release*/
	
	
	.releases-page {
	display: flex;
	width: 100%;
	flex-direction: column;
    }
	
	.list-wrapper {
    width: 100%;
	}
	
	
	.release {
	width: 100%;
	margin: 1rem 0 1rem 0;
    }
	
	/*contact*/
	
    #contact {
		width: 100%;
	}
	
    #contact-page {
		padding: 10px;
	}
	
	
	
	

		
}


