@charset "utf-8";


a, abbr, acronym, address, applet, article, aside, audio, big, blockquote,
body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl,
dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4,
h5, h6, header, hgroup, html, iframe, img, ins, kbd, label, legend, li,
mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small,
span, strike, sub, summary, sup, table, tbody, td, tfoot, th, thead, time,
tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

* {
    -webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
    box-sizing: border-box;
}

:root {
    font-size: 8px;
}

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

body		{
 	margin: 0;
	padding: 0;
	background-color:rgb(252,251,250);
	width: 100%;
	height: 100%;	
	font-family: 'Libre Caslon Text';
}
	
#container	{
    width: 100%;
    margin: 0 0 0 0;
    padding: 0 2rem 0 2rem;
}

header  {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    height: 5rem;
    float: left;
    margin: 0 0 1.5rem 0;
    z-index: 10;
    background-color: rgb(252,251,250);

}
	
#logo	{	
	width: auto;
	position: absolute;
	top: 0;
	left: 2rem;
	font-family: 'Libre Caslon Display';
    font-weight: 400;
    font-style: normal;
	font-size: 3rem;
	line-height: 1;
	color: #000;
	text-align: left;
	float: left;
	width: auto;
	margin: 1rem 0 0 0;
	padding: 0;
}

main {
	width: 100%;
	margin: 5.5rem 0 1rem 0;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
 	display: flex;
 	-webkit-align-items: stretch;
 	-ms-align-items: stretch;
 	align-items: stretch;
 	-webkit-flex-wrap: wrap;
 	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
  	flex-grow: 1;
  	-webkit-flex-justify-content: space-between;
	-webkit-justify-content: space-between;
    -ms-flex-justify-content: space-between;
    -ms-justify-content: space-between;
  	justify-content: space-between;
}

.box2,.box3,.box5,.box6, .box74 {
 	-webkit-flex-basis: 100%;
 	-ms-flex-basis: 100%;
 	flex-basis: 100%;
	margin-bottom: 2rem;
	position: relative;
}

.box10 {
 	-webkit-flex-basis: 100%;
 	-ms-flex-basis: 100%;
 	flex-basis: 100%;
	margin-bottom: 3rem;
	position: relative;
}


.bg-box {
	background-size: cover;
	background-position: center;
	background-position: 50% 50%;
	margin-bottom: 3rem;
	position: relative;
    width: 100%;
    height: 100%;
    height: 450px;
}

.unten {
	-webkit-align-self: flex-end;
	align-self: flex-end;
	padding: 0 0 1rem 0;
}

.spalten    {
    -moz-column-count: 2;
    -moz-column-gap: 25px;
    -webkit-column-count: 2;
    -webkit-column-gap: 25px;
    column-count: 2;
    column-gap: 25px;
    text-align: left;
}

.wechsel {
    display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around; /* Safari 6.1+ */
	justify-content:  space-between;
	align-items: flex-start;	
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
	-webkit-flex-wrap: wrap;
  	flex-wrap: wrap;
  	flex-grow: 1;  
  	margin: 0 0 0 0;
  	padding: 0 0 0 0;
}

.trenner    {
    width: 100%;
    height: 1px;
    margin: 15px 0 10px 0;
}

.ulinks	{
	position: absolute;
	bottom: 0;
	left: 0;
	width: auto;
	padding: 2rem;
	background-color: transparent;
	line-height:1;
	letter-spacing: 1px;
	color: rgb(255,255,255);
	z-index: 7;
}
	
.olinks	{
	position: absolute;
	top: 0;
	left:0;
	padding: 3rem;
	width: auto;
	background: transparent; 
	line-height: 1;
	letter-spacing: 1px;
	z-index: 7;
    color: #ffffff;
}

.orechts	{
	position:absolute;
	top: 0;
	right: 0;
	width: 90%;
	height: auto;
	background: transparent;
	line-height: 1;
	letter-spacing: 1px;
	text-align: right;
	padding: 3rem;
	z-index: 7;
}
	
