/* ******************************* */
/* variablen */
@background: #f1f1f1;
@footercolor:#78586D;
@color: #112f2f;

@page_shadow_colour: darken(@background,10%);
@page_shadow_radius: 40px;

@textcolor:#444;
@linkcolor:#005cff;
@link_active:#38a4ff;

@border_top:20px;

/* ******************************* */
/* functions */

.rounded-corners (@radius: 5px) {
  border-radius: @radius;
  -webkit-border-radius: @radius;
  -moz-border-radius: @radius;
}

.shadow (@radius:@page_shadow_radius,@color:@page_shadow_colour,@offx:0,@offy:0) {
  box-shadow:@offx @offy @radius @color; 
  -webkit-box-shadow:@offx @offy @radius @color; 
  -moz-box-shadow:@offx @offy @radius @color; 
}  

/* ******************************* */
/* main */

html {overflow-y: scroll;}

a,a:active, a:hover, a:visited,a:link {
  outline:none;
}

body {
  font-family:"Trebuchet MS", Tahoma, serif;
  font-size:100%;
  text-shadow: #999 0 0 0;
  background:@background;
  z-index: 0;
}

/* ******************************* */
/* fonts */

.font_accent {
  font-family: Trebuchet MS, Tahoma, Verdana, Arial, sans-serif;
  font-weight:400;
}

.font_text {
  font-family: Arial,Trebuchet MS, Tahoma, Verdana, sans-serif;
  font-weight:400; 
}

/* ******************************* */
/* declarations */

h1,h2,h3,h4,h5,h6 {
  .font_accent;
  letter-spacing:-0.04em;
}

h1 {
  color:#fff;
  text-shadow:1px 1px 1px rgba(20,20,20,0.9);
  font-size: 50px;
}

h2 {
  color:#ccc;
  text-shadow:1px 1px 1px rgba(20,20,20,0.9);
  font-family: Georgia, Times, serif;
  font-weight:400;
  font-style: italic;
  margin: 0 ;
}

h3 {
  margin-bottom:20px; 
}

p, address {
  font-size:0.9em;
  color:@textcolor;
  line-height:1.8em;
  text-align:left;
  margin-bottom:20px;
  
  a, a:visited, a:link {
    padding: 2px 4px;
    text-decoration:none;
    border-bottom:1px dotted darken(@linkcolor,10%);
    .rounded-corners(0px);
  }
  
  a:hover , a:active {
    border:0px;    
    background:desaturate(darken(@textcolor,10%),30%);
    color:#fff;
    .rounded-corners(3px);
  }
}

.p_right{
  text-align:right;
}

hr {
  margin: 18px 0 18px 0 ;
  border-top:1px solid #fff;
  border-bottom:1px solid #ddd;
}

/* --------------------------------------- */
/* menu */

#topcontainer {
  background:#151515;
  z-index: 1000;
  border-bottom: 1px solid #000;
  height:85px;
  
}

.navbar {
  height:85px;
  margin: 0;
  background:#151515;
  
  .navbar-inner {
    height:85px;
    .rounded-corners(0px);
    background:#151515;
    position: relative;
  }
  
  .brand {
    padding: 0 ;
    margin-right: 88px;
    top:-2px;
    position: relative;
    .shadow(10px,rgba(0,0,0,0.7),0px,5px);
  }
  
  .fb-like {
    position: absolute;
    right:-90px;
    top:12px;
  }
}

ul.nav {
  li a {
    font-family: Georgia,sans-serif;
    border-bottom:6px solid #2c2c2c;
    background:#151515;
    height:20px;
    padding:36px 20px 24px 20px !important;
    display: block;
    letter-spacing:0.04em;
    text-align:center;
  }
  
  li a:hover {
    border-color: lighten(@color,10%);
    color:#fff;
  }
  li a:active {
    position: relative;
    top:1px;
	
  }
}

body#index li#navli_home,
body#feiern li#navli_feiern,
body#tagen li#navli_tagen,
body#galerie li#navli_galerie,
body#kontakt li#navli_kontakt {
  a {
    background:#2c2c2c;
    border-color: lighten(@color,20%);
    color:#fff;
  }
  
}

/* --------------------------------------- */
/* main divs */

div#header {
  height:200px;
  margin-bottom:32px;
  z-index: 500;
  border-bottom:1px solid #eee;
  background:lighten(@color,20%) url("/images/header_bg/header_bg-01.jpg") 0 -120px no-repeat;
  .shadow(20px,lighten(@color,10%);
  
  #herovisual {
    position: relative;
    width:932px;
    height:110px;
    margin:50px 0;
    border:4px solid #fff;
    background:lighten(@color,10%);
    .shadow(20px,darken(@color,10%));
  }
  
  #sitetitle {
    position:absolute;
    left:20px;
    bottom:15px;
  } 
  
  #myCarousel {
    display: none;
  }
} 

body#index div#header {
  height:500px;
  background-position: 0 0;
  
  #herovisual {
    height:400px;
  }
  
  #sitetitle {
    position:absolute;
    left:20px;
    bottom:30px;
    background:rgba(40,80,60,0.9);
    padding: 20px 60px 10px 20px;
    border-bottom: 2px solid rgba(80,160,140,0.9);
    .shadow;
  } 
  
  #myCarousel {
    display: block;
  }
}

body#error #herovisual {
  border-color: #f20;
}

body#galerie #content {
  
  
  img {
	margin:0 5px 16px 5px;
	.shadow(5px,rgba(0,0,0,0.4));
  }
}
/* --------------------------------------- */
/* footer */

#footer {
  .shadow;
  margin-top:64px;
  padding-top:16px;
  
  background-color: @footercolor;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#333433));
  background-image: -webkit-linear-gradient(top, #222222, #333433);
  background-image:    -moz-linear-gradient(top, #222222, #333433);
  background-image:      -o-linear-gradient(top, #222222, #333433);
  background-image:         linear-gradient(to bottom, #222222, #333433);
  
  border-top:1px solid #fff;
  border-bottom:1px #222 solid;
  
  height:200px;  
  width:100%;
  
  p {
    color: #999;
    line-height:1.8em;
    font-size:12px;
    a {
      letter-spacing:0.04em;
      padding: 2px 5px ;
    }
	
    a:hover {
      background:darken(@color,10%);
      color:#fff;
    }
  }
  
  h5 {
	color: #ccc;
	margin-bottom:10px;
	font-size:14px;
	font-weight:400;
	letter-spacing:0.04em;
	text-transform:uppercase;
	
  }
  z-index: 10;
  
}

#footer2 {
  width:100%;
  height:40px;  
  padding-top:6px;
  
  background: darken(@footercolor,20%); 
  border-top:1px solid #666;
  
  .shadow (60px,#343);
  
  p {
    font-size:11px;
    letter-spacing:0.1em;
    color: #999;
    text-transform:uppercase;
	
	
    a, a:link, a:visited  {
      padding: 2px 3px;
      left:0px;
      text-decoration:none;
      border:0;
    }
	
    a:hover {
      background:darken(@color,10%);
      color:#fff;
    }
  }
  
  a.atop {
    display: block;
    position: relative;
    top:-20px;
    left:0px;
    margin: 0 auto ;
    width: 46px;
    height: 40px;
    z-index: 40;
  }
  
  a.atop:hover {
    top: -21px;
  }
  a.atop:active {
    top: -19px;
  }
}


.faq_question {
  border-left:5px solid lighten(@color,20%);
  padding-left:5px;
  p {
	margin-bottom:2px;
	font-weight:800;
  }
}

.faq_answer {
  border-left:5px solid #aaa;
  padding-left:5px;
}