* {
	box-sizing: border-box;
}

body {
	margin: 0;
	background-color: #E9DDDD;

	font-family: Merriweather, Georgia, "Palatino Linotype", serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 34px;
	color: #242424;
}

input {
	font-family: Merriweather, Georgia, "Palatino Linotype", serif;
	font-weight: 400;
	font-size: 20px;
}

a {
	color: #CC0E0E;
}

a:hover, a:focus {
	color: #242424;
}

.menu-link {
	text-decoration: none;
}

header {
	width: 100%;
	height: 150px;
	background-color: #F2EBEB;
}

.wrapper {
	width: 1140px;
	margin: 0 auto;
	position: relative;			
}

.wrapper.content {
	padding: 60px 100px;
}

.menu {
	position: absolute;
	top: 0;
	right: 0;
	line-height: 150px;
	margin: 0;
	padding: 0;

	font-family: Montserrat, Helvetica, Arial, sans-serif;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 2.5px;
	list-style-type: none;
	text-transform: uppercase;
}

.menu-item {
	display: inline;
	padding-left: 50px;
}

.menu-link {
	position: relative;
}

.menu-link.active {
	cursor: default;
	color: #242424;
}

.menu-link:hover:after, .menu-link.active:after {
	content: "";
	position: absolute;
	width: 65px;
	height: 1px;
	background-color: #979797;
	top: 32px;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.logo {
	width: 360px;
	font-weight: 300;
	font-size: 46px;
	color: #CC0E0E;
	padding-top: 13px;
	text-align: center;
	position: absolute;
	z-index: 1;
}

.logo .bibliothek {
	font-family: Montserrat, Helvetica, Arial, sans-serif;
	font-size: 23px;
	color: #242424;
	font-style: normal;
	text-transform: uppercase;
	letter-spacing: 4px;
	display: table;
	width: 100%;
	position: relative;
	z-index: -1;
}

.bibliothek:before, .bibliothek:after {
  content: '';
  width: 50%;
  position: relative;
  -moz-transform: translateY(-15px);
  -webkit-transform: translateY(-15px);
  transform: translateY(-15px);
  border-bottom: 1px solid #979797;
  display: table-cell;
  -moz-background-clip: padding-box;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}

.bibliothek:before {
  border-right: 20px solid #F2EBEB;
}

.bibliothek:after {
  border-left: 20px solid #F2EBEB;
}

h2 {
	font-family: Montserrat, Helvetica, Arial, sans-serif;
	font-size: 36px;
	font-weight: 400;
	line-height: 44px;
	text-align: center;
	margin: 0;
	padding-bottom: 50px;
}

.email-form {
	width: 750px;
	height: 75px;
	margin: 60px auto;
	position: relative;
}

.email-field {
	width: 530px;
	height: 75px;
	font-family: Merriweather;
	font-size: 24px;
	font-weight: 300;
	padding: 0px 20px;
	border: none;
	border-bottom: 3px solid #CC0E0E;
}

.email-field:focus, .email-button:focus {
	outline: none;
}

.email-button:hover, .email-button:focus {
	background-color: #242424;
}

.email-button:active {
	padding-top: 5px;
}

.email-field:focus {
	border-bottom-color: #242424;
}

.email-button {
	background-color: #CC0E0E;
	border: none;
	width: 214px;
	height: 75px;
	padding: 0;
	position: absolute;
	color: #fff;
	font-family: Montserrat;
	font-size: 20px;
	cursor: pointer;
}


/* ------------- KATALOG --------------- */

.catalog-groups, .catalog-group-items {
	padding: 0;
}

.catalog-group-items {
	font-size: 14px;
}

.catalog-group-name {
	margin: 10px 0;
	font: 20px Montserrat;
}

.catalog-group {
	width: 180px;
	height: 242px;
	margin-right: 5px;
	display: inline-block;
	vertical-align: top;
	background-color: #CC0E0E;
	line-height: 24px;
	position: relative;
}

.catalog-group:hover, .catalog-group.active {
	background-color: #242424;
}

.catalog-group.active:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(36, 36, 36, 0);
	border-top-color: #242424;
	border-width: 10px;
	margin-left: -10px;
}

.catalog-group a {
	color: #fff;
	display: block;
	width: 100%;
	height: 100%;
	padding: 15px;
}

.catalog-groups li {
	list-style-type: none;
}

table {
	margin-top: 60px;
	width: 100%;
}

tr {
	height: 40px;
	font-size: 16px;
}

td {
	padding: 0 10px;
}

tr:nth-child(odd) {
	background-color: #F2EBEB;
}

.tablesorter th:first-child,
.tablesorter th:nth-child(3) { width: 25%; }
.tablesorter th:nth-child(2) { width: 50%; }

footer {
	margin-top: 100px;
	font-size: 14px;
	text-align: right;
}

.footer-left {
	float: left;
}

.footer-right {
	float: right;
	margin: 0;
}
