@font-face {
    font-family: 'Poppins';
    src: url('../fonts/Poppins-Regular.woff2') format('woff2'),
        url('../fonts/Poppins-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('../fonts/Poppins-SemiBold.woff2') format('woff2'),
        url('../fonts/Poppins-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('../fonts/Poppins-Bold.woff2') format('woff2'),
        url('../fonts/Poppins-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}



* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html {
}

body {
  /*width: 100%;
   height: 100%;
   overflow: hidden;*/
  background-color: #f6f6f6;
  font-size: 0.875em;
}

html > body {
  font-size: 14px;
  font-size: 0.875em;
}

body.loading {
  overflow: hidden;
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, address, cite, code, del, dfn, em, img, ins, q, small, strong, sub, sup, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  border: 0 none;
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

p, ul, ol, label, input, select, textarea, dd, dt, td, th, a, caption, span, figcaption, legend, option {
  font-family: "Poppins", sans-serif;
  font-weight: normal;
}

p, dt, dd, li, td, th, label {
  line-height: 1.4em;
}

p b {
  font-weight: 600;
}

h1 {
  font-size: 3em;
  color: #2e2e2e;
  /*text-transform: uppercase;*/
}

h2 {
  font-size: 2em;
  color: #2e2e2e;
  line-height: 1.2em;
}

h3 {
  font-size: 1.75em;
  line-height: 1.2em;
  color: #2e2e2e;
}

h4 {
  font-size: 1.5em;
  color: #2e2e2e;
}

h5 {
  font-size: 1em;
  font-weight: bold;
}

h6 {
  font-size: 1em;
}

a img {
  border: none;
}

/*typo3 styles*/
p.align-right, h1.align-right, h2.align-right, h3.align-right, h4.align-right, td.align-right {
  text-align: right;
}

p.align-left, h1.align-left, h2.align-left, h3.align-left, h4.align-left, td.align-left {
  text-align: left;
}

p.align-center, h1.align-center, h2.align-center, h3.align-center, h4.align-center, td.align-center {
  text-align: center;
}

IMG {

}

FIGCAPTION.csc-textpic-caption {
  font-family: "Poppins", sans-serif;
  font-weight: normal;
}


/* ----------------------------------------------------------------------------------------------------------- backgrounds */

.togglenav:before, .link--hasicon:before, .searchform__submit, .link--hasicon-right:after, .listitem:before, .listitem__morelink--gallery:after,
.link--more:after, .link--back:before, .tx-indexedsearch-searchbox-button, .link--email:before, .link--phone:before {
  background: url(../images/layout/bg-sprite.png) -4000px -4000px no-repeat;
}

/* ----------------------------------------------------------------------------------------------------------- backgrounds */

/* ----------------------------------------------------------------------------------------------------------- fonts */

a.togglenav {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
}

h1, h2, h3, h4 {
  font-family: "Poppins", sans-serif;
  font-weight: normal;
  /* font-style: italic; */
}

p, a, ul li, td, th, input, select, textarea, label, legend, h5, .tx-indexedsearch-whatis {
  font-family: "Poppins", sans-serif;
  font-weight: normal;
  color: #2e2e2e;
}

header[role="banner"] p a {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
}

h5 {
  font-weight: 600;
}

th {
  font-weight: 600;
}

/* ----------------------------------------------------------------------------------------------------------- fonts */

/* ----------------------------------------------------------------------------------------------------------- wrappers */

.wrapper--load-progress {
  background-color: rgba(0,0,0,0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1000;
  position: absolute;
  -webkit-transition: all 200ms ease;
  -webkit-transition-delay: ease, 0s;
  -moz-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}

.wrapper--header {
  width: 100%;
  z-index: 10;
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  margin: 0 auto;
  top: 0;
  /*background-color: rgba(0,0,0,0.2);*/
  /*border-bottom: 1px solid #fff;*/
  -webkit-transition: all 300ms ease;
  -webkit-transition-delay: ease, 0s;
  -moz-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
  /*min-height: 61px;*/
}

.wrapper--header.flyout-expanded, .wrapper--header.dark {
  background-color: rgba(0,0,0,0.8);  
}

.wrapper--header:after {
  content: "";
  top: 60px;
  left: 0;
  right: 0;
  width: 100%;
  height: 1px;
  /*background-color: #fff;*/
  position: absolute;
}

.wrapper--header.dark {
}

.smartphone .wrapper--header, .tablet .wrapper--header {
}

.wrapper__inner--header, .wrapper__inner--logo, .wrapper__inner--headerinfo, .wrapper__headerbackgrounds {
  width: 98%;
  max-width: 1680px;
  margin: 0 auto;
  position: relative;
}

.wrapper__inner--header {
  z-index: 5;
  /*height: 60px;*/
}

.wrapper__inner--headerinfo {
}

.wrapper--navi {
}

.wrapper--togglenav {
  position: absolute;
  margin-left: 20px;
  margin-top: 1.35em;
  right: 0;
  top: 0;
  z-index: 10;
  display: block;
}

.wrapper--contentheader {
  position: relative;
}

.wrapper--content {
  position: relative;
  padding: 0;
  width: 100%;
  z-index: 0;
  padding-bottom: 6em;
  padding-top: 2em;
  z-index: 3;
  background-color: #f6f6f6;
  min-height: 100vH;
}

.wrapper__inner--content {
  position: relative;
}

.wrapper--contentslider {
}

.wrapper--footer {
  position: relative;
}

.wrapper__inner--footer {
  z-index: 0;    
}

.smartphone .wrapper--footer, .tablet .wrapper--footer {
}

.wrapper__inner--footer {
  background-color: #f6f6f6;
  width: 100%;
  margin: 0 auto;
}

/* ----------------------------------------------------------------------------------------------------------- wrappers */

/* ----------------------------------------------------------------------------------------------------------- block elements */

.flyout {
  position: relative;
  width: 100%;
  height: 0;
  overflow: hidden;
}

.flyout--right {
  width: 0;
  right: 0;
  /*top: 61px;*/
  height: 100%;
  position: fixed;
  background-color: rgba(0,0,0,0.8);
}

.flyout--right.expanded {
  min-height: 100vH;
}

.flyout__inner {
  position: relative;
  width: 100%;
  max-width: 1680px;
  margin: 0 auto;
}

.logo, .logo--small {
}

.contentheader__image {
  overflow: hidden;
  z-index: 2;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}

.contentheader__image.out-of-view {
  z-index: 0;
}

.contentheader__image > .frame {
  max-width: none;
}

.contentheader__image .slidepanel {
  display: none;
}

.contentheader__image-overlay {
  background-color: rgba(0,0,0,0);
  position: relative;
  z-index: 2;
  /* -webkit-transition: all 300ms ease;
  -webkit-transition-delay: ease, 0s;
  -moz-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;  */
}

.contentheader__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 3;
}

.content--main {
  position: relative;
  left: 0;
  top: 0;
  z-index: 4;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}

header[role="banner"] {
  display: inline-block;
  padding-top: 6px;
  padding-bottom: 6px;
  z-index: 3;
  position: relative;
}

.wrapper--footer footer {
  position: relative;
  z-index: 2;
  width: 100%;
  padding-top: 4em;
}

.wrapper--footer .footer__content {
  width: 100%;
  max-width: 1680px;
  margin: 0 auto;
  padding: 6em 0;
}

.footer__background {
  position: absolute;
  bottom: 0;
  z-index: 0;
}

.header__tools {
  position: absolute;
  right: 10em;
  top: 1em;
  z-index: 3;
}

.container {
  width: 100%;
}

.content .container {
  max-width: 1680px;
  margin: 0 auto;
}

.container--slider.hammerslide--slide {
  cursor: grab;
}

.row {
  width: 100%;
}

.container--flex .row, .container--team .row {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
}

.col {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  position: relative;
}

.col--half {
  width: 50%;
}

.container--teammembers .col--maxwidth {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.container--team .col--left {
  flex: 0 0 30%;
}

.container--team .col--right {
  flex: 0 0 70%;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;  
  /* align-content: stretch;
  align-items: stretch; */
}

.container--flex .col--half {
  flex: 0 0 50%;
  justify-content: space-around;
  display: flex;
  flex-direction: column;
}

/* .container--timeline .col {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
} */

.col--third {
  width: 33.33%;
}

footer .col--third {
  width: 32%;
  margin-right: 2%;
}

footer .col--third:last-child {
  margin-right: 0;
}

.col--fourth {
  width: 25%;
}

.col--flex {
  display: flex;
  justify-content: space-between;
  align-content: space-between;
  flex-wrap: wrap;  
}

.frame {
  display: block;
  position: relative;
  width: 100%;
  max-width: 1680px;
  margin: 0 auto;
}

header[role="banner"] .frame:last-child {
  visibility: none;
  height: 0;
  overflow: hidden;
}

.frame--image100p {
  max-width: none;
}

.container--timeline .frame {
  margin: 0 auto 2em;
  /*border-top: 1px solid #94090D;*/
  display: block;
  width: 60%; 
  vertical-align: top;
}

/* .container--timeline .frame:before, .container--timeline .frame:after {
  content: "";
  background-color: #94090D;
  width: 2px;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  display: block;
}

.container--timeline .frame:after {
  width: 5%;
  height: 2px;
  top: 65%;
  left: 45%;
}
*/

.container--timeline .frame:nth-child(2n) {
  /*margin-top: 2em;  */
}


.flyout--right .frame {
  padding: 2em;
}

.container--team .col--right .frame {
  flex: 1 1 50%;
}

.container--team .col--right .frame:first-child {
  flex: 0 0 100%;
  /*align-self: flex-start;*/
}

.container--teammembers .col--maxwidth .frame {
  display: inline-block;
  flex: 0 0 45%;
  width: 45%;
  margin-right: 10%;
  margin-left: 0;
  position: relative;
}

.container--teammembers .col--maxwidth .frame:nth-child(2n) {
  margin-right: 0;
}

.slidepanel {
  position: absolute;
  margin: 0 auto;
  bottom: 2px;
  z-index: 1;
  left: 0px;
  right: 0px;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.csc-textpic-right, .csc-textpic-left {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-content: space-around;
  flex-wrap: wrap;
}

.csc-textpic-left div.csc-textpic-text-wrapper, .csc-textpic-right div.csc-textpic-text-wrapper {
  width: 50%;
  display: flex;
  justify-content: space-around;
  flex-direction: column;
  position: relative;
}

.no-flexboxlegacy .csc-textpic-left div.csc-textpic-text-wrapper, .no-flexboxlegacy .csc-textpic-right div.csc-textpic-text-wrapper {
  display: inline-block;
  vertical-align: middle;
}

.no-flexboxlegacy .csc-textpic-right div.csc-textpic-text-wrapper {
  float: left;
}

.layout--102 {
}

.layout--103 {
}

.layout--104 {
}


div.csc-textpic-right .csc-textpic-imagewrap, div.csc-textpic-left .csc-textpic-imagewrap {
  width: 50%;
  display: inline-block;
  vertical-align: middle;
  float: none;
  position: relative;
  z-index: 0;
}

div.csc-textpic-right .csc-textpic-imagewrap {
  order: 1;
}

div.csc-textpic-left .csc-textpic-imagewrap {
  position: relative;
  flex: 0 0 auto;
}

.frame--flexbox .csc-textpic, .frame--flexbox .csc-text-only {
  display: flex;
  flex-direction: row;
  align-content: space-around;
}

.container--timeline .frame--flexbox {
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  /*flex-direction: row-reverse;*/
}

.container--timeline .frame:nth-child(2n) .csc-text-only,.container--timeline .frame--flexbox:nth-child(2n) {
  flex-direction: row;
}

.container--timeline .frame--flexbox div.csc-textpic {
  width: 100%;
  display: flex;
  flex-direction: row;
}

.container--timeline .frame--flexbox:nth-child(2n) div.csc-textpic {
  /*flex-direction: row-reverse;*/
}

.frame--flexbox .csc-textpic-intext-left-nowrap .csc-textpic-text, .frame--flexbox .csc-textpic-intext-right-nowrap .csc-textpic-text,
.frame--flexbox .csc-text, .frame--flexbox .csc-header  {
  margin-left: 0;
  margin-right: 0;
  flex: 0 0 50%;
}

.container--timeline .csc-header {
  text-align: left;
  position: relative;
  /*flex: 0 0 8em;*/
  background-color: #efefef;
  /*border-bottom: 1px solid #94090D;*/
  /*display: flex;
  flex-direction: column;
  justify-content: space-around;*/
}

.container--timeline.layout--110 .csc-header {
  flex: 0 0 16em;
}

.container--teammembers .csc-header {
  position: absolute;
  top: 55%;
  transform: translate(0,-100%);
  z-index: 1;
  left: 0;
  width: 100%;
}

/* .container--timeline .csc-header:after {
  content: "";
  width: 0;
  height: 0;
  display: block;
  border-right: 30px solid transparent;
  border-top: 60px solid #94090D;
  margin: 0 auto;
  position: absolute;
  left: 50%;
  transform: translate(-60px,-30px) rotate(45deg);
}

.container--timeline .frame:nth-child(2n) .csc-header:after {
  border-right: none;
  border-left: 30px solid transparent;  
  transform: translate(30px,-30px) rotate(-45deg);  
}
*/
.container--timeline .frame:nth-child(2n) .csc-header {
  /* text-align: left;  */
}

.container--timeline .csc-text {
  background-color: #fff;
  padding: 2em;
  flex: 1 1 auto;
}

.container--timeline .frame:nth-child(2n) .csc-text {
  /* padding-right: 20%;
  padding-left: 55%; */
}

.frame--flexbox .csc-textpic-intext-right-nowrap {
  flex-direction: row-reverse;
}

.frame--flexbox .csc-textpic-text-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: space-around;  
}

.no-flexboxlegacy .frame--flexbox .csc-textpic-text-wrapper {
  display: inline-block;
}

.frame--flexbox .csc-textpic-text, .frame--flexbox .csc-text {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}

.frame--flexbox .csc-header {
  flex: 0 0 100%;
}

.frame--flexbox .csc-text-only .csc-header {
  flex: 0 0 50%;
}

.container--timeline .frame--flexbox div.csc-textpic-text {
  padding: 2em;
}

div.csc-textpic-intext-right .csc-textpic-imagewrap, 
div.csc-textpic-intext-right-nowrap .csc-textpic-imagewrap {
  margin-left: 0;
}

div.csc-textpic-intext-right .csc-textpic-imagewrap {
  float: none;
  display: inline-block;
  vertical-align: middle;
}

.frame--flexbox .csc-textpic-intext-left-nowrap .csc-textpic-imagewrap, 
.frame--flexbox .csc-textpic-intext-right-nowrap .csc-textpic-imagewrap {
  float: none;
  margin-left: 0;
  margin-right: 0;
  flex: 0 0 50%;
}

.frame--flexbox .csc-textpic-intext-right .csc-textpic-imagewrap {
  order: 1;
}

header[role="banner"] .frame--flexbox .csc-textpic-intext-right .csc-textpic-imagewrap {
  margin-left: 1em;
}

.no-flexboxlegacy .frame--flexbox .csc-header, .no-flexboxlegacy .frame--flexbox .csc-text {
  display: inline-block;
  width: 50%;
  max-width: 50%;
  margin-right: -4px;
  vertical-align: middle;
}

.frame--default div.csc-textpic-text {
  position: relative;
  clear: none;
}


.container--team .col--right .frame.layout--101, .layout--101 .csc-text, .layout--101 .csc-textpic {
  background-color: #94090D;  
}

.container--team .col--right .frame.layout--102, .layout--102 .csc-text, .layout--102 .csc-textpic {
  background-color: #efefef;
}

.container--team .col--right .frame.layout--103, .layout--103 .csc-text, .layout--103 .csc-textpic {
  background-color: #fff;
}

.container--team .col--right .frame:nth-child(2n), .container--team .col--right .frame:nth-child(5n) {
  background-color: #fff;
}

.container--team .col--right .frame:nth-child(3n), .container--team .col--right .frame:nth-child(4n) {
  background-color: #efefef;
}

.layout--100 .csc-textpic-text-wrapper, .layout--100 .csc-text, .layout--100 .csc-header,
.layout--101 .csc-textpic-text-wrapper, .layout--101 .csc-text, .layout--101 .csc-header,  
.layout--102 .csc-textpic-text-wrapper, .layout--102 .csc-text, .layout--102 .csc-header, 
.layout--103 .csc-textpic-text-wrapper, .layout--103 .csc-text, .layout--103 .csc-header,
.container--team .col--right .csc-text {
  padding: 2em 4em;
}

.slideelement {
  display: block;
  position: relative;
  float: left;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.gallery ul {
  list-style-type: none;
  left: 0;
  position: relative;
  overflow: hidden;
}

.hammerslide .gallery__item {
  float: left;
}

.videocontainer {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
}

.videocontainer iframe, .videocontainer object, .videocontainer embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.articlelist, .list--gallery, .list__page--gallery-thumbs {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;  
  flex-wrap: wrap;
  justify-content: space-between;
}

.listitem {
  margin: 0;
  background-color: #fff;
  /*display: inline-block;*/
  vertical-align: top;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 4em;
  max-width: 24.3%;
  margin-bottom: 1em;
  flex: 1 1 24.3%;
  overflow: hidden;
  position: relative;
}

.no-flexboxlegacy .listitem {
  display: inline-block;
  flex-wrap: nowrap;
}

.listitem:nth-of-type(2n) {
  background-color: #efefef;
}

.listitem--mission:nth-child(2n), .listitem--gallery:nth-child(2n) {
  background-color: #b40005;
}

.listitem--has-image, .listitem--gallery, .listitem--gallery-thumbs {
  flex: 1 1 49.5%;
  padding: 0;
  max-width: 49.5%;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
}

.listitem--gallery {
  background-color: #94090D;  
  flex: 1 1 49.5%;
  /*max-width: 33%;*/
  width: auto;
  height: auto;
  margin: 0 0 1em 0;
  padding: 0;
}

.listitem--gallery-thumbs {
  max-width: 19.5%;
  background-color: #efefef;
}

 .no-flexboxlegacy .listitem--gallery-thumbs {
   display: inline-block;
 }

.listitem--mission {
  background-color: #94090D;
}

.listitem:before {
  content: "";
  display: block;
  background-color: #94090D;
  width: 3em;
  height: 2.5em;
  position: absolute;
  top: 0;
  right: 2em;
}

.listitem--mission:before {
  background-position: -146px -134px;
  background-color: #fff;
}

.listitem--eventsnews:before {
  background-position: -106px -134px;
}

.listitem--gallery:before, .listitem--gallery-thumbs:before {
  display: none;
}

.no-flexboxlegacy .listitem__content {
  max-width: 100%;
}

.listitem--has-image .listitem__content, .listitem__content--gallery {
  max-width: 50%;
  flex: 0 0 50%;  
  padding: 4em;
  overflow: hidden;
}

.no-flexboxlegacy .listitem--has-image .listitem__content, .no-flexboxlegacy .listitem__content--gallery {
  display: inline-block;
  width: 49%;
}

.detail__main, .detail--eventsnews {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.detail__description, .detail__facts, .detail__location, .detail__images, .detail__videos, .detail__content {
  display: inline-block;
  vertical-align: top;
  max-width: 60%;
  flex: 1 0 60%;
  background-color: #fff;
  padding: 4em;
}

.detail__facts {
  max-width: 40%;
  flex: 1 0 40%;
  background-color: #94090D;
}

.no-flexboxlegacy .detail__facts {
  margin-right: -4px;
}

.detail__location, .detail__images {
  max-width: 40%;
}

.detail__location {
  padding: 0.01%;
}

.detail__images {
  background-color: #efefef;
  max-width: 60%;  
}

.detail__images--eventsnews {
  max-width: none;
  flex: 1 0 100%;
  order: 2;
}

.detail__image {
  flex: 0 0 40%;
  order: 1;
}

.no-flexboxlegacy .detail__image {
  display: inline-block;
  width: 40%;
}

.detail__content {
  flex: 1 0 60%;
}

.no-flexboxlegacy .detail__content {
  display: inline-block;
  width: 60%;
  margin-right: -4px;
}

.detail__footer--eventsnews {
  flex: 1 0 100%;
  order: 99;
}

.feed-entry {
  background-color: #fff;
  padding: 0.65em 1em;
  max-width: 80%;
  margin-bottom: 0.5em;
} 

.feed-entry-odd {
  background-color: #efefef;
}

.tx-indexedsearch-descr {
  padding-bottom: 1em;
}

.tx-indexedsearch-icon {
  display: none;
}

.tx-indexedsearch .tx-indexedsearch-whatis {
  margin: 0.5em 0;
}
/* ----------------------------------------------------------------------------------------------------------- block elements */

/* ----------------------------------------------------------------------------------------------------------- text elements, lists */

a {
  color: #94090D;
  font-weight: 600;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

hr {
  height: 0;
  border: none;
  clear: both;
  background-color: transparent;
  padding: 32px 0;
  margin: 0;
}

h1 {
  font-weight: 600;
  color: #94090D;
  text-transform: uppercase;
}

.contentheader__content h1 {
  color: #f6f6f6;
  font-size: 8em;
  font-weight: bold;
  line-height: 62px;
  height: 62px;
  text-shadow: 0 0 5px rgba(0,0,0,0.1);
}

h2 {
  font-weight: 600;
  text-transform: uppercase;
  color: #94090D;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;   
}

.container--teammembers h2 {
    display: inline-block;
    background-color: rgba(255,255,255,0.5);
    padding: 0.2em 1em;

}

h3 {
  text-transform: uppercase;
  font-weight: 600;
}

h4 {
  text-transform: uppercase;
  font-weight: 600;
}

.flyout h1, .flyout h2, .flyout h3, .detail__facts h4, .layout--101 h2, .layout--101 h3 {
  color: #fff;
}

.wrapper--footer h3 {
  color: #94090D;
  padding-bottom: 0.5em;
}

.detail__location h4 {
  display: none;
}

.container--timeline h3 {
  /*background-color: #94090D;*/
  display: block;
  padding: 0.5em 1em;
  color: #94090D;
}

.layout--101 p , .listitem--mission p, .listitem--gallery p/*, .wrapper--footer p*/ {
  color: #fff;
}

.listitem__headline, .detail__headline {
  margin-bottom: 1em;
}

.listitem__date {
  position: absolute;
  top: 0em;
  right: 6em;
  color: #94090D;
  line-height: 3em;
}

.listitem__date--gallery {
  top: auto;
  bottom: 0;
  right: 2em;
  color: #fff;
}

ul {
  list-style-type: none;
}

.content .csc-menu {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.content .csc-menu li {
  flex: 0 0 24%;
  margin-bottom: 1em;
}

.browsebox {
  margin: 0.5em 0 1em;
}

.navi__list--year {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.navi__listitem--year {
  display: inline-block;
  width: 19.5%;
  flex: 0 0 19.5%;
  position: relative;
  padding-right: 3em;
  margin-bottom: 0.5em;
}

.navi__listitem--year:last-child {
  margin-right: 0;
}

.navi__sublist--month {
  height: 0;
  overflow: hidden;
  opacity: 0;
}

.detail__facts dt, .detail__facts dd, .detail__facts li {
  color: #fff;
  display: inline-block;
  width: 50%;
  vertical-align: top;
  margin-right: -4px;
  line-height: 1.8em;
}

.detail__facts dt {
  font-weight: 600;
}

.detail__facts li {
  width: 100%;  
}

.important {
  color: #94090D;
  font-size: 2em;
  font-weight: 600;
}

.tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-descr .tx-indexedsearch-redMarkup {
  color: #282828;
}

/* ----------------------------------------------------------------------------------------------------------- text elements, lists */

/* ----------------------------------------------------------------------------------------------------------- links */

.link--hasicon {
  padding-left: 1em;
  text-decoration: none;
  position: relative;
}

.link--hasicon-right {
  padding-left: 0;
  padding-right: 1em;
}

.link--icononly {
  width: 22px;
  overflow: hidden;
  text-indent: -9999px;
  white-space: nowrap;
  display: inline-block;
  padding-left: 0;
}

.link--email, .link--phone {
  position: relative;
  padding: 0.25em 0 0.25em 2em;
  display: inline-block;
}

.link--hasicon:before, .link--hasicon-right:after, .listitem__morelink--gallery:after, .link--more:after, .link--back:before, .link--email:before, .link--phone:before {
  display: inline-block;
  content: "";
  width: 22px;
  height: 22px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0,-50%);
}

.link--hasicon-right:after, .listitem__morelink--gallery:after, .link--more:after {
  left: auto;
  right: 0;  
}

.link--icononly:before {
  display: block;
  left: 50%;
  transform: translate(-50%,-50%);
}

.link--facebook:before {
  background-position: -40px -140px;
}

.link--facebook:hover:before {
  background-position: -40px -170px;
}

.link--rss:before {
  background-position: 0px -140px;
}

.link--rss:hover:before {
  background-position: 0px -170px;
}

.link--toggle-search:before {
  background-position: -80px -140px;
}

.link--toggle-search:hover:before {
  background-position: -80px -170px;
}

.link--toggle-calendar:before {
  background-position: -200px -140px;
}

.link--toggle-calendar:hover:before {
  background-position: -200px -170px;
}

.link--email:before {
  background-position: -240px -4px;
}

.link--phone:before {
  background-position: -200px -4px;
}

.listitem__morelink:after, .detail__backlink:before, .link--more:after, .link--back:before {
  background-position: -200px -60px;
  width: 24px;
  height: 14px;
  top: 50%;
  right: 7px;
}

.detail__backlink:before, .link--back:before {
  background-position: -160px -60px;
  right: auto;
  left: 7px;
}

.listitem__morelink:hover:after, .listitem--mission .listitem__morelink:after, .listitem--gallery .listitem__morelink:after,
.link--more:hover:after  {
  background-position: -200px -100px;
}

.detail__backlink:hover:before, .link--back:hover:before {
  background-position: -160px -100px;
}

.listitem--mission .listitem__morelink:hover:after, .listitem--gallery .listitem__morelink:hover:after{
  background-position: -200px -60px;
}

.header__tools a {
  /*height: 60px;
  line-height: 60px;
  width: 60px;*/  
  /*border-right: 1px solid #fff;*/
  padding: 0.35em 1em;
  margin: 0 1em;
}

.link--rss {
  display: none;
}

h2 a, h3 a {
  text-decoration: none;
  color: #94090D;
  font-weight: 600;
}

.listitem__headline a {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto; 
}

.listitem--mission .listitem__headline a, .listitem--gallery .listitem__headline a {
  color: #fff;
}

h2 a:hover, h3 a:hover, .listitem__headline a:hover {
  text-decoration: underline;
}

.header__tools a:hover {
  color: #94090D;
}

header[role="banner"] p a {
  font-size: 2em;
  text-transform: uppercase;
  color: #fff;
  text-decoration: none;
  line-height: 1em;
}

.sliderslidelink {
  background-position: -40px 0px;
  position: absolute;
  z-index: 1;
  width: 24px;
  height: 44px;
  text-decoration: none;
  top: 50%;
  margin-top: -22px;
  left: 2%;
  display: none;
}

.sliderslidelink.active {
  display: block;
}

.next--sliderslidelink {
  background-position: -88px 0px;
  left: auto;
  right: 2%;
}

.slidepanel__link {
  display: inline-block;
  width: 40px;
  height: 4px;
  border: 0;
  z-index: 1;
  margin-right: 2px;
  position: relative;
  background-color: #fff;
}

.slidepanel__link:last-of-type {
  margin-right: 0;
}

.slidepanel__link.active {
  background-color: #971a17;
}

.listitem__imagelink {
  display: block;
  height: 100%;
}

.listitem__morelink, .detail__backlink, .link--more, .link--back {
  border: 2px solid #94090D;
  color: #94090D;
  text-transform: uppercase;
  font-weight: 600;
  padding: 0.75em 3em 0.5em 1em;
  display: inline-block;
  line-height: 1em;
  margin-top: 2em;
  text-decoration: none;
}

.listitem--mission .listitem__morelink, .listitem--gallery .listitem__morelink {
  color: #fff;
  border-color: #fff;
}

.listitem__morelink, .link--more, .link--back {
  position: relative;
}

.detail__backlink, .link--back {
  padding: 0.75em 1em 0.5em 3em;
}
  
.listitem__morelink:hover, .detail__backlink:hover, .link--more:hover, .link--back:hover {
  background-color: #94090D;
  color: #fff;
  text-decoration: none;
}

.listitem--mission .listitem__morelink:hover, .listitem--gallery .listitem__morelink:hover { 
  background-color: #fff;
  color: #94090D;
}

.eventcalendar__link--showlist {
  color: #fff;
  font-weight: 600;
  text-decoration: none;
  border: 2px solid #fff;
  padding: 0.5em 1em;
  display: inline-block;
  margin-top: 1em;
}

.eventcalendar__link--showlist:hover {
  background-color: #fff;
  color: #94090D;
}
.wrapper--footer a {
  color: #94090D;
  text-decoration: none;
  font-weight: 600;
}

.wrapper--footer a:hover {
  text-decoration: underline;
}

.content .csc-menu a, footer .csc-menu a {
  display: inline-block;
  background-color: #94090D;
  color: #fff;
  display: block;
  padding: 4em;
  text-align: center;
  text-transform: uppercase;
  font-size: 1.25em;
}

.content .csc-menu li:nth-child(2n+1) a {
  background-color: #971A17;
}

.content .csc-menu li:nth-child(n+5) a {
  background-color: #971A17;
}

.content .csc-menu li:nth-child(2n+5) a {
  background-color: #94090D;
}

.content .csc-menu li a:hover {
  background-color: #fff;
  color: #94090D;
  text-decoration: none;
}

.browsebox li a {
  display: inline-block;
  background-color: #efefef;
  /* border: 1px solid #94090D; */
  padding: 0.35em 1em;
  margin-right: 0.5em;
  line-height: 1.4em;
}

.browsebox li a:hover, .browsebox li.tx-indexedsearch-browselist-currentPage a {
  color: #fff;  
  background-color: #94090D;
  text-decoration: none;
}

.navi__link--year, .navi__link--month {
  display: block;
  padding: 1em 2em;
  background-color: #efefef;
  width: 100%;
  position: relative;
}

.navi__link--month {
  padding: 0.5em 2em;
  margin-top: 0.25em;
}

.navi__togglelink {
  background-color: #efefef;
  display: block;
  width: 2em;
  text-align: center;
  position: absolute;
  font-size: 1.5em;
  right: 0;
  top: 0;
  height: 2.25em;
  padding-top: 0.75em;
  border-left: 1px solid #fff;
}

.navi__link--year:hover, .navi__link--month:hover, .navi__togglelink:hover {
  background-color: #94090D;
  color: #fff;
  text-decoration: none;
}

.link--showall {
  border: 2px solid #94090D;
  display: inline-block;
  margin: 2em 0;
  padding: 0.5em 2em; 
}

.link--showall:hover {
  background-color: #94090D;
  color: #fff;
  text-decoration: none;
}

footer .csc-menu a {
  background-color: #fff;
  color: #94090D;
  padding: 0.5em 1em;
  text-align: left;
  margin-bottom: 0.5em;
  max-width: 80%;
}

footer .csc-menu li:nth-child(2n+1) a {
  background-color: #efefef;
}

footer .csc-menu li a:hover {
  background-color: #94090D;
  color: #fff;
  text-decoration: none;
}

/* ----------------------------------------------------------------------------------------------------------- links */


/* ----------------------------------------------------------------------------------------------------------- images and figures */
img.lazyimageload {
  opacity: 0;
}

img.fade {
  -webkit-transition: all 500ms ease;
  -webkit-transition-delay: ease, 0s;
  -moz-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

header[role="banner"] div.csc-textpic .csc-textpic-imagewrap .csc-textpic-image {
  max-width: 16px;
}

div.csc-textpic div.csc-textpic-imagecolumn {
  margin-right: 0;
}

div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="2"] div.csc-textpic-imagecolumn,
div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="3"] div.csc-textpic-imagecolumn,
div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="4"] div.csc-textpic-imagecolumn,
div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="5"] div.csc-textpic-imagecolumn {
  width: 33.33%;
  overflow: hidden;
  margin-right: 0;
  display: inline-block;
  vertical-align: middle;
}

div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="5"] div.csc-textpic-imagecolumn {
  width: 20%;
  margin-right: 0;
}

div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="2"] div.csc-textpic-imagecolumn {
  width: 50%;
  margin-right: 0;
}

div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="4"] div.csc-textpic-imagecolumn {
  width: 25%;
  margin-right: 0;
}

div.csc-textpic .csc-textpic-imagewrap div.csc-textpic-imagecolumn:last-child {
  margin-right: 0;
}

div.csc-textpic .csc-textpic-imagewrap .csc-textpic-image {
  margin-bottom: 0;
  display: block;
  position: relative;
}

/*a:hover img {
  -webkit-filter: grayscale(100%);
  -webkit-filter: grayscale(1);
  filter: grayscale(100%);
  filter: url('../images/layout/gray.svg#grayscale');
  filter: gray;  
}*/

.listitem__image {
  margin: 0;
}

.listitem--has-image .listitem__image, .listitem__image--gallery {
  flex: 0 0 50%;  
  overflow: hidden;
}

.no-flexboxlegacy .listitem--has-image .listitem__image, .no-flexboxlegacy .listitem__image--gallery {
  width: 50%;
  display: inline-block;
}

div.csc-textpic .csc-textpic-imagewrap .csc-textpic-image img, .detail__image--review img {
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  display: block;
}

div.csc-textpic-left .csc-textpic-imagewrap .csc-textpic-image img {
  margin: 0 auto 0 0;
}

div.csc-textpic-right .csc-textpic-imagewrap .csc-textpic-image img {
  margin: 0 0 0 auto;
}

div.csc-textpic-border div.csc-textpic-imagewrap img {
  border: none;
  padding: 4em;
}

.contentheader__image div.csc-textpic .csc-textpic-imagewrap .csc-textpic-image img {
  width: 100%;
}

.listitem__image img {
  width: auto;
  height: 100%;
  display: block;
}

.list__page--gallery-thumbs img {
  max-width: 100%;
  width: 100%;
  height: auto;
  display: block;
}

.frame--image100p img {
  width: 100%;
}

figcaption.csc-textpic-caption {
  display: block;
}

figcaption.csc-textpic-caption {
  position: absolute;
  bottom: 0;
  color: #FFFFFF;
  left: 1em;
}

.csc-textpic-right figcaption.csc-textpic-caption {
  left: auto;
  right: 1em;
  margin-left: 1em;
  text-align: right;  
}

.container--slider figure:before {
  content: ".";
  font-size: 0px;
  top: 0px;
  left: 0px;
  right: 0px;
  height: 100%;
  display: block;
  background-color: transparent;
  z-index: 1;
  position: absolute;
}

/* ----------------------------------------------------------------------------------------------------------- images and figures */

/* ----------------------------------------------------------------------------------------------------------- mainnav */

.togglenav {
  font-size: 1.143em;
  position: relative;
  text-transform: uppercase;
  color: #fff;
  text-decoration: none;
  padding-left: 32px;
  display: block;
}

.togglenav:before {
  content: ".";
  font-size: 0;
  position: absolute;
  background-position: 0 0;
  display: block;
  top: -3px;
  left: 0;
  width: 24px;
  height: 24px;
}

.togglenav:hover {
  color: #b40005;
  text-decoration: none;
}

.togglenav:hover:before {
  background-position: 0 -24px;
}

.mainnav {
  background-color: rgba(0,0,0,0.8);
  vertical-align: top;
  padding: 0;
  z-index: 2;
  position: fixed;
  right: 0;
  top: 0;
  width: 0;
  padding-top: 12em;
}

.mainnav__items {
  list-style-type: none;
  text-align: right;
  width: 90vW;
  margin: 0 auto;
}

.navitem {
  background: transparent;
  position: relative;
  z-index: 1;
  padding: 0;
  display: inline-block;
  vertical-align: top;
  padding: 0 2em 0 0;
  overflow: hidden;
}

/* .navitem:after, .navitem:first-child:before {
  content: "";
  width: 1px;
  height: 100%;
  display: block;
  background-color: #fff;
  position: absolute;
  right: 0;
  top: 0;
} 

.navitem:first-child:before {
  right: auto;
  left: 0;
} */

.navitem__link {
  background-color: rgba(255,255,255,0);
  color: #fff;
  font-size: 2em;
  line-height: 60px;
  height: 60px;
  font-weight: bold;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  position: relative;
  padding: 0.25em 0 0.25em 1em;
  z-index: 1;
  display: inline-block;
  position: relative;
  opacity: 0;
  transform: translate(10em,0);
  -webkit-transition: transform 0.4s cubic-bezier(0.215, 0.610, 0.355, 1.000), opacity 0.4s ease;
  -webkit-transition-delay: cubic-bezier(0.215, 0.610, 0.355, 1.000), 0s;
  -moz-transition: transform 0.4s cubic-bezier(0.215, 0.610, 0.355, 1.000), opacity 0.4s ease;
  -o-transition: transform 0.4s cubic-bezier(0.215, 0.610, 0.355, 1.000), opacity 0.4s ease;
  transition: transform 0.4s cubic-bezier(0.215, 0.610, 0.355, 1.000), opacity 0.4s ease;  
}

.onscreen .navitem__link {
    opacity: 1;
    transform: translate(0,0);
}

.navitem__link:after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  left: 0;
  bottom: 0;
  background-color: #94090D;
  position: absolute;
}

.navitem__link:hover, .navitem--active .navitem__link, .subnav__link--active {
  /* border-bottom: 1px solid #94090D; */
  /* background-color: rgba(255,255,255,1); */
  color: #b40005;
  text-decoration: none;
}

/*
.navitem__link:hover:after, .navitem.hover .navitem__link:after {
  height: 5px;
}
*/

.subnav__itemlist {
  position: relative;
  overflow: hidden;
  padding-top: 0;
  margin-top: 0;
  z-index: -1;
  display: block;
  padding-top: 2em;
}

/* .dark .subnav__itemlist, .wrapper--header:hover .subnav__itemlist {
  background-color: rgba(0,0,0,.8);
} */

.ie .subnav__itemlist {
  top: 0em;
}

.subnav__itemlist.visible {
  display: block;
}

.subnav__item {
  display: block;
  text-align: right;
}

a.subnav__link {
  color: #fff; 
  font-size: 1.571em;
  text-decoration: none;
  padding: 0.5em 0 0.5em 1em;
  display: inline-block;
  position: relative;
  z-index: 1;
  text-transform: uppercase;
  text-align: right;
  white-space: nowrap;
  transform-origin: top center;
  font-weight: bold;
  opacity: 0;
  transform: translate(17em,0);
  -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.610, 0.355, 1.000), opacity 0.7s ease;
  -webkit-transition-delay: cubic-bezier(0.215, 0.610, 0.355, 1.000), 0s;
  -moz-transition: transform 0.5s cubic-bezier(0.215, 0.610, 0.355, 1.000), opacity 0.7s ease;
  -o-transition: transform 0.5s cubic-bezier(0.215, 0.610, 0.355, 1.000), opacity 0.7s ease;
  transition: transform 0.5s cubic-bezier(0.215, 0.610, 0.355, 1.000), opacity 0.7s ease;  
}

.onscreen a.subnav__link {
  opacity: 1;
  transform: translate(0,0);
}

a.subnav__link--active {
  color: #B40005;
}

a.subnav__link:hover {
  color: #b40005;
}

/* ----------------------------------------------------------------------------------------------------------- mainnav */

/* ------------------------------------------------------------------------------------------------------ tables */

.table-wrapper {
  display: block;
  overflow: visible;
  margin: 0;
  -webkit-overflow-scrolling: touch;
}

table.contenttable {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #fff;
  display: block;
}

.tx-indexedsearch table {
  width: 100%;
}

.container--teammembers table.contenttable {
  border: none;
}

.container--teammembers table.contenttable th, table.contenttable td {
  padding: 0.5em 2em;
}

.container--teammembers table.contenttable th {
  text-align: left;
}

.container--teammembers table.contenttable tr:nth-child(2n+1) td, .container--teammembers table.contenttable tr:nth-child(2n+1) th {
  background-color: #fff;
}

/* ------------------------------------------------------------------------------------------------------- tables */

/*------------------------------------------------------------------------------------------------------------------------ form */
.tx-macinasearchbox-pi1 {
  padding: 1em 0;
}

.searchform {
  position: relative;
}

div.csc-mailform ol {
  list-style-type: none;
  overflow: hidden;
  margin: 0 auto;
  background-color: #fff;
  padding: 2em 4em;
  width: 70%;
}

div.csc-mailform fieldset, .csc-form-fieldcell {
  width: 100%;
}

div.csc-mailform fieldset ol {
  padding: 0;
  margin: 0;
  top: 0;
  width: 100%;
}

div.csc-mailform legend, fieldset.fieldset-subgroup legend {
  margin-left: 0;
  color: #2e2e2e;
  font-weight: 500;
  padding: 0.25em 0 0.25em 0.5em;
  background-color: #ebe6e2;
  width: 100%;
  font-size: 1.25em;
}

div.csc-mailform ol li {
  padding: 10px 0;
  position: relative;
  display: flex;
  width: 50%;
  float: left;
}

div.csc-mailform ol li.is--hidden {
  display: none;
}

div.csc-mailform ol li.csc-form-element-radiogroup {
  width: 100%;
}

div.csc-mailform ol li label {
  flex: 0 0 180px;
}

div.csc-mailform ol li.csc-form-element-fieldset, div.csc-mailform ol li.csc-form-element-textarea {
  width: 100%;
}

div.csc-mailform ol li.csc-form-element-checkbox {
  padding-bottom: 0;
  padding-top: 0;
}

div.csc-mailform ol li.csc-form-element-hidden {
  display: none;
}

div.csc-mailform fieldset ol li {
  width: 50%;
}

.searchform__label {
  width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-indent: -9999px;
  display: inline-block;
  height: 0;
}

div.csc-mailform ol li label {
  display: block;
  color: #2e2e2e;
  padding: 0.25em 0 0.25em 0.5em;
  float: none;
  width: 100%;
  margin-right: 0;
  font-size: 1.143em;
  font-weight: normal;
}

div.csc-mailform ol li.csc-form-element-radio label {
  order: 1;
  flex: 0 0 90%;
}

div.csc-mailform li label em {
  margin: 0 0.25em;
  display: inline-block;
  color: #E53517;
  vertical-align: top;
  font-size: 100%;
}

div.csc-mailform ol li label {
  padding-top: 0.5em;
}

.searchform__sword, .tx-indexedsearch-searchbox-sword  {
  background-color: transparent;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #fff;
  width: 100%;
  color: #fff;
  font-size: 1.143em;
}

.tx-indexedsearch-searchbox-sword {
  border: 1px solid #282828;
  color: #282828;
  padding: 0.5em 2em 0.5em 1em;
  position: relative;
}

.searchform__submit, .tx-indexedsearch-searchbox-button {
  position: absolute;
  right: 0;
  top: 1.5em;
  border: none;
  background-color: transparent;
  width: 22px;
  height: 22px;
  background-position: -80px -140px;
  cursor: pointer;
}

.tx-indexedsearch-searchbox-button {
  top: 1em;
  right: 1em;
  text-indent: 40px;
  background-position: -80px -170px;
}


div.csc-mailform ol li input, div.csc-mailform ol li select, div.csc-mailform ol li textarea {
  /*background-color: #f3eea6;*/
  padding: 10px 10px 8px 10px;
  border: 2px solid #B4986E;
  font-size: 1.143em;
  color: #552E18;
  width: 100%;
  flex: 0 1 auto;
}

div.csc-mailform ol li select {
  padding: 9px 10px 7px 10px;
}

div.csc-mailform ol li input[type="radio"] {
  width: auto;
  margin-top: 14px;
}

div.csc-mailform ol li.csc-form-element-checkbox label {
  padding-left: 48px;
}

div.csc-mailform ol li.csc-form-element-checkbox input {
  position: absolute;
  left: 16px;
  top: 10px;
  width: auto;
}

div.csc-mailform ol li input, div.csc-mailform ol li textarea {
  -webkit-transition: background 0.2s ease-in-out;
  transition: background 0.2s ease-in-out;
}

div.csc-mailform ol li input:focus, div.csc-mailform ol li textarea:focus {
  background-color: #ebe6e2;
  color: #2e2e2e2;
}

div.csc-mailform li input.small {
  width: 80px;
}

div.csc-mailform ol li input[type="submit"] {
  width: auto;
  color: #fff;
  cursor: pointer;
  font-weight: normal;
  border: none;
  width: 33%;
  margin: 0;
  text-align: center;
  background-color: #d7b469;
  border: 3px solid #d7b469;
}

div.csc-mailform ol li input[type="submit"]:hover, a.short-request-send:hover {
  background-color: #fff;
  color: #d7b469;
}

div.csc-mailform ol li input:required {
  background-position: right -432px;
}

div.csc-mailform ol li input:required:invalid {
  background-position: right -432px;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
}

div.csc-mailform ol li input:required:valid {
  background-position: right -466px;
}

div.csc-mailform ol li input:required:focus {
  background-position: right -500px;
}

div.csc-mailform ol li input.datepicker {
  background-position: 0 -60px !important;
}

/*--------------------------------------------------------------------------------------------------------------------------------------------- form */

/*--------------------------------------------------------------------------------------------------------------------------------------------- ifws_googlemap */
.poilist {
  display: none;
}

.tx-ifwsgooglemap-pi1 {
}

#map_canvas, #mapwrapper, .ifws-google-map-simplemap-wrapper, .map_canvas {
  width: 100%;
  height: 600px;
}

.ifws-google-map-simplemap-wrapper, .map_canvas {
  height: 400px;
}

.mapmessage-content {
}

#ifws-google-map-container {
  margin: 0 auto;
  height: 600px;
  width: 100%;
  max-width: 1680px;
  position: relative;
  margin: 0 auto;
}

