

/* = = = = = = = = = = = = = = = = = 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.6;
font-weight:normal;
height:100%;
}

body {
font-size:1.6rem;
margin: 0 auto;
}

/* absatz */

p.break  {
line-height:7rem;margin:0;
}

/* ü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: 5.2rem;
}

h2 {text-align:left;
font-size:2.9rem;
line-height: 3.1rem;
margin-top: 0rem;
margin-bottom: 3.5rem;
font-weight:bold;
}

h3 {
font-size:2rem;
line-height: 2.8rem;
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;
text-decoration:none;
}

/* quelltext-erklärungen - wenn vorhanden */
pre {white-space:pre-wrap;position:relative;
font-size:1.5rem;
padding:1rem 0.5rem 1rem 0.5rem;
margin:2rem auto;
text-align:center;
background:#f1f1f1;
color:#000;
border:none;
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:#5F5F5F;font-weight:bold;
transform:rotate(-45deg);
}


/* ############################################################ */
/*  speziell*/
/* ############################################################ */

.container_haupt {height:100%;
margin:0 auto;
padding:0;
width:100%;background:#fff;
}

/* 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;
}


/*   WEITER-BUTTON */

.btn span.weiter  {color:#fff;display:inline-block;
background:#3f3f3f;
text-decoration:none;
padding:.4rem 1.6rem .4rem 1.2rem;
border-radius:0;
cursor:pointer;
margin:0rem 0 0 0 ;
}

.btn span.weiter:hover {color:#fff;background:#000;
text-decoration:none;box-shadow:1px 1px 3px #9F9F9F;
}

.btn .weiter:before {display:inline-block;
font-family:'Font Awesome 5 Free';/* - 'Font Awesome 5 Free' for Regular and Solid symbols;
                                     - 'Font Awesome 5 Brand' for Brands symbols. */
font-weight: 900;/*  Weight of the font (mandatory)
                     - 400 for Regular and Brands symbols;
                     - 900 for Solid symbols. */
content:"\f0da";
font-style: normal;
font-variant-caps: normal;
font-variant-ligatures: normal;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
text-decoration: none;
color:#fff;
padding:.2rem 0;
margin:0 .6rem 0em .4rem;transition:all .6s ease-out
}

.btn .weiter:hover:before {
transform:  translate(.5rem);
}

/*  liste - aufzaehlungspunkte */

.liste-1 ul  {
margin:0 2rem 0 2rem;
padding:0;
}

.liste-1  li {list-style:none;display:block;
font-size:1.5rem;
font-weight:bold;
padding:0rem;
margin:0;
list-style-position: inside; /* rückt gfls zweite zeile ein*/
text-indent:-1.6rem; /* rückt zweite gfls zeile ein*/
padding-left:1.6rem; /* rückt zweite gfls zeile ein*/
}

/* die icons  in liste-1 */

.liste-1  li:before {display:inline-block;
font-family:'Font Awesome 5 Free';
content:"\f058";
font-style: normal;
font-variant-caps: normal;
font-variant-ligatures: normal;
font-weight: 900;/* Weight of the font (by fontawesome)- use:
               - 400 for Regular and Brands symbols;
               - 900 for Solid symbols. */
text-rendering: auto;
-webkit-font-smoothing: antialiased;
text-decoration: none;
margin-right:1.5rem;
margin-left:0rem;
color:#1f1f1f;
font-size:1.4rem;
}


/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */
/*  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:.4rem;
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_5 ,
.box-1_of_6 {width:100%; }

.box-1_of_4b {width: 50%; }

.wrapper-box .box img,
.wrapper-box .box a img {display:block;
width: 100%;
height: auto;
}


/* ############################################################ */
/* bereich logo */
/* ############################################################ */

.logo {display:table;
width:100%;
margin:0;
padding:0;
text-align:center;overflow:hidden;
}

.logo-content {position:relative;display:table-cell;
width:100%;height:100vh;
padding:0rem 0rem;
margin:0 ;
background-image:url(../images/logo02.jpg);/* dieses foto erscheint nur, wenn man die slideshow loescht */
background-position:50% 55%;
background-repeat:no-repeat;
background-size:cover;
}

#name  {
position:absolute;display:inline-block;
background:
linear-gradient(135deg, transparent 22px, #d9ecff 22px, #d9ecff 24px, transparent 24px, transparent 67px, #d9ecff 67px, #d9ecff 69px, transparent 69px),
linear-gradient(225deg, transparent 22px, #d9ecff 22px, #d9ecff 24px, transparent 24px, transparent 67px, #d9ecff 67px, #d9ecff 69px, transparent 69px)0 64px;
background-size: 64px 128px;
z-index:1;
top:50%;left:50%;
width:30rem;height:24rem;
margin-top:-12rem;
margin-left:-15rem;
color:black;
font-weight:bold;
font-size:1.8rem;
line-height:2.3rem;letter-spacing:1px;
padding:0rem;
text-shadow:1px 2px 5px white;
text-transform:uppercase;
transform:rotate(0deg);
}

#name .inhalt {display:table-cell;
width:30rem;
height:24rem;
padding:1rem;
vertical-align:middle;
}

