

/* = = = = = = = = = = = = = = = = = 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 {background:#E6E6E6;
font-size:1.7rem;
margin: 0 auto;
}


/* überschriften */

h1, h2, h3, h4, h5 {
font-weight:normal;font-weight:bold;
color:#1f1f1f;
}

h1 {text-align:right;
font-size:1.5rem;
line-height: 1.8rem;
margin-top: 0rem;
margin-bottom: 4.2rem;
letter-spacing:.0rem;
text-transform:uppercase;
}

h1:before {content:"\ | ";
color:maroon
}

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

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

/* allgemeine links  */

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

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


/* ----- quelltext-erklärungen - wenn vorhanden ----- */

pre {white-space:pre-wrap;position:relative;
font-size:1.5rem;
font-family: arial, Verdana, Segoe, 'Open Sans',helvetica,roboto ,sans-serif;
padding:0rem 1rem 2rem 1rem;
margin:4rem auto;
text-align:center;
border:dashed 0.1rem #7f7f7f;
background:transparent;
}

pre .extra {display:inline-block;
position:absolute;
left:-1.5rem;top:1.5rem;font-size:1.8rem;
color:#fff;font-weight:bold;
background:darkslategray;padding:0 .5rem;
transform:rotate(-45deg);
}

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

/* bilder -anpassen der grösse */
img {max-width: 100%;display:block;
margin:0 auto;
height: auto;opacity:1
}

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

/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */
/*  GRID-SYSTEM  - für Bilder / Spalten */
/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */

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

/* ----- boxen - grundsystem ----- */

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


/*  ----- boxen - für abweichungen vom boxen-grundsystem ----- */

.box-1_of_4b  {width: 50%; }
#gallery .box-1_of_3 {width:100%; }
#gallery .box-1_of_4 {width:50%; }
#fuss .box-1_of_4  {width: 100%; }