.tx-ifwsgooglemap-pi1 #mapmessage, .ifwsmap-message {
  display: none;
  background: transparent !important;
  border: none !important;
  border-radius: 0;
  box-shadow: none !important;
  position: absolute;
  z-index: 1000;
  padding: 32px !important;
}

.ifwsmap-message-content-wrapper:before {
  content: ".";
  font-size: 0;
  width: 0;
  height: 0;
  display: block;
  border-right: 20px solid transparent;
  border-bottom: 20px solid #2e2e2e;
  margin: 0 auto 0 10px;
}

/*.ifwsmap-message-content-wrapper:after {
 content: ".";
 font-size: 0;
 width: 0;
 height: 0;
 display: block;
 border-right: 20px solid transparent;
 border-top: 20px solid #282827;
 margin: 0 auto 0 10px;
 }*/

#mapmessage.left .ifwsmap-message-content-wrapper:before, #mapmessage.left .ifwsmap-message-content-wrapper:after,
.ifsmap-message.left .ifwsmap-message-content-wrapper:before, .ifsmap-message.left .ifwsmap-message-content-wrapper:after {
  margin: 0 20% 0 auto;
  border-left: 20px solid transparent;
  border-right: none;
}

.ifwsmap-message-content-wrapper p {
  background: #2e2e2e;
  color: #fff;
  padding: 10px 20px;
}

