

/* = = = = = = = = = = = = = = = = = 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.5;
}

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

h1, h2, h3, h4, h5 {text-align:center;
font-weight:bold;
}

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: 3.5rem;
letter-spacing:2px;
}


/* spez. formatierung der h2-überschrift mit font-icon und linie */
h2:before{display: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. */
text-align:center;
content:" ----------- \f0f3  ----------- ";
color:#712C69;
font-size:2.6rem;
letter-spacing:-2px;
}


h3 {
font-size:1.8rem;
line-height: 2.3rem;
margin-top: 1rem;
margin-bottom:2.5rem;
text-transform:none;
letter-spacing:1px;
}


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

pre {white-space:pre-wrap;position:relative;
font-size:1.5rem;
font-family: arial, Verdana, Segoe, 'Open Sans',helvetica,roboto ,sans-serif;
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:#1f1f1f;padding:0 .5rem;
transform:rotate(-45deg);
}

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

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

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


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

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


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

.button  {display:block;
margin:2rem 0 1.5rem 0;
text-align:center;
}

.button .mehr_lesen a {display:inline-block;
color:#4c2f26;
background:white;
border:solid 1px #D1ADA3;
text-decoration:none;
padding:.3rem 1.5rem .3rem 1rem;
border-radius:.6rem;
cursor:pointer;
transition:all  .3s ease-out;
}

.button .mehr_lesen a:hover {color:#4c2f26;
background:#FBF4FA;
border:solid 1px #D1ADA3;
}


/*  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:"\f054" ;
transform:scale(.6);
color:mediumseagreen;
padding: 0 .5rem 0 0;
margin:0;
}

.button .mehr_lesen a:hover:before {color:red}


/*  ----------------------------------------  */
/* 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:-5rem;left:50%;
margin-left:-13rem;
}

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

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

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

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

.liste-spez h3  {text-align:left;}


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

.wrapper-box {display:block;
text-align:center;
padding:0rem;margin:0 auto;
}

.box {display:inline-block;
width:100%;
padding:.2rem;
text-align:left;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 */

#logo img { box-shadow:0 0  40px rgba(0,0,0,.3)}
#extra .box-1_of_1  {width: 100%;}
.box-1_of_4b  {width: 50%; }
#gallery .box-1_of_3 {width:33.33%; }
#gallery img:hover  {opacity:.7;filter: blur(4px);}

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


/*  boxen - boxen mit text */

article.text {font-size:1.4rem;
margin:0;text-align:left;
padding:1rem ;
}

article.text h3 {
font-size:1.4rem;
line-height:1.7rem;
margin: 0rem 0rem 1.5rem 0rem;
text-align:left;
}

/* boxen - boxen mit text zusatz- nur wenn <p> innerhalb von article.text angewandt wird, ergibt sich der reduzierte zeilenumbruch-abstand */
article.text p {
margin:-.5rem 0;
padding:0;
}


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

header {background-image:url(../images/logo04.jpg);
background-position:50% 50%;
background-repeat:repeat;
}


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

#top {display:block;background:#fff;
margin: 0 auto;
padding:0rem;
border-bottom:solid 5rem #712C69;
}

.top-a {display:table;position:relative;
width:100%;
text-align:center;
padding:0rem .2rem 7rem .2rem;
}

/* homepagename  */

.name {font-family:'old_standard_ttitalic';
display:block;
color:#572251;
width:auto;font-weight:normal;
text-align:center;
margin:0 auto;margin-top:1rem;
padding:1rem 0rem 1rem 0rem;
font-size:2.5rem;
line-height: 2.8rem;
}

.name span {padding:.2rem 0;
display:block;color:#1f1f1f;
font-size:1.6rem;
line-height: 1.9rem;
}


/* top-icon - hier die kirche */

.name-2  {display:table;table-layout:fixed;POSITION:absolute;z-index:1;
width:16rem;height:16rem;
bottom:-8rem;left:50%;
margin-left:-8rem;
vertical-align:middle;
padding:0rem;
border-radius:36rem;
background:white;
}

.name-2 .inner  {display:table-cell;padding:0rem;
text-align:center;vertical-align:middle;
}

.name-2 .inner i {
color:#712C69;
font-size:9.5rem;
text-shadow:0 1px 2px rgba(0,0,0,.2);
}

.name-2 .inner i:hover { }


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


#logo {
display:block;
width:100%;
padding:0rem 0;
margin:0 auto;
color:#CBCED8;
background:linear-gradient(to right,transparent,#fcf8e9, transparent);
padding:5rem 2rem 2rem 2rem;
border-top:solid 1px rgba(0,0,0,.1);
border-bottom:solid 1px rgba(0,0,0,.1);
}

#logo .box-table {
display:block;
width: 100%;
color:#fff;
background:transparent;
padding:1rem  .5rem;
margin:0 auto;
margin:0rem;
}

#logo .box-table.logo-a,
#logo .box-table.logo-b  {text-align:center; }

#logo img {border:solid 1rem #fff;
box-shadow:0 0 40px rgba(0,0,0,.4) }



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

#inhalt {display:block;
background:#fff;
color:#000;
padding:0rem;
}

.inhalt-a {display:block;
width:100%;
margin:0 auto;
padding:6rem 2rem 7rem 2rem;
}


/*  ----------------------------------------  */
/* box extra (leistungen)  */
/*  ----------------------------------------  */

#extra  {display:block;
background:transparent;
margin:0 auto;text-align:center;
padding:0;
}

#extra article.text h3 {
font-size:1.7rem;
line-height:2rem;
}

#extra .box-table {display:block;
background:transparent;padding:0rem;
margin:0;
text-align:left;
}

#extra .box-table:last-child {
margin-bottom:0rem;
}


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

