

/* = = = = = = = = = = = = = = = = = 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_sanscondensed_light', tahoma,georgia,  arial, Verdana, Segoe, 'Open Sans',helvetica,roboto ,sans-serif;
font-size:62.5%;
line-height:1.5;
}

body {height:100%;
font-size:1.7rem;
margin: 0 auto;
overflow-x:hidden;
color:#243348;
}


/* ---- überschriften ----- */

h1, h2, h3, h4, h5 {text-align:left;
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.3rem;
line-height: 3rem;
margin-top: 1rem;
margin-bottom: 3.5rem;
letter-spacing:1px;
}

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

/* ----- h2 extra und h3 extra ----- */

h2.extra {font-size:3.3rem;
line-height: 4rem;
margin-top: -1rem;
margin-bottom: 3rem;
letter-spacing:0px;
}

h3.extra {
font-size:1.6rem;
line-height: 2.2rem;
margin-top: -1rem;
margin-bottom:2rem;
letter-spacing:2px;
padding-bottom:1.5rem;
border-bottom:dashed 1px black;
}


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

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

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

/*  ----------------------------------------  */
/* allgemeine links */
/*  ----------------------------------------  */

a {color:#243348;
text-decoration: underline;
cursor:pointer;
}

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


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

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


/*  ----------------------------------------  */
/*   MEHR LESEN-BUTTON  */
/*  ----------------------------------------  */

/* ----- style ----- */

.button  {display:block;
margin:3rem 0 1rem 0;
text-align:left;
}

.button .mehr_lesen a {display:inline-block;
color:#fff;
background:#708090;
border-radius:36rem;
text-decoration:none;
padding:.3rem 2rem ;
transition:all  .3s ease-out;
cursor:pointer;
}

.button .mehr_lesen a:hover {color:#fff;
background:indianred;
box-shadow:none;
}


/* ----- icon beim MEHR LESEN-BUTTON ----- */

.button .mehr_lesen a:before {display:inline-block;
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. */
content:"\f0da" ;
transform:scale(.9);
color:#F8E3A5;
padding: 0 .5rem 0 0;
margin:0;
}

.button .mehr_lesen a:hover:before {color:#fff }


/*  ----------------------------------------  */
/* spezielle button-platzierung mit position:relative/absolute */
/* siehe beim abschnitt tertius */
/*  ----------------------------------------  */

.button-position {POSITION:relative; }



/*  ----------------------------------------  */
/* LISTE-SPEZIAL  */
/*  ----------------------------------------  */

/* ----- style 1 ----- */

.liste-spez   {display:block;padding:0;}

.liste-spez ul  {text-align:left;
margin:0rem 0 0 0;
padding:0rem 0 0 2rem;
}

.liste-spez li {list-style:square; }


/* ----- style 2 - wenn icon (fontawesome) vorangestellt ----- */

.schalter .liste-spez-2   {display:block;padding:0;}

.liste-spez-2 ul  {text-align:left;
margin:0rem 0 0 0rem;
padding:0rem 0 0 2rem;
}

.liste-spez-2 li {list-style:none;
list-style-position: inside; /* rückt gfls zweite zeile ein*/
text-indent:-1.4rem; /* rückt gfls zweite zeile ein */
padding-left:1.5rem; /* rückt gfls zweite zeile ein */
}

/* hover bei vorangestelltem icon (fontawesome) */
.liste-spez-2  i {color:#8AC494; }
.liste-spez-2 li a:hover i {color:sandybrown; }




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

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

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


/* ---------- boxen - bilder ---------- */

.bilder  {text-align:center;}
.bilder .box  {padding:.3rem; }

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

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


/*  bei Mausberührung der Bilder, wenn diese verlinkt sind (z.B Lightbox) */
a:hover img {opacity:.8;  filter: contrast(1.4); }


/*  ---------- boxen - andere ---------- */

#introduction-wrapper .box-1_of_2 {width: 100%; }
#service-wrapper .box-1_of_2 {width: 100%; }
#presentation-wrapper {width:100%;}
#about-wrapper .box-1_of_2 {width: 100%;  }
#information-wrapper {width:100%;}
#kontakt-wrapper .box-1_of_2 {width: 100%; }
#kontakt .box-1_of_2 {width: 100%; }



/* ############################################################ */
/* bereich header */
/* ############################################################ */

header {background:#fff; }


/* ############################################################ */
/* bereich top */
/* ############################################################ */

#top-wrapper {display:block;width:100%;
padding:0rem;margin:0 auto;
background:#fcf8e9;
POSITION:fixed;
z-index:1;
box-shadow:0 0 .6rem rgba(0,0,0,.3);
}


#top {display:table;width:100%;
padding:0rem;margin:0 auto;
}

.top-a {display:table-cell;vertical-align:middle;
width:auto;
text-align:left;
padding:1rem 0.5rem 1rem 2rem;
}

.top-b {display:table-cell;vertical-align:top;
width:auto;
text-align:center;
padding:1rem 0.5rem 1rem 0.5rem;
}


/* homepagename  */

.name {text-transform:none;
display:inline-block;
color:#39426C;
font-weight:bold;
margin:0 auto;
padding:0rem 1rem;
font-size:2rem;
line-height: 2.3rem;
}


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

#logo {
display:table;border-spacing:0rem 0rem;
width:100%;height:100vh;
margin:0 auto;
padding:4.8rem 0 0 0;
}


