html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
unsichtbar,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
.invisible {
  display: none;
}
* {
  -webkit-transition: all 0.5s ease;
  /* Firefox */
  /* WebKit */
  /* Opera */
  transition: all 0.5s ease;
  /* Standard */
}
a {
  text-decoration: none;
}
img {
  width: 100%;
  height: auto;
  margin-bottom: -6px;
}
strong {
  font-weight: bold;
  font-weight: 700;
}
.inner {
  width: 96%;
  max-width: 1560px;
  margin-left: auto;
  margin-right: auto;
}
/* roboto-300 - latin */
@font-face {
  font-family: 'Roboto-Light';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/roboto-v20-latin-300.eot');
  /* IE9 Compat Modes */
  src: local('Roboto Light'), local('Roboto-Light'), url('../fonts/roboto-v20-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('../fonts/roboto-v20-latin-300.woff2') format('woff2'), /* Super Modern Browsers */ url('../fonts/roboto-v20-latin-300.woff') format('woff'), /* Modern Browsers */ url('../fonts/roboto-v20-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */ url('../fonts/roboto-v20-latin-300.svg#Roboto') format('svg');
  /* Legacy iOS */
}
/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v20-latin-regular.eot');
  /* IE9 Compat Modes */
  src: local('Roboto'), local('Roboto-Regular'), url('../fonts/roboto-v20-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('../fonts/roboto-v20-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */ url('../fonts/roboto-v20-latin-regular.woff') format('woff'), /* Modern Browsers */ url('../fonts/roboto-v20-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */ url('../fonts/roboto-v20-latin-regular.svg#Roboto') format('svg');
  /* Legacy iOS */
}
/* roboto-900 - latin */
@font-face {
  font-family: 'Roboto-Black';
  font-style: normal;
  font-weight: 900;
  src: url('../fonts/roboto-v20-latin-900.eot');
  /* IE9 Compat Modes */
  src: local('Roboto Black'), local('Roboto-Black'), url('../fonts/roboto-v20-latin-900.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('../fonts/roboto-v20-latin-900.woff2') format('woff2'), /* Super Modern Browsers */ url('../fonts/roboto-v20-latin-900.woff') format('woff'), /* Modern Browsers */ url('../fonts/roboto-v20-latin-900.ttf') format('truetype'), /* Safari, Android, iOS */ url('../fonts/roboto-v20-latin-900.svg#Roboto') format('svg');
  /* Legacy iOS */
}
/* roboto-900italic - latin */
@font-face {
  font-family: 'Roboto-Blackitalic';
  font-style: italic;
  font-weight: 900;
  src: url('../fonts/roboto-v20-latin-900italic.eot');
  /* IE9 Compat Modes */
  src: local('Roboto Black Italic'), local('Roboto-BlackItalic'), url('../fonts/roboto-v20-latin-900italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('../fonts/roboto-v20-latin-900italic.woff2') format('woff2'), /* Super Modern Browsers */ url('../fonts/roboto-v20-latin-900italic.woff') format('woff'), /* Modern Browsers */ url('../fonts/roboto-v20-latin-900italic.ttf') format('truetype'), /* Safari, Android, iOS */ url('../fonts/roboto-v20-latin-900italic.svg#Roboto') format('svg');
  /* Legacy iOS */
}
header .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}
header #header_top {
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #3c3c3b;
  color: #ffd500;
  font-family: 'Roboto-Light';
  font-size: 25px;
}
header #header_top a {
  color: #ffd500;
}
header #header_top .left,
header #header_top .right {
  width: 50%;
}
header #header_top .right {
  text-align: right;
}
header #header_top strong {
  font-family: 'Roboto-Black';
}
header #header_top img {
  width: 40px;
  height: 40px;
  margin-left: -45px;
  margin-top: -8px;
  position: absolute;
}
header #header_bottom {
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #ebebeb;
}
header #header_bottom .left,
header #header_bottom .right {
  width: 50%;
}
header #header_bottom .left img {
  width: 170px;
  height: auto;
}
header #header_bottom .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
header nav {
  width: 30%;
}
header nav li {
  border-bottom: 2px solid #3c3c3b;
  padding-left: 30px;
  padding-bottom: 10px;
  padding-top: 10px;
  position: relative;
}
header nav li:hover .level_2 {
  display: block !important;
}
header nav li a {
  font-size: 25px;
  font-family: 'Roboto';
  color: #3c3c3b;
}
header nav li a:hover {
  color: #000;
}
header nav li .active {
  font-family: 'Roboto-Black';
}
header nav li ul {
  position: absolute;
  z-index: 999;
  background-color: #ebebeb;
  margin-left: -30px;
  display: none;
}
header nav li ul li {
  border: none;
  padding-left: 0px;
  padding-left: 30px;
  padding-right: 30px;
}
header nav li ul li a,
header nav li ul li strong {
  font-family: 'Roboto-Light';
  font-size: 18px;
}
header nav li ul li a:hover,
header nav li ul li strong:hover {
  font-family: 'Roboto';
}
header nav li.submenu:after {
  content: "";
  background-image: url('../img/icon_arrow_right_grey.svg');
  width: 10px;
  height: 28px;
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  right: 10px;
  margin-top: 2px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
header nav li.submenu:hover ul {
  display: block !important;
}
header nav li.submenu:hover:after {
  right: 0px;
  margin-top: 0px;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
header #socialmedia {
  position: absolute;
  right: 0;
  margin-top: 110px;
}
header #socialmedia a {
  display: inline-block;
}
header #socialmedia img {
  width: auto;
  height: 34px;
}
header #mobile_header {
  background-color: #3c3c3b;
  display: none;
  height: 55px;
}
header #mobile_header .left,
header #mobile_header .right {
  width: 50%;
  color: #ffd500;
}
header #mobile_header .left img,
header #mobile_header .right img {
  width: 45px;
  height: auto;
}
header #mobile_header .left {
  color: #fff;
}
header #mobile_header .left a {
  text-transform: uppercase;
  color: #fff;
  font-family: 'Roboto-Black';
  padding-left: 60px;
  display: block;
  margin-top: 16px;
}
header #mobile_header .left img {
  position: absolute;
  left: 0px;
  margin-top: -10px;
}
header #mobile_header .right {
  text-align: right;
}
header #mobile_header .right #tel {
  margin-right: 50px;
}
header #mobile_header .right #tel img {
  width: 30px;
  margin-top: 13px;
}
header #mobile_header .right label {
  display: none;
}
header #mobile_header .right input[type=checkbox] {
  border: 1px solid;
  width: 40px;
  height: 32px;
  position: absolute;
  top: 0px;
  opacity: 0;
  z-index: 999;
  margin-left: auto;
  margin-right: auto;
  margin-top: 12px;
  right: 0px;
  cursor: pointer;
}
header #mobile_header .right #mobilemenue,
header #mobile_header .right #mobilemenue:before,
header #mobile_header .right #mobilemenue:after {
  width: 32px;
  height: 4px;
  margin-bottom: 5px;
  background: #ffd500;
  z-index: 998;
  right: 0;
  cursor: pointer;
}
header #mobile_header .right #mobilemenue:before,
header #mobile_header .right #mobilemenue:after {
  position: absolute;
  content: "";
  text-decoration: none;
}
header #mobile_header .right #mobilemenue {
  -webkit-transition: none;
  transition: none;
  position: absolute;
  margin-left: 0px;
  right: 0px;
  margin-top: -15px;
}
header #mobile_header .right #mobilemenue:before {
  content: "";
  margin-top: -9px;
  -webkit-transition: all 0.2s ease;
  /* Firefox */
  /* WebKit */
  /* Opera */
  transition: all 0.2s ease;
  /* Standard */
}
header #mobile_header .right #mobilemenue:after {
  content: "";
  margin-top: 9px;
  -webkit-transition: all 0.2s ease;
  /* Firefox */
  /* WebKit */
  /* Opera */
  transition: all 0.2s ease;
  /* Standard */
}
header #mobile_header .right input:checked ~ #mobilemenue:before {
  -webkit-transform: rotate(45deg) translate(6px, 6px);
  transform: rotate(45deg) translate(6px, 6px);
}
header #mobile_header .right input:checked ~ #mobilemenue:after {
  -webkit-transform: rotate(-45deg) translate(6px, -6px);
  transform: rotate(-45deg) translate(6px, -6px);
}
header #mobile_header .right input:checked ~ #mobilemenue {
  height: 0;
  text-decoration: none;
}
header #mobile_header .right input:checked ~ nav {
  display: block !important;
}
header #mobile_header .right #mobile_menue {
  margin-top: 14px;
  background-color: #3c3c3b;
  display: none;
  width: 100%;
  position: absolute;
  z-index: 999;
  left: 0;
}
header #mobile_header .right #mobile_menue ul li {
  padding-right: 40px;
  display: block;
}
header #mobile_header .right #mobile_menue ul li a,
header #mobile_header .right #mobile_menue ul li strong {
  font-size: 15px;
  color: #fff;
}
header #mobile_header .right #mobile_menue ul li a:hover,
header #mobile_header .right #mobile_menue ul li strong:hover {
  color: #ffd500;
}
header #mobile_header .right #mobile_menue ul li strong {
  color: #ffd500;
}
header #mobile_header .right #mobile_menue ul li:last-child {
  margin-right: 0px;
}
header #mobile_header .right #mobile_menue ul li .submenuecontainer {
  display: none;
}
header #mobile_header .right #mobile_menue ul li .submenuecontainer:after {
  display: none;
}
header #mobile_header .right #mobile_menue ul li ul {
  position: relative;
  display: block;
  background-color: #3c3c3b;
}
header #mobile_header .right #mobile_menue ul li ul li {
  padding-right: 0px;
}
header #mobile_header .right #mobile_menue ul li .mobile_open {
  font-size: 32px;
  margin-top: 0px;
  position: absolute;
  margin-left: 10px;
}
header #mobile_header .right #mobile_menue ul li.submenu:after {
  display: none;
}
header #menue1 ul li:nth-child(4),
header #menue1 ul li:nth-child(5),
header #menue1 ul li:nth-child(6),
header #menue1 ul li:nth-child(7) {
  display: none;
}
header #menue1 ul li ul li:nth-child(n) {
  display: block;
}
header #menue2 ul li:nth-child(1),
header #menue2 ul li:nth-child(2),
header #menue2 ul li:nth-child(3),
header #menue2 ul li:nth-child(7) {
  display: none;
}
header #menue2 ul li ul li:nth-child(n) {
  display: block;
}
header #menue3 ul li:nth-child(1),
header #menue3 ul li:nth-child(2),
header #menue3 ul li:nth-child(3),
header #menue3 ul li:nth-child(4),
header #menue3 ul li:nth-child(5),
header #menue3 ul li:nth-child(6) {
  display: none;
}
header #menue3 ul li ul li:nth-child(n) {
  display: block;
}
body {
  font-family: 'Roboto-Light';
  font-size: 25px;
  color: #3c3c3b;
}
.cloak {
  display: none;
}
#main p {
  line-height: 35px;
  margin-bottom: 20px;
}
#main strong {
  font-family: 'Roboto-Black';
}
#main .inner {
  padding-top: 100px;
  padding-bottom: 100px;
}
h1,
h2 {
  font-family: 'Roboto-Black';
  color: #3c3c3b;
  font-size: 62px;
  margin-bottom: 30px;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
}
h3 {
  font-family: 'Roboto-Black';
  color: #3c3c3b;
  margin-bottom: 10px;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
}
/* Unsichtbare Überschrift */
.unsichtbar {
  display: none !important;
}
.more,
.back a {
  font-family: 'Roboto-Light';
  color: #3c3c3b;
  font-size: 25px;
  border: 1px solid #ffd500;
  padding: 28px 46px;
  padding-right: 64px;
  display: inline-block;
  margin-top: 100px;
}
.more:hover,
.back a:hover {
  background-color: #ffd500;
}
.more:after,
.back a:after {
  content: "";
  background-image: url('../img/icon_pfeil.svg');
  width: 15px;
  height: 20px;
  position: absolute;
  background-size: 100%;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  margin-top: 8px;
  margin-left: 5px;
}
.ce_text ul li {
  padding-left: 10px;
  line-height: 35px;
  margin-bottom: 10px;
}
.ce_text ul li:before {
  content: "·";
  position: absolute;
  margin-left: -10px;
}
.ce_text a {
  color: #3c3c3b;
  font-family: 'Roboto';
}
.e1 {
  padding-top: 80px;
  padding-bottom: 80px;
}
.e1 .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}
.e1 .inner .ce_text,
.e1 .inner .ce_image {
  width: 50%;
}
.e1 .inner #fue {
  width: 200px;
  height: auto;
  margin-top: 80px;
}
.e1 #music {
  width: 80px;
  height: 80px;
  margin-top: 40px;
}
#start .image_container {
  position: relative;
}
#start img {
  width: 230px;
  height: auto;
}
#start .caption {
  /*font-family:'Roboto-Blackitalic';*/
  font-family: 'Roboto-Black';
  font-style: italic;
  font-size: 62px;
  position: absolute;
  top: 60px;
  right: 80px;
}
#start .caption span {
  font-size: 25px;
  font-family: 'Roboto-Light';
}
#start .caption span a {
  color: #3c3c3b;
}
#start .caption .more {
  margin-top: 20px;
  font-family: 'Roboto';
  font-style: normal;
}
.e2 {
  background-color: #ffd500;
  width: 100%;
  height: auto;
  overflow: hidden;
}
.e2 .ce_image {
  width: 50%;
  float: right;
}
.e2 .ce_text {
  position: absolute;
  width: 96%;
  max-width: 1560px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  padding-top: 100px;
  padding-bottom: 100px;
}
.e2 .ce_text ul {
  margin-right: 55%;
}
.e2 .ce_text ul li {
  position: relative;
  padding-left: 0px;
  display: inline-block;
  width: 46%;
}
.e2 .ce_text ul li:before {
  content: "";
}
.e2 .ce_text ul li:nth-child(1) a:before {
  background-image: url('../img/icon_mechanik.svg');
  width: 60px;
  height: 50px;
  margin-top: -12px;
}
.e2 .ce_text ul li:nth-child(2) a:before {
  background-image: url('../img/icon_pruefung.svg');
  width: 40px;
  height: 60px;
  margin-top: -18px;
}
.e2 .ce_text ul li:nth-child(3) a:before {
  background-image: url('../img/icon_schweissen.svg');
  width: 58px;
  height: 84px;
  margin-top: -18px;
}
.e2 .ce_text ul li:nth-child(4) a:before {
  background-image: url('../img/icon_elektrik.svg');
  width: 32px;
  height: 52px;
  margin-top: -8px;
}
.e2 .ce_text ul li:nth-child(5) a:before {
  background-image: url('../img/icon_zerspanung.svg');
  width: 63px;
  height: 59px;
  margin-top: -18px;
}
.e2 .ce_text ul li:nth-child(6) a:before {
  background-image: url('../img/icon_software.svg');
  width: 59px;
  height: 67px;
  margin-top: 10px;
}
.e2 .ce_text ul li:nth-child(7) a:before {
  background-image: url('../img/icon_schulung.svg');
  width: 61px;
  height: 37px;
  margin-top: 0px;
}
.e2 .ce_text ul li a {
  color: #3c3c3b;
  padding-left: 90px;
  font-family: 'Roboto-Light';
  margin-bottom: 12%;
  display: block;
}
.e2 .ce_text ul li a:before {
  content: "";
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  left: 0;
}
.e2 .ce_text ul li a:after {
  content: "";
  background-image: url('../img/icon_pfeil.svg');
  width: 15px;
  height: 20px;
  position: absolute;
  background-size: 100%;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  margin-top: 7px;
  margin-left: 5px;
}
.e3 {
  overflow: hidden;
  background-color: #ebebeb;
}
.e3 .inner {
  position: relative;
}
.e3 .sly_news,
.e3 .sly {
  overflow: visible!important;
  position: relative;
}
.e3 .sly_news .layout_latest,
.e3 .sly .layout_latest {
  margin-right: 30px;
}
.e3 .sly_news li {
  width: 368px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  padding-left: 0px;
  margin-bottom: 80px;
}
.e3 .sly_news li h3 {
  width: 100%;
  position: relative;
  margin-bottom: 20px;
}
.e3 .sly_news li h3 .e5 .sly_news li .ce_text {
  height: 250px;
}
.e3 .sly_news .slyboxinner {
  position: relative;
  width: 100%;
  height: 100%;
}
.e3 .sly_news .slyboxinner h3 {
  margin-top: 20px;
  font-family: 'Roboto-Black';
}
.e3 .sly_news .slyboxinner h3 a {
  color: #3c3c3b;
  text-decoration: none;
}
.e3 .sly_news .slyboxinner .more {
  border: none;
  padding: 0;
  font-size: 22px;
}
.e3 .sly_news .slyboxinner .more:hover {
  background: none;
}
.e3 .sly_news .slyboxinner .more:after {
  content: "";
  background-image: url(../img/icon_pfeil.svg);
  width: 15px;
  height: 20px;
  position: absolute;
  background-size: 100%;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  margin-top: 7px;
  margin-left: 5px;
}
.e3 .scrollbarwrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  margin-top: 80px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 0;
  margin-bottom: 108px;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.e3 .scrollbarwrapper .scrollbar {
  width: 70%;
  border-radius: 20px;
  margin: 1em 0;
  height: 10px;
  background: #fff;
}
.e3 .scrollbarwrapper .scrollbar .handle {
  height: 100%;
  background: #feca36;
  cursor: pointer;
}
.e3 .scrollbarwrapper .scrollbar .scrollbarlink {
  width: 15%;
  text-align: right;
}
.e3 #news_social {
  position: absolute;
  right: 0;
  margin-top: -100px;
}
.e3 #news_social img {
  width: 30px;
  height: 30px;
}
.e3 .more {
  padding: 38px 46px;
  margin-top: 0px;
}
.e3 .more:after {
  margin-top: -9px;
}
.e4 .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 100px;
  padding-bottom: 100px;
}
.e4 .inner h3 {
  width: 100%;
  font-size: 33px;
  margin-bottom: 60px;
  font-family: 'Roboto-Black';
}
.e4 .inner .ce_image {
  width: 21%;
  margin-bottom: 40px;
}
.e4 .inner .ce_image img {
  width: auto;
  height: auto;
  max-width: 300px;
  max-height: 200px;
  -webkit-filter: grayscale();
          filter: grayscale();
  opacity: 0.6;
}
.e5 .inner,
.e6 .inner,
.e7 .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 100px;
  padding-bottom: 100px;
}
.e5 .inner h1,
.e6 .inner h1,
.e7 .inner h1,
.e5 .inner h2,
.e6 .inner h2,
.e7 .inner h2 {
  width: 100%;
}
.e5 .inner .ce_text,
.e6 .inner .ce_text,
.e7 .inner .ce_text,
.e5 .inner .ce_image,
.e6 .inner .ce_image,
.e7 .inner .ce_image {
  width: 47%;
}
.e5 {
  background-color: #ffd500;
  color: #3c3c3b;
}
.e5 .more {
  border: 1px solid #3c3c3b;
}
.e5 .more:hover {
  background-color: #3c3c3b;
  color: #ffd500;
}
.e6 {
  background-color: #3c3c3b;
  color: #fff;
}
.e6 h2,
.e6 h3 {
  color: #ffd500;
}
.r_akkordion {
  position: relative;
}
.r_akkordion li {
  padding-left: 0px !important;
  margin-left: 0px;
  position: relative;
  border-bottom: 2px solid #fff;
  margin-bottom: 0px !important;
  padding-top: 5px;
  padding-bottom: 5px;
}
.r_akkordion li:before {
  display: none;
}
.r_akkordion li:after {
  content: "";
  background-image: url('../img/icon_arrow_down_white.svg');
  background-repeat: no-repeat;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  width: 15px;
  height: 15px;
  position: absolute;
  background-size: 100%;
  right: 0;
  margin-top: -26px;
}
.r_akkordion li h3 {
  cursor: pointer;
}
.r_akkordion li p {
  -webkit-transform: scaleY(0);
          transform: scaleY(0);
  height: 0;
  padding-top: 0px !important;
  margin-bottom: 0px !important;
}
.r_akkordion li.active p {
  height: auto;
  padding-top: 20px;
  -webkit-transform: scaleY(1);
          transform: scaleY(1);
  margin-bottom: 20px;
}
.r_akkordion li.active:after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
.mod_breadcrumb .inner {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}
#breadcrumb {
  margin-top: 75px;
}
#breadcrumb li {
  display: inline-block;
  font-size: 18px;
}
#breadcrumb li a {
  font-family: 'Roboto-Light';
  color: #3c3c3b;
}
#breadcrumb li a:hover {
  text-decoration: underline;
}
#breadcrumb li.active {
  font-family: 'Roboto';
  font-weight: bold;
}
#breadcrumb li:last-child {
  display: none;
}
#breadcrumb .spacer {
  margin-left: 8px;
}
#historie_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#historie_container #history_galery {
  width: 30%;
}
#historie_container #history_galery img {
  margin-bottom: 40px;
}
#historie_container #history_data {
  width: 70%;
}
#historie_container #history_data .history_data_container {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: none;
  transition: none;
}
#historie_container #history_data .history_data_container .history_year {
  width: 20%;
  text-align: right;
  -webkit-transition: none;
  transition: none;
}
#historie_container #history_data .history_data_container .history_year span {
  font-family: 'Roboto-Black';
}
#historie_container #history_data .history_data_container .history_dot {
  width: 10%;
  text-align: center;
  background-image: url('../img/bg_h.jpg');
  background-repeat: repeat-y;
  background-position: 51%;
}
#historie_container #history_data .history_data_container .history_dot span {
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 180px;
  background-color: #ebebeb;
  margin-left: auto;
  margin-right: auto;
}
#historie_container #history_data .history_data_container .history_text {
  width: 70%;
  margin-top: -6px;
  margin-bottom: 20px;
  -webkit-transition: none;
  transition: none;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
}
#historie_container #history_data .history_data_container.active {
  font-size: 28px;
}
#historie_container #history_data .history_data_container.active .history_dot span {
  display: block;
  width: 30px;
  height: 30px;
  background-color: #3c3c3b;
}
#mobile_history {
  display: none;
}
#mobile_history .mh_container {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #3c3c3b;
}
#mobile_history .mh_headline span {
  font-family: 'Roboto-Black';
}
#mobile_history .mh_galerie {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#mobile_history .mh_galerie img {
  width: 50%;
  height: auto;
}
.e8 .inner {
  width: 96%;
  max-width: 1560px;
  padding-top: 100px;
  padding-bottom: 100px;
}
#newsliste_global {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#newsliste_global .layout_latest {
  width: 370px;
  margin-bottom: 80px;
}
#newsliste_global .layout_latest .image_container {
  height: 276px;
}
#newsliste_global .layout_latest h3 {
  margin-top: 20px;
  font-family: 'Roboto-Black';
  width: 100%;
  position: relative;
  margin-bottom: 20px;
  height: 60px;
}
#newsliste_global .layout_latest h3 a {
  color: #3c3c3b;
  text-decoration: none;
}
#newsliste_global .layout_latest .more a {
  font-family: 'Roboto-Light';
  color: #3c3c3b;
  font-size: 25px;
}
.tabmenue {
  background-color: #3c3c3b;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: align-left;
      -ms-flex-pack: align-left;
          justify-content: align-left;
  margin-bottom: 40px;
}
.tabmenue a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 20px 30px;
  color: #fff;
}
.tabmenue a:hover,
.tabmenue a.active {
  background-color: #ffd500;
  color: #3c3c3b;
}
.zf_container {
  display: none;
}
.zf_container .inside {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.zf_container h2 {
  width: 100%;
}
.zf_container .selectcontainer {
  width: 32% !important;
}
.zf_container .selectcontainer label {
  display: none;
}
.zf_container .selectcontainer select {
  display: none;
}
.zf_container input[type='text'],
.zf_container select,
.zf_container input[type='password'],
.zf_container input[type='email'],
.zf_container textarea {
  border: 1px solid #3c3c3b;
}
.zf_container.active {
  display: block;
}
#detailinput_container {
  display: none;
}
#detailinput_container .inside {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#detailinput_container .inside .widget {
  width: 32%;
}
#loader {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 36px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  display: none;
}
#loader img {
  width: 100%;
  height: auto;
}
.alert {
  border: 1px solid #ff0000 !important;
}
.gm-style-iw-d {
  color: #111;
}
#zt_headline,
#zt_headline2,
#zt_headline3 {
  background-color: #3c3c3b;
  color: #fff;
}

