



/* = = = = = = = = = = = = = = = = = 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', arial,helvetica, roboto ,sans-serif;

font-size:62.5%;

line-height:1.5;

}



body {height:100%;

font-size:1.8rem;

margin: 0 auto;

overflow-x:hidden;

color:#163A31;

background:#f5f5f6;

}



#container {background:#f5faf5;margin:0 auto; }





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



h1, h2, h3, h4, h5 {text-align:left;

font-weight:bold;text-transform:none;

}



h2 {font-family: sserif;

font-size:2.6rem;

line-height: 3.3rem;

margin-top: 2rem;

margin-bottom: 3.5rem;

letter-spacing: 0rem;

}



h3 {

font-size:2.1rem;

line-height: 3rem;

margin-top: .5rem;

margin-bottom:2.5rem;

letter-spacing: 0rem;

}





/* ----- 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 #686868;

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:#95B09A;padding:0 .5rem;

transform:rotate(-45deg);

}





/*  ----------------------------------------  */

/* allgemeine links */

/*  ----------------------------------------  */



a  {color:#163A31;

text-decoration: underline; }



label a {cursor:pointer; }



a:hover {color:#163A31;

text-decoration: none;

}









/* ############################################################ */

/*  speziell*/

/* ############################################################ */



/* bilder -anpassen der grösse */

img {max-width: 100%;display:block;

margin:0 auto;

height: auto;

border-radius:2rem;

}





/*  ----------------------------------------  */

/*   MEHR LESEN-BUTTON  */

/*  ----------------------------------------  */



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



.button  {display:block;

margin:3rem 0 1rem 0;

text-align:left;

}



.button .mehr_lesen a {display:inline-block;

color:#1f1f1f;

background:#f6fbed;

text-transform:uppercase;

font-size:1.5rem;

letter-spacing:2px;

border-radius:.5rem;

text-decoration:none;

padding:.4rem 1.5rem ;

cursor:pointer;

background-size: 250% 300%;



}



