

/* = = = = = = = = = = = = = = = = = 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.4;
font-weight:normal;
height:100%;
}

body {
font-size:1.7rem;
margin: 0 auto;
color:#9F9F9F;
}

/* zusätzliche zeilenabstände, absatz */
.content br {
line-height:.6;
}

p.break  {
line-height:7rem;margin:0;
}


/* überschriften */

h1, h2, h3, h4, h5 {
font-family:'robotolight';
font-weight:normal;
color:#DFDFDF;
}

h1 {text-align:left;
font-size:3.5rem;
line-height: 3.7rem;
margin-top: 0rem;
margin-bottom: 4.2rem;
letter-spacing:.0rem;
}

h2 {
font-size:2.8rem;
line-height: 3rem;
margin-top: 0rem;
margin-bottom: 3.5rem;
letter-spacing:0rem;
}

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

h3:first-letter {
color:gold;
}

/* allgemeine links  */

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

a:hover  {color:#9F9F9F;
background-color:transparent;
text-decoration:none;
}

/* quelltext-erklärungen - wenn vorhanden */
pre {white-space:pre-wrap;
font-size:1.5rem;
padding:1rem 0.5rem 1rem 0.5rem;
margin-bottom:2rem;
text-align:center;
color:#BFBFBF;
background:#4F4F4F;
border:dotted .1rem #9F9F9F;
}


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

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

.wrapper {
margin:0 auto;
width:100%;padding:0rem;

}

/* 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;
}


.name {
display:block;
font-family:'robotolight';
font-size:2rem;
line-height:2.2rem;
letter-spacing:0rem;
color:gold;
text-transform:uppercase;
padding:0rem;
margin:0 auto;
}


/*  slogan  */
.slogan  {position:absolute; /* relativ/absolute positionierung vom slogan */
display:block;
z-index:2;
width:90%;height:90%;
bottom:-50%;right:-50%;
background:#9b263d;
color:gold;
font-size:1.4rem;
font-family:arial;
letter-spacing:.1rem;
text-transform:uppercase;
text-align:center;
margin:0;
padding:1rem;
box-shadow:0px 0px 4px #4F4F4F;
transform:rotate(-45deg);
transform-origin:50% 50%;
border-top:solid .4rem yellowgreen;
}

.filter  {
background: rgba(0,0,0,.4);
}


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

.section-logo {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo00.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}

.section-logo00 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo00.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}

.section-logo1 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo01.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}


.section-logo2 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo02a.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}



.section-logo3 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo03.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}


.section-logo4 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo04.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}

.section-logo5 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo05.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}



.section-logo6 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/familienbild.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}


.section-logo8 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo08.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}



.section-logo10 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo10.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}


.section-logo11a {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo11a.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}