#zt_headline3 {
  margin-top:40px;
  display:none;
}

#ausgabenachdatum {
  width: 100%;
}
.zt_datacontainer,
#ausgabenachdatum .zt_datacontainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.zt_datacontainer .zf_col,
#ausgabenachdatum .zt_datacontainer .zf_col {
  width: 15%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5px;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
         
}
#zt_data .zt_datacontainer:nth-child(even),
#zt_data2 .zt_datacontainer:nth-child(even) {
  background-color: #f1f1f1;
}


.zf_col {
    font-size:18px;
}

#userdata,
#userdata2 {
  margin-bottom: 40px;
  font-size: 20px;
}
#userdata2 {
  font-weight: bold;
}
#zt_headline {
  display: none;
}
.nodata {
  font-weight: bold;
}
#share {
  margin-bottom: 40px;
}
#share img {
  width: 30px;
  height: 30px;
}
.lastcol {
  width: 5% !important;
}
.lastcol a {
  color: #ff0000;
  font-weight: bold;
}
.print {
  display: none;
}
.zf_container h3 {
  font-family: 'Roboto-Black';
  color: #3c3c3b;
  font-size: 32px;
  margin-top: 40px;
  margin-bottom: 20px;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
  width: 100%;
}
#planung {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#planung .widget {
  width: 32%;
}
#planung #ep_buttons {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#planung #ep_buttons .ep_button {
  background-color: #3c3c3b;
  color: #fff;
  width: 190px;
  height: 40px;
  margin-right: 15px;
  position: relative;
  margin-bottom: 20px;
  border: 1px solid #3c3c3b;
}
#planung #ep_buttons .ep_button:hover {
  background-color: #ffd500;
  color: #3c3c3b !important;
}
#planung #ep_buttons .ep_button.active {
  border: 1px solid #ff0000;
}
#planung #ep_buttons .ep_button .ep_quader {
  width: 40px;
  height: 40px;
  display: inline-block;
  margin-right: 10px;
}
#planung #ep_buttons .ep_button .ep_btext {
  display: inline-block;
  position: absolute;
  margin-top: 8px;
}
.ep_button2 {
  color: #3c3c3b;
  width: 190px;
  height: 40px;
  margin-right: 15px;
  position: relative;
  margin-bottom: 20px;
}
.ep_button2 .ep_quader {
  width: 40px;
  height: 40px;
  display: inline-block;
  margin-right: 10px;
}
.ep_button2 .ep_btext {
  display: inline-block;
  position: absolute;
  margin-top: 8px;
}
#ep_tabellencontainer {
  width: 100%;
  height: auto;
  overflow-x: auto;
  margin-top: 100px;
}
#ep_tabellencontainer #ep_tinner {
  width: 2170px;
  margin-bottom: 50px;
}
#ep_tabellencontainer #ep_tinner .ep_ma {
  width: 300px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px;
  background-color: #3c3c3b;
  color: #fff;
  border-right: 1px solid #3c3c3b;
  border-bottom: 1px solid #fff;
  float: left;
}
#ep_tabellencontainer #ep_tinner .ep_day {
  width: 60px;
  height: 47px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px;
  text-align: center;
  border-right: 1px solid #3c3c3b;
  border-bottom: 1px solid #3c3c3b;
  float: left;
  cursor: pointer;
}
#ep_tabellencontainer #ep_tinner .ep_p {
  width: 60px;
  height: 47px;
  text-align: center;
  border-right: 1px solid #3c3c3b;
  border-bottom: 1px solid #3c3c3b;
  float: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
}
#ep_tabellencontainer #ep_tinner .ep_p:hover {
  background-color: #3c3c3b;
}
#ep_tabellencontainer #ep_tinner .ep_we,
#ep_tabellencontainer #ep_tinner .ep_we_top {
  width: 60px;
  height: 47px;
  text-align: center;
  border-right: 1px solid #3c3c3b;
  border-bottom: 1px solid #3c3c3b;
  float: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ffefdf;
}
#ep_tabellencontainer #ep_tinner .ep_fe,
#ep_tabellencontainer #ep_tinner .ep_fe_top {
  width: 60px;
  height: 47px;
  text-align: center;
  border-right: 1px solid #3c3c3b;
  border-bottom: 1px solid #3c3c3b;
  float: left;
  color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #734d76;
}
#ep_tabellencontainer #ep_tinner .ep_we_top {
  border-top: 1px solid #3c3c3b;
}
#ep_tabellencontainer #ep_tinner .ep_f {
  border-top: 1px solid #3c3c3b;
  cursor: pointer;
}
#ep_tabellencontainer #ep_tinner .ep_fe_top {
  border-top: 1px solid #3c3c3b;
}
#ep_tabellencontainer #ep_tinner .ep_spacer {
  width: 100%;
  clear: both;
}
#console_temp {
  position: fixed;
  top: 0;
  z-index: 9999;
  background-color: #000;
  color: #03c615;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 20px;
  font-size: 12px;
}
.ui-datepicker {
  z-index: 999 !important;
}
.e20 {
  background-color: #ffd500;
}
.e20 .ce_form .formbody {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.e20 .ce_form .formbody .form_block {
  width: 32.5%;
}
.ce_form .widget,
.mod_login .widget {
  width: 100%;
  position: relative;
}
.ce_form .widget label,
.mod_login .widget label {
  position: absolute;
  z-index: 99;
  font-size: 18px;
  font-family: 'Roboto-Light';
  margin-left: 10px;
  margin-top: 5px;
}
.ce_form .widget input[type='text'],
.mod_login .widget input[type='text'],
.ce_form .widget select,
.mod_login .widget select,
.ce_form .widget input[type='password'],
.mod_login .widget input[type='password'],
.ce_form .widget input[type='email'],
.mod_login .widget input[type='email'],
.ce_form .widget textarea,
.mod_login .widget textarea {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 25px;
  color: #3c3c3b;
  font-family: 'Roboto-Light';
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 30px;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
.ce_form .widget textarea,
.mod_login .widget textarea {
  height: 167px;
}
.ce_form .widget select,
.mod_login .widget select {
  height: 70px;
  -webkit-appearance: none;
  -webkit-border-radius: 0px;
}
.ce_form .submit,
.mod_login .submit {
  font-family: 'Roboto-Light';
  color: #3c3c3b;
  font-size: 25px;
  border: 1px solid #fff;
  padding: 34px 48px;
  padding-right: 64px;
  display: inline-block;
  background: none;
  cursor: pointer;
}
.ce_form .submit:after,
.mod_login .submit:after {
  content: "";
  background-image: url('../img/icon_arrow_right_grey.svg');
  width: 10px;
  height: 28px;
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  margin-top: 6px;
  margin-left: 15px;
}
.ce_form .submit:hover,
.mod_login .submit:hover {
  background-color: #ffd500;
}

.ce_form input[type="checkbox"] {
  width:18px;
  height:18px;
}

.ce_form .checkbox_container label {
  line-height:22px;
}

.ce_form .submit {
  margin-top:80px;
}


.ds {
  width: 50%;
}
.ds p {
  font-size: 18px;
  line-height: 22px !important;
  font-family: 'Roboto-Light';
}
.ds input[type="checkbox"] {
  float: left;
  margin-right: 15px;
  margin-bottom: 120px;
  margin-left: 0;
}
.ds .fakecheck {
  width: 20px;
  height: 20px;
  display: block;
  background-color: #fff;
  position: absolute;
}
.ds .fakecheck.active:before,
.ds .fakecheck.active:after {
  position: absolute;
  left: 10px;
  content: ' ';
  height: 20px;
  width: 1px;
  top: 1px;
  background-color: #3c3c3b;
}
.ds .fakecheck.active:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.ds .fakecheck.active:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.ds a {
  color: #3c3c3b;
  font-family: 'Roboto';
}
.mod_login {
  background-color: #3c3c3b;
  padding: 20px;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
}
.mod_login .submit {
  color: #fff;
}
.mod_login .submit:hover {
  color: #3c3c3b;
}
footer {
  background-color: #3c3c3b;
  color: #fff;
  font-size: 25px;
  font-family: 'Roboto-Light';
  padding-top: 40px;
  padding-bottom: 34px;
}
footer .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
footer .inner .left,
footer .inner .right {
  width: 50%;
}
footer .inner .left {
  color: #ffd500;
}
footer .inner .right {
  text-align: right;
}
footer .inner .right ul li {
  display: inline-block;
  margin-left: 20px;
}
footer .inner .right ul li a {
  color: #fff;
}
footer .inner .right ul li a:hover {
  color: #ffd500;
}
footer .inner .right ul li strong {
  color: #ffd500;
}
@media screen and (max-width: 1620px) {
  .e2 .ce_text {
    position: relative;
  }
  .e2 .ce_text ul {
    margin-right: 0px;
  }
  .e2 .ce_image {
    width: 100%;
    float: none;
  }
}
@media screen and (max-width: 1360px) {
  .e4 .inner .ce_image {
    width: 25%;
  }
}
@media screen and (max-width: 1280px) {
  #header_top,
  #header_bottom {
    display: none;
  }
  #mobile_header {
    display: block !important;
  }
  .e4 .inner .ce_image {
    width: 30%;
  }
}
@media screen and (max-width: 1024px) {
  #main .inner {
    padding-top: 20px;
  }
  h1,
  h2 {
    margin-bottom: 20px;
    font-size: 52px;
  }
  #start .image_container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    margin-bottom: 80px;
  }
  #start .image_container img {
    width: 30%;
    height: auto;
  }
  #start .image_container .caption {
    width: 60%;
  }
  #start .caption {
    position: relative;
    right: unset;
    -webkit-hyphens: auto;
        -ms-hyphens: auto;
            hyphens: auto;
  }
  .e2 .ce_text {
    width: 100%;
  }
  .e2 .ce_text h2 {
    margin-left: 4%;
  }
  .e2 .ce_text ul li {
    width: 100%;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    margin-bottom: -1px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .e2 .ce_text ul li a {
    margin-bottom: 30px;
    padding-top: 30px;
  }
  .e2 .ce_text ul li a:after {
    right: 20px;
  }
  .e2 .ce_text ul li a:before {
    margin-left: 4%;
    margin-top: -6px;
  }
  .e1 .inner .ce_text,
  .e1 .inner .ce_image,
  .e5 .inner .ce_text,
  .e6 .inner .ce_text,
  .e5 .inner .ce_image,
  .e6 .inner .ce_image,
  footer .inner .left,
  footer .inner .right {
    width: 100%;
  }
  .e4 .inner .ce_image {
    width: 48%;
    text-align: center;
  }
  footer .inner .left,
  footer .inner .right {
    text-align: center;
  }
  footer .inner .left {
    margin-bottom: 20px;
  }
  .e3 .scrollbarwrapper {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .e3 .scrollbarwrapper .scrollbar {
    width: 100%;
  }
  .e3 .scrollbarwrapper .scrollbarlink {
    width: 100%;
    text-align: center;
  }
  .e5 .inner .ce_text,
  .e6 .inner .ce_text,
  .e7 .inner .ce_text,
  .e5 .inner .ce_image,
  .e6 .inner .ce_image,
  .e7 .inner .ce_image {
    width: 100%;
  }
  #fue {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  .e20 .ce_form .formbody .form_block {
    width: 100%;
  }
  .ds {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .e3 #news_social {
    position: relative;
    margin-bottom: 40px;
    margin-top: 0px;
  }
  #newsliste_global {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .tabmenue a {
    width: 100%;
    text-align: center;
  }
  #userdata2 {
    line-height: 28px;
  }
  .zt_datacontainer {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #zt_headline .zf_col {
    width: 100%;
    text-align: center;
  }
  #zt_data .zt_datacontainer .zf_col {
    width: 100%;
  }
  .zt_datacontainer .zf_col,
  #ausgabenachdatum .zt_datacontainer .zf_col {
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .e4 .inner .ce_image {
    width: 100%;
  }
  footer .inner .left {
    line-height: 36px;
  }
  footer .inner .right ul li {
    display: block;
    margin-left: 0px;
    margin-bottom: 10px;
  }
  #historie_container {
    display: none;
  }
  #mobile_history {
    display: block;
  }
}
@media screen and (max-width: 500px) {
  #start .image_container img {
    width: 150px;
    height: 380px;
  }
  #start .image_container .caption {
    font-size: 10vw;
  }
  .more {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center;
  }
  .e1 #music {
    width: 80px !important;
    height: 80px !important;
    margin-top: 40px !important;
  }
}
@media screen and (max-width: 390px) {
  h1,
  h2 {
    font-size: 46px;
  }
}
@media screen and (max-width: 350px) {
  h1,
  h2 {
    font-size: 40px;
  }
}
/*! jQuery UI - v1.10.4 - 2014-01-17
* http://jqueryui.com
* Includes: jquery.ui.core.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css, jquery.ui.theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS%2CTahoma%2CVerdana%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=gloss_wave&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=highlight_soft&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=glass&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=glass&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=diagonals_thick&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=diagonals_thick&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=flat&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px
* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
  display: none;
}
.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse;
}
.ui-helper-clearfix:after {
  clear: both;
}
.ui-helper-clearfix {
  min-height: 0;
  /* support: IE7 */
}
.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: alpha(opacity=0);
}
.ui-front {
  z-index: 100;
}
/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
  cursor: default !important;
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
}
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.ui-accordion .ui-accordion-header {
  display: block;
  cursor: pointer;
  position: relative;
  margin-top: 2px;
  padding: .5em .5em .5em .7em;
  min-height: 0;
  /* support: IE7 */
}
.ui-accordion .ui-accordion-icons {
  padding-left: 2.2em;
}
.ui-accordion .ui-accordion-noicons {
  padding-left: .7em;
}
.ui-accordion .ui-accordion-icons .ui-accordion-icons {
  padding-left: 2.2em;
}
.ui-accordion .ui-accordion-header .ui-accordion-header-icon {
  position: absolute;
  left: .5em;
  top: 50%;
  margin-top: -8px;
}
.ui-accordion .ui-accordion-content {
  padding: 1em 2.2em;
  border-top: 0;
  overflow: auto;
}
.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
}
.ui-button {
  display: inline-block;
  position: relative;
  padding: 0;
  line-height: normal;
  margin-right: .1em;
  cursor: pointer;
  vertical-align: middle;
  text-align: center;
  overflow: visible;
  /* removes extra width in IE */
}
.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
  text-decoration: none;
}
/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
  width: 2.2em;
}
/* button elements seem to need a little more width */
button.ui-button-icon-only {
  width: 2.4em;
}
.ui-button-icons-only {
  width: 3.4em;
}
button.ui-button-icons-only {
  width: 3.7em;
}
/* button text element */
.ui-button .ui-button-text {
  display: block;
  line-height: normal;
}
.ui-button-text-only .ui-button-text {
  padding: .4em 1em;
}
.ui-button-icon-only .ui-button-text,
.ui-button-icons-only .ui-button-text {
  padding: .4em;
  text-indent: -9999999px;
}
.ui-button-text-icon-primary .ui-button-text,
.ui-button-text-icons .ui-button-text {
  padding: .4em 1em .4em 2.1em;
}
.ui-button-text-icon-secondary .ui-button-text,
.ui-button-text-icons .ui-button-text {
  padding: .4em 2.1em .4em 1em;
}
.ui-button-text-icons .ui-button-text {
  padding-left: 2.1em;
  padding-right: 2.1em;
}
/* no icon support for input elements, provide padding by default */
input.ui-button {
  padding: .4em 1em;
}
/* button icon element(s) */
.ui-button-icon-only .ui-icon,
.ui-button-text-icon-primary .ui-icon,
.ui-button-text-icon-secondary .ui-icon,
.ui-button-text-icons .ui-icon,
.ui-button-icons-only .ui-icon {
  position: absolute;
  top: 50%;
  margin-top: -8px;
}
.ui-button-icon-only .ui-icon {
  left: 50%;
  margin-left: -8px;
}
.ui-button-text-icon-primary .ui-button-icon-primary,
.ui-button-text-icons .ui-button-icon-primary,
.ui-button-icons-only .ui-button-icon-primary {
  left: .5em;
}
.ui-button-text-icon-secondary .ui-button-icon-secondary,
.ui-button-text-icons .ui-button-icon-secondary,
.ui-button-icons-only .ui-button-icon-secondary {
  right: .5em;
}
/* button sets */
.ui-buttonset {
  margin-right: 7px;
}
.ui-buttonset .ui-button {
  margin-left: 0;
  margin-right: -0.3em;
}
/* workarounds */
/* reset extra padding in Firefox, see h5bp.com/l */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.ui-datepicker {
  width: 17em;
  padding: .2em .2em 0;
  display: none;
}
.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: .2em 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em;
  display: none;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  top: 1px;
}
.ui-datepicker .ui-datepicker-prev {
  left: 2px;
}
.ui-datepicker .ui-datepicker-next {
  right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px;
}
.ui-datepicker .ui-datepicker-next-hover {
  right: 1px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 49%;
}
.ui-datepicker table {
  width: 100%;
  font-size: .9em;
  border-collapse: collapse;
  margin: 0 0 .4em;
}
.ui-datepicker th {
  padding: .7em .3em;
  text-align: center;
  font-weight: bold;
  border: 0;
}
.ui-datepicker td {
  border: 0;
  padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  padding: .2em;
  text-align: right;
  text-decoration: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: .7em 0 0 0;
  padding: 0 .2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: .5em .2em .4em;
  cursor: pointer;
  padding: .2em .6em .3em .6em;
  width: auto;
  overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left;
}
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto;
}
.ui-datepicker-multi .ui-datepicker-group {
  float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto .4em;
}
.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}
.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0;
}
/* RTL support */
.ui-datepicker-rtl {
  direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
  float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}