.button .mehr_lesen a:hover {color:#1f1f1f;

animation:change-bg 3s  ease-out; /* s. in datei 'animation.css' */

animation-direction:normal;

animation-fill-mode:forwards;

background-image: repeating-linear-gradient(-45deg, ghostwhite 0%, #E9ECE6 15%, whitesmoke, azure 45%);

}





/* ----- design-link ohne button ----- */



a.extra-link   {display:block;

padding:1rem 0;

text-decoration: none; }



/* icon bei extra-link */

a.extra-link:before {position:relative;

display:inline-block;

text-align:center;

font-family:'Font Awesome 6 Free';/* - 'Font Awesome 6 Free' for Regular and Solid symbols;

                                     - 'Font Awesome 6 Brands' for Brands symbols. */

font-weight: 900;/*  Weight of the font (mandatory)

                     - 400 for Regular and Brands symbols;

                     - 900 for Solid symbols. */

padding:0 .5rem 0 0 ;

content:"\f152";

color:#5C7861;

}



a.extra-link:hover:before {color:#5C7861; font-weight: 400;}





/*  ----------------------------------------  */

/* LISTE-SPEZIAL  */

/*  ----------------------------------------  */



/* ----- style 1 - mit aufzählungszeichen ----- */



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



.liste-spez ul  {text-align:left;list-style:square;

margin:0rem 0 0 0;

padding:0rem 0 0 2rem;

}



/* aufzaehlungszeichen marker */

.liste-spez li { }

.liste-spez li::marker { color: #266455;font-weight:bold }





/* numerische liste - ordered list */



.liste-spez ol  {text-align:left;list-style-type: decimal;

margin:0rem 0 0 0;

padding:0rem 0 0 2rem;

}



.liste-spez ol li {padding-left:.5rem; }

.liste-spez ol li::marker { color: #1B3630; font-family:serif }





/* ----- style 2 -  bei vorangestelltem icon (fontawesome) ----- */



.liste-spez-2 ul  {text-align:left;

margin:0rem 0 0 -1rem;

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.5rem; /* rückt gfls zweite zeile ein */

padding-left:1.5rem; /* rückt gfls zweite zeile ein */

}



.liste-spez-2  i {transform:scale(.9);padding-right:1rem;color:#266455; }

.liste-spez-2 li a:hover i {color:#3A9A83; }





/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */

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

/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */



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



.box {display:inline-block;

text-align:left;

vertical-align:top;

width:100%;

padding: 2rem;

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  {margin:-.8rem -1rem; text-align:center; }

.bilder .box  {padding:1rem; }



.bilder .box-1_of_1 ,

.bilder .box-1_of_2 ,

.bilder .box-1_of_3,

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



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

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

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



.bilder.gallery img  {border-radius:.5rem; }



/*  bei Mausberührung der Bilder, wenn diese verlinkt sind (z.B Lightbox) */

a:hover img {opacity:.8;  filter: blur(2px)  }







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



.wrapper {display:inline-block;width:100%;

background:#e4f1e6;

border-radius:2rem;

padding:0rem;

}



#leistungen .box-1_of_2  {width: 100%; }

#leistungen .box-1_of_3  {width: 100%; }

#leistungen .box-1_of_4  {width: 100%; }

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

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

#fuss .box-1_of_3 {width: 100%; }



/* spricht nur die verschachtelten 2er-boxen bei .special an */

.special.box.box-1_of_2 {width:100%; }





/* ############################################################ */

/* bereich header */

/* ############################################################ */



header {display:block;height:100%; padding:1rem 0 0 0; }



#logo {display:block;

text-align:center;

padding:0 1.5rem ;

}



.logo-a, .logo-b  {display:inline-block;

width:100%;

margin:1.5rem 0;

padding:0rem;

}



.logo-a .box {padding:0rem; }



.logo-a.wrapper {

background:transparent;

margin:0;padding:0;

}



.logo-b.wrapper {padding:0; }



#logo .header-pic {display:block;;min-height:30rem;

background:#CAE3CE;

background-image:url(../images/medium_picture517.jpg);

background-repeat:no-repeat;

background-position:50% 60%;

background-size:cover;padding:0;

border-radius:2rem;

}





/* logo-object  */



#logo .name {display:block;font-family:sans-serif;

text-align:center;

color:#3f3f3f;

font-weight:normal;

text-transform:none;

font-size:2.1rem;

line-height: 2.4rem;

letter-spacing:1px;

margin: 0 ;

padding:.5rem 2rem;

}



#logo .seitentitel {display:block;

background:#e4f1e6;

color:#5f5f5f;

font-size:1.7rem;

line-height:2rem;

padding:1rem .5rem;

letter-spacing:2px;

text-transform:none;

border-top-left-radius:2rem;

border-top-right-radius:2rem;

}





/* ############################################################ */

/* bereich inhalt */

/* ############################################################ */



main#inhalt {display:block;

text-align:center;

padding:0 1.5rem;

}



.inhalt-a {display:inline-block;

width:100%;

margin:1.5rem 0;

padding:0rem;

}



/* text unter dem bild */



article.text {padding:1.5rem 0 0 0;}

article.text.smallfont {font-size:auto; }



article.text h4 {

font-size:1.8rem;

line-height: 3rem;

margin-top: .5rem;

margin-bottom:1rem;

letter-spacing: 0rem;

}



/* icon-gruppe - big icons */



.big-icons .icon {display:block;

width:10rem;height:100%;

margin:0 auto;

}



.big-icons .icon i {

display:table-cell;

vertical-align:middle;

width:10rem;height:10rem;

font-size:5rem;

background:#f5faf5;

color:#95B09A;

text-shadow:1px  1px 0 rgba(0,0,0,.1);

padding:0rem;

border-radius:2rem;

box-shadow:0px  0px 2px rgba(0,0,0,.2);

}



.big-icons a:hover i, .big-icons i:hover {

background:#fff;

color:#95B09A;

}



/* icon-gruppe - big icons - style-2 */



.big-icons.style-2 i {

background:#becdc0;

color:#EAEEEB;

}



.big-icons.style-2 a:hover i, .big-icons.style-2 i:hover {

background:#becdc1;

color:#fff;

}





/* icon-gruppe - big icons - style-3 */



.big-icons.style-3 i {

background:#a56a66;

color:#f5faf5;

}



.big-icons.style-3 a:hover i, .big-icons.style-3 i:hover {

background:#c49591;

color:#fff;

}







/*  ----------------------------------------  */

/* bereich start */

/*  ----------------------------------------  */



#start i {color:#95B09A; }





/*  ----------------------------------------  */

/* bereich leistungen  */

/*  ----------------------------------------  */



#leistungen .box  {text-align:center;padding:.5rem .5rem; }



#leistungen article h4 {text-align:center;font-weight:normal;}



#leistungen a   {text-decoration:none; }





/*  ----------------------------------------  */

/* bereich service */

/*  ----------------------------------------  */



#service .box  {text-align:center;padding:.5rem .5rem; }



#service a   {text-decoration:none; }





/* platzierung der nummern auf dem icon mit position:relative/absolute */



#service .number {position:relative; }



#service article b {position:absolute;

bottom:.9rem;left:50%;

width:2.2rem;height:2.2rem;

line-height:2.2rem;

margin-left:-1.1rem;

background:#F5FAF5;

color:#5C6D5C; border-radius:36rem;

}





/* ############################################################ */

/* bereich fuss */

/* ############################################################ */



footer#fuss {

display:block;

text-align:center;

padding:0 1.5rem 1.5rem 1.5rem ;

}



