

/* = = = = = = = = = = = = = = = = = datei format.css = = = = = = = = = = = = = = = = = = = = = = = = = */


/* ############################################################ */
/* allgemein */
/* ############################################################ */

*, *:before, *:after {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}

html, body {
font-family:'open_sanslight',georgia, tahoma, arial, Verdana, Segoe, 'Open Sans',helvetica,roboto ,sans-serif;
font-size:62.5%;
line-height:1.5;
font-weight:normal;
min-height:100%;
}

body {overflow-x:hidden;
color:#000;
font-size:1.7rem;
margin: 0 auto;
background-image:url(../images/logo01.jpg);
background-position:50% 0%;
background-repeat:no-repeat;
background-attachment:fixed;
}

/* unterseiten-hintergrundbilder */

body.logobild-01 {
background-image:url(../images/logo02.jpg);
}

body.logobild-02 {
background-image:url(../images/logo03.jpg);
}

body.logobild-03 {
background-image:url(../images/logo04.jpg);
}

body.logobild-04 {
background-image:url(../images/logo05.jpg);
}

body.logobild-05 {
background-image:url(../images/logo06.jpg);
}
body.logobild-06 {
background-image:url(../images/logo07.jpg);
}



/* überschriften */

h1, h2, h3, h4, h5 {color:#000;
text-align:left;
letter-spacing:0px;
font-weight:bold;
text-transform:none;
}

h1 {
font-size:3rem;
line-height: 3.5rem;
margin-top: 0rem;
margin-bottom: 5.2rem;
}

h2 {
font-size:2.5rem;
line-height: 3rem;
margin-top: 1rem;
margin-bottom: 3.5rem;
}


h3 {
font-size:1.8rem;
line-height: 2.3rem;
margin-top: 1rem;
margin-bottom:2.5rem;
letter-spacing:0rem;
}


/* allgemeine links  */

a {background:transparent;
color:#000;
text-decoration: underline;
}

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



/* ############################################################ */
/*  speziell*/
/* ############################################################ */

.container_haupt {height:100%;
margin:0 auto;
padding:0;
width:100%;
}


/* bilder  anpassen der grösse  */
/*
wenn sie eigene einzelne bilder einbauen, unabhängig von unserem bilderstystem,
dann werden diese bilder maximal (max-width) so gross wie die original-abmessungen des bildes
bwz. des umschliessenden containers wenn vorhanden
*/

img {max-width: 100%;
height: auto;
margin:0 auto;
}



/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */
/*  GRID-SYSTEM #1  - mit DISPLAY:INLINE-BLOCK */
/*  fuer boxen und bilder */
/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */

.wrapper-box {display:block;
text-align:center;
padding:0rem;
}

.box {display:inline-block;
width:100%;
vertical-align:top;
padding:.2rem;
margin:0 -.2rem 0 -.2rem ;/* ausgleich ( minus-margin) für INLINE-BLOCK-WHITESPACE-BUG*/
}

.box-1_of_1 ,
.box-1_of_2 ,
.box-1_of_3 ,
.box-1_of_4,
.box-1_of_3b {width:100%;
}

.box-1_of_4b {width:50%;
}

#gallery .box-1_of_3 {width:33.33%;
}

.box img,
.box a img {display:block;box-shadow:none;
width: 100%;
height: auto;
border:solid 0rem #fff;
}


/* ############################################################ */
/* logo bereich */
/* ############################################################ */

.logo {display:block;
width:100%;
margin:0;
padding:0;
box-shadow:1px 1px 1px white;
}

.logobox-a  {display:table;
width:100%;height:100vh;
margin: 0 ;
padding:0;
}


/* name */

#name  {display:table-cell;
background:rgba(0,0,0,.3);
color:#fff;text-align:center;vertical-align:middle;
text-shadow:1px 1px 1px #000;
font-weight:bold;
font-size:3.4rem;
line-height:3.8rem;
padding:1rem ;
}

#name span {
font-size:2.1rem;
font-style:normal;
color:#fff;
}

/* seitentitel - z.b.  -home- */
#name b {display:block;
font-size:1.4rem;text-transform:uppercase;
letter-spacing:2px;
}


/* ############################################################ */
/* bereich content */
/* ############################################################ */

.inhalt {display:table;
width:100%;
margin:0;
padding:0;
background:#fff;/* IE9*/
}

.inhaltbox-a {
display:table-cell;
width:100%;height:100vh;
margin: 0 auto;
padding:10vh 8vw;
text-align:left;
vertical-align:top;
}


/* ############################################################ */
/* bereich fuss */
/* ############################################################ */

.fuss {POSITION:relative;
width:100%;
margin:0;
background-image:url(../images/logo01.jpg);
background-position:50% 100%;
background-repeat:no-repeat;
background-attachment:fixed;
height:100vh;
background-size:auto;
}

/* unterseiten-hintergrundbilder */

.fuss.logobild-01{
background-image:url(../images/logo02.jpg);
}

