

/* = = = = = = = = = = = = = = = = = 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;
height:100%;
}

body {
font-size:1.7rem;
margin: 0 auto;
}

/* andere zeilenabstände, absatz */
.content br {
line-height:.7;
}


/* überschriften */

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

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

h2 {text-align:left;
font-size:2.4rem;
line-height: 3rem;
margin-top: 0rem;
margin-bottom: 3.5rem;
}

h2:after {text-align:left;
border-top: 6px solid #5D4037;
display: block;
width: 60px;
content: "";
margin: 8px 0 ;
}

h3 {
font-size:2rem;
line-height: 2.3rem;
margin-top: 2.1rem;
margin-bottom:1.4rem;
letter-spacing:0rem;
}

/* allgemeine links  */

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

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

/* quelltext-erklärungen - wenn vorhanden */
pre {white-space:pre-wrap;position:relative;
font-size:1.5rem;
padding:0rem 1rem 2rem 1rem;
margin:4rem auto;
text-align:center;
text-align:center;
background:#F8F8F8;
color:#000;
font-family:'open_sanslight',georgia, tahoma, arial, Verdana, Segoe, 'Open Sans',helvetica,roboto ,sans-serif;
}

pre .extra {display:inline-block;position:absolute;left:0rem;top:1rem;font-size:2rem;
color:#3E2723;font-weight:normal;
transform:rotate(-45deg);
}


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

.container_haupt {
margin:0 auto;
padding:0;
width:100%;
background:#EFEFEF
}

/* 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%;
margin:0 auto;
}


/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */
/*  GRID-SYSTEM #1  - mit DISPLAY:INLINE-BLOCK */
/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */

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


.box {display:inline-block;
width:100%;
vertical-align:top;
padding:0rem;
margin:0 -.25rem 0 -.25rem ;/* 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_5 ,
.box-1_of_6
{width:100%;
}

.box img,
.box a img {display:block;
width: 100%;
height: auto;
box-shadow:0px 0px 2px black;
}



/* ############################################################ */
/* bereich leiste */
/* ############################################################ */


.leiste-content {
width:100%;
margin:0 auto;
padding:0rem;
}



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

.section-logo {
width:100%;
overflow:hidden;
margin:0;
padding:0rem;
}

.logo-content {
width:100%;
margin:0 auto;
}

/* name */

.name {display:inline-block;
background:#3E2723;
color:#D7CCC8;
font-size:2rem;
line-height:2.2rem;
text-align:center;
padding:1rem 2rem;
margin:0;
text-transform:uppercase;
border:solid 1px #0F0F0F;
box-shadow: 0 15px 10px rgba(0,0,0,0.5);
}

.name b {
font-weight:normal;
color:#fff;
letter-spacing:2px;
font-size:1.4rem;
}


/* -----GRID-SYSTEM #2  - mit DISPLAY:TABLE  ----- */

#logo .wrapper-box-table {
display:table;
table-layout: fixed;
width:100%;
padding:0;
text-align:center;
}

#logo .box-tabcell-1a {height:100%;
display:inline-block;
background:white;
width: 100%;
padding:0rem 0;
vertical-align:middle;
background:#EFEFEF;
}

#logo .box-tabcell-1b  {
display:inline-block;
width: 100%;height:100%;
padding:0 1rem;
vertical-align:middle;
text-align:center;
background:#6D4C41;
border-bottom:30px solid #EFEFEF;/* wegen der bildanzeiger-punkte der foto-slideshow - ausgleich zu box-tabcell-1a */
}

/* tabellenzelle-reihe */
#logo .tabrow {display:table-row;
}



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


.section-content {
width:100%;
margin:0;
padding:0;
background:transparent;
color:#000;
position:relative;z-index:0;/* wegen 'elastislide' bildwechsler*/
}

.content {
display:block;
width:100%;
min-height:60vh;
margin: 0 auto;
padding:6rem 2rem;
text-align:left;
}


/* ############################################################ */
/* bereich fusstop  */
/* ############################################################ */


.section-fusstop {
width:100%;
}

.fusstop-content {
text-align:center;
margin: 0rem auto;
padding:1rem 0 ;
}

/* -----menu und icons ----- */

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

#fusstop  li {list-style:none;display:inline;
padding:0rem .5rem;
margin:0;
}

#fusstop .fas ,
#fusstop .fab ,
#fusstop .far  {
display:inline-block;
font-size:1.4rem;
border-radius:50%;
padding:1.4rem;
background:#6D4C41 ;
color:#D7CCC8;
transition:all .8s ;
}

#fusstop a:hover .fas ,
#fusstop a:hover .fab ,
#fusstop a:hover .far  {
color:#fff ;
transform: rotateY(360deg);
}


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

.section-fuss {
width:100%;
background:#6D4C41;
color:#EFEBE9;
}

.fuss-content {
text-align:center;
margin: 0rem auto;
padding:1rem 0 ;
}


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

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

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

#fuss li a {display:inline-block;
text-decoration : none;
font-size:1.4rem;
letter-spacing:0rem;
padding:.2rem .4rem ;
margin: 0;
color:#EFEBE9;
}

#fuss li a:hover {background:transparent;
color:#fff;
text-decoration:underline;
}

/* fussname */

.fussname {display:inline-block;
font-weight:normal;
color:#fff;
text-shadow:none;
margin:0 auto;
padding:.6rem 0rem;
letter-spacing:2px;
text-transform:uppercase;
font-size:1rem;
}



/* ############################################################ */
/* 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) {

.content {padding:6rem 3rem; }

.wrapper-box {margin:0; }


}


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


/* - - - - -   GRID-SYSTEM #1   - - - - - */
.box-1_of_1 {width: 50%; }
.box-1_of_2 {width: 50%; }
.box-1_of_3 {width: 33.33%; }
.box-1_of_4 {width: 50%; }
/* - - - - - ende  GRID-SYSTEM #1 - - - - - */


}


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

/* - - - - -  GRID-SYSTEM #2 - mit display:table/table-cell - - - - - */
#logo .box-tabcell-1a ,
#logo .box-tabcell-1b  {width: 50%; display:table-cell; }
#logo .tabrow {display:none; }
/* - - - - - ende  GRID-SYSTEM #2  - - - - - */

}


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

html {font-size:70%;}


.content {padding:6rem 4.5rem; }

/* - - - - -   GRID-SYSTEM #1  - - - - - */
.box-1_of_2 {width: 50%;  }
.box-1_of_3 {width: 33.33%;  }
/* - - - - - ende  GRID-SYSTEM #1  - - - - - */


}


/* ==================================== ab 800 pixel ================================== */

@media (min-width: 800px) {

/* keine angabe */


}


/* ===================================== ab 1024 pixel ================================= */

@media (min-width: 1024px) {

.name {
font-size:3.6rem;
line-height:3.8rem;
}

.name b {font-size:1.8rem; }


/* - - - - -  GRID-SYSTEM #1   - - - - - */
.box-1_of_4 {width: 25%;  }
.box-1_of_5 {width: 20%;  }
.box-1_of_1_gallery {width: 100%;  }
.box-1_of_2_gallery {width: 50%;  }
/* - - - - - ende  GRID-SYSTEM #1  - - - - - */


/* code-beispiele */
pre {width:60vw; }

}


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

@media (min-width: 1100px) {

html { font-size:75%; }

.content {padding:6rem 7rem; }


}


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

@media (min-width: 1200px) {

/* einrücken der bilder im inhaltsbereich */
.content .wrapper-box {padding:0rem 5rem; }


}



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

@media (min-width: 1400px) {

html { font-size:80%; }

.content {padding:6rem 9rem; }

}



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