.fuss-a {display:inline-block;

width:100%;

text-align:left;

margin:1.5rem 0;

padding:0rem;

}



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



#fuss .box h3 {

text-align:left;

font-size:1.7rem;

letter-spacing:2px;

font-weight:bold;

text-transform:uppercase;

margin-top:1rem;

margin-bottom:1rem;

}



#fuss .box h3:after {display:block;

border-top: 1px solid #3f3f3f;

width: 30px;

content: "";

margin-top: 1rem;margin-bottom:0rem;

}



/* gilt nur für jeden zweiten article in der jeweiligen fuss box, also hier für SOCIAL MEDIA ICONS   */

#fuss .box article:nth-child(2) {margin-top:3rem; }





/*  ----------------------------------------  */

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

/*  ----------------------------------------  */



.fuss-a,

.fuss-a a {

color:#163A31;

text-shadow:none;

font-weight:normal;

font-size:1.6rem;

line-height:2.8rem;

text-decoration:none;

}



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

.fussmenu li { list-style:none; }

#fuss li a:hover {color:#715a35;text-decoration:none; }





/* icons social media */



.fussmenu ul.social li  {display:inline-block; margin-right:1rem;margin-bottom:1rem; }

.fussmenu ul.social li i {display:block;color:#95B09A;transition:all .6s ease-out; }

.fussmenu ul.social li a:hover i {color:#3f3f3f;transform:rotate(720deg) }







/* ############################################################ */

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



.wrapper {padding:.7rem 1rem 1rem 1rem  }



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

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

#leistungen .box-1_of_3  {width: 50%; }

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

#leistungen .box-1_of_6  {width: 50%; }





}





/* ==================================== ab 580 pixel ================================== */

@media (min-width: 580px) {



.wrapper {width: 90%; }



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

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

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



}





/* ==================================== ab 640 pixel ================================== */

@media (min-width: 640px) {



#fuss .box-1_of_3  {width: 50%; }



}



/* ==================================== ab 760 pixel ================================== */

@media (min-width: 760px) {



html {font-size:80%; }



.wrapper  {width: 700px; }



#logo .header-pic {border-top-left-radius:0rem; border-top-right-radius:0rem;}



#logo .seitentitel {display:none; } /* ausblendung seitentitel */



}





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

@media (min-width: 800px) {



/* keine angabe */



}





/* ===================================== ab 960 pixel ================================= */

@media (min-width: 960px) {



html {font-size:70%; }



.wrapper {width: 95%; }



article.text.smallfont {font-size:18px; }



.bilder.gallery  img  {border-radius:2rem; }

.bilder .box-1_of_2b  {width: 50%; } /* bilder mit text darunter */

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

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



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

#leistungen .box-1_of_4  {width: 25%; }

#leistungen .box-1_of_6  {width: 33.33%; }





/* inhalt der special-boxen auf vertikale ausrichtung gesetzt. ausnahme bei #start */

.special.box  {vertical-align:middle;}

#start .special.box  {vertical-align:top;}



/*  spricht nur die 2er-boxen bei .special an */

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



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

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

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



/* gilt nur für jeden zweiten article in der fuss box, also hier für SOCIAL MEDIA ICONS  */

#fuss .box article:nth-child(2) {margin-top:.5rem; }



}





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

@media (min-width: 1024px) {



/* quelltext-erklärungen */

pre {width:70%; }



}





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

@media (min-width: 1200px) {



html {font-size:80%; }



}





/* ===================================== ab 1350 pixel ================================= */

@media (min-width: 1350px) {



html {font-size:85%; }



.wrapper  {width: 1250px;  }







}





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

@media (min-width: 1400px) {



#container {width: 1350px;box-shadow:0 0 3px rgba(0,0,0,.1) }



#leistungen .box-1_of_6  {width: 16.66%; }



}