

/* = = = = = = = = = = = = = = = = = 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.4;
font-weight:normal;
height:100%;
}

body {
font-size:1.7rem;
margin: 0 auto;
background-image:url(../images/back.jpg);
background-position:50% 0%;
background-repeat:repeat-y;
background-attachment:fixed;
}

/* zusätzliche zeilenabstände, absatz */
.content br {
line-height:.6;
}

p.break  {
line-height:7rem;margin:0;
}


/* überschriften */

h1, h2, h3, h4, h5 {
font-family:'robotolight';
font-weight:normal;
}

h1 {text-align:left;
font-size:3.5rem;
line-height: 3.7rem;
margin-top: 0rem;
margin-bottom: 4.2rem;
letter-spacing:.0rem;
}

h1:before {content:"\| ";
color:maroon
}


h2 {
font-size:2.6rem;
line-height: 2.8rem;
margin-top: 0rem;
margin-bottom: 3.5rem;
letter-spacing:0rem;
}

h2:before{display:inline-block;
font-family:'FontAwesome';
padding:0;
content:"\f0fe";
color:red;
width:3rem;
}


h3 {
font-size:2.1rem;
line-height: 2.3rem;
margin-top: 2.1rem;
margin-bottom:1.4rem;
letter-spacing:0rem;
}


/* allgemeine links  */

a {background-color:transparent;
color:#000;
text-decoration: underline;
}

a:hover  {color:#000;
background-color:transparent;
text-decoration:none;
}


/* quelltext-erklärungen - wenn vorhanden */
pre {white-space:pre-wrap;
font-size:1.5rem;
padding:1rem 0.5rem 1rem 0.5rem;
margin-bottom:2rem;
text-align:center;
color:#000;
background:#fff;
border:solid .1rem #BFBFBF
}


/* ############################################################ */
/*  speziell*/
/* ############################################################ */

.container_haupt {overflow:hidden;
margin:0 auto;
width:100%;
}

.wrapper {
margin:0 auto;background:white;
width:100%;padding:0rem;box-shadow: 0  0  4px black;
}

/* bilder allgemein standard - anpassen der grösse  */
img {width: 100%;
height: auto;
margin:0 auto;
}

.name {display:block;
font-family:'robotolight';
padding:.6rem;margin:0 auto;
font-size:2.6rem;
line-height:2.9rem;
letter-spacing:0.2rem;
color:#fff;
}


/* ############################################################ */
/*  die flaggen */
/* ############################################################ */


.flag-container {display:block;
text-align:center;
padding:0;
}

.flag {display:inline-block;width: 100%;
padding:1rem;text-align:center;
margin:-.25rem -.25rem -.25rem -.25rem ;/* ausgleich für INLINE-BLOCK-WHITESPACE-BUG*/
}

.deutschland {display:inline-block;
background:linear-gradient(black 33.33%, red 33.33%, red 66.66%, gold 66.66%,  gold 99.99%);
width: 150px;
height: 100px;
border:solid 1px #7F7F7F;
}

.polen {display:inline-block;
background:linear-gradient(#fff 50%,  #dc143c 50%);
width: 150px;
height: 100px;
border:solid 1px #7F7F7F;
}

.spanien {display:inline-block;
background:linear-gradient(#C60B1E 25%, #ffc400  25%, #ffc400 75%, #C60B1E 75%,  #C60B1E 100%);
width: 150px;
height: 100px;
border:solid 1px #7F7F7F;
}

.frankreich {display:inline-block;
background:linear-gradient(to right, #002395 33.33%, white 33.33%, white 66.66%, #ed2939 66.66%,  #ed2939 99.99%);
width: 150px;
height: 100px;
border:solid 1px #7F7F7F;
}

.oesterreich{display:inline-block;
background:linear-gradient(#ed2939 33.33%, white  33.33%, white 66.66%, #ed2939 66.66%,  #ed2939 100%);
width: 150px;
height: 100px;
border:solid 1px #7F7F7F;
}

.italien {display:inline-block;
background:linear-gradient(to right, #009246 33.33%, white 33.33%, white 66.66%, #ce2b37 66.66%,  #ce2b37 99.99%);
width: 150px;
height: 100px;
border:solid 1px #7F7F7F;
}

/* schweiz  */
.schweiz {display:inline-block;
background:red;
width: 150px;
height: 100px;
border:solid 1px #7F7F7F;
}

#plus{position: relative;
display:inline-block;
background: white;
width: 20px;
height: 60px;
top:20px;
margin-left: 60px;
margin:0 auto;
}

#plus:before{position: absolute;
background: white;
content: "";
width: 60px;
height: 20px;
top: 20px;
left: -20px;
}

/* dänemark */

.daenemark {display:inline-block;
background:#c60c30;
width: 150px;
height: 100px;
border:solid 1px #7F7F7F;
}

#plus2{position: relative;
background: #fff;
width: 20px;
height: 98px;
margin-left: 40px;
top:0px;
}

#plus2:before{position: absolute;
background: #fff;
content: "";
width: 148px;
height: 20px;
top: 40px;
left: -40px;
}

/* schweiz groß */

.schweiz-big {display:inline-block;
background:red;
width: 200px;
height: 200px;
border:solid 1px #fff;
}


#plus-schweiz-big{position: relative;
background: white;
width: 40px;
height: 120px;
margin-left: 120px;
margin:0 auto;
top:40px;
}