#name span {display:block;
text-align:center;
color:black;
letter-spacing:1px;
font-weight:bold;
font-size:1.7rem;
padding: 0 .5rem;
text-transform:none;
}


/* icons  */

.logo ul {text-align:center;
padding:0rem;
margin:0;
}

.logo  li {list-style:none;
padding:0rem .5rem;
margin:0;display:inline
}

.logo .fas  ,
.logo .fab ,
.logo .far  {display:inline-block;
font-size:1.9rem;line-height:3rem;
color:orange;
padding:0rem;
text-shadow:1px 1px 1px black;
text-align:center;
margin:0 auto;
}


/* ############################################################ */
/* bereich logo UNTERSEITEN*/
/* -----unterseiten - index1,index2, index3 ----- */
/* ############################################################ */

/*  siehe bei den media queries ab 960pixel  */
#name.unterseite { }


/* ############################################################ */
/* bereich content */
/* ############################################################ */

.section-content {display:table;
width:100%;
margin:0;
padding:0;
color:#000;
overflow:hidden;
}

.content {
display:table-cell;
width:100%;
height:100vh;
margin: 0 auto;
padding:2vh 6vw;
text-align:left;
vertical-align:middle;
}


/*  ----------------------------------------  */
/*  NTH-CHILD 3n+1 - spricht den ersten Abschnitt an und ab diesen jeden dritten Abschnitt.
D.h. Abschnitt 1, Abschnitt 4, Abschnitt 7 usw. sind identisch */
/*  ----------------------------------------  */

.section-content:nth-child(3n+1) {
background:lightskyblue;
}

.section-content:nth-child(3n+1) .info .box-tabcell  {
transform:rotate(0deg);background:#2DA6F7;
}

.section-content:nth-child(3n+1) .info .box-tabcell-2  {
transform:rotate(0deg);
}


/*  ----------------------------------------  */
/*  NTH-CHILD 3n+2 -  ist für den zweiten Abschnitt zuständig und ab diesen wird jeder dritte Abschnitt angesprochen.
D.h. Abschnitt 2, Abschnitt 5, Abschnitt 8 usw. sind identisch.  */
/*  ----------------------------------------  */

.section-content:nth-child(3n+2) {
background:limegreen;
}

.section-content:nth-child(3n+2) .info .box-tabcell  {
transform:rotate(0deg);background:limegreen;
}

.section-content:nth-child(3n+2) .info .box-tabcell-2  {
transform:rotate(0deg);
}


/*  ----------------------------------------  */
/*  NTH-CHILD 3n+3 - spricht den dritten Abschnitt an und ab diesen jeden dritten Abschnitt.
D.h. Abschnitt 3, Abschnitt 6, Abschnitt 9 usw. sind identisch.  */
/*  ----------------------------------------  */

.section-content:nth-child(3n+3) {
background:orange;
}

.section-content:nth-child(3n+3) .info .box-tabcell  {
transform:rotate(0deg);background:gold;
}

.section-content:nth-child(3n+3) .info .box-tabcell-2  {
transform:rotate(0deg);
}


/*  ----------------------------------------  */
/*  NTH-CHILD(3) - Nur Abschnitt 3  */
/*  ----------------------------------------  */

.section-content:nth-child(3) {
box-shadow:0px 0px 1px black;
background:
radial-gradient(gold 50%, transparent 50%) 0 0,
radial-gradient(gold 50%, transparent 50%) 16px 16px,
radial-gradient(rgba(255,255,255, 0.1) 15%, transparent 15%) 0 1px;
background-color: black;
background-size: 32px 32px;

}

.section-content:nth-child(3):hover {
animation:changecolor 3s linear;
}

.section-content:nth-child(3):hover {
background-size: 32px 32px;animation:changecolor 2s 1 ease-out forwards;
}


/*  ----------------------------------------  */
/*  infoboxen bei HOME  / PRIMUS / SECUNDUS / TERTIUS / QUARTUS / QUINTUS / SEXTUS  */
/*  ----------------------------------------  */

/* -----GRID-SYSTEM #2  - mit DISPLAY:TABLE  ----- */

.info .wrapper-box-table {
display:table;
table-layout:fixed;
width:100%;
padding:1rem;
border-spacing:1rem .5rem;
}

.info  .box-tabcell {min-height:20rem;
display:inline-block;
color:#000;
width: 100%;
padding:2rem ;
vertical-align:top;
text-align:left;
}

