

/* = = = = = = = = = = = = = = = = = datei format.css = = = = = = = = = = = = = = = = = = = = = = = = = */



/* ############################################################ */
/* allgemein */
/* ############################################################ */

*, *:before, *:after {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}


html, body {
font-family: Times New Roman;
font-size:62.5%;
line-height:1.5;
}

body {height:100%;
font-size:1.7rem;
margin: 0 auto;
overflow-x:hidden;
}

h1, h2, h3, h4, h5 {text-align:center;
font-weight:normal;color:#000;
}

h1 {
font-size:3rem;
line-height: 3.5rem;
margin-top: 0rem;
margin-bottom: 5.2rem;
}

h2 {text-transform:uppercase;
font-size:2.5rem;
line-height: 3rem;
margin-top: 1rem;
margin-bottom: 4.5rem;
}

h2:after {display:block;
border-top: 8px solid #353538;
width: 60px;
content: "";
margin: 0 auto;
margin-top: .5rem;
}

h3 {
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:Times New Roman;
padding:0rem 1rem 2rem 1rem;
margin:4rem auto;
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:lightcoral;
padding:0 .5rem;
transform:rotate(-45deg);
}



/* ############################################################ */
/*  speziell*/
/* ############################################################ */

/* bilder -anpassen der grösse */
img {max-width: 100%;display:block;
margin:0 auto;
height: auto;
}


/* liste-meine-spez mit icons, überschriften und abätzen beim text innerhalb der listenpunkte */

.liste-meine-spez h2 {display:block;
font-size:1.8rem;
text-align:center;
background:#EFEFEF;margin:0;
padding:.5rem;
}

.liste-meine-spez h2:after {display:block;
border:0;
width: 0;
content:"";
margin:0 ;
}

.liste-meine-spez  {display:block;text-align:center;
background:#F0F7F7;
margin:0 -.5rem; }

.liste-meine-spez ul {display:inline-block;
background:transparent;
padding:0 1rem 0 3rem;margin:0;
}

.liste-meine-spez li  {display:block;text-align:left;list-style:none;
margin:1rem 0;
font-size:1.7rem;
}

.liste-meine-spez li h3:before {color:#8F0B0E;
padding-right:1rem;
font-family:'Times New Roman';/* - '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:"\f35a" ;
}

.liste-meine-spez li h3 {display:inline-block;text-align:left;font-weight:normal;
margin-bottom:0rem;margin-top:2rem;
font-size:1.6rem;
list-style-position: inside; /* einrückung bei ggfls. zweiter zeile */
padding-left: 2.5rem; /* einrückung bei ggfls. zweiter zeile*/
text-indent: -2.5rem; /* einrückung bei ggfls. zweiter zeile*/
margin-left:-2.5rem;
}




/*  ----------------------------------------  */
/* allgemeine links */
/*  ----------------------------------------  */

a {color:#000;
text-decoration: underline;
}

a:hover {color:#000;
text-decoration: none  ;
}



/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */
/*  GRID-SYSTEM  - für Bilder / Spalten */
/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */

.wrapper-box {display:block;
text-align:center;
padding:0rem;margin:0;
}

