@font-face {
font-family: didot;
src: url("../fonts/didot.ttf");
}

/* FIXED VALUES */
@media screen 
  and (max-device-width: 1600px) { 
  body {
    height: 1071px;
  }

  #wrapper {
    width: 714px;
  }

  #header {
    padding: 28px 0 14px 0;
    height: 105px;
  }

  #footer {
    height: 35px;
    line-height: 18px;
    padding-bottom: 35px;
    padding-top: 35px;
  }

  #main-menu-wrapper {
    width: 714px;
    height: 819px;
  }

  #main-menu {
    width: 714px;
    height: 476px;
  }

  #bottom-menu {
    width: 714px;
    height: 238px;
  }

  #passe-partout-top {
    height: 147px; 
    width: 100%; 
    top: 0; 
  }

  #passe-partout-bottom {
    height: 455px; 
    width: 100%; 
    bottom: 0; 
  }

  #passe-partout-left {
    height: 100%; 
    width: -webkit-calc(50% - 357px); 
    width: -moz-calc(50% - 357px); 
    width: calc(50% - 357px); 
    left: 0;
    top: 0;
  }

  #passe-partout-right {
    height: 100%; 
    width: -webkit-calc(50% - 356px); 
    width: -moz-calc(50% - 356px); 
    width: calc(50% - 356px); 
    right: 0;
    top: 0;
  }

  #bottom-content-row {
    padding-top: 105px;
  }
  
}

@media screen 
  and (min-device-width: 1601px) 
  and (max-device-width: 2200px) { 
  body {
    height: 1530px;
  }

  #wrapper {
    width: 1020px;
  }

  #header {
    padding: 40px 0 20px 0;
    height: 150px;
  }


  #footer {
    height: 50px;
    line-height: 25px;
    padding-bottom: 50px;
    padding-top: 50px;
  }

  #main-menu-wrapper {
    width: 1020px;
    height: 1170px;
  }

  #main-menu {
    width: 1020px;
    height: 680px;
  }

  #bottom-menu {
    width: 1020px;
    height: 340px;
  }

  #passe-partout-top {
    height: 210px; 
    width: 100%; 
    top: 0; 
  }

  #passe-partout-bottom {
    height: 650px; 
    width: 100%; 
    bottom: 0; 
  }

  #passe-partout-left {
    height: 100%; 
    width: -webkit-calc(50% - 510px); 
    width: -moz-calc(50% - 510px); 
    width: calc(50% - 510px); 
    left: 0;
    top: 0;
  }

  #passe-partout-right {
    height: 100%; 
    width: -webkit-calc(50% - 509px); 
    width: -moz-calc(50% - 509px); 
    width: calc(50% - 509px); 
    right: 0;
    top: 0;
  }

  #bottom-content-row {
    padding-top: 150px;
  }

}

@media screen 
  and (min-device-width: 2201px) 
  and (max-device-width: 3050px)  { 
  body {
    height: 1989px;
  }

  #wrapper {
    width: 1326px;
  }

  #header {
    padding: 52px 0 26px 0;
    height: 195px;
  }

  #footer {
    height: 38px;
    line-height: 33px;
    padding-bottom: 65px;
    padding-top: 65px;
  }

  #main-menu-wrapper {
    width: 1326px;
    height: 1521px;
  }

  #main-menu {
    width: 1326px;
    height: 884px;
  }

  #bottom-menu {
    width: 1326px;
    height: 442px;
  }

  #passe-partout-top {
    height: 273px; 
    width: 100%; 
    top: 0; 
  }

  #passe-partout-bottom {
    height: 845px; 
    width: 100%; 
    bottom: 0; 
  }

  #passe-partout-left {
    height: 100%; 
    width: -webkit-calc(50% - 663px); 
    width: -moz-calc(50% - 663px); 
    width: calc(50% - 663px); 
    left: 0;
    top: 0;
  }

  #passe-partout-right {
    height: 100%; 
    width: -webkit-calc(50% - 662px); 
    width: -moz-calc(50% - 662px); 
    width: calc(50% - 662px); 
    right: 0;
    top: 0;
  }

  #bottom-content-row {
    padding-top: 195px;
  }
    
  
}