a#google-map-show-route-to {
  /*background: #232323 url(../images/layout/bg-sprite.png) -120px -295px no-repeat;*/
  background-color: #2e2e2e;
  display: block;
  color: #d7b469;
  text-decoration: none;
  padding: 5px 20px;
}

a#google-map-show-route-to:hover {
  text-decoration: underline;
}

/*------------------------------------------------------------------------------------------------------------------------------------ RESPONSIVE */

@media only screen and (max-width: 1700px) {
}

@media only screen and (max-width: 1680px) {
  
  .contentheader__content {
    width: 98%;
    left: 1%;
  }
  
  .wrapper__inner--content {
    width: 98%;
    margin-left: 1%;
  }
  
  .wrapper--footer .footer__content {
    width: 98%;
  }
}

@media only screen and (max-width: 1580px) {
}

@media only screen and (max-width: 1400px) {
}

@media only screen and (max-width: 1380px) {  
}

@media only screen and (max-width: 1366px) {
  
  .detail__content {
      flex: 1 0 50%;
      max-width: 50%;
  }
  
  .detail__image {
    flex: 0 0 50%;
    max-width: 50%;
  }

}

@media only screen and (max-width: 1300px) {
}

@media only screen and (max-width: 1260px) {
  
  .listitem {
    max-width: 49.5%;
    flex: 1 1 49.5%;
  }
  
  .listitem--has-image {
    max-width: 100%;
    flex: 1 1 100%;
  }
  
  .detail__location, .detail__images {
    max-width: 100%;
  }
  
  .listitem--gallery-thumbs {
    max-width: 19.5%;
    flex: 1 1 19.5%;
  }
  
  .container--timeline .frame {
    width: 70%;
  }  
  
  .contentheader__content h1 {
    font-size: 6em;
    line-height: 58px;
    height: 52px;
  }
}