.box {display:inline-block;
width:100%;
padding:.5rem;
text-align:center;vertical-align:top;
margin:0rem -.22rem 0rem -.22rem ;/* 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 */
#leistungen .box-1_of_4  {width: 100%; }
#gallery .box-1_of_3 {width:50%; }
#gallery .box {vertical-align:middle;padding:0; }
#gallery .box  img {border:solid 1px transparent; }
#gallery img:hover  {opacity:.7;filter: blur(3px)}



/* ############################################################ */
/* bereich header */
/* ############################################################ */

header {background:#fff; }



/* ############################################################ */
/* bereich logo */
/* ############################################################ */

.logo {display:block;
margin: 0 auto;
padding:0rem;
}

.logobox-b {display:table;position:RELATIVE;
width:100%;height:18rem;
padding:0rem .2rem;
background:#870B10; /* IE9 */
background:#870B10;
}

.name {display:table-cell;font-family: 'Times New Roman';font-family: 'old_standard_ttitalic';
width:auto;
text-align:center;vertical-align:top;
margin:0rem;
padding:2rem 0 0 0;
font-size:2.5rem;
line-height: 2.8rem;
color:#ffffff;
text-shadow:1px 1px 0px maroon;
}

.name i {
color:#fff;
text-shadow:0 0 2px maroon;
}

.name  b {
color:#CCE6E4;font-weight:normal;
}

.name-2  {display:table;table-layout:fixed;position:ABSOLUTE;z-index:1;
width:17rem;height:17rem;
bottom:-8.5rem;left:50%;
margin-left:-8.5rem;
margin-left:-8.5rem;
vertical-align:middle;
padding:0rem;border:solid 1rem white;
overflow:hidden;
background:lightpink;
}

.name-2 .inner  {display:table-cell;padding:0rem;
text-align:center;
color:black;background:#fff;
}

.name-2 .inner i{display:table-cell;width:15rem;height:15rem;
color:#c84d4d;font-size:10rem;vertical-align:middle;
text-shadow:0px 1px 0px rgba(0,0,0,.4);
}



/* = = = die würfel-icons als pyramide oben rechts = = = */

.toys {position:ABSOLUTE;display:block;margin:0;
bottom:-35px;right:-25px;width:140px;height:140px;
transform:scale(.5);
}

/*  würfel-icons mit positionierung */

.toys .inner i:after {display:block;
position:absolute;
font-size:42px;
width:40px;height:40px;line-height:40px;
text-align:center;
font-style:normal;
color:#CCE6E4;
text-shadow:0px 0px 1px rgba(0,0,0,.9);
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; /* - 400 for Regular and Brands symbols;
                     - 900 for Solid symbols. */
}

.toys .inner i.t-1:after  {bottom:0;right:0;content:"\f525" }
.toys .inner i.t-2:after  {bottom:0;right:40px;content:"\f528" }
.toys .inner i.t-3:after  {bottom:0;right:80px;content:"\f527" }
.toys .inner i.t-4:after  {bottom:40px;right:20px;content:"\f524" }
.toys .inner i.t-5:after  {bottom:40px;right:60px;content:"\f523" }
.toys .inner i.t-6:after  {bottom:80px;right:40px;content:"\f526" }


/*  hover würfel-icons-tausch */

.toys .inner i:hover:after {animation: ani-wenden  .5s 1 ease-out;color:#A0D3D3}

.toys .inner i.t-1:hover:after {content:"\f526" ; }
.toys .inner i.t-2:hover:after {content:"\f523" ; }
.toys .inner i.t-3:hover:after {content:"\f524" ; }
.toys .inner i.t-4:hover:after {content:"\f527" ; }
.toys .inner i.t-5:hover:after {content:"\f528" ; }
.toys .inner i.t-6:hover:after {content:"\f525" ; }


/* ############################################################ */
/* bereich inhalt */
/* ############################################################ */

.inhalt {display:block;background:white;font-family: 'old_standard_ttitalic';
padding:10rem 1rem 4rem 1rem;
}

.inhaltbox-a {display:block;
vertical-align:top;text-align:left;
width:100%;min-height:100%;
margin: 0 auto;
font-family: Times New Roman;
padding:2rem 1rem 2rem 1rem;
}



/*  ----------------------------------------  */
/*  box KONTAKT                               */
/*  ----------------------------------------  */

.kontakt {
display:block;
width:100%;
padding:0rem 0;
margin:0rem;
}

.kontaktbox  {
display:block;
width: 100%;
color:#000;
background:transparent;
padding:1rem  .5rem;
margin:0 auto;
margin-bottom:2rem;
text-align:left;
}

.kontaktbox .box {padding:1rem;
text-align:center;
}

.kontaktbox.kontakt-1:nth-child(1) {
background:#353538;/*IE9*/
background:linear-gradient(45deg,#353538 8%,white, #CCE6E4 ,#F8FCFC 8%,#CCE6E4, #F8FCFC 92%, white,#353538 92%);
}

/* hover */
.kontaktbox.kontakt-1:hover:nth-child(1) {
background:linear-gradient(45deg,#870B10 8%,#CCE6E4 ,#F8FCFC 8%,#CCE6E4, #F8FCFC 92%, #870B10 92%);

}


.kontakt h4 {font-family: 'Times New Roman';
width:auto;
color:#870B10;
text-transform:uppercase;
text-align:center;
font-size:1.5rem;
letter-spacing:1px;
font-weight:bold;
margin-bottom:.5rem;
margin-top:-1rem;
padding:0rem 0rem;
}

.kontakt h4:after {display:block;
border-top: 2px inset lightcoral;
width: 60px;
content: "";
margin:0 auto;
margin-top: 1rem;
margin-bottom: 1rem;
}

.kontakt a {color:#000;text-decoration: none; }
.kontakt a:hover {color:#000;text-decoration: underline; }

.day  {display:inline-block;
width:7rem;font-weight:normal;
}

/* ----- icons ----- */

.kontakt  .fas,
.kontakt  .fab,
.kontakt  .far {display:inline-block;
color:#A6D2D2;
text-shadow:0 0 0px black;
font-size:2.2rem;
padding:0 1rem 0rem 0;
transition:all .2s ease-out;
}

.kontakt a .fas:hover,
.kontakt a .fab:hover,
.kontakt a .far:hover {
color:lightcoral;
text-shadow:0 0px 1px rgba(0,0,0,.8);
transform:rotate(15deg);
}



/*  ----------------------------------------  */
/*  box LEISTUNGEN ( hier beim link 'boxfenster-PRIMUS' )                             */
/*  ----------------------------------------  */

.leistungen article  {width:100%;
background:whitesmoke;
padding: 2rem 0 2rem 0;
text-align:center;
border:solid 1px rgba(0,0,0,.2);
}

.leistungen  article .fas,
.leistungen  article .fab,
.leistungen  article .far {
display: block;
padding:0rem;
text-align:center;
margin:0 auto;
font-family:'Times New Roman';/* - 'Font Awesome 5 Free' for Regular and Solid symbols;
                                     - 'Font Awesome 5 Brands' for Brands symbols. */
font-weight: 900;/*  Weight of the font
                     - 400 for Regular and Brands symbols;
                     - 900 for Solid symbols. */
font-size:5rem;
height:6rem;width:6rem;
color:#1f1f1f;
}


/* verschieden box-farben */

.leistungen .box:nth-child(1) article   { background:beige; }

.leistungen .box:nth-child(2) article   { background:#DFEFF9}

.leistungen .box:nth-child(3) article   { background:seashell; }

.leistungen .box:nth-child(4) article   { background:lemonchiffon; }

.leistungen .box:nth-child(5) article   { background:whitesmoke; }

.leistungen .box:nth-child(6) article   { background:honeydew}

.leistungen .box:nth-child(7) article   { background:wheat; }

.leistungen .box:nth-child(8) article   { background:papayawhip; }


.leistungen h4  {
color:#000;
text-transform:uppercase;
text-align:center;
font-weight:bold;
margin-bottom:0rem;margin-top:0rem;
padding:0rem 0rem;
}



/* ############################################################ */
/* bereich fuss */
/* ############################################################ */

footer {
background:#870B10; /* IE9 */
background:#870B10;
}

.fuss {display:block;
margin: 0 auto;
width:100%;
padding:3rem 0 3rem 0 ;
}

.fussbox {display:block;
text-align:center;
padding:0rem .1rem 0 1rem;
margin:0 auto;
margin-bottom:3rem;
width:28rem;
border-radius:0rem;
background:transparent;
}

/* border unsichtbar geschaltet */
.fussbox.mitte {border-left:dotted 1px transparent;
border-right:solid 1px transparent;
}

.fussbox h3 {display:block;
padding-bottom:.6rem;text-align:center;
font-size:1.6rem;
color:#fff;
font-weight:bold;
margin-bottom:1rem;
}

.fussbox h3:after {display:block;
border-top: 2px solid lightpink;
width: 40px;
content: "";
margin: 0 auto;
margin-top: .5rem;
}

/* für alle elemente im fussbereich, die nicht per a-tag verlinkt sind - wie hier die adresse */
.fuss, .fuss a {
color:#fff;
font-size:1.5rem;
}


/* icons */

.fussbox article  {display:table;width:100%;
padding:0;
}

.fussbox  article:before {display: table-row;
font-size:3rem;
color:white;
text-shadow: 0 0 1px black;
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. */
}

.fussbox  article.f1:before  {content:"\f501"; }
.fussbox  article.f2:before  {content:"\f3c5"; }
.fussbox  article.f3:before  {content:"\f2b5"; }
.fussbox  article.f4:before  {content:"\f77d"; }
.fussbox  article.f5:before  {content:"\f500"; }
.fussbox  article.f6:before  {content:"\f02e"; }



/* fussmenu */

.fussmenu ,
.fussmenu  ul,
.fussmenu  li {width:100%;
list-style: none;
margin: 0;
padding: 0;
border:0;
}

.fussmenu ul { display:block;
margin:0;
padding-left: 2rem;
}

.fussmenu li { display:block;
padding:0 ;
list-style-position: inside; /* rückt gfls zweite zeile ein - bei langen linkwörtern */
text-indent:-1rem; /* rückt zweite gfls zeile ein*/
padding-left:1rem; /* rückt zweite gfls zeile ein*/
}


/* einrückung zurücknehmen */
.fussmenu.kein-link ul {padding-left: 0rem; }
.fussmenu.kein-link li {padding:0 ;text-indent:0; }
/* ende einrückung zurücknehmen */


.fussmenu li a {font-size:1.5rem;
display : inline-block;
text-align:center;
color:#fff;
text-decoration: none;
padding:.2rem;
margin-left:-2rem;
cursor:pointer;
}

.fussmenu li a:hover {
color:#fff;
background:transparent;
text-decoration:none;border-radius:.5rem;
}



/* das zeichen (content:"")wird erst per media queries ab 760px aktiviert */

.fussmenu li a:before {display: inline-block;
padding:0 ;transform:scale(.6);
width:.8rem;
color:white;
content:" ";
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. */
}

.fussmenu li a:hover:before {display: inline-block;
content:" ";
font-weight: 400;
color:white;
}



/* fussmenu2 - die favourite  icons */

.fussmenu2 ,
.fussmenu2  ul,
.fussmenu2  li {width:100%;
list-style: none;
margin: 0;
padding: 0;
border: 0;
}

.fussmenu2 li {display : inline; }

.fussmenu2 li a {font-size:1.8rem;
color:#fff;
text-decoration: none;
padding:0 .5rem;
}

.fussmenu2 li a:hover {color:#B9DDDA; }



/* ############################################################ */
/* 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) {

.inhaltbox-a  {width: 80%;}

/* - - - - -   GRID-SYSTEM    - - - - - */
.box-1_of_1  {width: 70%;  }
.box-1_of_2  {width: 50%; }
.box-1_of_3  {width: 33.33%;  }
.box-1_of_4  {width: 50%; }
#leistungen .box-1_of_4  {width: 50%; }
/* - - - - - ende  GRID-SYSTEM  - - - - - */

}


/* ==================================== ab 580 pixel ================================== */
@media (min-width: 580px) {

html {font-size:70%; }

/* - - - - -  GRID-SYSTEM  - - - - - */
#gallery .box-1_of_3  {width: 33.33%; }
/* - - - - - ende  GRID-SYSTEM  - - - - - */

/* liste */
.liste-meine {padding-left:4rem; }

}


/* ==================================== ab 640 pixel ================================== */
@media (min-width: 640px) {

.toys {
bottom:0px;right:30px;
transform:scale(1);
}


}


/* ==================================== ab 760 pixel ================================== */
@media (min-width: 760px) {

.name {
font-size:3.3rem;
line-height: 3.3rem;
}

.inhaltbox-a  {width: 90%;}

.box {font-size:1.4rem; }

.liste-meine-spez  {margin:0 4rem; }
.liste-meine-spez ul {padding:0 2rem 0 4rem;margin:0; }

/* - - - - -   GRID-SYSTEM    - - - - - */
.box-1_of_4  {width: 25%; }
#leistungen .box-1_of_4  {width: 33.33%; }
/* - - - - - ende  GRID-SYSTEM  - - - - - */

.kontakt {display:table;
width: 100%;
border-spacing:0rem 0rem;
table-layout:fixed;
border-collapse:separate;
}

.kontaktbox {display:table-cell;
vertical-align:top;
padding:2rem 1rem }

.kontaktbox.kontakt-1:nth-child(1) {
border-bottom:dotted 1px  #8f8f8f;
font-family: Times New Roman;
}

.kontaktbox.kontakt-1:nth-child(2) {
border-bottom:dotted 1px  #8f8f8f;
border-left:dotted 1px  #8f8f8f;
}

.kontaktbox.kontakt-2:nth-child(1) { }

.kontaktbox.kontakt-2:nth-child(2) {
border-left:dotted 1px  #8f8f8f;
}

.fuss {display:table;
width: 100%;
table-layout:fixed;
border-collapse:separate;
border-spacing:.2rem;
padding:2rem 1rem 2rem 1rem ;
}

/* für alle elemente im fussbereich, die nicht per a-tag verlinkt sind - wie hier die adresse */
.fuss, .fuss a {
font-size:1.3rem;
}

.fussbox {display:table-cell;
width:33.33%;
vertical-align:top;
}

.fussbox.mitte {border-left:dashed 1px #fff;
border-right:dashed 1px #fff;
}

.fussbox  article:before  {display:table-cell;
width:2.6rem;
font-size:2rem;
padding:0 .3rem 0 0 ;
}

.fussbox h3 {font-size:1.3rem;text-align:left;padding-left:0rem;margin-bottom:0rem; }
.fussbox h3:after {margin: 0; }
.fussmenu li a {font-size:1.3rem; text-align:left;}
.fussbox  article {text-align:left; }
.fussmenu li a:before {content:"\f192"; }
.fussmenu li a:hover:before {content:"\f192"; }

}


/* ===================================== ab 960 pixel ================================= */
@media (min-width: 960px) {

html {font-size:80%; }

/* - - - - -  GRID-SYSTEM  - - - - - */
.box-1_of_1  {width: 50%; }
/* - - - - - ende  GRID-SYSTEM  - - - - - */

}


/* ===================================== ab 1024 pixel ================================= */
@media (min-width: 1024px) {

pre {width:70%; }

/* - - - - -  GRID-SYSTEM  - - - - - */
#gallery .box-1_of_4  {width: 25%; }
#leistungen .box-1_of_4  {width: 25%; }
/* - - - - - ende  GRID-SYSTEM  - - - - - */
}



/* ===================================== ab 1200 pixel ================================= */

@media (min-width: 1200px) {

html {font-size:85%; }

.inhaltbox-a  {width: 75%;}

}




/* +  +  +  +  + +  +  +  +  +  C O D E ENDE  +  +  +  +  +  +  +  +  +  + */