/* = = = = = = = = = = = = = = = = = datei format.css = = = = = = = = = = = = = = = = = = = = = = = = = */



/* ############################################################ */
/* allgemein */
/* ############################################################ */

*, *:before, *:after {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}


html, body {
font-family:Calibri;
font-size:62.5%;
line-height:1.5;
}

body {height:100%;
font-size:1.7rem;
margin: 0 auto;
overflow-x:hidden;
color:#3f3f3f
}

h1, h2, h3, h4, h5 {
font-weight:normal;color:#000;
}

h1 {font-family:Calibri;
font-size:3rem;
line-height: 3.5rem;
margin-top: 0rem;
margin-bottom: 5.2rem;
}

h2 {font-family:Calibri;text-align:center;
font-size:2.5rem;
line-height: 3rem;
margin-top: 1rem;
margin-bottom: 4.5rem;
}

h2:after {display:block;
border-top: 3px solid #1f1f1f;
width: 60px;
content: "";
margin: 0 auto;
margin-top: .5rem;
}

h3 {text-align:center;
font-size:1.8rem;
line-height: 2.3rem;
margin-top: 1rem;
margin-bottom:2.5rem;
letter-spacing:0rem;
text-transform:uppercase;
}


/* quelltext-erklärungen - wenn vorhanden */

pre {white-space:pre-wrap;position:relative;
font-size:1.5rem;
font-family:Calibri, tahoma, arial, Verdana, Segoe, 'Open Sans',helvetica,roboto ,sans-serif;
padding:0rem 1rem 2rem 1rem;
margin:0 auto;
margin-bottom:2rem;
text-align:center;
border:dashed 0.1rem black;
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:palevioletred;padding:0 .5rem;
transform:rotate(-45deg);
}



/* ############################################################ */
/*  speziell*/
/* ############################################################ */


/* bilder -anpassen der grösse */
img {max-width: 100%;display:block;
margin:0 auto;
height: auto;
}

/* liste */
.liste-meine li {padding:1rem 0;
margin-left:-2rem;
}


/*  ----------------------------------------  */
/* allgemeine links */
/*  ----------------------------------------  */

a {color:#3f3f3f;
text-decoration: underline;
}

a:hover {color:#3f3f3f;
text-decoration: none  ;
}


/*  ----------------------------------------  */
/*   MEHR LESEN-BUTTON  */
/*  ----------------------------------------  */

.button  {display:block;
margin:1.5rem 0 1.5rem 0;
text-align:center;transform:scale(.9);
}

.button .mehr_lesen a {display:inline-block;
color:#fff;
background:#B9E3FC;
border-radius:8rem;
text-decoration:none;
padding:.3rem 1.5rem .3rem 1rem;
letter-spacing:2px;
cursor:pointer;
transition:background .3s ease-out;
}

.button .mehr_lesen a:hover {color:#fff;
background:#5A798F;
}


/*  icon beim MEHR LESEN-BUTTON */

