.body {
  font-size: 0.9em;
  font-weight: 300;
  color: #3A454B;
  line-height: 1.4;

  background: #E1E5E6;
    background: -webkit-linear-gradient(#93A1A8, #F2F4F3);
    background: -o-linear-gradient(#93A1A8, #F2F4F3);
    background: -moz-linear-gradient(#93A1A8, #F2F4F3);
    background: linear-gradient(#93A1A8, #F2F4F3);
}

.body > * {
  background: #FFF;
}

.cc_banner-wrapper {
    background: transparent;
}

/* dark */

.dark {
  background: #3A454B;
  color: #FFF;
}

/*.dark a {
  text-decoration: underline;
}*/

.dark .csc-menu a {
  text-decoration: none;
}

.dark input[type="text"],
.dark textarea {
  background: #333;
  border: 1px solid #949494;
}

.dark input[type="submit"] {
  color: #333;
  background: #FFF;
}

/* content elements */

.body > * > * > div:not(:first-child) {
  margin-top: 1.5em;
}

.ce-gallery figcaption {
  background: #005399;
  color: #FFF;
  padding: 10px;
}

.ce-textpic.ce-below .ce-bodytext + .ce-gallery {
  margin-top: 1em;
}

/* general text styles */

h1 {
  font-size: 2em;
}

h2 {
  font-size: 1.6em;
  margin-bottom: 0.5em;
}

h3 {
  font-size: 1.2em;
}

h4 {
  font-size: 1.1em;
}

h5 {
  font-size: 0.9em;
  font-weight: bold;
}

h6 {
  font-style: italic;
}

b,
strong {
  font-weight: 700;
}

i,
em {
  font-style: italic;
}

.ce-bodytext > *:not(:first-child),
.ce-bodytext ul > li,
.ce-bodytext ol > li,
.dark .csc-menu > li {
  margin-top: 0.5em;
}

.ce-bodytext ul > li::before {
  content: '▶';
  margin-right: 0.8em;
  font-size: 0.8em;
  vertical-align: middle;
}

/* Lightbox */

.body .mfp-bottom-bar {
  margin-top: 0;
  top: auto;
  bottom: 40px;
  text-align: right;
}

.body .mfp-counter {
  color: #FFF;
  position: static;
  display: inline-block;
  background: #3A454B;
  padding: 0.5em 1em;
  border-top-left-radius: 1em;
}

/* csc-menu */

.light .csc-menu > li {
  border: 0px solid #C8D1D5;
  border-bottom-width: 1px;
}

.light .csc-menu > li:first-child {
  border-top-width: 1px;
}

.light .csc-menu > li > a {
  display: block;
  padding: 0.5em 1em;
}

/* general form */

input[type="text"],
textarea {
  width: 100%;
  padding: 0.15em 0.3em;
}

input[type="submit"] {
  padding: 0.2em 1.5em;
  cursor: pointer;
}

label + input,
label + textarea {
  margin-top: 0.3em;
}


input[type="text"],
textarea {
  background: transparent;
  border: 1px solid #333;
}

textarea {
  resize: vertical;
}

input[type="submit"] {
  color: #FFF;
  background: #333;
}

/* csc-form */

.csc-form-element:not(:first-child) {
  margin-top: 1em;
}

/* ce-menu */

.content .ce-menu > li > a {
  display: block;
  padding: 0.5em;
}

/* nav */

.nav {
  color: #FFF;
  font-size: 1.2em;
}

.nav > ul {
  background: #3A454B;
}

.nav > ul > li > a {
  padding: 20px 15px;
  transition: background 100ms;
}

.nav > ul > li > a[href$='startseite/'],
.nav > ul > li > a[href$='unsere-oeffnungszeiten/'],
.nav > ul > li > a[href$='anfahrt/'],
.nav > ul > li > a[href$='impressum/'],
.nav > ul > li > a[href$='datenschutz/'] {
  display: none;
}

.nav > ul > li > a:hover,
.nav > ul > li > a.act {
  background: #FFBA0A;
}

/* content */

/*@media (min-width: 1080px) {
  .content > *::before {
    content: '';
    display: block;
    border-top: 1px solid #C8D1D5;
    margin-bottom: 20px;
  }
}*/

.content > * > .menu:first-child {
  margin-top: -20px;
}

.content .ce-textpic .ce-row + .ce-row {
  margin-top: 20px;
}

/* footer */

/*.footer h2::after {
  content: '';
  display: block;
  width: 60px;
  max-width: 100%;
  border-top: 2px solid #FFF;
  margin: 0.4em 0 0;
}*/

.footer ul > li::before {
  content: '▶';
  color: #242424;
  margin-right: 0.8em;
  font-size: 0.8em;
  vertical-align: middle;
}

/* bjqs */

.bjqs-controls > li > a {
  padding: 1em;
  font-size: 1.25em;
  background: rgba(255,255,255,0.75);
  display: block;
}