.logo-a  {display:table-cell;vertical-align:middle;
text-align:center;
height:38rem;
padding:0;
background-image:url(../images/logo01.jpg);
background-repeat:no-repeat;
background-position:50% 50%;
background-size:cover;
}


/* logo-icon */

#logo  i {display:inline-block;margin:0;
color:slategray;
font-size:10rem;
background:rgba(252,248,233,.8);
border-radius:36rem;
height:20rem;width:20rem;line-height:20rem;
font-style:normal;
}



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

main#inhalt {display:block;
background:#fff; /* wird für die startseite index.html durch 'nth-child' überschrieben  */
padding:0rem;
margin:0 auto;
}

.inhalt-a {display:block;
background:transparent;
width:100%;
margin:0 auto;
padding:5rem 1rem 5rem 1rem;
}


/*  ----------------------------------------  */
/*  NTH-CHILD - jeder ungerade (odd) abschnitt, also 1, 3, 5 , 7 usw. */
/*  ----------------------------------------  */

.section-inhalt:nth-child(odd) {
background:repeating-linear-gradient(to right, #d7d1b6 0%, #EAE8D9 30%, #d7d1b6 60%);
}


/*  ----------------------------------------  */
/*  NTH-CHILD - jeder gerade (even) abschnitt , also 2, 4, 6 , 8 usw. */
/*  ----------------------------------------  */

.section-inhalt:nth-child(even)  {
background:#fcf8e9;
}


/*  ----------------------------------------  */
/* box introduction */
/*  ---------------------------------------  */

#introduction .box {
display:inline-block;
padding:2rem 1rem 2rem 2rem ;
margin-bottom:1rem;
}


/*  ----------------------------------------  */
/* box service */
/*  ----------------------------------------  */

#service .box {display:inline-block;
border:solid 1px #AFAFB6;
border-radius:0.8rem;
padding:2rem 1rem 2rem 2rem ;
margin-bottom:1rem;
background:rgba(255,255,255,.8);
}

#service  h3 {
margin: 2rem 1rem 1rem 0rem;
text-align:left;
}


/* icon vorangestellt  */

#service article  {display:table;margin-top:-2.5rem;}

#service article:before {display:table-row; /* platziert icon über den text */
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. */
content:"";
text-align:left;
font-size:3rem;
width:5.5rem;
padding:0rem;
color:slategray;text-shadow:0 0 1px black;
position:relative;left:0rem;top:1rem
}

/* icons */

#service article.icon1:before {content:"\f5bb"; }
#service article.icon2:before {content:"\f6ad"; }
#service article.icon3:before {content:"\f29a"; }


/* icons .more im boxfenster */

#service.more article.icon1:before {content:"\f19c"; }
#service.more article.icon2:before {content:"\f5c4"; }
#service.more article.icon3:before {content:"\f3e0"; }
#service.more article.icon4:before {content:"\f70c"; }
#service.more article.icon5:before {content:"\e068"; }
#service.more article.icon6:before {content:"\f5da"; }


/* foto-box anpassung */

#service-wrapper .bilder .box {padding:0;border:solid 1px #AFAFB6;
border-radius:0.8rem;}

#service-wrapper img {border-radius:0.8rem; }


/*  ----------------------------------------  */
/* box presentation  */
/*  ----------------------------------------  */

#presentation .box  {display:inline-block;
background:#fffef9;background:rgba(255,255,255,.6);
margin:0;
margin-bottom:5rem;
padding:0rem ;
border:solid 1px #AFAFB6;
border-radius:0.8rem;
}

#presentation .box h3 {
margin-top:0;
margin-bottom:1.5rem;
text-align:left;
}

#presentation article.box-inner {
padding:2rem 1.5rem 4rem 1.5rem;
}

/* fotoanpassung */

#presentation  img {border-top-right-radius:0.8rem;border-top-left-radius:0.8rem; }


/* spezielle button-platzierung mit position:relative/absolute */
#presentation .button-position .button  {
POSITION:absolute;
bottom:-1rem;right:0%;
}

#presentation .button .mehr_lesen a {
background:#fff;
padding:.1rem 1rem ;
box-shadow:none;border-radius:0;
border-top-left-radius:1rem;
border-bottom-right-radius:1rem;
border-left:solid 1px #AFAFB6;border-top:solid 1px #AFAFB6;
color:#534006;
}

#presentation .button .mehr_lesen a:before {
color:slategray;
}

