article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block;}
html, body, div, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, acronym, address, big, cite, code, del, dfn, em,
img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, input,
table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;outline:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
*, *:before, *:after {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding:0; margin:0;}
html {-webkit-text-size-adjust:100%;}
hr {clear:both; display:block; width:100%; border:none; height:1px; position:relative; left:-9999em;}
a:focus, a:hover, a:active {text-decoration: none;}
h1, h2, h3 {font-weight:normal; margin:0;}
ul, ol {list-style:none;}


hr.trenner, hr.trenner2, hr.trenner3, 
hr.deko1, hr.deko2, hr.deko3, 
hr.trenner-blank,
hr.trenner-clear,
.sidebar hr.trenner   {left:0; height:1px;}

hr.trenner1       {left:0; margin:0; height:1px; background-color:#666;}/*  */
hr.trenner2       {margin:30px 0; border-bottom:1px solid #999;}/*  */
hr.trenner3       {margin:30px 0; border-bottom:1px solid #000;}/*  */
hr.deko1          {padding-top:3rem; margin-bottom:3rem; border-bottom:3px solid #444;}/* Dunkelgrau */
hr.deko2          {padding-top:3rem; margin:0; border-bottom:1px solid #CCC;}/* Hellgrau */
hr.deko3          {padding-top:3rem; margin:0; border-bottom:1px solid #911300;}/* Rot */
hr.trenner-blank  {margin:30px 0; border-bottom:none;} /* Unsichtbar */
hr.trenner-clear  {margin:0;}

/* Fasncy HR mit mehreren Elementen */
hr.fancy          {left:0; width:100%; margin:0 auto; height:1px; background-color:#666; position:relative; overflow:visible;}
hr.fancy:before   {
  content:""; display:block; position:absolute; 
  left:40%;  top:-5px; /* height-1px und davon die Hälfte */
  width:20%; height:11px; /* 1px mehr weil die HR schon 1px hoch ist */
  text-align:center; font-size:18px; 
  border-top:1px solid #666; border-bottom:1px solid #666;
  }

/*
hr.fancy:after   {
  content:""; display:block; position:absolute; 
  left:45%;   top:-10px; 
  width:10%; height:21px;
  text-align:center; font-size:18px; 
  border-top:1px solid #666; border-bottom:1px solid #666;
  }
*/

.hstyle-1          {position:relative; padding-bottom:15px;}
.hstyle-1:before   {content:''; position:absolute; height:1px; width:100%; bottom:0px; left:0;   background-color:#BBB; }
.hstyle-1:after    {content:''; position:absolute; height:3px; width:32%;  bottom:-1px; left:50%; background-color:#D87C01; transform: translateX(-50%);}

.hstyle-2          {position:relative; padding-bottom:15px;}
.hstyle-2:before   {content:''; position:absolute; height:1px; width:20%;  bottom:0px; left:50%;  background-color:#333; transform: translateX(-50%);}
.hstyle-2:after    {content:''; position:absolute; height:1px; width:10%;  bottom:-5px; left:50%; background-color:#333; transform: translateX(-50%);}

.fancy-1, .fancy-2 {left:0; width:100%; margin:0 auto; height:1px; background-color:#FFF; position:relative; overflow:visible;}
.fancy-1:before   {content:''; position:absolute; height:1px; width:100%; bottom:0px; left:0;   background-color:#BBB; }
.fancy-1:after    {content:''; position:absolute; height:3px; width:20%;  bottom:-1px; left:50%; background-color:#D87C01; transform: translateX(-50%);}



/* To Top Button */
.cd-top {
  z-index:999;
  display: inline-block; height:45px; width:45px; 
  position: fixed; bottom: 20px; right: 2%;
  overflow:hidden; text-indent:100%; white-space:nowrap;
  background: rgba(130,120,65, 0.7) url('data:image/svg+xml;charset=utf-8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="16px" viewBox="0 0 16 16"><polygon fill="%23FFFFFF" points="8,2.8 16,10.7 13.6,13.1 8.1,7.6 2.5,13.2 0,10.7"/></svg>') no-repeat center 50%;
  border:1px double #FFF !important;
  color:#FFF; text-decoration:none; 
  opacity: 0;
  -webkit-transition: all 0.3s linear;
     -moz-transition: all 0.3s linear;
          transition: all 0.3s linear;
}

.cd-top svg {width:40px; height:40px; line-height:40px; margin:7px 0 0 8px;}
.cd-top.cd-is-visible, .cd-top.cd-fade-out, .no-touch .cd-top:hover {
  -webkit-transition: opacity .3s 0s, visibility 0s 0s;
     -moz-transition: opacity .3s 0s, visibility 0s 0s;
          transition: opacity .3s 0s, visibility 0s 0s;
}
.cd-top.cd-is-visible {visibility:visible; opacity:0.75;}
.cd-top.cd-fade-out   {opacity: .6;}
.cd-top:hover         {background-color: #817741; opacity:1;}

@media only screen and (max-width: 900px) {
.cd-top {right:10px;}
}


/* +++++++++++++++++++++++++++++++++++
  Modifikatoren
++++++++++++++++++++++++++++++++++++*/

.w33  {width:33.3% !important;}
.w10  {width:10% !important;}
.w15  {width:15% !important;}
.w20  {width:20% !important;}
.w25  {width:25% !important;}
.w30  {width:30% !important;}
.w35  {width:35% !important;}
.w40  {width:40% !important;}
.w45  {width:45% !important;}
.w47  {width:47% !important;}
.w48  {width:48% !important;}
.w50  {width:50% !important;}
.w55  {width:55% !important;}
.w60  {width:60% !important;}
.w65  {width:65% !important;}
.w70  {width:70% !important;}
.w75  {width:75% !important;}
.w80  {width:80% !important;}
.w85  {width:85% !important;}
.w90  {width:90% !important;}
.w95  {width:95% !important;}

.space-above-2 {margin-top:2rem !important;}
.space-above-4 {margin-top:4rem !important;}
.space-above-5 {margin-top:5rem !important;}
.space-above-8 {margin-top:8rem !important;}

.space-below-15{margin-bottom:1.5rem !important;}
.space-below-2 {margin-bottom:2rem !important;}
.space-below-4 {margin-bottom:4rem !important;}
.space-below-5 {margin-bottom:5rem !important;}
.space-below-8 {margin-bottom:8rem !important;}

.padd-15  {padding:1.5rem;}
.padd-2   {padding:2rem;}
.padd-25  {padding:2.5rem;}

.centerme {text-align:center; display:block; width:100%;}
.clearall {clear:both;}


/*----------------------------------------------*\
  BUTTON
\*----------------------------------------------*/

/* Button Styles allgemein */
button {border:none;}

.button               {display:inline-block; padding:7px 20px; transition:all 0.2s;}
.button               {font-size:1.5rem; text-decoration:none !important; font-weight:700; text-align:center;}

/* Größen */
.button.large         {padding:10px 25px; font-size:1.65rem;}
.button.small         {padding:5px 15px;  font-size:1.35rem;}
.button.xsmall        {padding:4px 8px;   font-size:1.2rem;}
.button.xxsmall       {padding:3px;       font-size:1.0rem;}
.button.barebone      {padding:7px 3px 0 3px;}

.button.wide          {padding-left:30px; padding-right:30px;}
.button.wide40        {padding-left:40px; padding-right:40px;}
.button.wide50        {padding-left:50px; padding-right:50px;}
.button.wide60        {padding-left:60px; padding-right:60px;}



/* Standardfarbe Gelb */
.button               {background-color:#666; color:#FFF !important;}
.button:hover         {background-color:#A69953; color:#FFF !important; text-decoration:none !important;}

/* Grün */
.button.action        {background-color:#E6B81A; color:#FFF !important;}
.button.action:hover  {background-color:#EFD272; color:#FFF !important; text-decoration:none !important;}

/* Clear */
.button.klar        {background-color:transparent; color:#D97922 !important; border:1px solid #CCC;}
.button.klar:hover  {background-color:#DCDBDA; color:#444 !important; text-decoration:none !important;}

/* Orange */
.button.orange        {background-color:#F09B0D; color:#FFF !important;}
.button.orange:hover  {background-color:#BF7B0B; color:#FFF !important; text-decoration:none !important;}

/* Weiss */
.button.weiss        {background-color:#FFF; color:#444 !important;}
.button.weiss:hover  {background-color:#DADADA; color:#111 !important; text-decoration:none !important;}


.button.grau1        {background-color:#666; color:#FFF !important;}
.button.grau1:hover  {background-color:#999; color:#FFF !important; text-decoration:none !important;}
.button.grau2        {background-color:#999; color:#FFF !important;}
.button.grau2:hover  {background-color:#CCC; color:#FFF !important; text-decoration:none !important;}


/* Praktisch ein reiner Textlink ohne BG */
.button.barebone        {background-color:transparent; color:#1C66B0 !important;}
.button.barebone:hover  {background-color:transparent; color:#000 !important; border-color:#000; text-decoration:none !important;}

.button.barebone.uline        {border-bottom:1px dashed #1C66B0; transition:all 0.2s;}
.button.barebone.uline:hover  {border-color:#000; border-bottom-style:solid; padding-left:15px; padding-right:15px;}


/* Schatten */
.button.shade         {box-shadow:2px 2px 3px rgba(60,60,60,0.4);}
.button.shade:hover   {box-shadow:none; text-decoration:none !important;}

/* Border um Button */
.button.rand          {border:1px solid #AAA;}
.button.rand:hover    {}
.button.action.rand   {border-color:#333;}
.button.orange.rand   {border-color:#666;}


/* Mit Icons */
.button.ico-button     {padding-left:40px; background-repeat:no-repeat; background-position:7px 50%;}
.button.ico-facts      {background-image:url(/site/templates/images/icons/ico-facts.svg);}
.button.ico-facts:hover {background-image:url(/site/templates/images/icons/ico-facts-weiss.svg);}

.button.ico-button.barebone {padding-bottom:7px;}     
.button.ico-button.barebone:hover {background-image:url(/site/templates/images/icons/ico-facts.svg);}


.button.pos-abs {position:absolute; bottom:0;}
.pos-rel {position:relative;}


.flexo {
  width:100%;
  display: -ms-flexbox; display: -webkit-flex; display: flex;  
 -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row;
 -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between;
 -webkit-align-content: stretch;  -ms-flex-line-pack: stretch; align-content: stretch;
 -webkit-align-items: stretch;  -ms-flex-align: stretch; align-items: stretch;
 -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
}

.flexo.verto        {-webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column;}
.flexo.flexo-start  {-webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start;}
.flexo.flexo-end    {-webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end;}
.flexo.flexo-center {-webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;}


 /* +++++++++++++++++++++++++++++++++++
    Accordion
 +++++++++++++++++++++++++++++++++++ */
.ico-spin                     {background:transparent url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='10' cy='10' r='10' stroke='none' fill='%23FFFFFF'/%3E%3Crect fill='%23666' x='9' y='5' width='2' height='10'/%3E%3Crect fill='%23666' x='5' y='9' width='10' height='2'/%3E%3C/svg%3E") no-repeat center center;}
.trigger:hover .ico-spin      {background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='10' cy='10' r='10' stroke='none' fill='%23FFF'/%3E%3Crect fill='%23666' x='9' y='5' width='2' height='10'/%3E%3Crect fill='%23666' x='5' y='9' width='10' height='2'/%3E%3C/svg%3E");}
.trigger_active .ico-spin     {background-image:url("data:image/svg+xml,%3Csvg height='20' viewBox='0 0 20 20' width='20' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='10' cy='10' r='10' stroke='none' fill='%23FFF'/%3E%3Crect x='5' y='9' width='10' height='2' fill='%23666'/%3E%3C/svg%3E");}
.trigger:hover .ico-spin      {transform: rotate(180deg);}
.trigger .ico-spin {
  -webkit-transition: all 0.3s linear;
     -moz-transition: all 0.3s linear;
          transition: all 0.3s linear;
}
h3.trigger                    {font-size:1.6rem; font-weight:400; padding:8px 45px 8px 15px; margin:0 0 0.5rem 0; border:1px solid #DDD;}

.acco h3.trigger_active       {background-color:#A68844; color:#FFF;}
.acco h3.trigger:hover        {cursor:pointer; background-color:#EEE; color:#444;}
.acco h3.trigger_active:hover {background-color:#8F763A; color:#FFF;}
.acco h3.trigger_active + .toggle_container {}

.acco h3.trigger              {position:relative;}
.acco h3.trigger .ico-spin    {position:absolute; right:12px; top:8px; width:20px; height:20px;}

.toggle_container             {background-color:#FFF; padding:1.5rem; margin-top:-1rem;}
.card .toggle_container p           {padding:0; margin-bottom:1.0rem;}
.acco-text                    {padding:0;}








.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  animation-name: fadeIn;
}