.ui-dialog {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  padding: .2em;
  outline: 0;
}
.ui-dialog .ui-dialog-titlebar {
  padding: .4em 1em;
  position: relative;
}
.ui-dialog .ui-dialog-title {
  float: left;
  margin: .1em 0;
  white-space: nowrap;
  width: 90%;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  right: .3em;
  top: 50%;
  width: 20px;
  margin: -10px 0 0 0;
  padding: 1px;
  height: 20px;
}
.ui-dialog .ui-dialog-content {
  position: relative;
  border: 0;
  padding: .5em 1em;
  background: none;
  overflow: auto;
}
.ui-dialog .ui-dialog-buttonpane {
  text-align: left;
  border-width: 1px 0 0 0;
  background-image: none;
  margin-top: .5em;
  padding: .3em 1em .5em .4em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
  float: right;
}
.ui-dialog .ui-dialog-buttonpane button {
  margin: .5em .4em .5em 0;
  cursor: pointer;
}
.ui-dialog .ui-resizable-se {
  width: 12px;
  height: 12px;
  right: -5px;
  bottom: -5px;
  background-position: 16px 16px;
}
.ui-draggable .ui-dialog-titlebar {
  cursor: move;
}
.ui-menu {
  list-style: none;
  padding: 2px;
  margin: 0;
  display: block;
  outline: none;
}
.ui-menu .ui-menu {
  margin-top: -3px;
  position: absolute;
}
.ui-menu .ui-menu-item {
  margin: 0;
  padding: 0;
  width: 100%;
  /* support: IE10, see #8844 */
  list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
}
.ui-menu .ui-menu-divider {
  margin: 5px -2px 5px -2px;
  height: 0;
  font-size: 0;
  line-height: 0;
  border-width: 1px 0 0 0;
}
.ui-menu .ui-menu-item a {
  text-decoration: none;
  display: block;
  padding: 2px .4em;
  line-height: 1.5;
  min-height: 0;
  /* support: IE7 */
  font-weight: normal;
}
.ui-menu .ui-menu-item a.ui-state-focus,
.ui-menu .ui-menu-item a.ui-state-active {
  font-weight: normal;
  margin: -1px;
}
.ui-menu .ui-state-disabled {
  font-weight: normal;
  margin: .4em 0 .2em;
  line-height: 1.5;
}
.ui-menu .ui-state-disabled a {
  cursor: default;
}
/* icon support */
.ui-menu-icons {
  position: relative;
}
.ui-menu-icons .ui-menu-item a {
  position: relative;
  padding-left: 2em;
}
/* left-aligned */
.ui-menu .ui-icon {
  position: absolute;
  top: .2em;
  left: .2em;
}
/* right-aligned */
.ui-menu .ui-menu-icon {
  position: static;
  float: right;
}
.ui-progressbar {
  height: 2em;
  text-align: left;
  overflow: hidden;
}
.ui-progressbar .ui-progressbar-value {
  margin: -1px;
  height: 100%;
}
.ui-progressbar .ui-progressbar-overlay {
  background: url("images/animated-overlay.gif");
  height: 100%;
  filter: alpha(opacity=25);
  opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
  background-image: none;
}
.ui-resizable {
  position: relative;
}
.ui-resizable-handle {
  position: absolute;
  font-size: 0.1px;
  display: block;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
  display: none;
}
.ui-resizable-n {
  cursor: n-resize;
  height: 7px;
  width: 100%;
  top: -5px;
  left: 0;
}
.ui-resizable-s {
  cursor: s-resize;
  height: 7px;
  width: 100%;
  bottom: -5px;
  left: 0;
}
.ui-resizable-e {
  cursor: e-resize;
  width: 7px;
  right: -5px;
  top: 0;
  height: 100%;
}
.ui-resizable-w {
  cursor: w-resize;
  width: 7px;
  left: -5px;
  top: 0;
  height: 100%;
}
.ui-resizable-se {
  cursor: se-resize;
  width: 12px;
  height: 12px;
  right: 1px;
  bottom: 1px;
}
.ui-resizable-sw {
  cursor: sw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  bottom: -5px;
}
.ui-resizable-nw {
  cursor: nw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  top: -5px;
}
.ui-resizable-ne {
  cursor: ne-resize;
  width: 9px;
  height: 9px;
  right: -5px;
  top: -5px;
}
.ui-selectable-helper {
  position: absolute;
  z-index: 100;
  border: 1px dotted #111;
}
.ui-slider {
  position: relative;
  text-align: left;
}
.ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  width: 1.2em;
  height: 1.2em;
  cursor: default;
}
.ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  font-size: .7em;
  display: block;
  border: 0;
  background-position: 0 0;
}
/* For IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
  -webkit-filter: inherit;
          filter: inherit;
}
.ui-slider-horizontal {
  height: .8em;
}
.ui-slider-horizontal .ui-slider-handle {
  top: -0.3em;
  margin-left: -0.6em;
}
.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
  left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
  right: 0;
}
.ui-slider-vertical {
  width: .8em;
  height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
  left: -0.3em;
  margin-left: 0;
  margin-bottom: -0.6em;
}
.ui-slider-vertical .ui-slider-range {
  left: 0;
  width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
  bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
  top: 0;
}
.ui-spinner {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 0;
  vertical-align: middle;
}
.ui-spinner-input {
  border: none;
  background: none;
  color: inherit;
  padding: 0;
  margin: .2em 0;
  vertical-align: middle;
  margin-left: .4em;
  margin-right: 22px;
}
.ui-spinner-button {
  width: 16px;
  height: 50%;
  font-size: .5em;
  padding: 0;
  margin: 0;
  text-align: center;
  position: absolute;
  cursor: default;
  display: block;
  overflow: hidden;
  right: 0;
}
/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
  border-top: none;
  border-bottom: none;
  border-right: none;
}
/* vertically center icon */
.ui-spinner .ui-icon {
  position: absolute;
  margin-top: -8px;
  top: 50%;
  left: 0;
}
.ui-spinner-up {
  top: 0;
}
.ui-spinner-down {
  bottom: 0;
}
/* TR overrides */
.ui-spinner .ui-icon-triangle-1-s {
  /* need to fix icons sprite */
  background-position: -65px -16px;
}
.ui-tabs {
  position: relative;
  /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
  padding: .2em;
}
.ui-tabs .ui-tabs-nav {
  margin: 0;
  padding: .2em .2em 0;
}
.ui-tabs .ui-tabs-nav li {
  list-style: none;
  float: left;
  position: relative;
  top: 0;
  margin: 1px .2em 0 0;
  border-bottom-width: 0;
  padding: 0;
  white-space: nowrap;
}
.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
  float: left;
  padding: .5em 1em;
  text-decoration: none;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
  margin-bottom: -1px;
  padding-bottom: 1px;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
  cursor: text;
}
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
  cursor: pointer;
}
.ui-tabs .ui-tabs-panel {
  display: block;
  border-width: 0;
  padding: 1em 1.4em;
  background: none;
}
.ui-tooltip {
  padding: 8px;
  position: absolute;
  z-index: 9999;
  max-width: 300px;
  -webkit-box-shadow: 0 0 5px #aaa;
  box-shadow: 0 0 5px #aaa;
}
body .ui-tooltip {
  border-width: 2px;
}
/* Component containers
----------------------------------*/
.ui-widget {
  font-family: 'Raleway';
  font-size: 14px;
}
.ui-widget .ui-widget {
  font-size: 1em;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
  font-family: Trebuchet MS, Tahoma, Verdana, Arial, sans-serif;
  font-size: 1em;
}
.ui-widget-content {
  border: 1px solid #dddddd;
  background: #eeeeee url(images/ui-bg_highlight-soft_100_eeeeee_1x100.png) 50% top repeat-x;
  color: #333333;
}
.ui-widget-content a {
  color: #333333;
}
.ui-widget-header {
  border: 1px solid #3c3c3b;
  background: #3c3c3b;
  color: #ffffff;
  font-weight: bold;
}
.ui-widget-header a {
  color: #ffffff;
}
/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  border: 1px solid #cccccc;
  background: #fff;
  font-weight: bold;
  color: #111;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
  color: #111;
  text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
  border: 1px solid #3c3c3b;
  background: #3c3c3b;
  font-weight: bold;
  color: #111;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited {
  color: #ff0000;
  text-decoration: none;
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
  border: 1px solid #fbd850;
  background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;
  font-weight: bold;
  color: #eb8f00;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: #eb8f00;
  text-decoration: none;
}
/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid #3c3c3b;
  background: #ffd500;
  color: #111;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: #363636;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  border: 1px solid #cd0a0a;
  background: #b81900 url(images/ui-bg_diagonals-thick_18_b81900_40x40.png) 50% 50% repeat;
  color: #ffffff;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
  color: #ffffff;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
  color: #ffffff;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: .7;
  filter: alpha(opacity=70);
  font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: .35;
  filter: alpha(opacity=35);
  background-image: none;
}
.ui-state-disabled .ui-icon {
  filter: alpha(opacity=35);
  /* For IE8 - See #6059 */
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  width: 16px;
  height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
  background-image: url(images/ui-icons_222222_256x240.png);
}
.ui-widget-header .ui-icon {
  background-image: url(images/ui-icons_ffffff_256x240.png);
}
.ui-state-default .ui-icon {
  background-image: url(images/ui-icons_ef8c08_256x240.png);
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon {
  background-image: url(images/ui-icons_ef8c08_256x240.png);
}
.ui-state-active .ui-icon {
  background-image: url(images/ui-icons_ef8c08_256x240.png);
}
.ui-state-highlight .ui-icon {
  background-image: url(images/ui-icons_228ef1_256x240.png);
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
  background-image: url(images/ui-icons_ffd27a_256x240.png);
}
/* positioning */
.ui-icon-blank {
  background-position: 16px 16px;
}
.ui-icon-carat-1-n {
  background-position: 0 0;
}
.ui-icon-carat-1-ne {
  background-position: -16px 0;
}
.ui-icon-carat-1-e {
  background-position: -32px 0;
}
.ui-icon-carat-1-se {
  background-position: -48px 0;
}
.ui-icon-carat-1-s {
  background-position: -64px 0;
}
.ui-icon-carat-1-sw {
  background-position: -80px 0;
}
.ui-icon-carat-1-w {
  background-position: -96px 0;
}
.ui-icon-carat-1-nw {
  background-position: -112px 0;
}
.ui-icon-carat-2-n-s {
  background-position: -128px 0;
}
.ui-icon-carat-2-e-w {
  background-position: -144px 0;
}
.ui-icon-triangle-1-n {
  background-position: 0 -16px;
}
.ui-icon-triangle-1-ne {
  background-position: -16px -16px;
}
.ui-icon-triangle-1-e {
  background-position: -32px -16px;
}
.ui-icon-triangle-1-se {
  background-position: -48px -16px;
}
.ui-icon-triangle-1-s {
  background-position: -64px -16px;
}
.ui-icon-triangle-1-sw {
  background-position: -80px -16px;
}
.ui-icon-triangle-1-w {
  background-position: -96px -16px;
}
.ui-icon-triangle-1-nw {
  background-position: -112px -16px;
}
.ui-icon-triangle-2-n-s {
  background-position: -128px -16px;
}
.ui-icon-triangle-2-e-w {
  background-position: -144px -16px;
}
.ui-icon-arrow-1-n {
  background-position: 0 -32px;
}
.ui-icon-arrow-1-ne {
  background-position: -16px -32px;
}
.ui-icon-arrow-1-e {
  background-position: -32px -32px;
}
.ui-icon-arrow-1-se {
  background-position: -48px -32px;
}
.ui-icon-arrow-1-s {
  background-position: -64px -32px;
}
.ui-icon-arrow-1-sw {
  background-position: -80px -32px;
}
.ui-icon-arrow-1-w {
  background-position: -96px -32px;
}
.ui-icon-arrow-1-nw {
  background-position: -112px -32px;
}
.ui-icon-arrow-2-n-s {
  background-position: -128px -32px;
}
.ui-icon-arrow-2-ne-sw {
  background-position: -144px -32px;
}
.ui-icon-arrow-2-e-w {
  background-position: -160px -32px;
}
.ui-icon-arrow-2-se-nw {
  background-position: -176px -32px;
}
.ui-icon-arrowstop-1-n {
  background-position: -192px -32px;
}
.ui-icon-arrowstop-1-e {
  background-position: -208px -32px;
}
.ui-icon-arrowstop-1-s {
  background-position: -224px -32px;
}
.ui-icon-arrowstop-1-w {
  background-position: -240px -32px;
}
.ui-icon-arrowthick-1-n {
  background-position: 0 -48px;
}
.ui-icon-arrowthick-1-ne {
  background-position: -16px -48px;
}
.ui-icon-arrowthick-1-e {
  background-position: -32px -48px;
}
.ui-icon-arrowthick-1-se {
  background-position: -48px -48px;
}
.ui-icon-arrowthick-1-s {
  background-position: -64px -48px;
}
.ui-icon-arrowthick-1-sw {
  background-position: -80px -48px;
}
.ui-icon-arrowthick-1-w {
  background-position: -96px -48px;
}
.ui-icon-arrowthick-1-nw {
  background-position: -112px -48px;
}
.ui-icon-arrowthick-2-n-s {
  background-position: -128px -48px;
}
.ui-icon-arrowthick-2-ne-sw {
  background-position: -144px -48px;
}
.ui-icon-arrowthick-2-e-w {
  background-position: -160px -48px;
}
.ui-icon-arrowthick-2-se-nw {
  background-position: -176px -48px;
}
.ui-icon-arrowthickstop-1-n {
  background-position: -192px -48px;
}
.ui-icon-arrowthickstop-1-e {
  background-position: -208px -48px;
}
.ui-icon-arrowthickstop-1-s {
  background-position: -224px -48px;
}
.ui-icon-arrowthickstop-1-w {
  background-position: -240px -48px;
}
.ui-icon-arrowreturnthick-1-w {
  background-position: 0 -64px;
}
.ui-icon-arrowreturnthick-1-n {
  background-position: -16px -64px;
}
.ui-icon-arrowreturnthick-1-e {
  background-position: -32px -64px;
}
.ui-icon-arrowreturnthick-1-s {
  background-position: -48px -64px;
}
.ui-icon-arrowreturn-1-w {
  background-position: -64px -64px;
}
.ui-icon-arrowreturn-1-n {
  background-position: -80px -64px;
}
.ui-icon-arrowreturn-1-e {
  background-position: -96px -64px;
}
.ui-icon-arrowreturn-1-s {
  background-position: -112px -64px;
}
.ui-icon-arrowrefresh-1-w {
  background-position: -128px -64px;
}
.ui-icon-arrowrefresh-1-n {
  background-position: -144px -64px;
}
.ui-icon-arrowrefresh-1-e {
  background-position: -160px -64px;
}
.ui-icon-arrowrefresh-1-s {
  background-position: -176px -64px;
}
.ui-icon-arrow-4 {
  background-position: 0 -80px;
}
.ui-icon-arrow-4-diag {
  background-position: -16px -80px;
}
.ui-icon-extlink {
  background-position: -32px -80px;
}
.ui-icon-newwin {
  background-position: -48px -80px;
}
.ui-icon-refresh {
  background-position: -64px -80px;
}
.ui-icon-shuffle {
  background-position: -80px -80px;
}
.ui-icon-transfer-e-w {
  background-position: -96px -80px;
}
.ui-icon-transferthick-e-w {
  background-position: -112px -80px;
}
.ui-icon-folder-collapsed {
  background-position: 0 -96px;
}
.ui-icon-folder-open {
  background-position: -16px -96px;
}
.ui-icon-document {
  background-position: -32px -96px;
}
.ui-icon-document-b {
  background-position: -48px -96px;
}
.ui-icon-note {
  background-position: -64px -96px;
}
.ui-icon-mail-closed {
  background-position: -80px -96px;
}
.ui-icon-mail-open {
  background-position: -96px -96px;
}
.ui-icon-suitcase {
  background-position: -112px -96px;
}
.ui-icon-comment {
  background-position: -128px -96px;
}
.ui-icon-person {
  background-position: -144px -96px;
}
.ui-icon-print {
  background-position: -160px -96px;
}
.ui-icon-trash {
  background-position: -176px -96px;
}
.ui-icon-locked {
  background-position: -192px -96px;
}
.ui-icon-unlocked {
  background-position: -208px -96px;
}
.ui-icon-bookmark {
  background-position: -224px -96px;
}
.ui-icon-tag {
  background-position: -240px -96px;
}
.ui-icon-home {
  background-position: 0 -112px;
}
.ui-icon-flag {
  background-position: -16px -112px;
}
.ui-icon-calendar {
  background-position: -32px -112px;
}
.ui-icon-cart {
  background-position: -48px -112px;
}
.ui-icon-pencil {
  background-position: -64px -112px;
}
.ui-icon-clock {
  background-position: -80px -112px;
}
.ui-icon-disk {
  background-position: -96px -112px;
}
.ui-icon-calculator {
  background-position: -112px -112px;
}
.ui-icon-zoomin {
  background-position: -128px -112px;
}
.ui-icon-zoomout {
  background-position: -144px -112px;
}
.ui-icon-search {
  background-position: -160px -112px;
}
.ui-icon-wrench {
  background-position: -176px -112px;
}
.ui-icon-gear {
  background-position: -192px -112px;
}
.ui-icon-heart {
  background-position: -208px -112px;
}
.ui-icon-star {
  background-position: -224px -112px;
}
.ui-icon-link {
  background-position: -240px -112px;
}
.ui-icon-cancel {
  background-position: 0 -128px;
}
.ui-icon-plus {
  background-position: -16px -128px;
}
.ui-icon-plusthick {
  background-position: -32px -128px;
}
.ui-icon-minus {
  background-position: -48px -128px;
}
.ui-icon-minusthick {
  background-position: -64px -128px;
}
.ui-icon-close {
  background-position: -80px -128px;
}
.ui-icon-closethick {
  background-position: -96px -128px;
}
.ui-icon-key {
  background-position: -112px -128px;
}
.ui-icon-lightbulb {
  background-position: -128px -128px;
}
.ui-icon-scissors {
  background-position: -144px -128px;
}
.ui-icon-clipboard {
  background-position: -160px -128px;
}
.ui-icon-copy {
  background-position: -176px -128px;
}
.ui-icon-contact {
  background-position: -192px -128px;
}
.ui-icon-image {
  background-position: -208px -128px;
}
.ui-icon-video {
  background-position: -224px -128px;
}
.ui-icon-script {
  background-position: -240px -128px;
}
.ui-icon-alert {
  background-position: 0 -144px;
}
.ui-icon-info {
  background-position: -16px -144px;
}
.ui-icon-notice {
  background-position: -32px -144px;
}
.ui-icon-help {
  background-position: -48px -144px;
}
.ui-icon-check {
  background-position: -64px -144px;
}
.ui-icon-bullet {
  background-position: -80px -144px;
}
.ui-icon-radio-on {
  background-position: -96px -144px;
}
.ui-icon-radio-off {
  background-position: -112px -144px;
}
.ui-icon-pin-w {
  background-position: -128px -144px;
}
.ui-icon-pin-s {
  background-position: -144px -144px;
}
.ui-icon-play {
  background-position: 0 -160px;
}
.ui-icon-pause {
  background-position: -16px -160px;
}
.ui-icon-seek-next {
  background-position: -32px -160px;
}
.ui-icon-seek-prev {
  background-position: -48px -160px;
}
.ui-icon-seek-end {
  background-position: -64px -160px;
}
.ui-icon-seek-start {
  background-position: -80px -160px;
}
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first {
  background-position: -80px -160px;
}
.ui-icon-stop {
  background-position: -96px -160px;
}
.ui-icon-eject {
  background-position: -112px -160px;
}
.ui-icon-volume-off {
  background-position: -128px -160px;
}
.ui-icon-volume-on {
  background-position: -144px -160px;
}
.ui-icon-power {
  background-position: 0 -176px;
}
.ui-icon-signal-diag {
  background-position: -16px -176px;
}
.ui-icon-signal {
  background-position: -32px -176px;
}
.ui-icon-battery-0 {
  background-position: -48px -176px;
}
.ui-icon-battery-1 {
  background-position: -64px -176px;
}
.ui-icon-battery-2 {
  background-position: -80px -176px;
}
.ui-icon-battery-3 {
  background-position: -96px -176px;
}
.ui-icon-circle-plus {
  background-position: 0 -192px;
}
.ui-icon-circle-minus {
  background-position: -16px -192px;
}
.ui-icon-circle-close {
  background-position: -32px -192px;
}
.ui-icon-circle-triangle-e {
  background-position: -48px -192px;
}
.ui-icon-circle-triangle-s {
  background-position: -64px -192px;
}
.ui-icon-circle-triangle-w {
  background-position: -80px -192px;
}
.ui-icon-circle-triangle-n {
  background-position: -96px -192px;
}
.ui-icon-circle-arrow-e {
  background-position: -112px -192px;
}
.ui-icon-circle-arrow-s {
  background-position: -128px -192px;
}
.ui-icon-circle-arrow-w {
  background-position: -144px -192px;
}
.ui-icon-circle-arrow-n {
  background-position: -160px -192px;
}
.ui-icon-circle-zoomin {
  background-position: -176px -192px;
}
.ui-icon-circle-zoomout {
  background-position: -192px -192px;
}
.ui-icon-circle-check {
  background-position: -208px -192px;
}
.ui-icon-circlesmall-plus {
  background-position: 0 -208px;
}
.ui-icon-circlesmall-minus {
  background-position: -16px -208px;
}
.ui-icon-circlesmall-close {
  background-position: -32px -208px;
}
.ui-icon-squaresmall-plus {
  background-position: -48px -208px;
}
.ui-icon-squaresmall-minus {
  background-position: -64px -208px;
}
.ui-icon-squaresmall-close {
  background-position: -80px -208px;
}
.ui-icon-grip-dotted-vertical {
  background-position: 0 -224px;
}
.ui-icon-grip-dotted-horizontal {
  background-position: -16px -224px;
}
.ui-icon-grip-solid-vertical {
  background-position: -32px -224px;
}
.ui-icon-grip-solid-horizontal {
  background-position: -48px -224px;
}
.ui-icon-gripsmall-diagonal-se {
  background-position: -64px -224px;
}
.ui-icon-grip-diagonal-se {
  background-position: -80px -224px;
}
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
  border-top-left-radius: 4px;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
  border-top-right-radius: 4px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
  border-bottom-left-radius: 4px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
  border-bottom-right-radius: 4px;
}
/* Overlays */
.ui-widget-overlay {
  background: #666666 url(images/ui-bg_diagonals-thick_20_666666_40x40.png) 50% 50% repeat;
  opacity: .5;
  filter: alpha(opacity=50);
}
.ui-widget-shadow {
  margin: -5px 0 0 -5px;
  padding: 5px;
  background: #000000 url(images/ui-bg_flat_10_000000_40x100.png) 50% 50% repeat-x;
  opacity: .2;
  filter: alpha(opacity=20);
  border-radius: 5px;
}

