@charset "UTF-8";
/* `XHTML, HTML4, HTML5 Reset
----------------------------------------------------------------------------------------------------*/
a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
dialog,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
font,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
hr,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
main,
mark,
menu,
meter,
nav,
object,
ol,
output,
p,
pre,
progress,
q,
rp,
rt,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video,
xmp {
  border: 0;
  margin: 0;
  padding: 0;
  font-size: 100%;
}

html,
body {
  height: 100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
  /*
  Override the default (display: inline) for
  browsers that do not recognize HTML5 tags.

  IE8 (and lower) requires a shiv:
  http://ejohn.org/blog/html5-shiv
*/
  display: block;
}

b,
strong {
  /*
  Makes browsers agree.
  IE + Opera = font-weight: bold.
  Gecko + WebKit = font-weight: bolder.
*/
  font-weight: bold;
}

img {
  color: transparent;
  font-size: 0;
  vertical-align: middle;
  /*
  For IE.
  http://css-tricks.com/ie-fix-bicubic-scaling-for-images
*/
  -ms-interpolation-mode: bicubic;
}

ol,
ul {
  list-style: none;
}

li {
  /*
  For IE6 + IE7:

  "display: list-item" keeps bullets from
  disappearing if hasLayout is triggered.
*/
  display: list-item;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th,
td,
caption {
  font-weight: normal;
  vertical-align: top;
  text-align: left;
}

q {
  quotes: none;
}

q:before,
q:after {
  content: "";
  content: none;
}

sub,
sup,
small {
  font-size: 75%;
}

sub,
sup {
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

svg {
  /*
  For IE9. Without, occasionally draws shapes
  outside the boundaries of <svg> rectangle.
*/
  overflow: hidden;
}

/*
  960 Grid System ~ Core CSS.
  Learn more ~ http://960.gs/

  Licensed under GPL and MIT.
*/
/*
  Forces backgrounds to span full width,
  even if there is horizontal scrolling.
  Increase this if your layout is wider.

  Note: IE6 works fine without this fix.
*/
body {
  min-width: 960px;
}

/* Container
----------------------------------------------------------------------------------------------------*/
.container_16 {
  margin-left: auto;
  margin-right: auto;
  width: 960px;
}

/* Grid >> Global
----------------------------------------------------------------------------------------------------*/
.grid_1,
.grid_2,
.grid_3,
.grid_4,
.grid_5,
.grid_6,
.grid_7,
.grid_8,
.grid_9,
.grid_10,
.grid_11,
.grid_12,
.grid_13,
.grid_14,
.grid_15,
.grid_16 {
  min-height: 1px;
  display: inline;
  float: left;
  margin-left: 10px;
  margin-right: 10px;
}

.push_1, .pull_1,
.push_2, .pull_2,
.push_3, .pull_3,
.push_4, .pull_4,
.push_5, .pull_5,
.push_6, .pull_6,
.push_7, .pull_7,
.push_8, .pull_8,
.push_9, .pull_9,
.push_10, .pull_10,
.push_11, .pull_11,
.push_12, .pull_12,
.push_13, .pull_13,
.push_14, .pull_14,
.push_15, .pull_15,
.push_16, .pull_16 {
  position: relative;
}

/* Grid >> Children (Alpha ~ First, Omega ~ Last)
----------------------------------------------------------------------------------------------------*/
.alpha {
  margin-left: 0;
}

.omega {
  margin-right: 0;
}

/* Grid >> 16 Columns
----------------------------------------------------------------------------------------------------*/
.container_16 .grid_1 {
  width: 40px;
}

.container_16 .grid_2 {
  width: 100px;
}

.container_16 .grid_3 {
  width: 160px;
}

.container_16 .grid_4 {
  width: 220px;
}

.container_16 .grid_5 {
  width: 280px;
}

.container_16 .grid_6 {
  width: 340px;
}

.container_16 .grid_7 {
  width: 400px;
}

.container_16 .grid_8 {
  width: 460px;
}

.container_16 .grid_9 {
  width: 520px;
}

.container_16 .grid_10 {
  width: 580px;
}

.container_16 .grid_11 {
  width: 640px;
}

.container_16 .grid_12 {
  width: 700px;
}

.container_16 .grid_13 {
  width: 760px;
}

.container_16 .grid_14 {
  width: 820px;
}

.container_16 .grid_15 {
  width: 880px;
}

.container_16 .grid_16 {
  width: 940px;
}

/* Prefix Extra Space >> 16 Columns
----------------------------------------------------------------------------------------------------*/
.container_16 .prefix_1 {
  padding-left: 60px;
}

.container_16 .prefix_2 {
  padding-left: 120px;
}

.container_16 .prefix_3 {
  padding-left: 180px;
}

.container_16 .prefix_4 {
  padding-left: 240px;
}

.container_16 .prefix_5 {
  padding-left: 300px;
}

.container_16 .prefix_6 {
  padding-left: 360px;
}

.container_16 .prefix_7 {
  padding-left: 420px;
}

.container_16 .prefix_8 {
  padding-left: 480px;
}

.container_16 .prefix_9 {
  padding-left: 540px;
}

.container_16 .prefix_10 {
  padding-left: 600px;
}

.container_16 .prefix_11 {
  padding-left: 660px;
}

.container_16 .prefix_12 {
  padding-left: 720px;
}

.container_16 .prefix_13 {
  padding-left: 780px;
}

.container_16 .prefix_14 {
  padding-left: 840px;
}

.container_16 .prefix_15 {
  padding-left: 900px;
}

/* Suffix Extra Space >> 16 Columns
----------------------------------------------------------------------------------------------------*/
.container_16 .suffix_1 {
  padding-right: 60px;
}

.container_16 .suffix_2 {
  padding-right: 120px;
}

.container_16 .suffix_3 {
  padding-right: 180px;
}

.container_16 .suffix_4 {
  padding-right: 240px;
}

.container_16 .suffix_5 {
  padding-right: 300px;
}

.container_16 .suffix_6 {
  padding-right: 360px;
}

.container_16 .suffix_7 {
  padding-right: 420px;
}

.container_16 .suffix_8 {
  padding-right: 480px;
}

.container_16 .suffix_9 {
  padding-right: 540px;
}

.container_16 .suffix_10 {
  padding-right: 600px;
}

.container_16 .suffix_11 {
  padding-right: 660px;
}

.container_16 .suffix_12 {
  padding-right: 720px;
}

.container_16 .suffix_13 {
  padding-right: 780px;
}

.container_16 .suffix_14 {
  padding-right: 840px;
}

.container_16 .suffix_15 {
  padding-right: 900px;
}

/* Push Space >> 16 Columns
----------------------------------------------------------------------------------------------------*/
.container_16 .push_1 {
  left: 60px;
}

.container_16 .push_2 {
  left: 120px;
}

.container_16 .push_3 {
  left: 180px;
}

.container_16 .push_4 {
  left: 240px;
}

.container_16 .push_5 {
  left: 300px;
}

.container_16 .push_6 {
  left: 360px;
}

.container_16 .push_7 {
  left: 420px;
}

.container_16 .push_8 {
  left: 480px;
}

.container_16 .push_9 {
  left: 540px;
}

.container_16 .push_10 {
  left: 600px;
}

.container_16 .push_11 {
  left: 660px;
}

.container_16 .push_12 {
  left: 720px;
}

.container_16 .push_13 {
  left: 780px;
}

.container_16 .push_14 {
  left: 840px;
}

.container_16 .push_15 {
  left: 900px;
}

/* Pull Space >> 16 Columns
----------------------------------------------------------------------------------------------------*/
.container_16 .pull_1 {
  left: -60px;
}

.container_16 .pull_2 {
  left: -120px;
}

.container_16 .pull_3 {
  left: -180px;
}

.container_16 .pull_4 {
  left: -240px;
}

.container_16 .pull_5 {
  left: -300px;
}

.container_16 .pull_6 {
  left: -360px;
}

.container_16 .pull_7 {
  left: -420px;
}

.container_16 .pull_8 {
  left: -480px;
}

.container_16 .pull_9 {
  left: -540px;
}

.container_16 .pull_10 {
  left: -600px;
}

.container_16 .pull_11 {
  left: -660px;
}

.container_16 .pull_12 {
  left: -720px;
}

.container_16 .pull_13 {
  left: -780px;
}

.container_16 .pull_14 {
  left: -840px;
}

.container_16 .pull_15 {
  left: -900px;
}

/* `Clear Floated Elements
----------------------------------------------------------------------------------------------------*/
/* http://sonspring.com/journal/clearing-floats */
.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

/* http://www.yuiblog.com/blog/2010/09/27/clearfix-reloaded-overflowhidden-demystified */
.clearfix:before,
.clearfix:after,
.container_16:before,
.container_16:after {
  content: '.';
  display: block;
  overflow: hidden;
  visibility: hidden;
  font-size: 0;
  line-height: 0;
  width: 0;
  height: 0;
}

.clearfix:after,
.container_16:after {
  clear: both;
}

/*
  The following zoom:1 rule is specifically for IE6 + IE7.
  Move to separate stylesheet if invalid CSS is a problem.
*/
.clearfix,
.container_16 {
  zoom: 1;
}

/*
  960 Grid System ~ Text CSS.
  Learn more ~ http://960.gs/

  Licensed under GPL and MIT.
*/
/* `Basic HTML
----------------------------------------------------------------------------------------------------*/
body {
  font-size: 14px !important;
  font-family: "Open Sans", sans-serif;
}

pre,
code {
  font-family: "DejaVu Sans Mono", Menlo, Consolas, monospace;
}

hr {
  border: 0 solid #ccc;
  border-top-width: 1px;
  clear: both;
  height: 0;
}

/* `Headings
----------------------------------------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  margin-bottom: 0.5em !important;
}

h1 {
  font-size: 22px;
}

h2 {
  font-size: 18px;
}

h3 {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 0 !important;
}

h4 {
  font-size: 19px;
}

h5 {
  font-size: 17px;
}

h6 {
  font-size: 15px;
}

/* `Spacing
----------------------------------------------------------------------------------------------------*/
ol {
  list-style: decimal;
}

ul {
  list-style: disc;
}

li {
  margin-left: 30px;
}

p,
dl,
hr,
h1,
h2,
h3,
h4,
h5,
h6,
ol,
ul,
pre,
table,
address,
fieldset,
figure {
  margin-bottom: 20px;
}

.align-right {
  text-align: right;
}

.align-left {
  text-align: left;
}

a, a:visited {
  display: inline-block;
  position: relative;
  text-decoration: none;
  color: #eb7322;
  font-family: "Source Serif Pro", serif;
}

a:hover {
  text-decoration: underline;
}

/*
a:hover::after {
  position: absolute;
  left: 0;
  top: 1.2em;
  content: ' ';
  width: 100%;
  border-bottom: 1px solid $color-orange;
} */
.divider hr {
  border: none;
  border-top: 1px #000 dotted;
}

.float_left {
  float: left;
}

.float_right {
  float: right;
}

.quick-contact {
  font-size: 80%;
  line-height: 20px;
}

#navi_functions {
  line-height: 20px;
}

.headermeta {
  padding-top: 10px;
  padding-bottom: 10px;
}

.footermeta {
  padding-bottom: 10px;
}

.footermeta hr {
  margin-bottom: 0;
}

#navi_functions {
  font-family: "Source Serif Pro", serif;
  list-style: none;
  padding: 0;
  margin: 0;
}