#plus-schweiz-big:before {position: absolute;
background: white;
content: "";
width: 120px;
height: 40px;
top: 40px;
left: -40px;
}

/* schweiz rund */

.schweiz-rund {display:block;position:absolute;bottom:0rem;right:1.5rem;
background:red;
width: 75px;
height: 75px;
border-radius:36rem;
z-index:2;
animation:move-dreh 7s alternate infinite ease-in-out ; /* HIER WIRD DIE ANIMATION 'move-dreh' AUSGELÖST */
}

#plus-schweiz-rund{position: relative;
background: white;
width: 10px;
height: 30px;
margin-left: 30px;
margin:0 auto;
top:22px;
}

#plus-schweiz-rund:before{position: absolute;
background: white;
content: "";
width: 30px;
height: 10px;
top: 10px;
left: -10px;
}



/* ############################################################ */
/* bereich logo */
/* ############################################################ */


.logo {display:block;
background-image:url(../images/logo01.jpg);
background-position:50% 50%;
background-repeat:no-repeat;
background-size:cover;
text-align:center;
margin: 0 auto;
padding:0;
border:solid 2rem white;
}

.logobox-1a  {min-height:26rem;
width:100%;
position:relative;z-index:2;
padding:2rem ;
text-align:center;background:red;
transform:translateY(0rem) ;
transition: transform 4s ease-in-out;
}

.logobox-1a:hover {
transform:translateY(26rem) ;/* HIER WIRD EINE ANIMATION MIT TRANSITION AUSGELÖST */
animation:ani-bgcolor 4s 1 forwards ease-out; /* HIER WIRD DIE ANIMATION 'ani-bgcolor' AUSGELÖST */
}

.logobox-1b  {min-height:26rem;
background-size:cover;
padding:1rem ;
text-align:left;
background:rgba(0,0,0,.3);
}



/* ############################################################ */
/* bereich content */
/* ############################################################ */


.content {display:block;position:relative;
background:white;
overflow:hidden;min-height:30rem;
margin: 0 auto;color:#000;text-align:left;
padding:3rem 3rem 7rem 3rem ;
}


/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */
/* BILDER IM INHALTSBEREICH -ANPASSEN DER GRÖSSE */
/* 1. bilder mit normalem textfluss */
/* 2. bilder mit float-textfluss - text fließt rechts oder links um bild herum */
/* = = = = = = = = = =  = = = = = = = = = =  = = = = = = = = = = = = = = = = = = = = */

.content .wrapper-bild {
text-align:center;
padding:0;margin:3rem 0;
}

/* 1. normaler textfluss  */


.bild {display:inline-block;
padding:.5rem ;
margin:0rem -.25rem -.5rem -.25rem ;/* ausgleich für INLINE-BLOCK-WHITESPACE-BUG*/
}

.bild-1_of_1 { width: 70%; }

.content .wrapper-bild img {
border:solid 12px transparent;
box-shadow: 0  0  .1rem black;;
transform-origin: 0 100%;
}

.content .wrapper-bild img:hover {border:dashed 12px red;
color:#fff;
animation:ani-wobble 1s 1  ease-out; /* HIER WIRD DIE ANIMATION 'ani-wobble' AUSGELÖST */
}


/* 2. bilder gefloatet */

.content  .text-re {text-align:left;float:none;
padding:0rem 0rem 0rem 0rem;
width: 70%;
margin:0 auto;
margin-bottom:3rem;
margin-top:3rem;
}

.content .text-li{text-align:left;
padding:0rem 0rem 0rem 0rem;float:none;
width: 70%;
margin:0 auto;
margin-bottom:3rem;
margin-top:3rem;
}

/* = = = = = = = = = = = = = = = = = = = = ENDE  BILDER  = = = = = = = = = = = = = = = = = = = = */




/* ############################################################ */
/* bereich fuss */
/* ############################################################ */



.fuss {display:table;position:relative;
margin: 0rem auto;text-align:center;
padding:1rem;width:100%;
height:16rem;
background:red;
}


