/* HTML5 RESET */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{ 
  display: block;
}

/* GENERIC ELEMENTS */
html{
  margin: 0;
  padding: 0;
  background: #FFF url('../images/backgrounds/wallpapers/edel_tile_01_blue.png') 0 0 repeat;
  color: #000;
  min-height: 100%;
  height: 100%;
  font-size: 14px;
  font-family: Arial, sans-serif;
}

body{
  position: relative;
  margin: 0 auto;
  padding: 0;
  width: 953px;
}

a{
  outline: none;
  color: #FFF;
}

img{
  border: 0;
  display: block;
}

.screenreader{
  display: none;
}

header{
  position: relative;
  width: 954px;
  height: 120px;
  background: url('../images/backgrounds/header.png') 0 0 no-repeat;
}

header .logo{
  position: absolute;
  top: 46px;
  left: 28px;
}

header h1{
  display: none;
}

header .openinghours{
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 895px;
}

header .openinghours h2,
header .openinghours p{
  display: inline;
  text-transform: uppercase;
  margin: 0;
  line-height: 28px;
  font-size: 14px;
}

header .openinghours h2{
  font-weight: bold;
}

header .address{
  position: absolute;
  top: 62px;
  left: 437px;
  width: 514px;
  text-align: center;
  line-height: 26px;
}

header .address h2{
  display: none;
}

header .address p{
  font-family: 'Archivo Narrow', sans-serif;
  font-size: 14px;
  text-transform: uppercase;
  margin: 0;
}

header .address a{
  color: #000;
  text-decoration: none;
}

header .address a:hover{
  text-decoration: underline;
}

header nav{
  position: absolute;
  left: 225px;
  top: 32px;
  text-transform: uppercase;
  font-size: 16px;
  font-family: 'Archivo Narrow', sans-serif;
}

header nav ul{
  margin: 0;
  padding: 0;
  list-style: none;
}

header nav li{
  float: left;
  background: url('../images/backgrounds/nav-li.png') 100% 50% no-repeat;
  padding: 0 10px 0 0;
  margin: 0 5px 0 0;
}

header nav li.last{
  background: none;
  margin: 0;
}

header nav a{
  color: #FFF;
  text-decoration: none;
}

header nav a:hover{
  text-decoration: underline;
}

section#maincontent{
  margin: 6px 0 0 0;
}

#maincarousel{
  margin: 0 0 0 87px;
}

#maincarousel .slides{
  margin: 0 0 0 57px;
  width: 683px;
  height: 449px;
  border: 5px solid #FFF;
}

#maincarousel.text .slides{
  background: #000;
  color: #FFF;
  font-size: 14px;
  height: auto;
}

#maincarousel.text .slides .text{
  padding: 10px;
}

#maincarousel.text .slides .text p{
  margin: 0 0 15px 0;
  font-weight: bold;
}

#maincarousel.text .slides .text a{
  color: #FFF;
}

#news{
  margin: 20px 0 0 0;
  color: #FFF;
  text-transform: uppercase;
}

#news .newsitems{
  width: 700px;
  height: 100px;
  border-right: 4px solid #FFF;
  position: relative;
  margin: 0 0 0 87px;
}

#news article{
  width: 150px;
  padding: 0 10px;
  height: 100%;
  float: left;
  border-left: 4px solid #FFF;
}

#news article time{
  display: block;
  margin: 0 0 7px 0;
}

#news article .intro h1{
  margin: 0;
  font-weight: bold;
  font-size: 12px;
}

#news a{
  color: #FFF;
  display: block;
  text-decoration: none;
}

#news a:hover{
  text-decoration: underline;
}

#news .intro{
  cursor: pointer;
}

#news .text{
  display: none;
  z-index: 100;
  position: absolute;
  top: -400px;
  left: 80px;
  width: 570px;
  background: #1e1e1e;
  padding: 15px;
  border: 15px solid #FFF;
}

#news .text h1{
  font-size: 23px;
  padding: 0 125px 0 0;
  margin: 0;
}

#news .text p{
  margin: 10px 0 0 0;
}

#news .text .button_close{
  width: 30px;
  height: 32px;
  position: absolute;
  top: 15px;
  right: 15px;
  cursor: pointer;
  background: url('../images/backgrounds/sprite_button_close.png') 0 0 no-repeat;
}

.closelayer{
 background: url('../images/backgrounds/closelayer.png') 0 0 repeat;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 775px;
  height: 100%;
  z-index: 99;
}

#freeblocks{
  margin: 50px 0 0 0;
  font-size: 14px;
  line-height: 18px;
  width: 1000px;
}

#freeblocks .block{
  width: 188px;
  margin: 0 0 4px 0;
  background: #FFF;
  padding: 12px;
  position: relative;
}

#freeblocks .block.wide{
  width: 404px;
}

#freeblocks .block .text{
  background: #000;
  color: #FFF;
  padding: 10px;
  font-weight: bold;
}

#freeblocks .block .text p{
  margin: 0;
}

#freeblocks .block a{
  text-decoration: none;
}

#freeblocks .block.hasimage .text{
  visibility: hidden;
  overflow-x: hidden;
}

#freeblocks .block.hasimage .image{
  position: absolute;
  top: 12px;
  left: 12px;
}

#freeblocks .block.hasimage:hover .text{
  visibility: visible;
}

#freeblocks .block.hasimage.hastext:hover .image{
  display: none;
}

.attentionblock{
  background: #FFF;
  border: 3px solid #000;
  width: 688px;
  margin: 20px 0 20px 143px;
  position: relative;
}

.attentionblock p{
  padding: 20px;
  margin: 0;
}

.attentionblock a{
  color: #000;
}