@media screen 
  and (min-device-width: 3051px) { 
 
	body {
		height: 3040px;
	}

	#wrapper {
		width: 2040px;
	}

	#header {
		padding: 80px 0 40px 0;
		height: 300px;
	}

	#footer {
		height: 100px;
		line-height: 50px;
		padding-bottom: 50px;
		padding-top: 50px;
	}

	#main-menu-wrapper {
		width: 2040px;
		height: 2340px;
	}

	#main-menu {
		width: 2040px;
		height: 1360px;
	}

	#bottom-menu {
		width: 2040px;
		height: 680px;
	}
	
	#passe-partout-top {
		height: 420px; 
		width: 100%; 
		top: 0; 
	}

	#passe-partout-bottom {
		height: 1300px; 
		width: 100%; 
		bottom: 0; 
	}

  #passe-partout-left {
    height: 100%; 
    width: -webkit-calc(50% - 1020px); 
    width: -moz-calc(50% - 1020px); 
    width: calc(50% - 1020px); 
    left: 0;
    top: 0;
  }

  #passe-partout-right {
    height: 100%; 
    width: -webkit-calc(50% - 1018px); 
    width: -moz-calc(50% - 1018px); 
    width: calc(50% - 1018px); 
    right: 0;
    top: 0;
  }

  #bottom-content-row {
    padding-top: 300px;
  }

}

.passe-partout {
	position: absolute;  
	background-color: white; 
	z-index: 3;
}


html {
	margin: 0; 
	padding: 0;
	width: 100%;
	height: 100%;
}

body { 
	margin: 0; 
	padding: 0;
	background: #ffffff;
	font-family: 'Karla', sans-serif;
	color: black;
	width: 100%;	
	position: relative;
}

a {
	color: black;
	text-decoration: none;
	transition: all 1s;
}

a:hover {
	color: #999;
	text-decoration: none;
}

a.link-expander {
	color: black;
	text-decoration: none;
	-webkit-transition: all 30s; /* Safari */
    -o-transition: all 30s;
    -moz-transition: all 30s;
    transition: all 30s;
}

a.link-expander:hover {
	text-decoration: none;
	letter-spacing: 100px;
}

video#bgvid { 
    position: fixed;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
       transform: translateX(-50%) translateY(-50%);
	background-color: white;
}

#video-overlay {
	 position: fixed;
    top: 0;
    left: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
	background-color: white;
	opacity: 0;
	z-index: -99;
	
}

#wrapper {
	position: relative;
	margin: 0 auto;
	height: 100%;
}

#header {
	margin: 0;
	text-align: center;	
	position: relative;
	z-index: 4;
}

#header-title {
	font-size: 300%;
	text-align: center;
	width: 100%;
	letter-spacing: 6px;
	font-family: 'didot';	
}

#header-subtitle {
	font-size: 100%;
	font-weight: lighter;
	text-align: center;	
	width: 100%;
	letter-spacing: 8px;
	font-family: 'serif';
}

#header-subtitle-text {
	
}

#footer {
	position: relative;
	width: 100%;
	text-align: center;
	font-size: 70%;
	letter-spacing: 5px;
	z-index: 4;
	background-color: white;
}

#main-menu-wrapper {
	position: relative;
}

#main-menu {
	position: relative;
	margin: auto;
}

#bottom-menu {
	position: relative;
	margin: auto;
}

#video-background {
	z-index: -1;
	width: 100%;
	height: 100%;
	position: absolute;
}

#main-menu-buttons {
	z-index: 4;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#content {
	width: 100%;
	height: 100%;
}

#bottom-content-row {
	height: 90%;
	margin-left: -3%;
	margin-right: -6%;
}

.content-row {
	height: 45%;
	margin-top: 12%;
	margin-bottom: 0;
	margin-left: -3%;
	margin-right: -6%;
}

.first-content-row {
	height: 45%;
    margin-top: -3%;
	margin-left: -3%;
	margin-right: -6%;
}

.content-element {
	width: 26%;
	height: 100%;
	margin-right: 10%;
	background-position: center center;
    background-repeat: no-repeat;
	-moz-background-size: cover;
	  -o-background-size: cover;
	     background-size: cover;
	float: left;
	cursor: pointer;
	position: relative;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	-moz-transition: all 0.5s;
	transition: all 0.5s;
}

.content-element-last {
	margin-right: 0;
}

.content-element:hover {
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	-moz-transition: all 0.5s;
	transition: all 0.5s;
	
}

.hover-content {
	display: table;
    text-align: center;
	width: 100%;
	height: 100%;
	position: absolute;	
	bottom: 0;	
	padding: 0;
	
	opacity: 1;
	color: white;
	
	font-size: 80%;
	letter-spacing: 6px;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	-moz-transition: all 0.5s;
	transition: all 0.5s;
	
}

.hover-content span {
  display: table-cell;
  vertical-align: middle;
}

.content-element:hover {
	opacity: 0.9;
}

.content-element:hover .hover-content {    
	opacity: 0.9;
	background-color: white;
	color: black;
	text-shadow: 1px 1px #fff;
}