@media only screen and (max-width: 1200px) {
}

@media only screen and (max-width: 1180px) {
}

@media only screen and (max-width: 1100px) {
  
  .content .csc-menu li {
    flex: 0 0 32%;
  }
}

@media only screen and (max-width: 1024px) {
  
  .header__tools {
    right: 8em;
  }
  
  .header__tools a {
    margin-left: 0.5em;
    margin-right: 0.5em;
  }
  
  .detail__content {
    flex: 0 0 100%;
    max-width: 100%;
  }
  
  .detail__image--eventsnews {
    flex: 0 0 100%;
    max-width: 100%;
  }
  
  .listitem--gallery {
    
  }
  
  div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="2"] div.csc-textpic-imagecolumn {
    width: 100%;
  }
  
  .container--timeline .frame {
    width: 80%;
  }
  
  .listitem__image--gallery {
    max-height: 400px;
  }
  
  .listitem__image--gallery, .listitem__content--gallery {
    flex: 0 0 100%;
    max-width: 100%;
  }

}

@media only screen and (max-width: 960px) {

  .wrapper--header, .contentheader__image, .mainnav,.flyout--right {
    position: absolute;
  }  
  
  .mainnav {
    padding-top: 6em;
    overflow: hidden;
  }
  
  .wrapper__inner--header {
    width: 100%;
    padding-left: 1%;
    padding-right: 1%;
  }
  
  header[role="banner"] {
    max-width: 50%;
  }
  
  .wrapper--togglenav {
    right: 1%;
  }

  .navitem {
    margin-bottom: 2em;
  }
  
  .contentheader__content h1 {
      font-size: 4em;
      height: 44px;
  }
  
  .detail__description, .detail__facts {
    flex: 0 0 100%;
    max-width: 100%;
  }
  
  footer .col--third {
    width: 49%;
    margin-right: 1%;
  }
  
  footer .col--third.col--center {
    margin-right: 0;
    margin-left: 1%;
  }
  
  footer .col--third:last-child {
    margin-right: 0;
    margin-left: 0;
    margin-top: 2em;
    width: 100%;
  }


}