.button .mehr_lesen a:before {display:inline-block;
font-family:Calibri;/* - '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:"\f30b" ;
color:#fff;
padding:.2rem 0;
margin:0 .5rem 0em .3rem;
transition:all .4s ease-out;
}

.button .mehr_lesen a:hover:before {transform:  rotate(360deg) ;color:#fff;}


/*  ----------------------------------------  */
/* spezielle button-platzierung mit position:relative/absolute - hier bei box 'presentation' */
/* button wird am unteren rand der box platziert - so stehen die buttons bei grösserer aufösung nebeneinander immmer auf einer höhe */
/*  ----------------------------------------  */

.button-position {
POSITION:relative;
}

.button-position .button  {display:inline-block;
POSITION:absolute;width:26rem;
bottom:-3rem;left:50%;
margin-left:-13rem;
}


/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */
/*  GRID-SYSTEM  - für Bilder / Spalten */
/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */

.box {display:inline-block;
width:100%;
padding:.5rem;
vertical-align:top;text-align:left;
margin:0rem -.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 */

#notiz .box-1_of_4,
.testimonials .box-1_of_1  {width: 100%; }
#leistungen  .box-1_of_4  {width:100%; }
.box-1_of_4, .box-1_of_4b  {width:50%; }
#fuss .box-1_of_3  {width: 100%; }
#gallery .box  img {border:solid 1rem white;box-shadow:0px 0px .1rem black; }
#gallery .box-1_of_4  {width:50%; }
#gallery .box:hover img {border:solid 1rem rgba(255,255,255,.8)}


/*  boxen - boxen mit text */

article.text {font-size:1.5rem;
margin:0;text-align:left;
padding:2rem .5rem ;
}

article.text h3 {
font-size:1.5rem;
line-height:1.7rem;
margin: 0rem 0rem 1.5rem 0rem;
text-align:left;
}


/* ############################################################ */
/* bereich header - besteht aus  logo-bereich  und menü*/
/* ############################################################ */

header {background:#fff;
}


/* ############################################################ */
/* bereich logo */
/* ############################################################ */

#logo {
display:block;
margin: 0 auto;
padding:0rem;
}

.logo-a {display:block;
width:100%;
padding:0rem;
}

.logo-b { height:100vh;
display:table;width:100%;
table-layout:fixed;
border-spacing:0 0 ;
padding:2rem 1rem;
background-image:url(../images/logo12.jpg);
background-repeat:no-repeat;
background-position:50% 50%;
background-size:cover;
}

.name-wrapper {display:table-cell;
text-align:center;vertical-align:middle;
}

.name {display:block;font-family:Calibri;
background:rgba(240,240,240,.5);
font-weight:bold;
letter-spacing:1px;
margin:0rem;
padding:2rem 1rem;
font-size:2.4rem;
line-height: 2.8rem;
color:#2AA3EB;color:black;
text-transform:none;
box-shadow:inset 0 0 400px white;border:solid 1px rgba(0,0,0,.2);
}

.name span {
	display: block;
	font-weight: bolder;
	font-family: Calibri;
	padding: 0rem;
	font-size: 1.8rem;
	line-height: 2.8rem;
	color: #2AA3EB;
	text-transform: none;
}

/* horizontale linie */
#logo hr {background:white;width:40%;
height:1px;color:white;
margin-top:1rem;
margin-bottom:0rem;
}

/* pfeil-icon beim namen */

.pfeil a {
	color: black;
	font-family: Calibri;
	letter-spacing: 1px;
	font-size: 1.5rem;
	line-height: 2.8rem;
	padding: 0;
	margin: 0;
	text-decoration: none;
	text-transform: uppercase;
}

.pfeil a:hover {
	color: #2AA3EB;
	font-family: Calibri;
}

.pfeil i {color:#B9E3FC;
padding:.5rem;
margin:0;
}

.pfeil:hover i {
	color: #2AA3EB;
	font-family: Cambria, "Hoefler Text", "Liberation Serif", Times, "Times New Roman", serif;
}


/* ############################################################ */
/* bereich inhalt */
/* ############################################################ */

main#inhalt {display:block;overflow-x:hidden;
background:#fff; /* gilt für die unterseiten, für die startseite (index.html) wird es jedoch durch NTH-CHILD überschrieben */
padding:0rem;
margin:0 auto;
}

.inhalt-a {display:block;
width:100%;
min-height:10vh;
margin: 0 auto;
padding:3rem 2rem;
text-align:left;
}


/*  ----------------------------------------  */
/*  NTH-CHILD - alle(n) abschnitte */
/*  ----------------------------------------  */

.section-inhalt:nth-child(n) {POSITION:relative; }


/*  ----------------------------------------  */
/*  NTH-CHILD - jeder ungerade (odd) abschnitt, also 1, 3, 5 , 7 usw. */
/*  ----------------------------------------  */

.section-inhalt:nth-child(odd) {
background:#B9E3FC;
}


/*  ----------------------------------------  */
/*  NTH-CHILD - jeder gerade (even) abschnitt , also 2, 4, 6 , 8 usw. */
/*  ----------------------------------------  */

.section-inhalt:nth-child(even) {
background:white;
}


/*  ----------------------------------------  */
/*  NTH-CHILD - (4) nur der vierte abschnitt */
/*  ----------------------------------------  */

.section-inhalt:nth-child(4) {
background:#1f1f1f;
color:#CFCFCF;
background-image:url(../images/logo13.jpg);
background-repeat:no-repeat;
background-position:50% 50%;
background-size:cover;
}