.fuss.logobild-02{
background-image:url(../images/logo03.jpg);
}

.fuss.logobild-03{
background-image:url(../images/logo04.jpg);
}

.fuss.logobild-04{
background-image:url(../images/logo05.jpg);
}

.fuss.logobild-05{
background-image:url(../images/logo06.jpg);
}
.fuss.logobild-06{
background-image:url(../images/logo07.jpg);
}



.fussbox-a {display:inline-block;
text-align:center;vertical-align:middle;
width:100%;
padding:6vh 6vw ;
}


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

#menu-fuss ul {text-align:center;
padding:0rem;
margin:0;
}

#menu-fuss  li {list-style:none;display:inline;
padding:0rem 0rem;
margin:0;
line-height:2rem;
}

#menu-fuss li a {position: RELATIVE;
display: inline-block;
overflow: hidden;
font-size:1.4rem;
letter-spacing:0rem;
padding-right:0rem ;
margin: -1px;
padding:.5rem .7rem;
text-decoration : none;
color:#000;
background: #5f5f5f;/*IE9*/
background:rgba(255,255,255,.7);
border: 1px solid #efefef;
border-radius: 4px;
}


#menu-fuss li a:hover {color:#000;
background:#f4f4f4;/*IE9*/
background:radial-gradient(circle,#FDFDFD,#F4F4F4);
}



/* fussname */

#fussname  {display:block;
overflow: hidden;
background:#000;
color:#EFEFEF;
font-weight:normal;
font-size:1.5rem;
padding:1vh 3vw;
text-align:center;
position:ABSOLUTE;bottom:0rem;
transform:rotate(-90deg);transform-origin:0% 0%;
}

#fussname .top-box-filter {display: inline-block;
POSITION: absolute;
left: -200%;
height: 200%;
width: 20px;
background: rgba(135,205,250,.5);
opacity: 0.8;
box-shadow: 0px 0px  30px white;
transform: rotate(0deg);transform-origin:0% 0%;
ANIMATION:shine-effect 6s 1s infinite;
}

/* slogan */

.slogan  {display:inline-block;
color:#fff;
transform:rotate(-45deg);
transform-origin:50% 100%;
font-weight:normal;
text-shadow:3px 3px 5px black;
font-size:2.2rem;
padding:1vh 3vw;
margin-top:30vh;
text-align:center;
}


/* ############################################################ */
/* M E D I A   Q U E R I E S - RESPONSIVE-BILDSCHIRMABFRAGEN */
/* ############################################################ */

/* ==================================== ab 320 pixel ================================== */


/* - - - - -  nur info - - - - - */
/*  für die kleinste smartphone-auflösung von 320pixel benötigen wir KEINE bildschirmabragen (media queries),
denn hierfür gilt ja automtisch der gesamte vorstehende quelltext-code -
weil wir das template ja 'mobile-first' angelegt haben */



/* ==================================== ab 360 pixel ================================== */

@media (min-width: 360px) {

/* keine angabe */

}


/* ==================================== ab 400 pixel ================================== */

@media (min-width: 400px) {

/* keine angabe */

}


/* ==================================== ab 480 pixel ================================== */

@media (min-width: 480px) {

/* keine angabe */

}


/* ==================================== ab 580 pixel ================================== */
@media (min-width: 580px) {

/* grid system */
.box-1_of_1 {width: 50%; }
.box-1_of_2 {width: 50%; }
.box-1_of_3 {width: 33.33%;  }
.box-1_of_3b {width: 33.33%; }
.box-1_of_4 {width: 25%; }
/* ende grid system */

#menu-fuss li  {display:inline; }

}


/* ==================================== ab 640 pixel ================================== */
@media (min-width: 640px) {

/* keine angabe */

}


/* ==================================== ab 760 pixel ================================== */
@media (min-width: 760px) {

html {font-size:70%;}

.logobox-a {height:26rem; }

/* grid system */
.box-1_of_3b {width: 100%; }
/* ende grid system */

.inhalt {
background:radial-gradient(circle at 50% 0%,
rgba(255,255,255,.6) 300px,#fff 500px );
}

.slogan {font-size:3.5rem;}

}


/* ==================================== ab 960 pixel ================================== */
@media (min-width: 960px) {

.inhaltbox-a {text-align:justify;/* blocksatz */ }

/*  grid system */
.box-1_of_4 {width: 25%; }
/* ende grid system */

}


/* ===================================== ab 1100 pixel ================================= */

@media (min-width: 1100px) {

html { font-size:75%; }

.logobox-a {padding-top:4rem;/* da horizontales menü erscheint */ }

}


/* ===================================== ab 1200 pixel ================================= */

@media (min-width: 1200px) {

/* grid system */
.box-1_of_3b {width: 33.33%; }
/* ende grid system */

}


/* ===================================== ab 1400 pixel ================================= */

@media (min-width: 1400px) {

html { font-size:80%; }

}





/* +  +  +  +  + +  +  +  +  +  C O D E ENDE  +  +  +  +  +  +  +  +  +  + */