#navi_functions li {
  margin-left: 1.5em;
  float: left;
}

#navi_main {
  font-family: "Source Serif Pro", serif;
  list-style: none;
  padding: 0;
  margin: 0;
}

#navi_main li {
  margin: 0;
  margin-right: 1.5em;
  float: left;
  position: relative;
}

#navi_main li a {
  display: block;
  height: 2.5em;
  line-height: 2.5em;
}

#navi_main li ul {
  left: -5px;
  top: 2.5em;
  position: absolute;
  z-index: 9999;
  display: none;
}

#navi_main li ul li {
  margin: 0;
  float: none;
}

#navi_main li ul li a {
  height: auto;
  line-height: 2em;
}

#navi_main li:hover ul {
  display: block;
}

#navi_main a:hover::after {
  top: 1.7em;
}

#navi_main li ul {
  list-style: none;
  width: 200px;
}

#navi_main li ul li {
  position: relative;
}

#navi_main li ul li a:hover {
  background: #fff;
}

#navi_main li ul a:hover::after {
  display: none;
}

#navi_main li ul {
  background: rgba(255, 255, 255, 0.9);
}

#navi_main li ul li a {
  padding: 0 5px;
}

#navi_main li ul li ul {
  display: none !important;
  position: absolute;
  top: 0;
  left: 200px;
}