.urechts	{
	position: absolute;
	bottom: 0;
	right: 0;
	width: 80%;
	height: auto;
	background: transparent;
	letter-spacing: 1px;
	text-align: right;
	padding: 2rem;
    color: #ffffff;
	z-index: 7;
}

.schatten	{
    -moz-box-shadow: none;
     -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
}

.popup-gallery  {
    margin: 5px 0 15px 0;
}

 /* ______  Galerie ____ */ 	

ul.serie2 	{
	width: 100%;
	margin: 0;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
 	display: flex;
 	-webkit-align-items: stretch;
 	align-items: stretch;
 	-webkit-flex-wrap: wrap;
  	flex-wrap: wrap;
  	flex-grow: 1;
  	-webkit-flex-justify-content: space-between;
	-webkit-justify-content: space-between;
    -ms-flex-justify-content: space-between;
    -ms-justify-content: space-between;
  	justify-content: space-between;
  	list-style: none;
  	padding: 0;
} 
	
ul.serie2 > li	{
	float: left;
	width: 100%;
	margin: 0 0 10px 0;
}


ul.serie2 > li img	{
	width: 100%;
}

h1  {
  font-family: 'Libre Caslon Display';
  font-style: normal;
  font-weight: 400;
    font-size: 4rem;
	line-height: 1;
	color: #000000;
	margin: 0 0 1rem 0;
	padding: 0;
}

h2  { 
  font-family: 'Libre Caslon Display';
  font-style: normal;
  font-weight: 400;
    font-size: 4rem;
	line-height: 1;
	color: #000000;
	margin: 0 0 1.5rem 0;
	padding: 0;
}

h3  {
  font-family: 'Libre Franklin';
  font-style: normal;
  font-weight: 300;
    font-size: 2.5rem;
	line-height: 1;
	color: #000000;
	margin: 0;
	padding:0;
}

p	{
    font-style: normal;
    font-weight: 400;
    font-size: 1.75rem;
	line-height: 1.6;
	color: rgb(0,0,0);
	margin: 0 0 0.5rem 0;
}

.schattenschrift    {
    color: rgb(255,255,255);
    text-shadow: 1px 1px 4px #000000;
}

a:link, a:visited	{
    font-size: 1.75rem;
	line-height: 1.5;
	color: rgb(47,95,142);
	text-decoration: underline;
	padding: 0;
}

a:hover	{
	color: rgb(255,255,255);
	background-color: rgb(0,0,0);
}

a.zoom:link, a.zoom:visited, a.zoom:hover 	{
	text-decoration: none;
	background: none;	
	padding: 0;
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
}

figure  {
    margin: 0;
    padding: 0;
    width: 100%;
}