.section-logo9 {
width:100%;
background:rgba(0,0,0,.5);
position:relative;
overflow:hidden;
background-image:url(../images/logo09.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}


.logo {
display:table;
width:100%;
text-align:center;
margin: 0 auto;
padding:0;
}

.logobox-1a  {
display:table-cell;
width:100%;
height:36rem;
padding:0rem 0rem ;
text-align:center;
vertical-align:middle;
}

/*  wrapper vom font-icon im kreis  */
.logo-icon {display:inline-block;
margin:0rem auto;
height: 12rem;padding:0;
width: 12rem;
line-height:10rem;
border:solid 1rem orange;
background:gold;
font-size:2rem;
text-align:center;
vertical-align:middle;
color:yellowgreen;
font-weight:bold;
border-radius:36rem;
}

/*  font-icon im kreis  */
.logo .fa {display:inline-block;margin:0;
text-align:center;vertical-align:middle;
line-height:12rem;
transform: translateY(-4%);
color:#627B02;
font-size:5rem;
}


.logo-bottom {
min-height:0.5rem;
line-height:0.5rem;
padding:0rem 0rem 0rem 0rem;
text-align:left;
width:100%;
color:gold;
text-transform:none;
letter-spacing:.2rem;
background:gold;
}


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


.section-content {
width:100%;
background:#2f2f2f;
margin:0;
padding:0
}

.content {display:block;width:100vw;
min-height:50rem;
margin: 0 auto;
text-align:left;
padding:6rem 3rem 9rem 3rem ;
}



/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */
/* BILDER IM INHALTSBEREICH -ANPASSEN DER GRÖSSE */
/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */

.content .wrapper-bild {
text-align:center;
padding:0;margin:3rem 0;
}


.bild {display:inline-block;
padding:.5rem ;
margin:0rem -.25rem -.5rem -.25rem ;/* ausgleich ( minus-margin) für INLINE-BLOCK-WHITESPACE-BUG*/
}

.bild-1_of_1 { width: 100%; }

.content .wrapper-bild img {width: 100%;
height: auto;
margin:0 auto;
box-shadow: 0  0  .3rem black;
}


.content .wrapper-bild img:hover {
color:#fff;animation:wobble 1s 1  ease-out; /* HIER WIRD DIE ANIMATION 'wobble' AUSGELÖST */
}



/* = = = = = = = = = = = = = = = = = = = = ENDE  BILDER  = = = = = = = = = = = = = = = = = = = = */



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

.section-fusstop {
width:100%;
color:white;
background:#7F7F7F;
background-image:url(../images/logo02.jpg);
background-position:50% 0%;
background-repeat:no-repeat;
background-size:cover;
}

.fusstop {display:table;width:100%;
height:20rem;
margin: 0 auto;
padding:2rem 0;
font-size:1.4rem;
}

.fusstop h3 {margin:1rem 0;text-align:left;
color:yellowgreen;
font-size:1.6rem;
border-bottom:dotted .1rem gold;
}

.fusstop h3:first-letter {
color:gold;
}

.fusstopbox-1a  {display:block;
padding:1rem 1rem 3rem 1rem ;
text-align:left;
background:rgba(0,0,0,.5);
}

.fusstopbox-1b  {display:block;
padding:1rem 1rem 3rem 1rem ;
text-align:left;background:rgba(0,0,0,.5);
}

/*  contact  */

.fusstopbox-1a .contact .fa {
width:2rem;
color:yellowgreen ;
}

.fusstopbox-1a .contact   {width:28rem;
padding:0rem;
margin:0 auto;
}

.fusstopbox-1a .contact  ul {text-align:left;
padding:0rem;
margin:0;
}

.fusstopbox-1a .contact  li {list-style:none;
padding:0rem;
margin:0;
}



/* ############################################################ */
/*  fusstop-menu */
/* ############################################################ */

.fusstop-menu {width:28rem;
margin:0 auto;
padding:0;
}

.fusstop-menu ul {
text-align:left;
margin:0;
padding:0;
}

.fusstop-menu li {list-style-type: none;
margin:0;
padding:0 ;
}

.fusstop-menu li a {text-align:left;
text-decoration : none;
font-size:1.4rem;
letter-spacing:0rem;
padding:.1rem ;
margin:.1rem 0;
color:#fff  ;
}

.fusstop-menu li a:hover {
color:white;
background:transparent;
}


/* die font-icons  im menü */

.fusstop-menu li a:before {
font-family:'FontAwesome';
top:0rem;
left:0rem;
content:"\f178";
padding-right:1rem;
color:yellowgreen ;
font-size:1.3rem
}

.fusstop-menu li a:hover:before {
color:#fff;
}

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


.section-fuss {
width:100%;
background:#2f2f2f;
}

.fuss {display:table;
margin: 0rem auto;text-align:center;
padding:1rem;width:100%;
height:16rem;
}

.fussbox-1a  {
display:table-cell;
vertical-align:middle;text-align:center;
text-align:center;
padding:0rem 0rem  ;
font-size:1.6rem;
line-height:1.9rem;
}

.fussname {display:block;
font-family:'robotolight';
text-align:center;
padding:.6rem;
font-size:1.2rem;
line-height:1.5rem;
letter-spacing:0.2rem;
color:#9F9F9F;
}


/* ############################################################ */
/* bereich fussmenu */
/* ############################################################ */


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

.fussmenu ul {padding:0;margin:0}

.fussmenu li { display:block;list-style: none;
width:100%;
line-height:2rem;
margin-left:0rem;
padding-left:.5rem;
padding-right:.5rem;
}

.fussmenu a {font-size:1.4rem;
line-height:1.6rem;
width : 100%;
text-align:left;
color:#9F9F9F;
text-decoration:none;
padding:0rem;
letter-spacing:.2rem;
}

.fussmenu a:hover {
color:#fff;
text-shadow:none;
background:transparent;
text-decoration: underline;
}



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

.slogan  {
bottom:-45%;right:-45%;
}


}


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

.content, .fusstop, .fuss {
width:90vw;
}


}


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


.name {
font-size:2.6rem;
line-height:2.9rem;
}

/* - - - - -  bilder - - - - - */
.content .bild-1_of_1 {width: 50%;  }
/* - - - - - ende  bilder - - - - - */

.fussmenu li { display:inline;
}


}


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

.name {
font-size:3rem;
line-height:3.3rem;
}

/* - - - - -  bilder - - - - - */
.content .bild-1_of_1 {width: 33%;  }
/* - - - - - ende  bilder - - - - - */


}


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


/* keine angabe */


}


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

html {font-size:70%;}

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

.filter  {
background:linear-gradient(to right, transparent, rgba(0,0,0,.4), transparent);
}

.content {
text-align:justify;
}

.fusstopbox-1a {width:50%;
display:table-cell;vertical-align:top;
border-right:dotted .1rem gold;
}

.fusstopbox-1b   {width:50%;
display:table-cell;vertical-align:top;
}


}


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

/* keine angabe */


}


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

@media (min-width: 1024px) {


/* keine angabe */
.fusstop {height:20rem;
padding:2rem 3rem; }

}


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

@media (min-width: 1100px) {

html {
font-size:75%;
}


}




/* ===================================== ab 1300 pixel ================================= */

@media (min-width: 1300px) {

.content, .fusstop, .fuss {
width:85vw;
}


}


/* ===================================== ab 1500 pixel ================================= */

@media (min-width: 1400px) {

html {
font-size:80%;
}


.content, .fusstop, .fuss {
width:80vw;
}



}


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