.info  .box-tabcell-2 {min-height:20rem;
display:inline-block;
background:transparent;
color:#000;
width: 100%;
padding:0rem ;
margin:0 auto;
margin-top:1rem;
vertical-align:middle;
text-align:center;
}

.info .box-tabcell-2 .text-wrapper {display:block;
position:relative;width:100%;
}

.info  img {
border-top:solid 1.5rem white;
border-right:solid 1.5rem white;
border-bottom:solid 6rem white;
border-left:solid 1.5rem white;
box-shadow:0px 0px 1px black;
}

.info  .box-tabcell-2 .text {
position:absolute;
bottom:30px;left:50%;
width:500px;
margin-left:-250px;
font-family:'josefin_sansregular',georgia, tahoma, arial, Verdana, Segoe, 'Open Sans',helvetica,roboto ,serif;
font-style:italic;
line-height:1.1;
}


/*  ----------------------------------------  */
/*  box KONTAKT                               */
/*  ----------------------------------------  */

#kontakt .box {font-size:1.4rem;padding:0rem;
margin-bottom:1rem;
}

#kontakt .box-1_of_2 {width: 100%; }

#kontakt ul {text-align:left;
padding:0rem;
margin:0;
}

#kontakt  li {list-style:none;
padding:0rem;
margin:0;
}

#kontakt  h3 {font-size:1.6rem;
}


/* ----- icons ----- */

#kontakt .fas ,
#kontakt .fab ,
#kontakt .far  {display:inline-block;text-align:center;
margin:0rem  .4rem 0rem -.2rem;
padding: 0;
width:2.5rem;
height:2.5rem;
line-height:2.5rem;
font-size:1.4rem;
color:#000;text-shadow:none;
}

.day  {display:inline-block;
width:6rem;font-weight:normal;
}


/*  ----------------------------------------  */
/*  box NEWS                               */
/*  ----------------------------------------  */

#news.wrapper-box-table {
display:table;
table-layout:fixed;
width:100%;
padding:1rem;
}

#news .box-tabcell,
#news .box-tabcell-2 {min-height:5rem;
background:#000;
display:inline-block;
color:gold;
width: 100%;
padding:1rem ;
margin-bottom:1rem;
vertical-align:top;
text-align:left;
}

#news .box-tabcell-2 {
background:transparent;
color:#000;
font-size:1.5rem;
}

#news ul  {
margin:0;
padding:0;text-align:center;
}

#news  li {display:inline;
list-style:none;
line-height:2.5rem;
font-size:1.5rem;
font-weight:bold;
padding:0rem;
margin:0;
}

#news  li span{color:orange; }


/* ############################################################ */
/* bereich fuss */
/* ############################################################ */

.section-fuss {
width:100%;
color:#fff ;
background-image:url(../images/logo03.jpg);
background-position:50% 55%;
background-repeat:no-repeat;
background-size:cover;
position:relative;
padding: 2rem;
}

.fuss-content {
min-height:15rem;
margin: 0 auto;
padding:2vh 0vw;
font-size:1.4rem;
}


/*  ----------------------------------------  */
/*  box #fuss   */
/*  ----------------------------------------  */

/* -----GRID-SYSTEM #2  - mit DISPLAY:TABLE  ----- */

#fuss.wrapper-box-table {
display:table;
table-layout:fixed;
width:100%;
padding:0rem;
}

#fuss  .box-tabcell {min-height:20rem;
display:inline-block;
color:#fff;
width: 100%;
margin-bottom:1rem;
padding:2rem;
vertical-align:top;
text-align:left;
background:rgba(0,0,0,.6);
}

#fuss h3 {
font-size:1.5rem;
line-height:1.8rem;
color:#fff;padding:1rem 0;
border-bottom:dotted 1px #fff;
margin-top:-.5rem;
margin-bottom:1rem;
text-align:left;
}

#fuss ul {text-align:left;
padding:0rem;
margin:0;
}

#fuss  li {list-style:none;
padding:0rem;
margin:0;
}


/*  ----------------------------------------  */
/*  #fuss-menu  */
/*  ----------------------------------------  */

#fuss  .menu ul {
text-align:left;
margin:0;
padding:0;
}

#fuss  .menu li {list-style-type: none;
margin-left:1rem;
line-height:2.2rem;
list-style-position: inside; /* rückt gfls zweite zeile ein*/
text-indent:-1.2rem; /* rückt zweite gfls zeile ein*/
padding-left:1rem; /* rückt zweite gfls zeile ein*/
}

#fuss  .menu  a {
text-align:left;
text-decoration : none;
letter-spacing:0rem;
padding:0rem ;
margin: 0;
color:#fff ;
}

#fuss  .menu li a:hover {
color:#fff;
background:transparent;
text-decoration:none;
}