.section-inhalt:nth-child(4) h1,
.section-inhalt:nth-child(4) h2,
.section-inhalt:nth-child(4) h3 {
color:#fff;
}

.section-inhalt:nth-child(4) h2:after {
border-top: 3px solid #fff;
}

.section-inhalt:nth-child(4) .inhalt-a {background:radial-gradient(circle at 50% 0%,#72C2F1 300px, transparent 300px,transparent);
}


/*  ----------------------------------------  */
/*  NTH-CHILD - (8) nur der achte abschnitt */
/*  ----------------------------------------  */

.section-inhalt:nth-child(8) {
background:#1f1f1f;color:#fff;
background-image:url(../images/logo02.jpg);
background-repeat:no-repeat;
background-position:50% 50%;display:table;
background-size:cover;width:100%
}

.section-inhalt:nth-child(8) .inhalt-a {padding:0;height:100vh; }


.sliderstarter-name-wrapper {POSITION:absolute;z-index:1;
display:table;
width:30rem;height:16rem;
top:50%;left:50%;
margin-left:-15rem;
margin-top:-8rem;background:rgba(0,0,0,.3);
}

.sliderstarter-name {
font-size:2.5rem;line-height:3rem;
border: 5px solid #fff;padding:1rem 2rem;display:table-cell;
text-align:center;vertical-align:middle;
}


/*  ----------------------------------------  */
/* FLOAT bei den großen icons */
/*  ----------------------------------------  */

/* objekt steht links, text fliesst rechts herum  */

.flt-li {float:none;
display:block;
width: 16rem;
height:16rem;
line-height:15rem;
text-align:center;
margin:0 auto;
margin-bottom:3rem;
margin-top:3rem;
padding:0rem;
}

.flt-li.icon {
font-size:8rem;
background:#2AA3EB;
background:linear-gradient(to right top,#EDB8C9,palevioletred 50%,  darkturquoise 50%,#3CFAFF  );
color:aliceblue;
}


/*  ----------------------------------------  */
/*  information  */
/*  ----------------------------------------  */

#information  {
display:block;
margin:0 auto;
padding:0rem;
}

.information-a {display:block;
background:transparent;
padding:0 .2rem 1rem .2rem;
margin:0 auto;
margin-bottom:9rem;
}

/* abstand letzte box bei mobilen auflösungen */
.information-a:last-child {
margin-bottom:0rem;
}

#information  article {
text-align:center;
}

#information article.text h3 {
text-align:center;
}

/* die zahlen über jeder box */

#information .add-object-wrapper {
position:relative;
}

#information .add-object {
position:absolute;
width:6rem;height:6rem;
top:-3rem;left:50%;
margin-left:-3rem;
margin-top:0rem;
line-height:4rem;
border:solid 1rem white;
background:#2AA3EB;
font-size:2.5rem;
text-align:center;
color:white;
font-weight:bold;
border-radius:36rem;
}


/*  ----------------------------------------  */
/*  leistungen  */
/*  ----------------------------------------  */

#leistungen  {
display:block;
margin:0 auto;
padding:0rem;
}

#leistungen article  {text-align:center;
background:#D1EAF9;
padding: 2rem 0 1rem 0;
}

#leistungen h3  {font-size:1.5rem;margin-bottom:1rem;
text-transform:none;text-align:center;
font-weight:bold;
}

/* icons */
#leistungen  article:before {
display: inline-block;
padding:0;
text-align:center;
margin:0 auto;
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. */
font-size:4rem;
height:6rem;width:6rem;
color:#fff;
background:#D1EAF9;
border-radius:36rem;
}


/* leistungen icons 1-4 auf startseite */
#leistungen article.icon1:before {content:"\f185"; }
#leistungen article.icon2:before {content:"\f0f4"; }
#leistungen article.icon3:before {content:"\f630"; }
#leistungen article.icon4:before {content:"\f810"; }

/* leistungen icons 5-8 im boxfenster */
#leistungen article.icon5:before {content:"\f13d"; }
#leistungen article.icon6:before {content:"\f7a6"; }
#leistungen article.icon7:before {content:"\f578"; }
#leistungen article.icon8:before {content:"\f4ba"; }