#navi_main li ul li:hover ul {
  width: 400px;
  display: block !important;
}

.ce-intext.ce-left .ce-gallery {
  margin-right: 20px;
}

div.csc-textpic .csc-textpic-imagewrap .csc-textpic-image {
  margin-bottom: 20px;
}

.ce-intext.ce-right .ce-gallery, .ce-intext.ce-left .ce-gallery, .ce-above .ce-gallery {
  margin-bottom: 20px;
}

.image-pointborder .csc-textpic-image {
  line-height: 0;
  border: 1px #000 dotted !important;
  padding: 5px;
  box-sizing: border-box;
}

.image-pointborder .csc-textpic-image img {
  max-width: 100%;
  height: auto;
}

.image-pointborder .csc-textpic-image a {
  max-width: 100%;
  line-height: 0;
}

.dotted-teaser {
  border: 1px #000 dotted;
  padding: 0 5px 5px;
  margin-bottom: 20px;
}

.dotted-teaser .teaser-image {
  margin-top: 5px;
}

.dotted-teaser .teaser-image img {
  width: 100%;
}

.dotted-teaser .teaser-headline {
  padding: 5px 5px;
  margin-top: 5px;
}

.dotted-teaser .teaser-headline h1, .dotted-teaser .teaser-headline h2, .dotted-teaser .teaser-headline h3, .dotted-teaser .teaser-headline h4, .dotted-teaser .teaser-headline h5, .dotted-teaser .teaser-headline h6 {
  margin: 0 !important;
}