@media only screen and (max-width: 900px) {
}

@media only screen and (max-width: 820px) {
}

/* smartphone landscape */
@media only screen and (max-width: 768px) {
  header[role="banner"] p a {
    font-size: 1.5em;
  }
  
   .frame--flexbox .csc-textpic, .frame--flexbox .csc-text-only {
     flex-wrap: wrap;
   }
   
   .wrapper--header .frame--flexbox .csc-textpic {
     flex-wrap: nowrap;
   }
   
  .frame--flexbox .csc-textpic-intext-left-nowrap .csc-textpic-text, 
  .frame--flexbox .csc-textpic-intext-right-nowrap .csc-textpic-text, 
  .frame--flexbox .csc-text, .frame--flexbox .csc-header, .frame--flexbox .csc-text-only .csc-header {
    flex: 0 0 100%;
  }
  
  div.csc-textpic-right .csc-textpic-imagewrap, div.csc-textpic-left .csc-textpic-imagewrap,
  .csc-textpic-left div.csc-textpic-text-wrapper, .csc-textpic-right div.csc-textpic-text-wrapper {
    width: 100%;
  }
  
  div.csc-textpic-right .csc-textpic-imagewrap {
    order: 0;
  }
  
  div.csc-textpic-left .csc-textpic-imagewrap .csc-textpic-image img,
  div.csc-textpic-right .csc-textpic-imagewrap .csc-textpic-image img {
    margin: 0 auto;
  }
  
  figcaption.csc-textpic-caption, .csc-textpic-right figcaption.csc-textpic-caption {
    left: 1em;
    right: 1em;
    margin: 0 auto;
    text-align: center;
  }
  
  .container--team .col--left, .container--team .col--right {
    flex: 0 0 50%;
    overflow: hidden;
  }
  
  .container--team .col--right .frame {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .container--teammembers .col--maxwidth .frame  {
  width: 100%;
  flex:  0 0 100%;
  margin-right: 0;
  }

.table-wrapper {
  overflow-x: scroll;
}
}

@media only screen and (max-height: 767px) {
}

@media only screen and (max-width: 700px) {
}

@media only screen and (max-height: 640px) {
}

@media only screen and (max-width: 680px) {
  
  h2 {
    font-size: 1.5em;
  }
  
  .contentheader__content h1 {
      font-size: 3em;
      height: 40px;
  }
  
  .content .csc-menu li {
    flex: 0 0 49%;
  }
  
  .content .csc-menu a {
    padding: 4em 2em;
  }

  .listitem, .listitem--has-image .listitem__content, .listitem__content--gallery {
    padding: 4em 2em;
  }
  
  .listitem--has-image, .listitem--gallery, .listitem--gallery-thumbs {
    padding: 0;
  }
  
  div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="3"] div.csc-textpic-imagecolumn {
    width: 50%;
  }  
  
  div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="3"] div.csc-textpic-imagecolumn:last-child {
    margin: 0 25%;
  }

  .layout--100 .csc-textpic-text-wrapper, .layout--100 .csc-text, 
  .layout--100 .csc-header, .layout--101 .csc-textpic-text-wrapper,
  .layout--101 .csc-text, .layout--101 .csc-header, .layout--102 .csc-textpic-text-wrapper, 
  .layout--102 .csc-text, .layout--102 .csc-header, .layout--103 .csc-textpic-text-wrapper, 
  .layout--103 .csc-text, .layout--103 .csc-header, .container--team .col--right .csc-text {
    padding: 2em;
  }  
  
  .container--timeline .frame {
    width: 90%;
  }
  
  .container--flex .row {
    flex-wrap: wrap;
  }
  
  .container--flex .col--half {
    flex: 0 0 100%;
  }
  
  .navi__listitem--year {
    width: 32%;
    flex: 0 0 32%;
  }  
  
  footer .col--third {
    width: 100%;
    margin-right: 0;
  }
  
  footer .col--third.col--center {
    margin-right: 0;
    margin-left: 0;
    margin-top: 2em;
  }
  
}