#presentation  {display:block;}

#presentation  article.text h3 {
font-size:1.5rem;
line-height:1.8rem;
text-align:center;
}

#presentation .box-table {display:block;
background:#F7EAF5;/* IE9 */
background:linear-gradient(to right, #F7EEF7, white,white, #F7EEF7);
padding:0 .2rem 1rem .2rem;
margin:0 auto;
margin-bottom:5rem;padding-top:1.5rem;
text-align:left;
border-bottom:solid 1px rgba(0,0,0,.1);
}


/* abstand letzte box bei mobilen auflösungen */
#presentation  .box-table:last-child {
margin-bottom:0rem;
}

/* icons */

#presentation .icons  {display:table;
table-layout:fixed;
border-spacing:0 0;
margin:0 auto;
}

#presentation .icons  i  {display:table-cell;
text-align:center;vertical-align:middle;
font-size:4rem;
height:12rem;width:8rem;
color:#fff;
text-shadow:0 0 20px #EEDBEE;
background:#712C69;
}


/* weiter-buttons */

#presentation .button  {
text-align:center;
}

#presentation .button .mehr_lesen a {
background:#FDFBFD;
border:solid 1px rgba(0,0,0,.1);
border-radius:36rem;
}

#presentation .button .mehr_lesen a:hover {color:#4c2f26;
background:#fff;
}

#presentation .button-position .button  {
bottom:-3rem;
}


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

footer {

background-image:url(../images/logo04.jpg);
background-position:50% 55%;
background-repeat:repeat;
margin:0;
padding:0rem 0rem 0rem 0rem ;
}

#fuss {display:block;
width:100%;
margin: 0 auto;
padding:0 ;
background:linear-gradient(to right,rgba(255,255,255,.8), rgba(255,255,255,.9), rgba(255,255,255,.8));
}

.fuss-a {display:block;
margin: 0 auto;
padding:0 1rem 0 2rem;
border-top:solid 1px rgba(0,0,0,.05);
border-bottom:solid 1px rgba(0,0,0,.05);
}

#fuss-2 {padding:0rem ;
margin:0 auto;
width:100%;
background:#fff;
}

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

#fuss .box,
#fuss-2 .box  {
text-align:left;
padding:1rem 1rem;
margin-bottom:1rem;
}

#fuss .box h3 {
text-align:left;
font-size:1.6rem;
color:#000;
font-weight:bold;
margin-bottom:1rem;
text-transform:uppercase;
}

#fuss .box h3:after {display:block;
border-top: 3px solid #712C69;
width: 30px;
content: "";
margin: 0;
margin-top: 0rem;
}

.day  {display:inline-block;
width:5rem;font-weight:bold;
}


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

#fuss,
#fuss-2,
#fuss  a,
#fuss-2 a {
color:#3f3f3f;
font-weight:bold;
font-size:1.5rem;
line-height:2.2rem;
text-decoration:none;
}

.fussmenu  ul {text-align:left;list-style: none;padding: 0;margin: 0; }
.fussmenu li { display:block; }
#fuss a:hover, #fuss-2 a:hover  {color:#000;text-decoration:underline }


.fussmenu-2 li {margin:0 1.5rem 0 0; }





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

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

.box-1_of_2  {width: 50%; }
.box-1_of_3  {width: 33.33%;  }
.box-1_of_4  {width: 50%; }

}


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

html {font-size:70%; }

#logo   {width: 90%; }

#extra .button  {text-align:left; }

}


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

/* keine angabe */

}


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

html {font-size:80%; }

.inhalt-a  {width:740px;}

.name {
font-size:3.2rem;
line-height: 3.5rem;
}

.name span {
font-size:2rem;
line-height: 2.3rem;
}

#logo {display:table;
width: 100%;
border-spacing:0rem .1rem;
table-layout:fixed;
border-collapse:separate;
padding:3rem 5vw 3rem 5vw;
}

#logo .box-table {display:table-cell;vertical-align:middle;
padding:0rem 1rem;
}

#logo .box-table.logo-a  {text-align:right; }
#logo .box-table.logo-b  {text-align:left; }

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


#fuss .box-1_of_3  {width: 50%; }
#fuss,
#fuss-2,
#fuss a,
#fuss-2  a  {font-size:1.3rem; }

#fuss .box h3 {font-size:1.3rem; }
.fussmenu-2 li {display:inline-block; /* menü wechselt von vertikal nach horizental */ }

}


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

.inhalt-a  {width:100%; }

.name {
font-size:3.8rem;
line-height: 4.3rem;
}

.name span {
font-size:2rem;
line-height: 2.3rem;
}

#logo {padding:5rem 5vw 4rem 5vw;}

#presentation {display:table;
width: 100%;
border-spacing:.2rem .1rem;
table-layout:fixed;
border-collapse:separate;
}

#presentation .box-table {display:table-cell;vertical-align:top; }

article.text {font-size:1.3rem;}
#extra .box-1_of_1  {width: 100%;}

#extra  {display:table;
width: 100%;
border-spacing:2rem .1rem;
table-layout:fixed;
border-collapse:separate;
}

#extra .box-table {display:table-cell;vertical-align:middle; }

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

}


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

pre {width:70%; }


}


/* ===================================== ab 1280 pixel ================================= */

@media (min-width: 1280px) {

.inhalt-a, .fuss-a, .fuss-2-a  {width:1280px;}

#logo {padding:5rem 10vw 5rem 10vw;}

#presentation  {border-spacing:1rem .1rem; }


}


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

@media (min-width: 1400px) {

/*  keine angabe */

}


/* +  +  +  +  + +  +  +  +  +  C O D E ENDE  +  +  +  +  +  +  +  +  +  + */