.description-text,  span {
  color:#000;
}



/* Artikelüberschrift ausblenden */
.Titel_unsichtbar > h1,
.Titel_unsichtbar > h2,
.Titel_unsichtbar > h3,
.Titel_unsichtbar > h4,
.Titel_unsichtbar > h5,
.Titel_unsichtbar > h6,
.Titel_unsichtbar > .ce_headline {
  display: none !important;
}

/* Allgemeine Hervorhebung für Links und Schaltflächen */
.kachel-link:hover,
.kachel-link:focus-visible {
  background-color: #ffd500 !important;
  color: #111111 !important;
  border-color: #e6b400 !important;
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);
  transform: translateY(-3px);
}

/* =========================================================
   ABSTÄNDE DER CONTAO-ARTIKEL
   ========================================================= */

/* Innenabstände der einzelnen Artikel zunächst zurücksetzen */
#main .mod_article .inner {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Abstand vom Seitenanfang zum ersten Artikel */
#main .mod_article:first-of-type .inner {
  padding-top: 1px !important;
}

/* Abstand zwischen mehreren Artikeln */
#main .mod_article + .mod_article {
  margin-top: 35px !important;
}

/* Abstand nach dem letzten Artikel */
#main .mod_article:last-of-type .inner {
  padding-bottom: 60px !important;
}

