.header {
	padding: 20px;
	text-align: center;
	background: #c92828;
	color: white;
}

.header h1 {
	font-size: 40px;
}

.navbar {
	overflow: hidden;
	background-color: #333;
}

.navbar a {
	float: left;
	display: block;
	color: white;
	text-align: center;
	padding: 14px 20px;
	text-decoration: none;
}

.navbar a.right {
	float: right;
}

.navbar a:hover {
	background-color: #ddd;
	color: black;
}

* {
	box-sizing: border-box;
}

.row {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
}

.side {
	flex: 30%;
	background-color: #f1f1f1;
	padding: 20px;
}

.main {
	flex: 70%;
	background-color: white;
	padding: 20px;
}

.main-full {
	flex: 100%;
	background-color: white;
	padding: 20px;
}

div.gallery {
	border: 1px solid #ccc;
}

div.gallery:hover {
	border: 1px solid #777;
}

div.gallery img {
	width: 100%;
	height: auto;
}

div.desc{
	padding: 15px;
	text-align: center;
}

.responsive {
	padding: 6px 6px;
	float: left;
	width: 25%;
}

.footer {
	padding: 20px;
	text-align: center;
	background: #ddd;
}

.clearfix:after {
	content: "";
	display: table;
	clear: both;
}

@media screen and (max-width: 700px){
	.row {
		flex-direction: column;
	}
	
	.responsive {
		width: 50%;
		margin: 6px 0;
	}
}

@media screen and (max-width: 400px){
	.navbar a {
		float: none;
		width: 100%;
	}
	
	.responsive {
		width: 100%;
	}
}