/*  ----- bilder ----- */
img {border: solid 1rem #2f2f2f;padding:.8rem ;
background:#fff;
box-shadow: 0  0 0 1px #fff; }


/*  ----- bei Mausberührung der Bilder, wenn diese verlinkt sind (z.B Lightbox) ----- */
a:hover img {opacity:.8;  filter: contrast(160%); border: solid 1rem maroon}


/* ----- boxen - boxen mit text ----- */

article.text h3 {
font-size:1.8rem;
margin: 0rem 0rem 1.5rem 0rem;
text-align:left;
text-transform:uppercase;
}

article.text {font-size:1.5rem;
margin:0;margin-bottom:1.5rem;
text-align:left;letter-spacing:1px;
padding:1rem 1rem 1rem 0;
}


/* ----- bildbeschreibung ----- */

article.text.bildbeschreibung {font-weight:normal; }

.bildbeschreibung:before {
display:inline-block;
text-align:center;
font-family:'Font Awesome 5 Free';/* - 'Font Awesome 5 Free' for Regular and Solid symbols;
                                     - 'Font Awesome 5 Brands' for Brands symbols. */
font-weight: 900;/*  Weight of the font (mandatory)
                     - 400 for Regular and Brands symbols;
                     - 900 for Solid symbols. */
padding:0;
content:"\f139";
color:maroon;
font-size:1.7rem;
width:2rem;
}


/* ----- zentrierung der bildbeschreibung falls 1 bild (.box-1_of_1) verwendet wird ----- */

article.text.cntr {text-align:center; }



/* ############################################################ */
/* bereich kopf */
/* ############################################################ */

.kopf-main {
padding:0;
margin:0 auto;
}

.kopf {display:block;
background:linear-gradient(to bottom , #887364, #000  );background:#333A3E;
margin: 0 auto;
padding:0;
}

.kopfbox-1a  {
padding:.5rem 0 ;
display:block;text-align:center;
}

.kopfbox-1b  {
display:block;text-align:right;
padding:0rem;
}

.name {display:block;
padding:1rem;
font-size:1.8rem;
line-height:2.3rem;
letter-spacing:0.2rem;
color:#fff;
}


/*  die icons im kopfbereich */

.kopf-main .leiste {display:block;background:maroon;
text-align:center;
padding:0rem;
height:4rem;
color:#fff;
}

.kopf-main .icons ul {
padding-left:0rem;
padding-top:0rem;
margin:0;
}

.kopf-main .icons li {display:inline-block;background:#5F5F5F;
line-height:5rem;
height:5rem;
width:3rem;
text-align:center;
border-bottom-left-radius:5rem;
border-bottom-right-radius:5rem;
box-shadow: 0px  0px 2px #000;
padding:0;
margin-left:-4px;
}

.kopf-main .icons a  {
font-size:1.5rem;
line-height:4rem;
height:4rem;
color:#fff;
text-shadow: 0 -1px 1px #3F3F3F, 0 1px 1px #000;
margin:0rem;
}

.kopf-main .icons a:hover {display:inline-block;
padding-bottom:1rem;
color:gainsboro;
text-shadow: 0 -1px 1px #6F6F6F, 0 1px 1px #000;
}



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

.logo-main {
padding:0;
margin:0 auto;background-image:url(../images/logo02.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
}

.logo {display:table;width:100%;
margin: 0 auto;
padding:0;
}

.logobox-1a  {
padding:2rem ;
display:none;text-align:center;
}

.logobox-1b  {background:rgba(0,0,0,.5);
display:block;text-align:right;
padding:0;
}


/* ############################################################ */
/* bereich inhalt */
/* ############################################################ */


main#inhalt {display:block;
padding:0rem;
margin:0 auto;
}

.inhalt-a {display:block;background:#FAF9F8;
width:100%;
margin:0 auto;
padding:4rem 2.5rem 4rem 2.5rem;
}



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


.fusstop-main {display:table;width:100%;
padding:0;
margin:0 auto;
color:#fff;
}

.fusstop {display:table;width:100%;
background:#4f4343;
margin: 0 auto;
padding:0 ;
background-image:url(../images/logo01.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
}

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

.fusstopbox-1b  {text-align:right;
display:none;
padding:3rem 1rem;
}


/*  die icons im fusstopereich  */

.fusstop .icon-liste i {display:inline-block;
width:3rem;
color:#fff;
padding-right:.7rem;
text-shadow: 0 -1px 1px #666, 0 1px 1px #000;
}

.fusstop .icon-liste ul {
padding:0rem;
margin:0;
}

.fusstop .icon-liste li {list-style:none;
padding:.2rem 0rem;
margin:.1rem auto;text-align:center;
}




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


.fuss-main {color:#fff;
margin:0 auto;;background:#333A3E;
}

.fuss {display:block;
margin: 0rem auto;
padding:0;
}

.fuss-main a {
text-decoration:none;
}

.fussbox-1a  {display:block;
text-align:center;
padding:0rem 0rem  ;
}

.fussbox-1b  {display:block;
text-align:center;
padding:0rem 0rem  ;
}

.fussbox-1c  {display:block;
text-align:center;
padding:1rem .5rem  ;
}

.fuss .leiste {display:block;min-height:4rem;
background:rgba(0,0,0,.1);background:maroon;padding:.5rem 0;
}

.fussname {display:block;
text-align:center;
padding:1rem;
font-size:1.4rem;
line-height:1.6rem;
letter-spacing:0.2rem;
color:#fff;
}

/*  die icons im fussbereich  */

.fuss .icon-liste i {background:black;
font-size:1.5rem;
line-height:3rem;
height:3rem;
width:3rem;
color:#fff;
margin:.2rem;
border-radius:36rem;
}

.fuss .icon-liste i:hover {background:#EFEFEF;
color:#800000;
animation:drehen .8s  1 ease-out ; /* HIER WIRD DIE ANIMATION 'drehen' AUSGELÖST */
}


.fuss .icon-liste  {
padding:0rem;
margin:0;
}

.fuss .icon-liste ul {
padding:0rem 0;
margin:0;
}

.fuss .icon-liste li {display:inline;
padding:0rem 0;
margin:0rem
}



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

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

.fussmenu li {list-style: none;
width:100%;
margin:0rem;
padding:0;
}

.fussmenu li a {font-size:1.4rem;display:inline-block;
line-height:1.8rem;
text-align:left;
padding:.5rem .3rem;
color:#fff;
text-decoration:none;
letter-spacing:.1rem;
}

.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 */
/* CSS Bildschirmabfragen */
/* ############################################################ */

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

/*
 - hinweis -
für die kleinste smartphone-auflösung von 320 pixel benötigen wir KEINE bildschirmabragen (css-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) {

.haupt {width:90vw; }

}


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

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

}


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

.inhalt-a {padding:4rem 4rem 6rem 4rem ; }

/* - - - - -   GRID-SYSTEM    - - - - - */
.box-1_of_5  {width: 20%; }
/* - - - - - ende  GRID-SYSTEM  - - - - - */

.fussmenu li { display:inline; }

}


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

.kopf {display:table;
width:100%;height:8rem;
}

.kopf .leiste {text-align:right;border-top-left-radius:3rem;
}

.kopfbox-1a  {width:50%;
padding:1rem 0rem 1rem 1rem;
display:table-cell;vertical-align:bottom;
}

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

.logobox-1a, .logobox-1b  {width:50%;
display:table-cell;vertical-align:middle;
}

}


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

html {font-size:70%; }

.logo {display:table;width:100%;
height:37rem;
margin: 0 auto;
padding:0;
}

.fusstop {height:20rem; }

.fuss {display:table;width:100%;
margin: 0rem auto;
padding:0rem 0rem;
}

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

.fussbox-1a , .fussbox-1b  {width:50%;
display:table-cell;vertical-align:middle;
}

.fuss .leiste {border-bottom-right-radius:3rem; }

}


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

html {font-size:78%; }

/* - - - - -  GRID-SYSTEM  - - - - - */
#gallery .box-1_of_3 {width:33.33%; }
#gallery .box-1_of_4 {width:25%; }
.box-1_of_4  {width: 25%; }
/* - - - - - ende  GRID-SYSTEM  - - - - - */

}


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

.haupt {width:80vw; }

pre{width: 70%; }

}


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

html {font-size:80%; }

.inhalt-a {padding:4rem 6rem 6rem 6rem; }


}


