@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: local('Open Sans Light'), local('OpenSans-Light'), url(open-sans-300.woff) format('woff');
}

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Open Sans'), local('OpenSans'), url(open-sans-400.woff) format('woff');
}

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(open-sans-600.woff) format('woff');
}

*, *:before, *:after
{
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}

html
{
 height: 100%;
}

body
{
 height: 100%;
 background: #ffffff;
 color: #000000;
 margin: 0;
 padding: 0;
 height: 100%;
 font-size: 18px;
 font-family: 'Open Sans', sans-serif;
 font-weight: 400;
}

a
{
 display: inline-block;
 color: #000000;
 text-decoration: none;
 outline: 0;
}

a:hover
{
 text-decoration: none;
}

b
{
 font-weight: 400;
 color: #f08000;
 font-style: italic;
}

input, textarea
{
 /* Per default, input fields other then submit use content-box.
    That makes it very hard to align suff. So lets switch it to
    border-box. */
 box-sizing: border-box; 
 -moz-box-sizing: border-box;
}

@media screen and (-webkit-min-device-pixel-ratio:0)
{
 /* Webkit based browsers have a grey background
    in radio buttons. To get rid of them, -webkit-appearance: none is
    needed. That makes them invisible in some browsers.
    So there is a lot of styleing needed to make them look right: */
 input[type=radio]
 {
  -webkit-appearance: none;
  height: 1em;
  width: 1em;
  border: 1px solid #000000;
  cursor: pointer; 
  border-radius: 2em;
 }
 input[type=radio]:checked
 {
  background-color: #000000;
 }
}

input[type=text], input[type=submit], textarea, button
{
 border: 1px solid #404040;
 font-family: 'Open Sans';
 font-weight: 300;
 -webkit-appearance: none;
 -webkit-border-radius: 4px 4px 4px 4px;
 vertical-align: middle;
 padding: 4px;
}

h1
{
 font-size: 20px;
 font-weight: bold;
}

form {
  margin: 0;
}

input::-moz-focus-inner
{ 
 border: 0;
}

input[type="submit"],.continue,button
{
 background-color: #ffffff;
 border-radius: 4px 4px 4px 4px;
 border: 1px solid #202020;
 color: #000;
 cursor: pointer;
 font-size: 17px;
 padding: 6px 12px;
 vertical-align: middle;
 outline: 0;
 /* without the following 2 styles, my ipad 2 will make funny things with
    input[type=submit] elements. 2013-09-04 /mg */
 -webkit-appearance: none;
 -webkit-border-radius: 4px 4px 4px 4px;
}

input[type="submit"]:hover, .continue:hover
{
 box-shadow: 0 0 0 1px black;
}

table
{
 border-collapse: collapse;
}

/* HEADER */

.logo
{
 /* position: absolute; */
 font-size: 30px;
 left: 20px;
 top: 17px;
 /* white-space: nowrap; */
 font-weight: 300;
 padding: 10px;
}

.logo .section
{
 font-size: 50px;
 font-weight: 600;
}

.logo a
{
}

.logo a:hover
{
 text-decoration: none;
 color: #000;
 background-color: #f0ffa0;
 transition: all 0.5s linear;
}


/* ------------ Content ------------ */

.content
{
 margin-top: 50px;
 width: 100%;
 max-width: 1500px;
 text-align: left;
 vertical-align: top;
 padding-left: 10%;
 padding-right: 10%;
 padding-bottom: 10%;
}

.content_info
{
 margin-top: 0%;
 margin-left: auto;
 margin-right: auto;
 max-width: 875px;
}

.description a
{
 display: inline-block;
 border-bottom: 2px solid #06adf8;
}

.description a:hover
{
 text-decoration: none;
 border-bottom: 2px solid #068de8;
}

.imglink
{
 border-bottom: 0 !important;
}

/* FOOTER */

.footer {
  text-align: center;
  height: 40px;
  background: #fff;
  font-size: 14px;
  border-top: 1px solid #606060;
}
  
.footer a {
  color: #333;
  text-decoration: none;
}

.footer a:visited {
  color: #333;
  text-decoration: none;
}

.footer a:hover {
  text-decoration: underline;
}


/* IMPRINT */

.imprint {
  width: 400px;
  margin: auto;
}

.spacer_top
{
 height: 90px;
}

XXX@media (max-height: 710px)
{
 .spacer_top
 {
  height: 5%;
 }
}


/* INDEX */

.faves
{
 	margin-top: 0px;
}

.faves table 
{
 margin: auto;
 text-align: left; /* reset content */
}

.intro
{
 line-height: 1.5;
 text-align: left;
 font-weight: 400;
 margin-bottom: 20px;
 padding-right: 15px;
 padding-left:  15px;
}


/* ----------------- CMS ------------------ */


.description
{
 text-align: justify;
}

.sub_category_name a
{
 border-bottom: 2px solid rgba(255,255,255,0);
}

.sub_category_name a:hover
{
 border-bottom: 2px solid #06adf8;
}

.sub_category_name, .sub_category_description_short
{
 padding-bottom:  8px;
 padding-right:  25px;
}

.sub_category_description_short
{

}








.message:empty
{
 padding: 0px;
 margin: 0px;
}

.alert
{
 color: #e00000;
 font-weight: bold;
}

.menu
{
 height: 10px;
 display: inline-block;
 position: absolute;
 right: 10px;
 opacity: 0;
 user-select: none;
 -webkit-user-select: none; /* Chrome/Safari */        
 -moz-user-select: none; /* Firefox */
 -ms-user-select: none; /* IE10+ */
 -o-user-select: none;
}

.menu:hover
{
 opacity: 1;
}

.menu span
{
 cursor: pointer;
 margin-right: 10px;
}

.lighter_borders input[type=text], .lighter_borders textarea
{
 border-color: #808080 !important;
}

.text_left .fave div
{
 text-align: center;
}

.knick_line
{
 width: 100%;
 height: 1px;
 background-color: #606060;
}

.knick
{
 position: absolute;
 left: 50%;
 top: 88px;
 margin-left: -119px;
 z-index: 20;
 border: 0;
}