/* =========================================================
   ARTIKEL MIT ZWEI TEXTSPALTEN
   Artikelklasse: mehrspaltig
   ========================================================= */

/* Alle möglichen Contao-Container berücksichtigen */
#main .mod_article.mehrspaltig,
#main .mod_article.mehrspaltig > .inner,
#main .mod_article.mehrspaltig > .inside {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  column-gap: 4% !important;
}

/* Artikelüberschrift bleibt über beide Spalten */
#main .mod_article.mehrspaltig > h1,
#main .mod_article.mehrspaltig > h2,
#main .mod_article.mehrspaltig > h3,
#main .mod_article.mehrspaltig > h4,
#main .mod_article.mehrspaltig > h5,
#main .mod_article.mehrspaltig > h6,
#main .mod_article.mehrspaltig > .ce_headline,
#main .mod_article.mehrspaltig > .inner > .ce_headline,
#main .mod_article.mehrspaltig > .inside > .ce_headline {
  width: 100% !important;
  flex: 0 0 100% !important;
}

/* Die beiden Texte nebeneinander */
#main .mod_article.mehrspaltig > .ce_text,
#main .mod_article.mehrspaltig > .inner > .ce_text,
#main .mod_article.mehrspaltig > .inside > .ce_text {
  display: block !important;
  width: 48% !important;
  max-width: 48% !important;
  flex: 0 0 48% !important;
  box-sizing: border-box !important;
}

/* Handy und Tablet: wieder untereinander */
@media screen and (max-width: 1024px) {
  #main .mod_article.mehrspaltig,
  #main .mod_article.mehrspaltig > .inner,
  #main .mod_article.mehrspaltig > .inside {
    flex-direction: column !important;
  }

  #main .mod_article.mehrspaltig > .ce_text,
  #main .mod_article.mehrspaltig > .inner > .ce_text,
  #main .mod_article.mehrspaltig > .inside > .ce_text {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* Zusätzlicher Abstand oberhalb eines Inhaltselements */
.Abstand_oben {
  margin-top: 5px !important;
}


/* Kategorie-Kacheln auf Handys im Hochformat */
@media screen and (max-width: 600px) {

  .mobile-kategorie-kachel {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    align-items: stretch !important;
    box-sizing: border-box !important;
  }

  .mobile-kategorie-kachel > * {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: 0 0 auto !important;
    float: none !important;
    position: relative !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  .mobile-kategorie-kachel img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .mobile-kategorie-kachel .kachel-link,
  .mobile-kategorie-kachel a {
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    margin-top: 15px !important;
    position: relative !important;
    z-index: 10 !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

/* =========================================================
   KATEGORIE-KACHELN – 2 PRO REIHE
   Artikelklasse in Contao: Kacheln_2spaltig
   ========================================================= */

/* PC: zwei komplette Kacheln nebeneinander */
@media screen and (min-width: 1101px) {

  #main .mod_article.Kacheln_2spaltig > .inner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 30px !important;
    align-items: stretch !important;
  }

  /* Funktioniert sowohl mit ce_text als auch content-text */
  #main .mod_article.Kacheln_2spaltig > .inner > .ce_text,
  #main .mod_article.Kacheln_2spaltig > .inner > .content-text {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* Komplette Kachel nutzt die Spaltenbreite */
  #main .mod_article.Kacheln_2spaltig .mobile-kategorie-kachel {
    width: 100% !important;
    max-width: none !important;
    margin: 20px 0 !important;
    box-sizing: border-box !important;
  }

  /* Bild innerhalb der Kachel */
  #main .mod_article.Kacheln_2spaltig
  .mobile-kategorie-kachel > div:first-child {
    width: 38% !important;
    flex: 0 0 38% !important;
    min-width: 0 !important;
  }

  /* Text innerhalb der Kachel */
  #main .mod_article.Kacheln_2spaltig
  .mobile-kategorie-kachel > div:last-child {
    width: auto !important;
    min-width: 0 !important;
    flex: 1 1 62% !important;
    padding: 25px 28px !important;
    box-sizing: border-box !important;
  }
}


/* Tablet: eine komplette Kachel pro Reihe */
@media screen and (max-width: 1100px) {

  #main .mod_article.Kacheln_2spaltig > .inner {
    display: block !important;
  }

  #main .mod_article.Kacheln_2spaltig > .inner > .ce_text,
  #main .mod_article.Kacheln_2spaltig > .inner > .content-text {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* =========================================================
   HINTERGRUND NUR FUER DEN MARKIERTEN CONTAO-ARTIKEL
   CSS-Klasse direkt beim Artikel vergeben: bg-schwarz/bg-weiss
   ========================================================= */

/* Nur Artikel MIT dieser CSS-Klasse werden schwarz */
#main .mod_article.bg-schwarz {
    background: #000000 !important;
}

/* Nur Artikel MIT dieser CSS-Klasse werden weiss */
#main .mod_article.bg-weiss {
    background: #ffffff !important;
}

/* Innere Inhaltsboxen behalten ihre eigenen Farben. */

/* ==========================================================
   WIN GRUPPE – SCROLL-REVEAL OHNE JAVASCRIPT
   Contao: CSS-Klasse "win-scroll-animation" am Artikel
   oder am einzelnen Inhaltselement vergeben.
   Moderne Browser: Animation beim Erreichen des Sichtbereichs.
   Andere Browser: alle Inhalte bleiben normal sichtbar.
   ========================================================== */

@keyframes win-reveal-up {
  from { opacity: 0; transform: translate3d(0, 42px, 0); }
  to   { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes win-reveal-left {
  from { opacity: 0; transform: translate3d(-35px, 0, 0); }
  to   { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes win-reveal-right {
  from { opacity: 0; transform: translate3d(35px, 0, 0); }
  to   { opacity: 1; transform: translate3d(0, 0, 0); }
}

/* Nur wenn der Browser scrollgesteuerte Animationen unterstützt. */
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {

    /* Ein einzelnes markiertes Contao-Inhaltselement */
    #main .win-scroll-animation:not(.mod_article),
    #main .mod_article.win-scroll-animation > .inner > .ce_headline,
    #main .mod_article.win-scroll-animation > .inner > .ce_text,
    #main .mod_article.win-scroll-animation > .inner > .ce_image,
    #main .mod_article.win-scroll-animation > .inner > .ce_hyperlink,
    #main .mod_article.win-scroll-animation > .inner > .ce_html,
    #main .mod_article.win-scroll-animation > .inner > .content-headline,
    #main .mod_article.win-scroll-animation > .inner > .content-text,
    #main .mod_article.win-scroll-animation > .inner > .content-image,
    #main .mod_article.win-scroll-animation > .inner > .content-element,
    #main .mod_article.win-scroll-animation > .inside > .ce_headline,
    #main .mod_article.win-scroll-animation > .inside > .ce_text,
    #main .mod_article.win-scroll-animation > .inside > .ce_image,
    #main .mod_article.win-scroll-animation > .inside > .ce_html,
    #main .mod_article.win-scroll-animation > .inside > .content-element {
      animation-name: win-reveal-up;
      animation-duration: 1s;
      animation-timing-function: linear;
      animation-fill-mode: both;
      animation-timeline: view();
      animation-range: entry 0% cover 24%;
    }

    /* Leistungen: Überschrift und Einführung getrennt einblenden */
    #win-leistungen.win-scroll-animation .win-services-kicker,
    #win-leistungen.win-scroll-animation .win-services-title,
    #win-leistungen.win-scroll-animation .win-services-intro,
    .win-scroll-animation #win-leistungen .win-services-kicker,
    .win-scroll-animation #win-leistungen .win-services-title,
    .win-scroll-animation #win-leistungen .win-services-intro {
      animation: win-reveal-up 1s linear both;
      animation-timeline: view();
      animation-range: entry 0% cover 24%;
    }

    /* Hauptkarte */
    #win-leistungen.win-scroll-animation .win-main-card,
    .win-scroll-animation #win-leistungen .win-main-card {
      animation: win-reveal-up 1s linear both;
      animation-timeline: view();
      animation-range: entry 0% cover 27%;
    }

    /* Drei einzelne Fachbereiche innerhalb der Hauptkarte */
    #win-leistungen.win-scroll-animation .win-main-service,
    .win-scroll-animation #win-leistungen .win-main-service {
      animation: win-reveal-up 1s linear both;
      animation-timeline: view();
      animation-range: entry 0% cover 28%;
    }

    /* Untere Firmenkarten: links, Mitte, rechts */
    #win-leistungen.win-scroll-animation .win-child-item:nth-child(1) .win-service-card,
    .win-scroll-animation #win-leistungen .win-child-item:nth-child(1) .win-service-card {
      animation: win-reveal-left 1s linear both;
      animation-timeline: view();
      animation-range: entry 0% cover 30%;
    }
    #win-leistungen.win-scroll-animation .win-child-item:nth-child(2) .win-service-card,
    .win-scroll-animation #win-leistungen .win-child-item:nth-child(2) .win-service-card {
      animation: win-reveal-up 1s linear both;
      animation-timeline: view();
      animation-range: entry 5% cover 35%;
    }
    #win-leistungen.win-scroll-animation .win-child-item:nth-child(3) .win-service-card,
    .win-scroll-animation #win-leistungen .win-child-item:nth-child(3) .win-service-card {
      animation: win-reveal-right 1s linear both;
      animation-timeline: view();
      animation-range: entry 10% cover 40%;
    }

    /* Organigramm-Verbindungslinien bleiben sichtbar und stabil. */
  }
}