/* leistungen icons 9-16 im boxfenster */
#leistungen article.icon9:before {content:"\f5ca"; }
#leistungen article.icon10:before {content:"\f45f"; }
#leistungen article.icon11:before {content:"\f51d"; }
#leistungen article.icon12:before {content:"\f2e7"; }
#leistungen article.icon13:before {content:"\f818"; }
#leistungen article.icon14:before {content:"\f816"; }
#leistungen article.icon15:before {content:"\f094"; }
#leistungen article.icon16:before {content:"\f1b9"; }

/*  boxfenster bei leistungen - andere farbe bei icon-9 bis icon-16 */
#leistungen .box article.icon9    { background:khaki; }
#leistungen .box article.icon10   { background:wheat; }
#leistungen .box article.icon11   { background:yellowgreen; }
#leistungen .box article.icon12   { background:darkorange; }
#leistungen .box article.icon13   { background:lightpink; }
#leistungen .box article.icon14   { background:lightskyblue; }
#leistungen .box article.icon15   { background:goldenrod; }
#leistungen .box article.icon16   { background:gold; }



/*  ----------------------------------------  */
/*  SLIDER Hinweis                         */
/*  ----------------------------------------  */

/*  hinweis:jquery slider SliCK */
/*  die css-klassen - .single-item und .responsive , welche sie im html-bereich sehen - kommen vom jquery-slider-script SLlCK*/


/*  ----------------------------------------  */
/*   Testimonials (Das sagen die Kunden) */
/*  ----------------------------------------  */

.testimonials {
display:block;text-align:center;
}

.testimonials .icons i {display:block;
text-align:center;
margin:0 auto;
font-size:8rem;
width:16rem;height:16rem;
line-height:14rem;
color:darkturquoise;
background:aliceblue;
text-shadow:0 0 1px rgb(0,0,0,.3);
box-shadow:1px 1px .3rem #D1EAF9;
border-radius:36rem;
border:outset 1rem silver;
margin: 0 auto;
}

/*  ----------------------------------------  */
/*  SLIDER  allgemein */
/*  ----------------------------------------  */

.myslider img {padding:0 0.5rem ;}
.myslider article.text {text-align:center;padding:2rem 0 0 0; }
.myslider article.text i {color:#72C2F1;}
.myslider article.text h3{text-align:center; }


/*  ----------------------------------------  */
/*   NOTIZ                             */
/*  ----------------------------------------  */

#notiz {
display:block;
width:100%;
padding:0rem 0;
margin:0;
background:#02CFD2;
background:linear-gradient(to left top,#02CFD2, #5BF9FD);
}

.notiz-a  {
display:inline-block;
width: 100%;
padding:1rem  1rem 1rem 1rem;
margin: 0;
text-align:left;
}


/* ############################################################ */
/* bereich fuss */
/* ############################################################ */

footer {
background:#2AA3EB; /* IE9 */
background:linear-gradient(to right, #B9E3FC, #4F4F4F,#B9E3FC);
border-top:solid .5rem #2AA3EB;
}

#fuss {display:block;
margin: 0 auto;
width:100%;height:100%;
}

.fuss-a {display:block;padding:3rem 1rem 3rem 1rem; }

#fuss h3 {display:block;
padding-bottom:.6rem;text-align:center;
font-size:1.6rem;
color:white;font-weight:bold;
margin-bottom:1rem;
}

#fuss .box {
text-align:center;
padding:0 1rem;
}

#fuss .box article  {display:table;width:100%;
padding:0;margin-bottom:3rem;
}

/* icons */

#fuss .box  article:before {display: table-row;
vertical-align:top;
font-size:3rem;
width:3rem;
color:#72C2F1 ;
text-shadow: 0 0 2px black;
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. */
}


#fuss .box  article.f1:before {content:"\f2bb"; }
#fuss .box  article.f2:before  {content:"\f0e0"; }
#fuss .box article.f3:before  {content:"\f2bb"; }



/*  ----------------------------------------  */
/*  die wesentlichen schriftformate für fussbereich 1 plus menu (hier nur die email-links) */
/*  ----------------------------------------  */

#fuss,
#fuss a {color:#fff;text-decoration:none;
font-size:1.5rem;
}

#fuss a:hover {color:#fff;text-decoration:underline; }



/* ############################################################ */
/* bereich fuss 2 */
/* ############################################################ */