.dotted-teaser .teaser-body {
  margin-top: 5px;
  padding: 5px 5px;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../fonts/slick.eot");
  src: url("../fonts/slick.eot?#iefix") format("embedded-opentype"), url("../fonts/slick.woff") format("woff"), url("../fonts/slick.ttf") format("truetype"), url("../fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  margin-top: -10px\9;
  /*lte IE 8*/
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover, .slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before, .slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before, .slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: "←";
}

[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: "→";
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -45px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

.slick-slider {
  margin-bottom: 20px;
}

.slideshow div.csc-textpic .csc-textpic-imagewrap .csc-textpic-image {
  margin: 0 !important;
}

.slick-prev, .slick-next {
  height: 30px;
  width: 30px;
  z-index: 5555;
}

.slick-prev {
  left: 10px;
}

.slick-next {
  right: 10px;
}

.slick-prev:before, .slick-next:before {
  font-size: 30px;
  color: black;
}

.gridelements .left {
  margin-left: 0 !important;
}

.gridelements .right {
  margin-right: 0 !important;
}

.grid_12 .gridelements .third-col {
  min-height: 1px;
  float: left;
  width: 220px;
  margin: 0 10px;
}

.grid_12 .gridelements .two-col {
  min-height: 1px;
  float: left;
  width: 340px;
  margin: 0 10px;
}

.grid_16 .gridelements .third-col::before {
  content: 'Ein 3 Spaltiges System kann nicht über die gesamte Breite nicht verwendet werden.';
  color: red;
  font-weight: bold;
}

.grid_16 .gridelements .two-col {
  min-height: 1px;
  float: left;
  width: 460px;
  margin: 0 10px;
}