/* Auf schmalen Bildschirmen alle Karten von unten einblenden. */
@supports (animation-timeline: view()) {
  @media (max-width: 650px) and (prefers-reduced-motion: no-preference) {
    #win-leistungen.win-scroll-animation .win-child-item .win-service-card,
    .win-scroll-animation #win-leistungen .win-child-item .win-service-card {
      animation-name: win-reveal-up;
      animation-range: entry 0% cover 28%;
    }
  }
}

/* Barrierefreiheit: keine Animation bei reduzierter Bewegung. */
@media (prefers-reduced-motion: reduce) {
  #main .win-scroll-animation,
  #main .win-scroll-animation *,
  #win-leistungen.win-scroll-animation,
  #win-leistungen.win-scroll-animation * {
    animation: none !important;
    opacity: 1 !important;
    transform: none;
  }
}

/* =============================================================
   WIN GRUPPE - KENNZAHLEN / JAVASCRIPT-VERSION / FIREFOX
   Entfernt die bisherigen CSS-Counter und Scroll-Animationen.
   Die Zahlen werden ausschliesslich als echter Text dargestellt.
   Unterstuetzt die alte und die neue HTML-Struktur.
   ============================================================= */
#win-kennzahlen-neu,
#win-kennzahlen-neu *,
#win-kennzahlen-css,
#win-kennzahlen-css * {
  box-sizing: border-box;
}
#win-kennzahlen-neu,
#win-kennzahlen-css {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 78px 24px;
  background: #000;
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
}
#win-kennzahlen-neu .win-zahlen-grid,
#win-kennzahlen-css .win-stats-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  max-width: 1260px;
  margin: 0 auto;
}
#win-kennzahlen-neu .win-zahlen-item,
#win-kennzahlen-css .win-stat {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-width: 0;
  min-height: 155px;
  padding: 18px 24px;
  border-right: 1px solid #343434;
}
#win-kennzahlen-neu .win-zahlen-item:last-child,
#win-kennzahlen-css .win-stat:last-child {
  border-right: 0;
}
#win-kennzahlen-neu .win-zahlen-wert,
#win-kennzahlen-css .win-stat-number {
  display: block;
  color: #fff;
  font-size: clamp(46px, 6vw, 82px);
  font-weight: 900;
  letter-spacing: -0.045em;
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  margin: 0 0 13px;
  animation: none !important;
  transition: none !important;
}
/* Kein ::before/::after mit CSS-Zahlen mehr: verhindert 19930, 150+0+, 100. */
#win-kennzahlen-neu .win-zahlen-wert::before,
#win-kennzahlen-neu .win-zahlen-wert::after,
#win-kennzahlen-css .win-stat-number::before,
#win-kennzahlen-css .win-stat-number::after {
  content: none !important;
  display: none !important;
  animation: none !important;
}
#win-kennzahlen-neu .win-zahlen-label,
#win-kennzahlen-css .win-stat-label {
  margin: 0;
  padding: 0;
  color: #FFD500;
  font-size: clamp(13px, 1.3vw, 18px);
  font-weight: 800;
  line-height: 1.4;
  text-transform: uppercase;
}
@media (max-width: 650px) {
  #win-kennzahlen-neu,
  #win-kennzahlen-css {
    padding: 40px 20px;
  }
  #win-kennzahlen-neu .win-zahlen-grid,
  #win-kennzahlen-css .win-stats-grid {
    grid-template-columns: 1fr;
  }
  #win-kennzahlen-neu .win-zahlen-item,
  #win-kennzahlen-css .win-stat {
    min-height: 130px;
    padding: 25px 12px;
    border-right: 0;
    border-bottom: 1px solid #343434;
  }
  #win-kennzahlen-neu .win-zahlen-item:last-child,
  #win-kennzahlen-css .win-stat:last-child {
    border-bottom: 0;
  }
  #win-kennzahlen-neu .win-zahlen-wert,
  #win-kennzahlen-css .win-stat-number {
    font-size: 60px;
  }
  #win-kennzahlen-neu .win-zahlen-label,
  #win-kennzahlen-css .win-stat-label {
    font-size: 15px;
  }
}

/* ============================================================
   WIN GRUPPE - LEISTUNGEN - SCROLLANIMATION DESKTOP + MOBIL
   Contao 5.7.13 / Firefox / Chrome / Edge / Safari
   Muss am ENDE der gesamten CSS-Datei stehen.
   ============================================================ */
#win-leistungen-light .win-header,
#win-leistungen-light .win-main,
#win-leistungen-light .win-section-heading,
#win-leistungen-light .win-card {
  animation: none !important;
  animation-timeline: auto !important;
  translate: none !important;
}
@media (prefers-reduced-motion: no-preference) {
  #win-leistungen-light.win-js-scroll-active .win-header,
  #win-leistungen-light.win-js-scroll-active .win-main,
  #win-leistungen-light.win-js-scroll-active .win-section-heading,
  #win-leistungen-light.win-js-scroll-active .win-card {
    transition: opacity 850ms ease var(--win-delay, 0ms),
      transform 850ms cubic-bezier(.22,1,.36,1) var(--win-delay, 0ms),
      box-shadow 350ms ease,
      border-color 350ms ease !important;
  }
  #win-leistungen-light.win-js-scroll-active .win-header:not(.win-js-visible),
  #win-leistungen-light.win-js-scroll-active .win-main:not(.win-js-visible),
  #win-leistungen-light.win-js-scroll-active .win-section-heading:not(.win-js-visible),
  #win-leistungen-light.win-js-scroll-active .win-card:not(.win-js-visible) {
    opacity: 0 !important;
    transform: translate3d(0,45px,0) !important;
  }
  #win-leistungen-light.win-js-scroll-active .win-header.win-js-visible,
  #win-leistungen-light.win-js-scroll-active .win-main.win-js-visible,
  #win-leistungen-light.win-js-scroll-active .win-section-heading.win-js-visible,
  #win-leistungen-light.win-js-scroll-active .win-card.win-js-visible {
    opacity: 1 !important;
    transform: translate3d(0,0,0) !important;
  }
  #win-leistungen-light.win-js-scroll-active .win-card.win-js-visible:hover {
    transform: translate3d(0,-8px,0) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  #win-leistungen-light .win-header,
  #win-leistungen-light .win-main,
  #win-leistungen-light .win-section-heading,
  #win-leistungen-light .win-card {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
  }
}

/* ============================================================
   WIN GRUPPE - BUTTON / ANKER-SCROLL FIX
   Contao 5.7.13 - Firefox / Desktop / Mobil
   ============================================================ */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}
#win-leistungen-light {
  scroll-margin-top: 100px;
}
/* Links zu diesem Abschnitt bleiben anklickbar. */
a[href="#win-leistungen-light"] {
  position: relative;
  z-index: 5;
  pointer-events: auto;
  cursor: pointer;
}
a[href="#win-leistungen-light"]:focus-visible {
  outline: 3px solid #FFD500;
  outline-offset: 4px;
}
@media (max-width: 600px) {
  html { scroll-padding-top: 75px; }
  #win-leistungen-light { scroll-margin-top: 75px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* =============================================================
   WIN GRUPPE | NEWS REDESIGN (Contao)
   Nur News-Module; bestehende Artikelklasse .bg-schwarz bleibt.
   ============================================================= */

/* News-Gesamtansicht: responsives Kartenraster */
#main #newsliste_global {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 34px;
  align-items: stretch;
  justify-content: initial;
  width: 100%;
  max-width: 1260px;
  margin: 0 auto;
}
#main #newsliste_global .layout_latest {
  width: auto;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0 0 28px;
  overflow: hidden;
  background: #ffffff;
  color: #242424;
  border: 1px solid #e5e5e5;
  border-radius: 16px;
  box-shadow: 0 10px 28px rgba(0,0,0,.18);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
#main #newsliste_global .layout_latest:hover {
  transform: translateY(-6px);
  border-color: #ffd500;
  box-shadow: 0 18px 38px rgba(0,0,0,.32);
}
#main #newsliste_global .layout_latest .image_container {
  width: 100%;
  height: 230px;
  margin: 0 0 24px;
  overflow: hidden;
  background: #f2f2f2;
}
#main #newsliste_global .layout_latest .image_container img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  transition: transform .35s ease;
}
#main #newsliste_global .layout_latest:hover .image_container img {
  transform: scale(1.045);
}
#main #newsliste_global .layout_latest h3 {
  width: auto;
  height: auto;
  min-height: 0;
  margin: 0 24px 14px;
  font-family: 'Roboto-Black', Arial, sans-serif;
  font-size: clamp(21px, 2vw, 26px);
  line-height: 1.25;
  overflow-wrap: anywhere;
}
#main #newsliste_global .layout_latest h3 a {
  color: #161616;
  text-decoration: none;
}
#main #newsliste_global .layout_latest h3 a:hover,
#main #newsliste_global .layout_latest h3 a:focus-visible {
  color: #ffd500;
}
#main #newsliste_global .layout_latest p,
#main #newsliste_global .layout_latest .ce_text {
  color: #454545;
  line-height: 1.65;
}
#main #newsliste_global .layout_latest > p,
#main #newsliste_global .layout_latest > .ce_text,
#main #newsliste_global .layout_latest > time {
  margin-left: 24px;
  margin-right: 24px;
}
#main #newsliste_global .layout_latest time {
  color: #575757;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
}
#main #newsliste_global .layout_latest .more {
  margin: 20px 24px 0;
}
#main #newsliste_global .layout_latest .more a {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: 'Roboto-Black', Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #171717;
  text-decoration: none;
}
#main #newsliste_global .layout_latest .more a:hover,
#main #newsliste_global .layout_latest .more a:focus-visible {
  color: #9a7200;
}

/* Slider-News auf der Startseite: gleiche Designsprache,
   ohne die bestehende Slider-Breite/-Funktion zu verändern. */
.e3 .sly_news .layout_latest,
.e3 .sly_news .slyboxinner {
  color: #242424;
}
.e3 .sly_news .slyboxinner {
  background: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 16px;
  overflow: hidden;
  box-sizing: border-box;
  transition: border-color .25s ease, box-shadow .25s ease;
}
.e3 .sly_news .slyboxinner:hover {
  border-color: #ffd500;
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}
.e3 .sly_news .slyboxinner h3 {
  padding: 0 20px;
  font-size: 23px;
  line-height: 1.3;
}
.e3 .sly_news .slyboxinner h3 a { color: #171717; }
.e3 .sly_news .slyboxinner h3 a:hover { color: #997200; }
.e3 .sly_news .slyboxinner .more { margin: 0 20px 22px; }
.e3 .sly_news .slyboxinner .more a { color: #171717; font-weight: 700; }

@media (max-width: 1050px) {
  #main #newsliste_global {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}
@media (max-width: 650px) {
  #main #newsliste_global {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    padding: 0 12px;
    box-sizing: border-box;
  }
  #main #newsliste_global .layout_latest .image_container { height: 220px; }
  #main #newsliste_global .layout_latest h3 { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  #main #newsliste_global .layout_latest,
  #main #newsliste_global .layout_latest img,
  .e3 .sly_news .slyboxinner { transition: none; }
  #main #newsliste_global .layout_latest:hover,
  #main #newsliste_global .layout_latest:hover img { transform: none; }
}

/* NEWS: weisser Bereich statt grauem Hintergrund.
   Begrenzt auf Bereiche, die den News-Slider enthalten. */
.e3:has(.sly_news),
.e3 .sly_news,
.e3 .sly_news .slybox,
.e3 .sly_news .slyboxinner {
  background-color: #fff;
}
.e3 .sly_news .slyboxinner,
.e3 .sly_news .slyboxinner p,
.e3 .sly_news .slyboxinner time,
.e3 .sly_news .slyboxinner .more,
.e3 .sly_news .slyboxinner .more a,
.e3 .sly_news .slyboxinner h3,
.e3 .sly_news .slyboxinner h3 a {
  color: #171717;
}
.e3 .sly_news .slyboxinner .more a:hover,
.e3 .sly_news .slyboxinner h3 a:hover { color: #997200; }

/* Die News-Uebersicht erhaelt ebenfalls eine helle Flaeche.
   .bg-schwarz selbst bleibt unberuehrt. */
#main #newsliste_global { background: #fff; }
#main #newsliste_global .layout_latest .more a { color: #171717; }
#main #newsliste_global .layout_latest .more a:hover { color: #997200; }

/* =============================================================
   NEWS FEINSCHLIFF: Abstand, Titel, Slider-Leiste und Zurueck-Link
   ============================================================= */
/* Der News-Slider beginnt etwas tiefer; Titel steht davor. */
.e3:has(.sly_news) > .inner {
  padding-top: 145px;
}
.e3:has(.sly_news) > .inner::before {
  content: "News";
  display: block;
  width: 100%;
  margin: 0 0 54px;
  color: #242424;
  font-family: 'Roboto-Black', Arial, sans-serif;
  font-size: clamp(38px, 5vw, 62px);
  font-weight: 800;
  line-height: 1.1;
}
/* Karten und Scroll-Leiste ruecken naeher zusammen. */
.e3:has(.sly_news) .sly_news li {
  margin-bottom: 30px;
}
.e3:has(.sly_news) .scrollbarwrapper {
  margin-top: 18px;
  margin-bottom: 58px;
  gap: 24px;
  line-height: normal;
}
.e3:has(.sly_news) .scrollbarwrapper .scrollbar {
  height: 12px;
  margin: 0;
  border-radius: 999px;
  background: #e7e7e7;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.09);
  overflow: hidden;
}
.e3:has(.sly_news) .scrollbarwrapper .scrollbar .handle {
  min-width: 36px;
  height: 100%;
  border-radius: 999px;
  background: #ffd500;
  box-shadow: 0 1px 4px rgba(0,0,0,.16);
  cursor: grab;
}
.e3:has(.sly_news) .scrollbarwrapper .scrollbar .handle:active {
  cursor: grabbing;
  background: #e8bd00;
}
/* Button zur Artikeluebersicht: kompakter und klarer. */
#main .back a {
  margin-top: 35px;
  padding: 17px 52px 17px 25px;
  border: 2px solid #ffd500;
  border-radius: 9px;
  background: #242424;
  color: #fff;
  font-family: 'Roboto-Black', Arial, sans-serif;
  font-size: 17px;
  line-height: 1.4;
  text-decoration: none;
  transition: background .2s ease, color .2s ease;
}
#main .back a:hover,
#main .back a:focus-visible {
  background: #ffd500;
  color: #242424;
}
#main .back a::after {
  margin-top: 2px;
  margin-left: 12px;
}
@media (max-width: 768px) {
  .e3:has(.sly_news) > .inner { padding-top: 100px; }
  .e3:has(.sly_news) > .inner::before { margin-bottom: 36px; }
  .e3:has(.sly_news) .scrollbarwrapper { margin-top: 10px; margin-bottom: 42px; }
  .e3:has(.sly_news) .scrollbarwrapper .scrollbar { width: 100%; }
  #main .back a { font-size: 15px; padding: 15px 48px 15px 20px; }
}


/* ============================================================
   NEWS SLIDER 2026: zentrierte Headline und Navigation
   ============================================================ */
.e3:has(.sly_news) > .inner::before {
  content: "NEWS";
  width: fit-content;
  max-width: 100%;
  margin: 0 auto 64px;
  padding: 0 12px 20px;
  text-align: center;
  font-family: 'Roboto-Black', Arial, sans-serif;
  font-size: clamp(42px, 6vw, 76px);
  font-weight: 900;
  letter-spacing: .11em;
  line-height: 1.1;
  color: #191919;
  border-bottom: 5px solid #ffd500;
}
.e3:has(.sly_news) .sly_news { cursor: grab; }
.e3:has(.sly_news) .sly_news.news-is-dragging,
.e3:has(.sly_news) .sly_news.news-is-dragging * {
  cursor: grabbing !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}
.e3:has(.sly_news) .news-slider-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: -10px auto 14px;
}
.e3:has(.sly_news) .news-slider-arrow {
  width: 52px;
  height: 52px;
  display: inline-grid;
  place-items: center;
  border: 2px solid #ffd500;
  border-radius: 50%;
  background: #fff;
  color: #171717;
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
  font-size: 30px;
  font-family: Arial, sans-serif;
  line-height: 1;
  cursor: pointer;
  transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.e3:has(.sly_news) .news-slider-arrow:hover,
.e3:has(.sly_news) .news-slider-arrow:focus-visible {
  background: #ffd500;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,.13);
}
.e3:has(.sly_news) .news-slider-arrow:disabled {
  opacity: .35;
  cursor: not-allowed;
  transform: none;
}
.e3:has(.sly_news) .scrollbarwrapper { margin-top: 8px; }
@media (max-width: 768px) {
  .e3:has(.sly_news) > .inner::before {
    margin-bottom: 34px;
    font-size: clamp(34px, 9vw, 52px);
    border-bottom-width: 4px;
  }
  .e3:has(.sly_news) .news-slider-arrow { width: 44px; height: 44px; font-size: 25px; }
}
@media (prefers-reduced-motion: reduce) {
  .e3:has(.sly_news) .news-slider-arrow { transition: none; }
}


/* ============================================================
   NEWS FINAL: scrollbar ausblenden, Navigation, Back-Button
   ============================================================ */
.e3:has(.sly_news) .scrollbarwrapper,
.e3:has(.sly_news) .scrollbar,
.e3:has(.sly_news) .scrollbar .handle { display: none !important; }
.e3:has(.sly_news) .news-slider-nav {
  display: flex !important; justify-content: space-between;
  align-items: center; width: min(100%, 1560px);
  margin: 20px auto 22px; padding: 0 8px;
  box-sizing: border-box; position: relative; z-index: 5;
}
.e3:has(.sly_news) .news-slider-arrow { flex: 0 0 auto; }
#main .back, #main p.back, #main .mod_newsreader .back {
  text-align: center !important;
  float: none !important;
  width: 100%;
  clear: both;
}
#main .back a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin: 24px auto 45px !important;
  float: none !important;
}
@media (max-width: 768px) {
  .e3:has(.sly_news) .news-slider-nav { margin: 12px auto 16px; padding: 0 12px; }
  #main .back a { margin-top: 16px !important; }
}