.fussbox-1a  {
display:table-cell;
vertical-align:middle;text-align:center;
text-align:center;
padding:0rem 0rem  ;
font-size:1.6rem;
line-height:1.9rem;
}



.fussname {display:block;
font-family:'robotolight';
text-align:center;
padding:1rem;
font-size:1.2rem;
line-height:1.5rem;
letter-spacing:0.2rem;
color:#fff;
}




/* ############################################################ */
/* bereich fussmenu */
/* ############################################################ */


.fussmenu  {width:100%;margin:0 auto;padding-bottom:0rem;padding-top:0rem}

.fussmenu ul {padding:0;margin:0}

.fussmenu li { display:block;list-style: none;
width:100%;
line-height:2rem;
margin-left:0rem;
padding-left:.5rem;
padding-right:.5rem;
}

.fussmenu a {font-size:1.4rem;
line-height:1.6rem;
width : 100%;
text-align:left;
color:#fff;
text-decoration:none;
padding:0rem;
letter-spacing:.2rem;
}

.fussmenu a:hover {
color:#fff;
text-shadow:none;
background:transparent;
text-decoration: underline;
}



/* ############################################################ */
/* M E D I A   Q U E R I E S - BILDSCHIRMABFRAGEN*/
/* ############################################################ */


/* ==================================== ab 360 pixel ================================== */
@media (min-width: 360px) {

/*  keine angabe  */

}


/* ==================================== ab 480 pixel ================================== */
@media (min-width: 480px) {

.logo {
padding:0 8rem;
}


/* - - - - -  bilder - - - - - */
.content .bild-1_of_1 { width: 60%; }

.content  .text-re {
width: 60%;
}

.content .text-li{
width: 60%;
}
/* - - - - - ende  bilder - - - - - */


}


/* ==================================== ab 550 pixel ================================== */
@media (min-width: 550px) {

.content {
padding:3rem 4rem 7rem 4rem ;
}

.schweiz-big {
width: 300px;
}

}


/* ==================================== ab 600 pixel ================================== */
@media (min-width: 600px) {

/* keine angabe */

}


/* ==================================== ab 640 pixel ================================== */
@media (min-width: 640px) {

html {
font-size:68%;
}

.wrapper {
width:90vw;
}

.flag-container {
padding:0 8rem;
}

.flag {width:50%;
}

}


/* ==================================== ab 768 pixel ================================== */
@media (min-width: 768px) {

html {font-size:70%;}

.content {
text-align:justify;
}


/* - - - - -  bilder - - - - - */
.content .bild-1_of_1 {width: 30%;  }

.content  .text-re {width: 30%;
float:left;
text-align:justify;
margin-right:2rem;
margin-bottom:1rem;
margin-top:1rem;
}

.content .text-li {width: 30%;
float:right;
text-align:justify;
margin-left:2rem;
margin-bottom:1rem;
margin-top:1rem;
}
/* - - - - - ende  bilder - - - - - */


.fussmenu li { display:inline;
}

.logo {display:table;width:100%;
padding:0;
}

.logobox-1a {width:35%;height:26rem;
display:table-cell;vertical-align:middle;
}

.logobox-1b {width:65%;height:26rem;
display:table-cell;vertical-align:middle;
}


}


/* ==================================== ab 800 pixel ================================== */
@media (min-width: 800px) {

html {font-size:78%;}


}


/* ===================================== ab 1024 pixel ================================= */

@media (min-width: 1024px) {

html {
font-size:80%;}

.flag-container {
padding:0;
}

.flag {width:25%;
}


/* - - - - - bilder - - - - - */
.content  .text-re {
margin-right:3rem;
margin-bottom:2rem;
margin-top:2rem;
}

.content .text-li{
margin-left:3rem;
margin-bottom:2rem;
margin-top:2rem;
}
/* - - - - - ende  bilder - - - - - */


.name {
font-size:1.6rem;
line-height:1.9rem;
}


}


/* ===================================== ab 1100 pixel ================================= */

@media (min-width: 1100px) {

.wrapper {
width:80vw;
}


}


/* ===================================== ab 1200 pixel ================================= */

@media (min-width: 1200px) {

html {
font-size:82%;}

.wrapper {
width:75vw;
}



}


/* ===================================== ab 1300 pixel ================================= */

@media (min-width: 1300px) {

.wrapper {
width:70vw;
}


}

/* ===================================== ab 1400 pixel ================================= */

@media (min-width: 1400px) {

html {
font-size:84%;
}


}


/* +  +  +  +  + +  +  +  +  +  C O D E ENDE  +  +  +  +  +  +  +  +  +  + */