#presentation .button .mehr_lesen a:hover:before {color:indianred; }

/*  ----------------------------------------  */
/* box about  */
/*  ----------------------------------------  */

#about .box {display:inline-block;
border:solid 1px #AFAFB6;
border-radius:0.8rem;
padding:2rem 1rem 2rem 2rem ;
margin-bottom:1rem;
background:rgba(255,255,255,.6);
}

#about  h3 {
margin: 2rem 1rem 1rem 0rem;
text-align:left;
}


/* icon vorangestellt  */

#about article  {display:table;width:100%;margin-top:-2.5rem;}

#about article:before {display:table-row;/* platziert icon über den text */
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. */
content:"";
text-align:left;
font-size:3rem;
width:5.5rem;
padding:0 0rem;
color:slategray;
position:relative;left:0rem;top:1rem
}

#about article.icon1:before {content:"\f29a"; }
#about article.icon2:before {content:"\f3c5"; }



/*  ----------------------------------------  */
/* box information  */
/*  ---------------------------------------- */

#information-wrapper  i {text-transform:uppercase; }


/*  ----------------------------------------  */
/*  box KONTAKT                               */
/*  ----------------------------------------  */


#kontakt .box {
display:inline-block;
padding:2rem 1rem 2rem 2rem ;
margin-bottom:1rem;
}

#kontakt  h3 {
margin: 0rem 1rem 1rem 0rem;
text-align:left;
}

/* icons */

#kontakt  i {
transform:scale(.8);
color:slategray;
margin-right:1rem;
}

/* im boxfenster sextus/kontakt */

.liste-spez  b.day {display:inline-block;width:6rem;font-weight:normal;padding-left:0rem; }




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

footer {
background:#fefdf9;
margin:0 auto;
padding:0rem ;
border-top: solid .1rem rgba(50,50,50,.1);
}

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

.fuss-a {display:block;
margin: 0 auto;
padding:2rem .5rem 2rem .5rem;
}

#fuss .box {
padding:0rem 0rem;
}

#fuss .box article {
margin-bottom:1rem;
}


/*  ----------------------------------------  */
/*  die wesentlichen schriftformate für den gesamten footer plus fussmenu */
/*  ----------------------------------------  */

#fuss,
#fuss a {
color:darkslategray;
font-weight:normal;
font-size:1.4rem;
line-height:3rem;
padding:0 .2rem;
letter-spacing:1px;
text-transform:uppercase;text-decoration:none;
}

.fussmenu  ul {text-align:center;list-style: none;padding: 0;margin: 0;}
.fussmenu li { display:inline-block; }

#fuss li a:hover  {color:darkslategray;text-decoration:underline }


/* social media */

.fussmenu  a span i {
font-size:1.5rem;
border-radius:.4rem;
color:darkslategray;
padding:.7rem;
margin:0rem;
transition:all .4s;
}

.fussmenu  a:hover span i {transform:rotate(25deg) }




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

/* keine angabe */

}


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

html {font-size:70%; }

.top-a  {padding:1rem 1rem 1rem 3rem; }
.inhalt-a  {padding:5rem 2rem; }
.fuss-a  {padding:2rem 4rem; }

.bilder .box-1_of_4  {width: 50%; }

}


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

.bilder .box-1_of_2  {width: 50%; }

}


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

/* keine angabe */

}


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

html {font-size:80%; }

#top {width:740px;}
.inhalt-a  {width:740px;}
.fuss-a  {width:740px;}

#logo {height:auto; }
.logo-a  { height:30rem; }

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


#service article  {margin-left:-2rem;}
#service article:before {display:table-cell;/* platziert icon neben text */ text-align:center; }

#about article  {margin-left:-2rem;}
#about  article:before {display:table-cell; /* platziert icon neben text */ text-align:center;}

#kontakt article  {margin-left:-2rem;}
#kontakt  article:before {display:table-cell; /* platziert icon neben text */ text-align:center;}

#fuss , #fuss  a {font-size:1.3rem; }
#fuss .box h3 {font-size:1.3rem; }

}


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

#top  {width:100%; }
.inhalt-a  {width:100%; }
.fuss-a  {width:100%; }

.logo-a { height:38rem; }
.bilder .box-1_of_4  {width: 25%; }

#introduction-wrapper .box-1_of_2 {width:50%; }

#service-wrapper .box-1_of_2 {width:50%; }

#about-wrapper .box-1_of_2 {width:50%; }

#presentation {display:table;width: 100%;border-spacing:1rem 0rem;table-layout:fixed; }
#presentation .box {display:table-cell;font-size:1.5rem }

#kontakt-wrapper .box-1_of_2 {width:50%; padding:0 2rem;}

}


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

pre {width:70%; }

}


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

#top {width:1280px; }
.inhalt-a  {width:1280px; }
.fuss-a  {width:1280px; }

}


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

html {font-size:85%; }

}