/* ============================================================
   WIN NEWS KARUSSELL – 3 / 2 / 1 KARTEN, SEITLICHE PFEILE
   ============================================================ */
.e3:has(.sly_news) .win-news-stage {
  position: relative; width: 100%; max-width: 1360px;
  margin: 0 auto; padding: 0 62px; box-sizing: border-box;
}
.e3:has(.sly_news) .win-news-stage .sly_news {
  width: 100% !important; overflow: hidden !important;
  position: relative; touch-action: pan-y; cursor: grab;
}
.e3:has(.sly_news) .win-news-stage .sly_news ul {
  display: flex; flex-wrap: nowrap; align-items: stretch;
  margin: 0; padding: 0; list-style: none;
}
.e3:has(.sly_news) .win-news-stage .sly_news li {
  flex: 0 0 calc((100% - 48px) / 3);
  width: calc((100% - 48px) / 3) !important;
  float: none; padding: 0; margin: 0 24px 22px 0;
  box-sizing: border-box;
}
.e3:has(.sly_news) .win-news-stage .sly_news li:last-child { margin-right: 0; }
.e3:has(.sly_news) .win-news-stage .sly_news .layout_latest { margin-right: 0; }
.e3:has(.sly_news) .win-news-stage .news-slider-nav {
  position: absolute; inset: 0; pointer-events: none;
  display: flex !important; justify-content: space-between;
  align-items: center; width: 100%; margin: 0 !important;
  padding: 0 !important; z-index: 10;
}
.e3:has(.sly_news) .win-news-stage .news-slider-arrow {
  pointer-events: auto; width: 48px; height: 48px;
  background: #222; color: #fff; border: 2px solid #ffd500;
  border-radius: 10px; font-size: 29px;
}
.e3:has(.sly_news) .win-news-stage .news-slider-arrow:hover,
.e3:has(.sly_news) .win-news-stage .news-slider-arrow:focus-visible {
  background: #ffd500; color: #171717;
}
.e3:has(.sly_news) .scrollbarwrapper { display: none !important; }
.e3:has(.sly_news) .back, .e3:has(.sly_news) p.back {
  width: 100%; text-align: center !important; float: none !important;
}
.e3:has(.sly_news) .back a {
  display: inline-flex !important; margin: 22px auto 54px !important;
  background: #242424; color: #fff; border: 2px solid #ffd500;
  border-radius: 8px; font-size: 17px; padding: 18px 56px 18px 28px;
}
.e3:has(.sly_news) .back a:hover { background: #ffd500; color: #171717; }
@media (max-width: 1000px) {
  .e3:has(.sly_news) .win-news-stage .sly_news li {
    flex-basis: calc((100% - 24px) / 2);
    width: calc((100% - 24px) / 2) !important;
  }
}
@media (max-width: 620px) {
  .e3:has(.sly_news) .win-news-stage { padding: 0 44px; }
  .e3:has(.sly_news) .win-news-stage .sly_news li {
    flex-basis: 100%; width: 100% !important; margin-right: 16px;
  }
  .e3:has(.sly_news) .win-news-stage .news-slider-arrow {
    width: 36px; height: 44px; font-size: 23px;
  }
}

/* ============================================================
   WIN GRUPPE – BUTTON "ZUR ARTIKELÜBERSICHT" (WIEDERHERGESTELLT)
   Ergänzung zur aktuellen CSS; alle anderen Regeln bleiben erhalten.
   ============================================================ */
.e3:has(.sly_news) .back,
.e3:has(.sly_news) p.back,
#main .mod_newsreader .back {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  clear: both;
  float: none !important;
}
.e3:has(.sly_news) .back a,
#main .mod_newsreader .back a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin: 24px auto 48px !important;
  padding: 17px 52px 17px 25px;
  border: 2px solid #ffd500;
  border-radius: 9px;
  background: #242424;
  color: #fff;
  font-family: 'Roboto-Black', Arial, sans-serif;
  font-size: 17px;
  line-height: 1.4;
  text-decoration: none;
  transition: background .2s ease, color .2s ease;
}
.e3:has(.sly_news) .back a:hover,
.e3:has(.sly_news) .back a:focus-visible,
#main .mod_newsreader .back a:hover,
#main .mod_newsreader .back a:focus-visible {
  background: #ffd500;
  color: #242424;
}
@media (max-width: 768px) {
  .e3:has(.sly_news) .back a,
  #main .mod_newsreader .back a {
    font-size: 15px;
    padding: 15px 48px 15px 20px;
  }
}

/* ==========================================
   NEWS – ARTIKELÜBERSICHT WIEDER ANZEIGEN
   ========================================== */

/* Bereich für den Button sichtbar lassen */
.e3 .scrollbarwrapper {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin: 35px auto 70px !important;
  padding: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Nur den alten gelben Schiebebalken entfernen */
.e3 .scrollbarwrapper .scrollbar {
  display: none !important;
}

/* Link-Container mittig platzieren */
.e3 .scrollbarwrapper .scrollbarlink {
  display: block !important;
  width: auto !important;
  margin: 0 auto !important;
  text-align: center !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Button im ursprünglichen WIN-Stil */
.e3 .scrollbarwrapper .scrollbarlink a,
.e3 .scrollbarwrapper .scrollbarlink .more {
  display: inline-block !important;
  position: relative;
  width: auto !important;
  margin: 0 !important;
  padding: 20px 58px 20px 30px !important;

  background-color: #3c3c3b !important;
  border: 2px solid #ffd500 !important;
  color: #ffffff !important;

  font-family: 'Roboto', sans-serif;
  font-size: 20px;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Gelber Pfeil */
.e3 .scrollbarwrapper .scrollbarlink a::after,
.e3 .scrollbarwrapper .scrollbarlink .more::after {
  content: "\2192" !important;
  position: absolute !important;
  right: 23px !important;
  top: 50% !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
  background: none !important;
  width: auto !important;
  height: auto !important;
  color: #ffd500 !important;
  font-size: 25px;
}

/* Hover */
.e3 .scrollbarwrapper .scrollbarlink a:hover,
.e3 .scrollbarwrapper .scrollbarlink .more:hover {
  background-color: #ffd500 !important;
  color: #3c3c3b !important;
}

.e3 .scrollbarwrapper .scrollbarlink a:hover::after,
.e3 .scrollbarwrapper .scrollbarlink .more:hover::after {
  color: #3c3c3b !important;
}


/* ==========================================================
   NEWS: Pfeile entfernen, Scrollstreifen wieder einblenden
   ========================================================== */
.e3 .news-slider-nav,
.e3 .news-slider-arrow,
.e3 .win-news-stage .news-slider-nav,
.e3 .win-news-stage .news-slider-arrow {
  display: none !important;
}

/* Die durch die vorherige Pfeil-Version gesetzten Seitenabstaende entfernen */
.e3:has(.sly_news) .win-news-stage {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Bestehende Sly-Scrollleiste samt Griff wieder sichtbar machen */
.e3:has(.sly_news) .scrollbarwrapper,
.e3 .scrollbarwrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 24px !important;
  width: 100% !important;
  margin: 28px auto 50px !important;
  line-height: normal !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.e3:has(.sly_news) .scrollbarwrapper .scrollbar,
.e3 .scrollbarwrapper .scrollbar {
  display: block !important;
  position: relative !important;
  flex: 0 1 760px !important;
  width: min(100%, 760px) !important;
  max-width: 100% !important;
  height: 12px !important;
  margin: 0 auto !important;
  overflow: hidden !important;
  border-radius: 99px !important;
  background: #e2e2e2 !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.e3 .scrollbarwrapper .scrollbar .handle {
  display: block !important;
  height: 100% !important;
  min-width: 36px;
  border-radius: 99px !important;
  background: #ffd500 !important;
  cursor: grab !important;
}
.e3 .scrollbarwrapper .scrollbar .handle:active { cursor: grabbing !important; }

/* Artikeluebersicht bleibt sichtbar und mittig */
.e3 .scrollbarwrapper .scrollbarlink {
  display: block !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  text-align: center !important;
  margin: 0 auto !important;
}
@media (max-width: 620px) {
  .e3:has(.sly_news) .scrollbarwrapper .scrollbar,
  .e3 .scrollbarwrapper .scrollbar { width: 100% !important; }
}

/* ==========================================================
   WIN GRUPPE – ARTIKELUEBERSICHT: HELLER PREMIUM-BUTTON
   Nur die Button-Gestaltung, Slider und Rest bleiben gleich.
   ========================================================== */
.e3 .scrollbarwrapper .scrollbarlink {
  display: flex !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 10px auto 0 !important;
  text-align: center !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.e3 .scrollbarwrapper .scrollbarlink a,
.e3 .scrollbarwrapper .scrollbarlink .more {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  width: auto !important;
  min-height: 60px !important;
  margin: 0 !important;
  padding: 15px 76px 15px 28px !important;
  background: #ffffff !important;
  color: #333333 !important;
  border: 1px solid #e3e3e3 !important;
  border-radius: 8px !important;
  font-family: 'Roboto', sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: .2px !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: 0 5px 22px rgba(0,0,0,.07) !important;
  visibility: visible !important;
  opacity: 1 !important;
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease !important;
}
.e3 .scrollbarwrapper .scrollbarlink a::after,
.e3 .scrollbarwrapper .scrollbarlink .more::after {
  content: '\2197' !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: absolute !important;
  top: 50% !important;
  right: 16px !important;
  bottom: auto !important;
  left: auto !important;
  width: 36px !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #ffd500 !important;
  color: #292929 !important;
  border: 0 !important;
  border-radius: 50% !important;
  font-size: 21px !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
  transition: transform .25s ease !important;
}
.e3 .scrollbarwrapper .scrollbarlink a:hover,
.e3 .scrollbarwrapper .scrollbarlink .more:hover {
  background: #ffffff !important;
  color: #333333 !important;
  border-color: #ffd500 !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.11) !important;
}
.e3 .scrollbarwrapper .scrollbarlink a:hover::after,
.e3 .scrollbarwrapper .scrollbarlink .more:hover::after {
  color: #292929 !important;
  transform: translate(3px,-50%) !important;
}
.e3 .scrollbarwrapper .scrollbarlink a:focus-visible {
  outline: 3px solid #ffd500 !important;
  outline-offset: 4px !important;
}
@media (max-width: 767px) {
  .e3 .scrollbarwrapper .scrollbarlink a,
  .e3 .scrollbarwrapper .scrollbarlink .more {
    min-height: 54px !important;
    padding: 12px 65px 12px 20px !important;
    font-size: 14px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .e3 .scrollbarwrapper .scrollbarlink a,
  .e3 .scrollbarwrapper .scrollbarlink .more,
  .e3 .scrollbarwrapper .scrollbarlink a::after,
  .e3 .scrollbarwrapper .scrollbarlink .more::after {
    transition: none !important;
  }
}


/* ==============================================================
   WIN Service Gruppe - NEUER SCHWARZER HEADER | 02.11.2026
   Gilt fuer das zugehoerige neue Contao-Header-HTML.
   Alle bisherigen Regeln fuer die restliche Webseite bleiben erhalten.
   =============================================================== */

/* Farbwelt: Schwarz / Weiss / WIN Gelb */
header {
  --win-black: #080808;
  --win-dark: #171717;
  --win-yellow: #ffd500;
  --win-white: #f8f8f8;
}

/* Alten separaten Kontaktbalken ersetzen: Telefon ist jetzt rechts */
header #header_top { display: none !important; }

/* Eine durchgehende, kompakte schwarze Desktop-Leiste */
header #header_bottom.win-header-desktop {
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 0;
  background: var(--win-black);
  border-bottom: 2px solid #242424;
  box-shadow: 0 5px 18px rgba(0,0,0,.12);
}
header #header_bottom .win-header-inner {
  box-sizing: border-box;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: clamp(12px,2vw,34px);
  min-height: 92px;
  max-width: 1580px;
  padding: 12px 0;
}

/* Logo und Schriftzug links */
header #header_bottom .win-header-brand {
  width: auto;
  flex: 0 0 auto;
}
header #header_bottom .win-header-brand > a {
  display: flex;
  align-items: center;
  gap: 12px;
}
header #header_bottom .win-header-brand img {
  position: static;
  display: block;
  width: 68px;
  height: 68px;
  margin: 0;
  object-fit: contain;
}
header #header_bottom .win-brand-wordmark {
  display: flex;
  flex-direction: column;
  gap: 3px;
  line-height: 1.08;
  color: var(--win-white);
}
header #header_bottom .win-brand-wordmark strong {
  font-family: 'Roboto-Black','Roboto',Arial,sans-serif;
  font-weight: 900;
  font-size: 27px;
  letter-spacing: .02em;
}
header #header_bottom .win-brand-wordmark > span {
  color: var(--win-yellow);
  font-family: 'Roboto',Arial,sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .11em;
}