/* die icons  im fuss-menu */

#fuss  li a:before {display:inline-block;
font-family:'Font Awesome 5 Free';
content:"\f35a";
font-style: normal;
font-variant-caps: normal;
font-variant-ligatures: normal;
font-weight: 400;/* Weight of the font (by fontawesome)- use:
               - 400 for Regular and Brands symbols;
               - 900 for Solid symbols. */
text-rendering: auto;
-webkit-font-smoothing: antialiased;
text-decoration: none;
margin-left:0rem;
margin-right:1rem;
color:gold;
}

#fuss  li a:hover:before {
color:#fff;
}

#fuss  .fas ,
#fuss  .fab ,
#fuss  .far  {display:inline-block;
margin-left:0rem;
margin-right:1rem;
color:gold;
}



/* ############################################################ */
/* 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 breite 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:6vh 6vw; }
.fuss-content {padding:6vh 6vw; }

}


/* ==================================== ab 580 pixel ================================== */
@media (min-width: 580px) {

#name .inhalt {width:42rem; height:26rem; }
#name  {transform:rotate(15deg); }

.logo-content {height:38rem; }

.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%; }


}


/* ==================================== ab 640 pixel ================================== */
@media (min-width: 640px) {

/* keine angabe */

}


/* ==================================== ab 760 pixel ================================== */
@media (min-width: 760px) {

html {font-size:70%;}

.box-1_of_2 {width: 50%;  }

#news .box-tabcell  {display:table-cell;height:10rem;width: 6%;}
#news .box-tabcell-2  {display:table-cell;height:10rem;width: 44%;}

.date:after {display:none; }


}


/* ===================================== ab 960 pixel ================================= */

@media (min-width: 960px) {

.logo-content {height:45rem; }

#name  {
width:60rem;
height:26rem;
margin-top:-10rem;
margin-left:-30rem;
font-size:2.5rem;
line-height:3rem;
}

#name .inhalt {
width:60rem;
height:26rem;
}

/* ausgleich wegen menue-leiste auf den unterseiten*/
#name.unterseite {
margin-top:-12.5rem;
margin-left:-30rem;
}

.box-1_of_4 {width: 25%;  }
.box-1_of_5 {width: 20%;  }
.box-1_of_4b {width: 25%; }

.info .box-tabcell  {display:table-cell;height:15rem;width: 50%;}
.info .box-tabcell-2  {display:table-cell;height:15rem;width: 50%;padding:2rem 0rem; }
.info .box-tabcell-2 .text-wrapper {width:100%; }

#fuss.wrapper-box-table {border-spacing:1rem 0rem; }
#fuss  .box-tabcell  {display:table-cell;height:20rem;}

/* schraegstellung der boxen */

.section-content:nth-child(3n+1) .info .box-tabcell  {
transform:rotate(7deg);transition:all 1s ease-out;
}
.section-content:nth-child(3n+1) .info .box-tabcell-2  {
transform:rotate(-7deg);transition:all 1s ease-out;
}
.section-content:nth-child(3n+2) .info .box-tabcell  {
transform:rotate(-4deg);transition:all 1s ease-out;
}
.section-content:nth-child(3n+2) .info .box-tabcell-2  {
transform:rotate(-4deg);transition:all 1s ease-out;
}
.section-content:nth-child(3n+3) .info .box-tabcell  {
transform:rotate(0deg);
}
.section-content:nth-child(3n+3) .info .box-tabcell-2  {
transform:rotate(0deg);
}


/* hover-transition-animation bei schraegstellung der boxen */

.section-content:nth-child(3n+1) .info .box-tabcell:hover  {
transform:rotate(0deg);
}
.section-content:nth-child(3n+1) .info .box-tabcell-2:hover  {
transform:rotate(0deg);
}
.section-content:nth-child(3n+2) .info .box-tabcell:hover  {
transform:rotate(0deg);
}
.section-content:nth-child(3n+2) .info .box-tabcell-2:hover  {
transform:rotate(0deg);
}


}


/* ===================================== ab 1024 pixel ================================= */

@media (min-width: 1024px) {

/* keine angabe */

}


/* ===================================== ab 1100 pixel ================================= */

@media (min-width: 1100px) {

html { font-size:75%; }

pre {width:50vw; }



}


/* ===================================== ab 1200 pixel ================================= */

@media (min-width: 1200px) {

.content {padding:6vh 10vw; }


}


/* ===================================== ab 1400 pixel ================================= */

@media (min-width: 1400px) {

html { font-size:70%; }

}


/* ===================================== ab 1500 pixel ================================= */

@media (min-width: 1400px) {

.fuss-content {padding:8vh 10vw; }

}


/* +  +  +  +  + +  +  +  +  +  C O D E ENDE  +  +  +  +  +  +  +  +  +  + */