html {
	width: 100%;
	height: 100%;
	font-family: 'Roboto', sans-serif;
	overflow-y: scroll;
}
	
body {
	background: #223;
	margin: 0 20px;
	transition: all 0.2s;
}

@media (min-width: 940px) {
	body {
		width: 900px;
		background: #223;
		margin: 0 auto;
	}
}

#main {
	background: #EEEEEE;
	width: 100%;
	min-height: 600px;
	box-shadow: 5px 5px 5px rgba(0,0,0,.2);
}

#main_content {
	clear: left;
	padding: 5px 5px 5px 5px;
	overflow: hidden;
	font-size: 14px;
}

#header {
	width: 100%;
	height: 140px;
	background: url(header.png) no-repeat center;
	background-color: #DED5B5;
	background-position: 100% 10%;
	background-size: 450px;
	margin: 0 0 10px 0;
	box-shadow: 5px 5px 5px rgba(0,0,0,.2);
}

#header h1 a {
	padding: 10px;
	color: #EEEEEE;
	text-decoration: none;
	background: #223;
	position: relative;
	left: -5px;
}

#header a:hover {
	color: #ffffff;
}

#mobile-topbar {
	display: none;
}

#nav {
  font-size:14px;
 	margin: 0 0 10px 0;
 	height: 45px;
}

#nav > ul {
	list-style: none;
	width: 100%;
	padding: 0;
	max-height: 45px;
	margin: 0;
}

.nav-list li {
  float: left;
  position: relative;
  height: 45px;
  box-shadow: 5px 5px 5px rgba(0,0,0,.2);
}

#nav a {
	transition: color .5s ease, background .5s ease;
	box-sizing: content-box;
	display: block;
  text-decoration: none;
  padding: 15px 15px 15px 15px;
  height: 15px;
  vertical-align: middle;
  overflow: hidden;
  color:#FFF;
  background:#246;
  text-align: left;
}

#nav a.inactive {
	cursor: default;
}

#nav > .nav-list > li.nav-item-subsel > a {
  color:#000;
  background:#EEE;
}


#nav > .nav-list > li.nav-item-sel > a {
  color:#000;
  background:#EEE;
}

ul.subnav-list {
	display: none;
	position: absolute;
	background: #555;
	top: 45px;
	left: 0px;
	padding: 0;
	min-width: 135px;
	box-shadow: 5px 5px 5px rgba(0,0,0,.2);
	transition: all 500ms ease;
}

ul.subnav-list li {
	float: none;
	overflow: hidden;
	display: table;
	width: 100%;
	height: 45px;
	z-index: 10;
}

#sublist {
	min-width: max-content;
	opacity: 0;
}

#nav .subnav-list a {
  display:table;
  height: auto;
  white-space:nowrap;
  text-decoration: none;
  padding:15px 20px;
  color:#FFF;
  width: 100%;
  background:#555;
  text-align: left;
}

#nav .subnav-item-sel  a {
  color:#000;
  background:#EEE;
}

.nav-item:hover .subnav-list, .nav-item-sel:hover .subnav-list, .nav-item-subsel:hover .subnav-list {
	display: table;
}

.nav-item:hover #sublist, .nav-item-sel:hover #sublist, .nav-item-subsel:hover #sublist {
	opacity: 1;
}

#nav ul.nav-list a:hover {
  background: #FFF;
  color: #000;
}

#socialcontacts {
	padding: 0 0 0 5px; 
	margin: auto;
	height: 110%;
}

a.medbox {
	display: inline-block;
	position: relative;
	border:solid #EEE 1px;
	background-color: #EEEEEE;
	background-repeat: no-repeat;
	background-size: 35% 35%;
	background-position: center 40%;
	padding:5px; 
	width:160px;
	height:160px;
	margin:5px 0 0 0; /* you can change/remove margin */
	text-decoration: none;
	transition: background-color 1s ease, border 1s ease, background-size 1s ease, box-shadow 1s ease;
}

.medbox:before {
	content: "";
}

a.medbox:hover {
	background-color: #FFF;
	border:solid #000 1px;
	background-size: 60px 60px;
	background-position: center 40%;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.5);
	transition: all .3s ease;
}

@media (max-width: 940px) {
	a.medbox {
		width:120px;
		height:120px;
		background-size: 50px 50px;
	}

	a.medbox:hover {
		background-size: 70px 70px;
	}
}

.medbox .text { 
	vertical-align: bottom;
	text-align:center;
	position: relative;
	top: 80%;
	margin: 0 0 5px 0;
}

#galleryoverlay {
	display: none;
	left: 0px;
	top: 0px;
	bottom: 0px;
	right: 0px;
 	justify-content: center;
	position: fixed;
	background: rgba(0,0,0,0.5);
	z-index: 2;
}

#galleryoverlay #panel {
	display: flex;
        padding: 0;
        list-style: none;
        font-size: 0;
	top: 100px;
	bottom: 100px;
	margin-left: auto;
	margin-right: auto;
	width: 90%;
	position: fixed;
	max-width: 1500px;
	opacity: 1;
	background: #EEE;
	
}

#galleryoverlay #panel #image {
	display: inline-block;
	flex-grow: 5;
	height: 100%;
	background-image: url("https://hatrabbits.com/wp-content/uploads/2017/01/random.jpg");
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	background-color: #223;
}

#galleryoverlay #panel #divider {
	display: inline-block;
	width: 1px;
	height: 100%;
	background: #000;
}

#galleryoverlay #panel #description {
	font-size: initial;
	display: inline-block;
	flex-grow: 1;
	max-width: 360px;
	min-width: 180px;
	height: 100%;
	background: #EEE;
}

#galleryoverlay .button {
	display: block;
	text-align: right;
	cursor: pointer;
}

#gallerywrapper {
	display: inline-block;
	padding: 0 0 0 5px; 
	margin: auto;
	height: 110%;
	text-align: center;
	vertical-align: top;
	width: 100%;
  box-sizing: border-box;
}

.galbox {
	display: inline-block;
	position: relative;
	border:solid #EEE 1px;
	padding:5px; 
	width:180px;;
	height:200px;
	margin:5px; /* you can change/remove margin */
	text-decoration: none;
	transition: background-color 1s ease, border 1s ease, background-size 1s ease, box-shadow 1s ease;
}

.galboximg {
	width:180px;
	height:180px;
}

.galboxtext {
	padding: 5px 0 0 0;
}

.galbox:hover {
	background-color: #FFF;
	border:solid #000 1px;
	background-size: 60px 60px;
	background-position: center 40%;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.5);
	transition: all .3s ease;
}

.listbutton {
	border: 0;
	color: #EEE;
	background: #246;
	font-size: 14px;
	margin: 10px;
	padding: 10px 20px 10px 20px;
	outline: none; 
	transition: all 200ms ease;
}

.listbutton:hover {
	color: #000;
	background: #FFF;
}

#footer {
	color: #EEEEEE;
	margin: 12px; auto;
	text-align: center;
}

.center {
	display: table;
	text-align: center;
	margin: 0 auto;
}	