/* Rechts: Menueleiste und Kontakt */
header #header_bottom .win-header-main {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(12px,1.6vw,30px);
  min-width: 0;
  width: auto;
}
header #header_bottom .win-main-nav {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: clamp(4px,.7vw,12px);
  min-width: 0;
}
header #header_bottom .win-main-nav nav {
  width: auto;
  flex: 0 0 auto;
  margin: 0;
  padding: 0;
}
header #header_bottom .win-main-nav nav > ul {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: clamp(4px,.75vw,14px);
  margin: 0;
  padding: 0;
  list-style: none;
}
header #header_bottom .win-main-nav nav > ul > li {
  /* Kein display setzen: die bisherigen Contao nth-child-Regeln
     muessen weiterhin nicht benoetigte Menuepunkte ausblenden. */
  width: auto;
  position: relative;
  margin: 0;
  padding: 0;
  border: 0;
  line-height: 1.2;
}
header #header_bottom .win-main-nav nav > ul > li > a,
header #header_bottom .win-main-nav nav > ul > li > strong {
  display: inline-block;
  box-sizing: border-box;
  margin: 0;
  padding: 12px 4px;
  color: var(--win-white);
  font-family: 'Roboto',Arial,sans-serif;
  font-size: clamp(12px,.85vw,15px);
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .025em;
  line-height: 1.3;
  white-space: nowrap;
}
header #header_bottom .win-main-nav nav > ul > li > a:hover,
header #header_bottom .win-main-nav nav > ul > li > a:focus-visible,
header #header_bottom .win-main-nav nav > ul > li > strong.active {
  color: var(--win-yellow);
}

/* Pfeile an Menuepunkten mit Untermenue */
header #header_bottom .win-main-nav nav > ul > li.submenu > a,
header #header_bottom .win-main-nav nav > ul > li.submenu > strong {
  padding-right: 19px;
}
header #header_bottom .win-main-nav nav > ul > li.submenu::after {
  content: '';
  position: absolute;
  display: block;
  top: 50%;
  right: 4px;
  width: 6px;
  height: 6px;
  margin: -5px 0 0;
  border: 0;
  border-right: 2px solid #bcbcbc;
  border-bottom: 2px solid #bcbcbc;
  background: none;
  background-image: none;
  background-size: auto;
  transform: rotate(45deg);
  pointer-events: none;
}
header #header_bottom .win-main-nav nav > ul > li.submenu:hover::after,
header #header_bottom .win-main-nav nav > ul > li.submenu:focus-within::after {
  border-color: var(--win-yellow);
  transform: rotate(225deg);
  margin-top: -1px;
}

/* Moderne Dropdowns - Maus und Tastatur */
header #header_bottom .win-main-nav nav > ul > li > ul {
  display: none;
  position: absolute;
  z-index: 1001;
  top: 100%; /* Kein Hover-Abstand zum Hauptmenue */
  left: -14px;
  margin: 0;
  padding: 9px 0;
  width: max-content;
  min-width: 205px;
  max-width: min(360px,90vw);
  background: var(--win-dark);
  border: 1px solid #353535;
  border-radius: 7px;
  box-shadow: 0 15px 30px rgba(0,0,0,.3);
}
header #header_bottom .win-main-nav nav > ul > li:hover > ul,
header #header_bottom .win-main-nav nav > ul > li:focus-within > ul {
  display: block !important;
}
header #header_bottom .win-main-nav nav > ul > li > ul > li {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
}
header #header_bottom .win-main-nav nav > ul > li > ul > li > a,
header #header_bottom .win-main-nav nav > ul > li > ul > li > strong {
  display: block;
  margin: 0;
  padding: 10px 15px;
  color: #f5f5f5;
  font: 400 14px/1.3 'Roboto',Arial,sans-serif;
  text-transform: none;
  white-space: normal;
}
header #header_bottom .win-main-nav nav > ul > li > ul > li > a:hover,
header #header_bottom .win-main-nav nav > ul > li > ul > li > a:focus-visible {
  color: var(--win-yellow);
  background: #2a2a2a;
}
header #header_bottom .win-main-nav nav > ul > li > ul > li.submenu::after {
  display: none;
}

/* Telefon und gelber Kontaktbutton */
header #header_bottom .win-header-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 15px;
}
header #header_bottom .win-header-actions .win-phone {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #ffffff;
  font: 700 14px/1.2 'Roboto',Arial,sans-serif;
  white-space: nowrap;
  text-decoration: none;
}
/* Externe SVG-Datei als IMG: kein Inline-SVG im Contao-HTML. */
header #header_bottom .win-header-actions .win-phone img.win-phone-icon {
  display: block;
  flex: 0 0 19px;
  position: static;
  width: 19px;
  height: 19px;
  max-width: 19px;
  margin: 0;
  padding: 0;
  object-fit: contain;
  vertical-align: middle;
}
header #header_bottom .win-header-actions .win-phone:hover { color: var(--win-yellow); }
header #header_bottom .win-header-actions .win-contact-btn {
  display: inline-block;
  background: var(--win-yellow);
  color: #111;
  border-radius: 6px;
  padding: 14px 21px;
  font: 900 13px/1 'Roboto-Black','Roboto',Arial,sans-serif;
  letter-spacing: .03em;
  white-space: nowrap;
  transition: background-color .2s ease,transform .2s ease;
}
header #header_bottom .win-header-actions .win-contact-btn:hover,
header #header_bottom .win-header-actions .win-contact-btn:focus-visible {
  background: #ffe568;
  color: #111;
  transform: translateY(-1px);
}
header #header_bottom .win-header-actions a:focus-visible,
header #header_bottom .win-main-nav a:focus-visible {
  outline: 2px solid var(--win-yellow);
  outline-offset: 3px;
}

/* Kein Social-Media-Overlay: im neuen HTML nicht mehr verwendet */
header #socialmedia { display: none; }

/* Etwas kompakter bei geringerer Desktopbreite */
@media screen and (min-width: 1181px) and (max-width: 1460px) {
  header #header_bottom .win-brand-wordmark strong { font-size: 23px; }
  header #header_bottom .win-brand-wordmark > span { font-size: 9px; }
  header #header_bottom .win-header-brand img { width: 56px; height: 56px; }
  header #header_bottom .win-header-inner { gap: 12px; }
  header #header_bottom .win-header-main { gap: 10px; }
  header #header_bottom .win-main-nav,
  header #header_bottom .win-main-nav nav > ul { gap: 4px; }
  header #header_bottom .win-header-actions { gap: 10px; }
  header #header_bottom .win-header-actions .win-contact-btn { padding: 12px 13px; }
  header #header_bottom .win-header-actions .win-phone { font-size: 12px; }
}

/* Original-CSS schaltet bei 1280px um: hier neu auf 1180px festgelegt */
@media screen and (min-width: 1181px) {
  header #header_bottom.win-header-desktop { display: block !important; }
  header #mobile_header.win-header-mobile { display: none !important; }
}
@media screen and (max-width: 1180px) {
  header #header_bottom.win-header-desktop { display: none !important; }
  header #mobile_header.win-header-mobile {
    position: relative;
    display: block !important;
    box-sizing: border-box;
    width: 100%;
    height: 72px;
    background: var(--win-black);
    border-bottom: 2px solid var(--win-yellow);
  }
  header #mobile_header .win-mobile-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    height: 70px;
    gap: 10px;
  }
  header #mobile_header .left { width: auto; min-width: 0; }
  header #mobile_header .left a {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
    color: var(--win-white);
    text-transform: none;
  }
  header #mobile_header .left img {
    position: static;
    display: block;
    width: 46px;
    height: 46px;
    margin: 0;
  }
  header #mobile_header .win-mobile-brand {
    color: #fff;
    font: 900 21px/1 'Roboto-Black','Roboto',Arial,sans-serif;
  }
  header #mobile_header .win-mobile-brand small {
    display: block;
    color: var(--win-yellow);
    font: 500 10px/1.5 'Roboto',Arial,sans-serif;
    text-transform: uppercase;
    letter-spacing: .06em;
  }
  header #mobile_header .right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    width: auto;
    gap: 12px;
    min-width: 105px;
    height: 100%;
  }
  header #mobile_header .right #tel { display: block; margin: 0 60px 0 0; }
  header #mobile_header .right #tel img { width: 28px; height: auto; margin: 0; }
  header #mobile_header .right input[type=checkbox] {
    display: block;
    position: absolute;
    z-index: 1002;
    top: 12px;
    right: 0;
    width: 46px;
    height: 46px;
    margin: 0;
    opacity: 0;
    cursor: pointer;
  }
  header #mobile_header .right label.win-menu-toggle {
    box-sizing: border-box;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    position: absolute;
    top: 12px;
    right: 0;
    width: 46px;
    height: 46px;
    margin: 0;
    padding: 0;
    background: #1b1b1b;
    border: 1px solid #333;
    border-radius: 6px;
  }
  header #mobile_header .right label.win-menu-toggle span {
    width: 22px;
    height: 2px;
    background: var(--win-yellow);
    border-radius: 2px;
  }
  header #mobile_header .right input:checked + label.win-menu-toggle {
    border-color: var(--win-yellow);
  }
  header #mobile_header .right input:focus-visible + label.win-menu-toggle {
    outline: 2px solid var(--win-yellow);
    outline-offset: 2px;
  }
  header #mobile_header .right #mobile_menue {
    position: fixed;
    z-index: 1000;
    top: 72px;
    left: 0;
    width: 100vw;
    box-sizing: border-box;
    max-height: calc(100vh - 72px);
    overflow-y: auto;
    padding: 14px 4%;
    margin: 0;
    display: none;
    background: #171717;
    border-bottom: 2px solid var(--win-yellow);
    box-shadow: 0 15px 25px rgba(0,0,0,.3);
  }
  /* Modul 13 sollte das bestehende nav#mobile_menue ausgeben. */
  header #mobile_header .right input:checked ~ #mobile_menue,
  header #mobile_header .right input:checked ~ nav {
    display: block !important;
  }
  header #mobile_header .right #mobile_menue a:focus-visible {
    color: var(--win-yellow);
    outline: 2px solid var(--win-yellow);
    outline-offset: 2px;
  }
}

/* ==============================================================
   WIN SERVICE GRUPPE - STANDORTE DROPDOWN / KLICKBARKEIT
   Stand: 02.11.2026
   Fuer den schwarzen Header mit .win-header-desktop
   Fix: Hover-Luecke entfernen, Dropdown nach vorne setzen,
   Maus-/Tastaturbedienung erhalten.
   =============================================================== */
@media screen and (min-width: 1181px) {
  /* Untermenues duerfen weder abgeschnitten noch verdeckt werden. */
  header #header_bottom.win-header-desktop {
    position: relative;
    z-index: 1100;
    overflow: visible !important;
  }
  header #header_bottom.win-header-desktop .win-header-inner,
  header #header_bottom.win-header-desktop .win-header-main,
  header #header_bottom.win-header-desktop .win-main-nav,
  header #header_bottom.win-header-desktop .win-main-nav nav,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul {
    overflow: visible !important;
  }

  /* Direkt unter dem Hauptpunkt: keine 2px-Luecke beim Mauswechsel. */
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li {
    position: relative;
  }
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li:hover,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li:focus-within {
    z-index: 1201;
  }
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > ul,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > .level_2 {
    top: 100% !important;
    margin-top: 0 !important;
    z-index: 1202 !important;
    pointer-events: auto !important;
  }

  /* Sichtbar halten, waehrend man vom Hauptpunkt ins Untermenue faehrt. */
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li:hover > ul,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li:focus-within > ul,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li:hover > .level_2,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li:focus-within > .level_2 {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /* Untermenue-Eintraege wie 'WIN Messmittel Korbussen' anklickbar. */
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > ul li a,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > .level_2 li a {
    position: relative;
    z-index: 1;
    display: block;
    pointer-events: auto !important;
    cursor: pointer;
  }
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > ul li a:focus-visible,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > .level_2 li a:focus-visible {
    outline: 2px solid #ffd500;
    outline-offset: -2px;
  }
}

/* ==============================================================
   WIN GRUPPE - STARTSEITE: HEADER VOR SEITENINHALT
   Ergaenzung zum bestehenden Standorte-Dropdown-Fix.
   Bewusst nur Desktop, um mobile Menues nicht zu veraendern.
   =============================================================== */
@media screen and (min-width: 1181px) {
  /* Der z-index des Dropdowns wirkt nur innerhalb seines
     Stacking Contexts: deshalb auch den Header anheben. */
  body header,
  body #header {
    position: relative;
    z-index: 99990 !important;
    overflow: visible !important;
  }

  header #header_bottom.win-header-desktop {
    position: relative;
    z-index: 99991 !important;
    overflow: visible !important;
  }

  header #header_bottom.win-header-desktop .win-header-inner,
  header #header_bottom.win-header-desktop .win-header-main,
  header #header_bottom.win-header-desktop .win-main-nav,
  header #header_bottom.win-header-desktop .win-main-nav nav,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul {
    overflow: visible !important;
  }

  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li:hover,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li:focus-within {
    z-index: 99992 !important;
  }

  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > ul,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > .level_2 {
    z-index: 99993 !important;
    pointer-events: auto !important;
  }

  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > ul a,
  header #header_bottom.win-header-desktop .win-main-nav nav > ul > li > .level_2 a {
    position: relative;
    display: block;
    pointer-events: auto !important;
    cursor: pointer;
  }
}