img {
    display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

	
figcaption  {
    font-style: normal
    font-weight: 400;
    font-size: 2rem;
	line-height: 1.6;
	color: rgb(0,0,0);
	margin: 0 0 5px 0;
}

.rund {
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
}

.schatten img {
    vertical-align: middle;
    width: 100%;
}

dl	{
	list-style: none outside none;
	padding:  3px 0;
	margin: 0;
    font-style: normal
    font-weight: 300;
    font-size: 2rem;
	line-height: 1.4;
}
	
dt	{
	margin: 0 0 0 0;
	float: left;
    font-style: normal
	font-weight:700;
}
	
dd		{
	margin : 0 0 0 140px;
    font-style: normal
    font-weight: 400;
	color: rgb(102,102,102);
}

.overlay {
  position: absolute; 
  bottom: 0; 
  background: rgb(0, 0, 0);
  background: rgba(0, 0, 0, 0.5); /* Black see-through */
  color: #f1f1f1; 
  width: 100%;
  transition: .5s ease;
  opacity: 0;
  color: white;
  font-size: 2.2rem;
  padding: 1rem;
  margin: 0;
  text-align: center;
}

/* When you mouse over the container, fade in the overlay title */
.box5:hover .overlay {
    opacity: 1;
}

footer {
	width: 100%;
	height: 3rem;
	border-top: solid 1px rgb(204,204,204);
	float:left;
	margin:0 0 20px 0;
}
 
footer  p {
	font-family: 'Libre Franklin';
    font-style: normal;
    font-weight: 300;
	color: rgb(79,79,79);
	font-size: 1.5em;
	line-height: 1.0; 	
	margin-top: 5px;  
	text-align:left;	
	padding: 0.8rem 0 1.5rem 0;
}	

footer p span	{
	float:right;
}

footer  a:link, footer  a:visited	 {
	font-family: 'Libre Franklin';
	font-style: normal;
    font-weight: 300;
	font-size: 1.5rem;
	color: rgb(153,153,153);
	text-decoration: none;
}

footer a:hover	{
	color: rgb(255,255,255);
	background-color: rgb(0,0,0);
}
 
.spalten    {
    -moz-column-count: 1;
    -moz-column-gap: 0px;
    -webkit-column-count: 1;
    -webkit-column-gap: 0px;
    column-count: 1;
    column-gap: 0px;
}

p.hinweis	{
    font-style: normal
    font-weight: 300;
    font-size: 0.1rem;
    line-height: 1;
    color: transparent;
    font-weight: 300;
    letter-spacing: 1px;
    margin: 0;
    text-align: right;
}

@media screen and (min-width:800px) {

    #container	{
	   width: 96%;
	   max-width: 1408px;
	   margin: 0 auto;
	   padding: 0;
    }

   header  {
        width: 100%;
        height: 4.5rem;
        float: left;
        margin: 1rem 0 1rem 0;
        position: relative;
    }

    #logo	{		   
	   left: 0;
    }

    .box2, .box3, .box5, .box6, .box74 {
 	  -webkit-flex-basis: 49%;
 	  -ms-flex-basis: 49%;
 	  flex-basis: 49%;
	   margin-bottom: 2rem;
    }

    .box5a {
	   width: 49%;
	   float: left;
	   margin-bottom: 20px;
    }
}

@media screen and (min-width:960px) {

    :root {
        font-size: 9px;
    }

    header  {
        width: 100%;
        height: 4rem;
        float: left;
        margin: 0.5rem 0 1rem 0;
        position: relative;
    }

    .box10 {
	   margin-bottom: 2.5rem;
    }


   .box2 {
 	  -webkit-flex-basis: 23.5%;
 	  -ms-flex-basis: 23.5%;
 	  flex-basis: 23.5%;
	   margin-bottom: 2rem;
    }
    .box3 {
 	  -webkit-flex-basis: 32%;
 	  -ms-flex-basis: 32%;
 	  flex-basis: 32%;
	   margin-bottom: 2rem;
    }

    .box6 {
 	  -webkit-flex-basis: 66%;
 	  -ms-flex-basis: 66%;
 	  flex-basis: 66%;
	   margin-bottom: 2rem;
    }
    
     .box74 {
 	  -webkit-flex-basis: 74.5%;
 	  -ms-flex-basis: 74.5%;
 	  flex-basis: 74.5%;
	   margin-bottom: 2rem;
    }

    .bg-box {
        height:550px;
    } 

    .spalten    {
        -moz-column-count: 2;
        -moz-column-gap: 3rem;
        -webkit-column-count: 2;
        -webkit-column-gap: 30px;
        column-count: 2;
        column-gap: 3rem;
        text-align: left;
    }
    
    ul.serie2 > li	{
	   float:left;
	   width:49%;
	   margin: 0 0 1rem 0;
    }

    p.hinweis	{
	   font-size : 1.75rem;
	   line-height : 1;
	   color:#666;
	   font-weight:300;
	   letter-spacing:1px;
	   margin: -0.5rem 0 1rem 0;
	   text-align:right;
    } 

}

@media screen and (min-width:1200px) {

    :root {
        font-size: 10px;
    }

    .bg-box {
        height:640px;
    }

    .schatten	{
	   -moz-box-shadow: 5px 5px 10px rgb(102,102,102);
	   -webkit-box-shadow: 5px 5px 10px rgb(102,102,102);
	   box-shadow: 5px 5px 10px rgb(102,102,102);
    }
}