@media only screen and (max-width: 600px) {
  
  header[role="banner"] p a {
    font-size: 1.25em;
  }  
  
}

@media only screen and (max-width: 520px) {

  header[role="banner"] .frame:first-child {
    visibility: hidden;
    height: 0;
    overflow: hidden;
  }
  
  header[role="banner"] .frame:last-child {
    visibility: visible;
    height: auto;
  }
  
  .togglenav {
    width: 32px;
    overflow: hidden;
  }  
  
  .header__tools {
      right: 4em;
  }
  
  .header__tools a {
    margin-left: 0;
  }
  
  .listitem {
    flex: 0 0 100%;
    max-width: 100%;
  }
  
  .listitem--has-image .listitem__image {
    flex: 0 0 100%;
  }
  
  .listitem--has-image .listitem__content {
    flex: 0 0 100%;
    max-width: 100%;
  }
  
  .listitem--gallery-thumbs {
    flex: 0 0 32%;
    max-width: 32%;
  }
  
  .detail__description, .detail__facts, .detail__images, .detail__videos, .detail__content {
    padding: 4em 2em;
  }
  
  .navi__listitem--year {
    width: 49%;
    flex: 0 0 49%;
  }  
  
}

@media only screen and (max-width: 480px) {
  .container--team .row {
    flex-wrap: wrap;
  }
  
  .container--team .col--left, .container--team .col--right {
    flex: 0 0 100%;
  }
  
  div.csc-textpic .csc-textpic-imagewrap[data-csc-cols="4"] div.csc-textpic-imagecolumn {
    width: 100%;
  }
  
}

@media only screen and (max-width: 460px) {
  
  .contentheader__content h1 {
      font-size: 2.5em;
      height: 38px;
  }
  
  .content .csc-menu li {
    flex: 0 0 100%;
  }  
}

@media only screen and (max-width: 420px) {
  
}

@media only screen and (max-width: 400px) {
}

@media only screen and (max-height: 480px) {
}

/* Smartphones: iPhone portrait, hd portrait */
@media only screen and (max-width: 380px) {
  
  .contentheader__content h1 {
      font-size: 2em;
      height: 38px;
  }

}

@media only screen and (max-width: 360px) {
}

/* Smartphones: iPhone portrait, hd portrait */
@media only screen and (max-width: 320px) {

}

@media only screen and (max-height: 320px) {
}