#fuss-2 {display:block;
text-align:center;
padding:3rem 0 ;background:#72C2F1;
}

.fuss-2-a {display:block; }


/* icons im fuss2-bereich */

#fuss-2 i {display:inline-block;
font-size:1.6rem;
line-height:2rem;
height:2rem;
width:2rem;
margin:0 .3rem;
color:#fff;
text-shadow: 0 0 2px black;
text-align:center;
}

#fuss-2 i:hover   {color:#D1EAF9; }


/* fussmenu */

.fussmenu ul {margin:0;padding:0; }
.fussmenu li { display: inline;text-align:left;list-style:none;;margin: 0;
padding:0 .5rem;}

.fussmenu li a {font-size:1.5rem;
display : inline;
width : 100%;
text-align:center;
color:#2AA3EB;
text-decoration: none;
padding:.2rem;
margin-left:-0.5rem;
}

.fussmenu li a:hover {
color:white;
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 (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) {

.inhalt-a {padding:4rem 3rem 5rem 3rem; }

#notiz .box-1_of_4  {width: 50%; }

}


/* ==================================== ab 480 pixel ================================== */
@media (min-width: 480px) {

.name {
	letter-spacing: 4px;
	font-family: Calibri;
	color: #121CD8;
}

.box-1_of_2  {width: 50%; }
.box-1_of_3  {width: 33.33%;  }
.box-1_of_4  {width: 50%; }
#information   {width: 75%;  }

}


/* ==================================== ab 580 pixel ================================== */
@media (min-width: 580px) {

html {font-size:70%; }

#leistungen  .box-1_of_4  {width: 50%; }

}


/* ==================================== ab 640 pixel ================================== */
@media (min-width: 640px) {

/* keine angabe */

}


/* ==================================== ab 760 pixel ================================== */
@media (min-width: 760px) {

h3 {text-align:left; }

.logo-b { height:29rem;padding:2rem 18vw; }

.inhalt-a {padding:3rem 4rem 5rem 4rem; }

article.text {font-size:1.4rem;}

.box-1_of_4  {width: 25%; }
#gallery .box-1_of_4  {width:25%; }
#fuss .box-1_of_3  {width: 33.33%; }

#notiz {display:table;
width: 100%;
border-spacing:1rem 0;
table-layout:fixed;
border-collapse:separate;
font-size:1.3rem;border-left:solid 1rem palevioletred;
}

.notiz-a  {display:table-cell;height:auto;vertical-align:middle; }

#fuss, #fuss a {font-size:1.1rem; }
#fuss-2 .fussmenu li a {font-size:1.3rem; }

}


/* ===================================== ab 960 pixel ================================= */
@media (min-width: 960px) {

html {font-size:80%; }

#leistungen .box-1_of_4  {width: 25%; }
.testimonials .box-1_of_1  {width: 60%; }

#information {display:table;
width: 100%;
border-spacing:.2rem 0rem;
table-layout:fixed;
border-collapse:separate;
}

.information-a {display:table-cell;vertical-align:top; }

#fuss .box  article {text-align:left; }
#fuss .box  article:before  {display: table-cell;padding:0 1rem 0 0; }
#fuss .box  h3 {text-align:left; }


/* - - - - -  Icons mit FLOAT - - - - - */
.flt-li {float:left;
margin-right:2rem;
margin-bottom:1rem;
margin-top:0rem;
}
/* - - - - - ende  mit FLOAT - - - - - */

}


/* ===================================== ab 1024 pixel ================================= */
@media (min-width: 1024px) {

pre {width:75%; }

}


/* ===================================== ab 1280 pixel ================================= */
@media (min-width: 1280px) {

html {font-size:85%; }

.logo-b {padding:2rem 25vw; }

.inhalt-a {padding:3rem 6vw 5rem 6vw ; }
.fuss-a {padding:3rem 6vw 5rem 6vw ; }

}


/* ===================================== ab 1600 pixel ================================= */
@media (min-width: 1600px) {

.inhalt-a {padding:3rem 10vw 5rem 10vw }
.fuss-a {padding:3rem 10vw 5rem 10vw }

}


/* +  +  +  +  + +  +  +  +  +  C O D E ENDE  +  +  +  +  +  +  +  +  +  + */
