/**
 * itl theme color map
 *
 * Sass Maps: https://webdesign.tutsplus.com/tutorials/an-introduction-to-sass-maps-usage-and-examples--cms-22184
 */
/* custom structure styles */
body {
  color: #000;
  font-family: 'Source Sans Pro', Verdana, Helvetica, Arial, sans-serif; }

.row {
  max-width: 1100px; }
/* custom typography styles */
h1, h2, h3, h4, h5, h6 {
  color: #00634b;
  font-family: 'Source Sans Pro', Verdana, Helvetica, Arial, sans-serif; }
  h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
    color: #00634b; }

h1, .headline {
  color: #00634b;
  font-size: 22px;
  font-weight: bold; }
  h1 small, .headline small {
    color: #646464; }
  @media screen and (min-width: 40em) {
  h1, .headline {
    font-size: 30px; } }
  @media screen and (min-width: 64em) {
  h1, .headline {
    font-size: 42px; } }
  h1.headline2, .headline.headline2 {
    color: #00634b;
    font-size: 18px; }
    @media screen and (min-width: 40em) {
  h1.headline2, .headline.headline2 {
    font-size: 24px; } }
    @media screen and (min-width: 64em) {
  h1.headline2, .headline.headline2 {
    font-size: 28px; } }
    h1.headline2 small, .headline.headline2 small {
      color: #646464; }

h2 {
  color: #00634b;
  font-size: 18px; }
  @media screen and (min-width: 40em) {
  h2 {
    font-size: 24px; } }
  @media screen and (min-width: 64em) {
  h2 {
    font-size: 28px; } }
  h2 small {
    color: #646464; }

h3 {
  font-size: 22px; }
  @media screen and (max-width: 39.9375em) {
  h3 {
    font-size: 16px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
  h3 {
    font-size: 18px; } }
  h3.small {
    font-size: 18px; }
    @media screen and (max-width: 39.9375em) {
  h3.small {
    font-size: 14px; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
  h3.small {
    font-size: 16px; } }

h4 {
  font-size: 18px; }
  @media screen and (min-width: 40em) {
  h4 {
    font-size: 24px; } }
  @media screen and (min-width: 64em) {
  h4 {
    font-size: 28px; } }

p {
  font-size: 22px; }
  @media screen and (max-width: 39.9375em) {
  p {
    font-size: 16px;
    word-break: break-word; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
  p {
    font-size: 18px; } }

a {
  color: #00634b; }
  a:hover {
    color: #003024; }

ul.list li {
  font-size: 16px; }
  @media screen and (min-width: 40em) {
      ul.list li {
        font-size: 18px; } }
  @media screen and (min-width: 64em) {
      ul.list li {
        font-size: 22px; } }
  ul.list li:before {
    background: #00634b;
    border-radius: 50%; }
  ul.list ul li {
    font-size: 14px; }
    @media screen and (min-width: 40em) {
      ul.list ul li {
        font-size: 16px; } }
    @media screen and (min-width: 64em) {
      ul.list ul li {
        font-size: 18px; } }
    ul.list ul li a {
      color: #323232; }
      ul.list ul li a:hover {
        color: #191919; }
  ul.unstyled {
    font-size: 22px; }
  @media screen and (max-width: 39.9375em) {
    ul.unstyled {
      font-size: 16px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    ul.unstyled {
      font-size: 18px; } }

ol {
  font-size: 22px; }
  @media screen and (max-width: 39.9375em) {
  ol {
    font-size: 16px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
  ol {
    font-size: 18px; } }

.small-font {
  font-size: 10px; }
  @media screen and (min-width: 40em) {
  .small-font {
    font-size: 12px; } }
  @media screen and (min-width: 64em) {
  .small-font {
    font-size: 14px; } }

blockquote p {
  font-size: 16px; }
  @media screen and (min-width: 40em) {
    blockquote p {
      font-size: 18px; } }
  @media screen and (min-width: 64em) {
    blockquote p {
      font-size: 24px; } }
  @media screen and (min-width: 64em) {
    blockquote p {
      font-size: 1.625rem; } }
  blockquote footer {
    background: transparent !important;
    color: #00634b !important;
    font-size: 14px; }
  @media screen and (min-width: 40em) {
    blockquote footer {
      font-size: 18px; } }
  @media screen and (min-width: 64em) {
    blockquote footer {
      font-size: 22px; } }
  blockquote:before, blockquote:after {
    color: #00634b; }

date {
  font-size: 10px; }
  @media screen and (min-width: 40em) {
  date {
    font-size: 12px; } }
  @media screen and (min-width: 64em) {
  date {
    font-size: 14px; } }
/* custom button styles */
.button {
  background: #00634b;
  border-radius: 3px;
  color: white;
  font-size: 22px;
  padding: 10px 15px; }
  @media screen and (max-width: 77.5em) {
  .button {
    font-size: 18px; } }
  @media screen and (max-width: 39.9375em) {
  .button {
    font-size: 16px; } }
  .button:hover, .button:focus {
    background: #003024;
    color: white; }
  .button.hollow.light {
    border-color: #fff;
    color: #fff; }
  .button.hollow.light:hover {
    background-color: white;
    color: #00634b; }
/* custom social button styles */
.button-facebook::before {
  background: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-social-facebook.svg") center center no-repeat; }

.button-twitter::before {
  background: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-social-twitter.svg") center center no-repeat; }

.button-envelope::before {
  background: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-social-envelope.svg") center center no-repeat; }

.button-facebook-img {
  background: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-social-facebook.svg") center center no-repeat #1776f2 !important;
  background-size: 25px auto !important; }

.button-twitter-img {
  background: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-social-twitter.svg") center center no-repeat #1da1f2 !important;
  background-size: 25px auto !important; }

.button-envelope-img {
  background: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-social-envelope.svg") center center no-repeat #8a8a8a !important;
  background-size: 25px auto !important; }
/* custom card teaser styles */
.card-teaser {
  border-radius: 3px; }
  .card-teaser.card-teaser-link .link-button {
    background: #00634b;
    border-radius: 3px 0 0 0;
    color: white; }
  .card-teaser.card-teaser-link:hover .link-button {
    background: #003024; }
  .card-teaser h2 {
    color: #00634b;
    font-size: 20px; }
  @media screen and (min-width: 40em) {
    .card-teaser h2 {
      font-size: 26px; } }
  @media screen and (min-width: 64em) {
    .card-teaser h2 {
      font-size: 22px; } }
  .card-teaser p {
    font-size: 14px; }
  @media screen and (min-width: 40em) {
    .card-teaser p {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .card-teaser p {
      font-size: 18px; } }
/* custom contact card styles */
.contact-card {
  border-radius: 3px; }
  .contact-card h3 {
    color: #00634b; }
  .contact-card h2 {
    color: #00634b;
    font-size: 16px; }
  @media screen and (min-width: 40em) {
    .contact-card h2 {
      font-size: 18px; } }
  @media screen and (min-width: 64em) {
    .contact-card h2 {
      font-size: 22px; } }
  .contact-card p {
    font-size: 14px; }
  @media screen and (min-width: 40em) {
    .contact-card p {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .contact-card p {
      font-size: 18px; } }
  .contact-card .contact-card-image > div {
    border-radius: 50%; }
/* custom contacts styles */
.contacts .contact-person {
  border-radius: 50%; }
  .contacts p {
    font-size: 14px; }
  @media screen and (min-width: 40em) {
    .contacts p {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .contacts p {
      font-size: 18px; } }
  .contacts span.highlight {
    font-size: 16px; }
  @media screen and (min-width: 40em) {
    .contacts span.highlight {
      font-size: 18px; } }
  @media screen and (min-width: 64em) {
    .contacts span.highlight {
      font-size: 22px; } }
/* custom content slider styles */
.content-slider {
  background: #00634b;
  color: black;
  /**
   * slick arrows
   */ }
  .content-slider h2 {
    color: black;
    font-size: 22px; }
  @media screen and (min-width: 40em) {
    .content-slider h2 {
      font-size: 36px; } }
  @media screen and (min-width: 64em) {
    .content-slider h2 {
      font-size: 46px; } }
  .content-slider h1, .content-slider h3 {
    color: black; }
  .content-slider p {
    color: black;
    font-size: 16px; }
  @media screen and (min-width: 40em) {
    .content-slider p {
      font-size: 18px; } }
  @media screen and (min-width: 40em) {
    .content-slider p {
      font-size: 22px; } }
  .content-slider .button.hollow.light {
    border-color: white;
    color: white; }
    .content-slider .button.hollow.light:hover {
      color: #00634b;
      background-color: white; }
  .content-slider .slick-arrow {
    border-radius: 50%; }
  .content-slider .slick-prev {
    background: transparent url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-arrow-left-white.svg") 47% 50% no-repeat; }
  .content-slider .slick-next {
    background: transparent url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-arrow-right-white.svg") 53% 50% no-repeat; }
  .content-slider ul.list li:before {
    background: black; }
/* custom form styles */
label {
  color: #00634b;
  font-size: 14px; }
  @media screen and (min-width: 40em) {
  label {
    font-size: 16px; } }
  @media screen and (min-width: 64em) {
  label {
    font-size: 1rem; } }
  label span {
    font-size: 10px; }
  @media screen and (min-width: 40em) {
    label span {
      font-size: 12px; } }
  @media screen and (min-width: 64em) {
    label span {
      font-size: 0.75rem; } }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea, select {
  border-radius: 3px; }

select {
  border-radius: 3px; }

.form-error, .alert.callout {
  border-radius: 3px; }
  .form-error p, .alert.callout p {
    font-size: 14px; }
  @media screen and (min-width: 40em) {
    .form-error p, .alert.callout p {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .form-error p, .alert.callout p {
      font-size: 1rem; } }

.form-info {
  font-size: 14px; }
  @media screen and (min-width: 40em) {
  .form-info {
    font-size: 16px; } }
  @media screen and (min-width: 64em) {
  .form-info {
    font-size: 18px; } }

label.radio input:checked ~ .pseudo-input:after, label.checkbox input:checked ~ .pseudo-input:after {
  border-color: #00634b; }

label.radio input:checked ~ .pseudo-input:after {
  background: #00634b; }
/* custom downloadlist styles */
.download-list li span {
  color: #646464;
  font-size: 14px; }
  @media screen and (min-width: 40em) {
      .download-list li span {
        font-size: 16px; } }
  @media screen and (min-width: 64em) {
      .download-list li span {
        font-size: 14px; } }
  .download-list li a {
    font-size: 16px; }
  @media screen and (min-width: 40em) {
      .download-list li a {
        font-size: 18px; } }
  @media screen and (min-width: 64em) {
      .download-list li a {
        font-size: 22px; } }
  .download-list li a:before {
    background: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-download-white.svg") center center no-repeat #00634b;
    background-size: auto 20px;
    border-radius: 50%; }
/* custom feed card styles */
.feed-card h3 {
  font-size: 20px; }
  @media screen and (min-width: 40em) {
    .feed-card h3 {
      font-size: 26px; } }
  @media screen and (min-width: 64em) {
    .feed-card h3 {
      font-size: 22px; } }
  .feed-card p {
    font-size: 14px; }
  @media screen and (min-width: 40em) {
    .feed-card p {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .feed-card p {
      font-size: 18px; } }
/* custom filter styles */
.filter select {
  border-radius: 3px 0 0 3px;
  font-size: 14px; }
  @media screen and (min-width: 40em) {
    .filter select {
      font-size: 16px; } }
  .filter button[type="submit"] {
    background: #00634b;
    border-radius: 0 3px 3px 0;
    color: white;
    font-size: 14px; }
  .filter button[type="submit"]:hover {
    background-color: #003024; }
  @media screen and (min-width: 40em) {
    .filter button[type="submit"] {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .filter button[type="submit"] {
      font-size: 18px; } }
/* custom footer styles */
footer:not(.article-footer) {
  background: #00634b;
  color: white; }
  footer:not(.article-footer) a {
    color: white; }
  footer:not(.article-footer) a:hover {
    color: white; }
  footer:not(.article-footer) p {
    font-size: 22px; }
  @media screen and (max-width: 39.9375em) {
    footer:not(.article-footer) p {
      font-size: 22px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    footer:not(.article-footer) p {
      font-size: 22px; } }
  footer:not(.article-footer) p.map:before {
    background-image: url(../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-map-white.svg);
    background-size: cover; }
  footer:not(.article-footer) p.phone:before {
    background-image: url(../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-phone-white.svg);
    background-size: cover; }
  footer:not(.article-footer) strong {
    font-size: 16px; }
  @media screen and (min-width: 40em) {
    footer:not(.article-footer) strong {
      font-size: 18px; } }
  @media screen and (min-width: 64em) {
    footer:not(.article-footer) strong {
      font-size: 22px; } }

.footer-nav li a {
  color: white;
  font-size: 16px; }
  @media screen and (min-width: 40em) {
      .footer-nav li a {
        font-size: 18px; } }
  @media screen and (min-width: 64em) {
      .footer-nav li a {
        font-size: 22px; } }
  .footer-nav li a:hover {
    color: #e6e6e6; }

.footer-logo {
  background: #fff;
  border: 14px solid #fff; }
/* custom image gallery styles */
.image-overlay {
  background: rgba(0, 0, 0, 0.6);
  color: #fff; }
  .image-overlay h1, .image-overlay h2, .image-overlay h3, .image-overlay h4, .image-overlay h5, .image-overlay h6, .image-overlay .cta, .image-overlay a {
    color: #fff; }
  .image-overlay .button {
    border-color: #fff;
    color: white; }
  .image-overlay .button:hover {
    background-color: #fff;
    color: #00634b; }
  .image-overlay ul.list li:before {
    background: #fff; }

.image-overlay-close {
  border-radius: 50%; }

.slick-arrow {
  border-radius: 50%; }
/* custom image slider styles */
.image-text-slider-container .image-slider .slick-arrow {
  border-radius: 50%; }
  .image-text-slider-container .image-slider-text {
    border-radius: 3px; }
/* custom image teaser styles */
.image-teaser h2 {
  font-size: 22px; }
  @media screen and (min-width: 40em) {
    .image-teaser h2 {
      font-size: 30px; } }
  @media screen and (min-width: 77.5em) {
    .image-teaser h2 {
      font-size: 42px; } }
/* custom linklist styles */
.linklist li {
  font-size: 16px; }
  @media screen and (min-width: 40em) {
    .linklist li {
      font-size: 18px; } }
  @media screen and (min-width: 64em) {
    .linklist li {
      font-size: 22px; } }
  .linklist ul li {
    font-size: 14px; }
  @media screen and (min-width: 40em) {
      .linklist ul li {
        font-size: 16px; } }
  @media screen and (min-width: 64em) {
      .linklist ul li {
        font-size: 18px; } }
  .linklist ul li:before {
    background: #00634b;
    border-radius: 50%; }
/* custom location styles */
.location {
  font-size: 18px; }
  @media screen and (max-width: 39.9375em) {
  .location {
    font-size: 14px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .location {
    font-size: 16px; } }
/* custom off canvas nav styles */
body.menu-open:after {
  background: rgba(255, 255, 255, 0.8); }
  body.menu-open .menu-button {
    transition: opacity 200ms ease;
    opacity: 0; }

.off-canvas-nav {
  background: #00634b; }
  .off-canvas-nav .close-nav {
    background: #00634b;
    border-radius: 3px 0 0 3px; }
  .off-canvas-nav .close-nav .cross::before, .off-canvas-nav .close-nav .cross::after {
    background: #fff; }
  .off-canvas-nav .close-nav:hover {
    background: #003024; }
  .off-canvas-nav .close-nav:hover .cross::before, .off-canvas-nav .close-nav:hover .cross::after {
    background: #fff; }

.ocn-list .lvl-1 {
  background: #00634b;
  /**
   * split button part to toggle sub menus
   */
  /**
   * state: open sub menu
   */ }
  .ocn-list .lvl-1 > a, .ocn-list .lvl-1 .name {
    color: white;
    font-size: 16px; }
  @media screen and (min-width: 40em) {
      .ocn-list .lvl-1 > a, .ocn-list .lvl-1 .name {
        font-size: 18px; } }
  @media screen and (min-width: 64em) {
      .ocn-list .lvl-1 > a, .ocn-list .lvl-1 .name {
        font-size: 22px; } }
  .ocn-list .lvl-1 > a:hover, .ocn-list .lvl-1 .name:hover {
    color: white;
    border-left: 2px solid #007d5e; }
  .ocn-list .lvl-1.active > a {
    color: #00634b; }
  .ocn-list .lvl-1 > .sub-toggle button {
    background: transparent url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-nav-arrow-bottom-white.svg") center center no-repeat;
    background-size: 15px auto; }
  .ocn-list .lvl-1 > .sub-toggle button:hover {
    background: #004a38 url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-nav-arrow-bottom-white.svg") center center no-repeat;
    background-size: 15px auto; }
  .ocn-list .lvl-1.open > .sub-toggle button {
    background-color: #00634b; }
  .ocn-list .lvl-2 > a {
    color: white;
    font-size: 18px; }
  .ocn-list .lvl-2 > a:hover {
    text-decoration: underline; }
  .ocn-list .lvl-2.active > a {
    text-decoration: underline; }
  .ocn-list .sub-menu {
    border-left: 2px solid #007d5e; }
/* custom pagination styles */
@media screen and (min-width: 40em) {
  .pagination .current {
    background: #004a38;
    border-radius: 50%;
    color: white; }
    .pagination li {
      font-size: 14px; }
    .pagination a, .pagination button {
      background: #00634b;
      border-radius: 50%;
      color: white; }
      .pagination a:hover, .pagination button:hover {
        background: #004a38; }
    .pagination .pagination-previous a, .pagination .pagination-next a {
      background: none;
      color: #00634b; }
      .pagination .pagination-previous a:hover, .pagination .pagination-next a:hover {
        background: none;
        color: #00634b; } }
  @media screen and (min-width: 40em) and screen and (min-width: 40em) {
        .pagination li {
          font-size: 16px; } }
  @media screen and (min-width: 64em) and screen and (min-width: 64em) {
        .pagination li {
          font-size: 18px; } }

@media screen and (max-width: 39.9375em) {
  .pagination li a {
    color: #00634b;
    text-decoration: none; } }
/* custom portal styles */
.portal-login-head {
  background: #00634b; }
  .portal-login-head h2 {
    color: white;
    font-size: 20px; }
  @media screen and (min-width: 40em) {
    .portal-login-head h2 {
      font-size: 26px; } }
  @media screen and (min-width: 64em) {
    .portal-login-head h2 {
      font-size: 36px; } }

.portal-login-container a {
  color: #00634b;
  font-size: 14px; }
  @media screen and (min-width: 40em) {
    .portal-login-container a {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .portal-login-container a {
      font-size: 1rem; } }
/* custom report styles */
.report-thumbnail {
  margin-top: 6px; }
  @media screen and (min-width: 40em) {
  .report-thumbnail {
    border-right: 2px solid #00634b; } }

.report-container a p {
  color: #323232; }
  .report-container date {
    color: #323232; }
/* custom search form styles */
.search-form {
  border-radius: 3px; }
  .search-form ::-webkit-input-placeholder {
    color: #00634b; }
  .search-form ::-moz-placeholder {
    color: #00634b; }
  .search-form :-ms-input-placeholder {
    color: #00634b; }
  .search-form :-moz-placeholder {
    color: #00634b; }
  .search-form input[type="search"], .search-form input[type="text"] {
    background: #fff;
    border-bottom: 2px solid #00634b;
    border-radius: 3px;
    color: #00634b;
    font-size: 18px; }
  @media screen and (min-width: 40em) {
    .search-form input[type="search"], .search-form input[type="text"] {
      font-size: 24px; } }
  @media screen and (min-width: 64em) {
    .search-form input[type="search"], .search-form input[type="text"] {
      font-size: 1.625rem; } }
  .search-form button[type="submit"] {
    background: #00634b url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-searchwhite.svg") center center no-repeat; }
  .search-form button[type="submit"]:hover {
    background-color: #004a38; }
  .search-form#branches-filter button[type="submit"] {
    background: #00634b url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-search-arrow-white.svg") center center no-repeat;
    background-size: 22px auto; }
/* custom search container styles */
.search-content-container {
  background: #fff; }
  .itl-theme-white .search-content-container {
    background: #d6dbe2; }
  .search-content-container h3 {
    color: #00634b;
    font-size: 18px; }
  @media screen and (min-width: 40em) {
    .search-content-container h3 {
      font-size: 24px; } }
  @media screen and (min-width: 64em) {
    .search-content-container h3 {
      font-size: 28px; } }

.widget-form ::-webkit-input-placeholder {
  color: #00634b; }
  .widget-form ::-moz-placeholder {
    color: #00634b; }
  .widget-form :-ms-input-placeholder {
    color: #00634b; }
  .widget-form :-moz-placeholder {
    color: #00634b; }
  .widget-form input[type="search"], .widget-form input[type="text"] {
    background: #d6dbe2;
    border-radius: 3px 0 0 3px;
    color: #323232;
    font-size: 14px; }
  @media screen and (min-width: 40em) {
    .widget-form input[type="search"], .widget-form input[type="text"] {
      font-size: 18px; } }
  @media screen and (min-width: 64em) {
    .widget-form input[type="search"], .widget-form input[type="text"] {
      font-size: 18px; } }
  .widget-form button[type="submit"] {
    background: #00634b url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-search-white.svg") center center no-repeat;
    background-size: 17px;
    border-radius: 0 3px 3px 0; }
  .widget-form button[type="submit"]:hover {
    background-color: #00634b; }
/* custom section hero styles */
.section-hero .hero-text-box {
  background-color: #00634b;
  border-radius: 3px;
  color: white; }
  @media screen and (min-width: 40em) {
    .section-hero .hero-text-box {
      background-color: rgba(0, 99, 75, 0.7); } }
  .section-hero .hero-text-box h1, .section-hero .hero-text-box h2, .section-hero .hero-text-box h3, .section-hero .hero-text-box h4, .section-hero .hero-text-box h5, .section-hero .hero-text-box h6, .section-hero .hero-text-box p, .section-hero .hero-text-box .headline {
    color: white; }
  .section-hero .hero-text-box p {
    font-size: 16px; }
  @media screen and (min-width: 40em) {
      .section-hero .hero-text-box p {
        font-size: 18px; } }
  @media screen and (min-width: 40em) {
      .section-hero .hero-text-box p {
        font-size: 22px; } }

.section-hero__img-slider .slick-arrow {
  border: 2px solid #fff; }
  .section-hero__img-slider .slick-arrow:hover {
    background-color: rgba(255, 255, 255, 0.2); }
  .section-hero__img-slider .slick-prev {
    background: transparent url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-arrow-left-white.svg") 47% 50% no-repeat;
    left: 20px; }
  .section-hero__img-slider .slick-next {
    background: transparent url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-arrow-right-white.svg") 53% 50% no-repeat;
    right: 20px; }
  .section-hero__img-slider .slick-dots li {
    float: left;
    padding: 0 2px; }
  .section-hero__img-slider .slick-dots button {
    background-color: rgba(255, 255, 255, .7);
    border-radius: 50%; }
  .section-hero__img-slider .slick-dots .slick-active button {
    background-color: #fff; }

.section-hero-slider .slick-dots li.slick-active button {
  background-color: #00634b; }

.section-hero__text-box {
  background: #00634b;
  border-radius: 3px;
  color: #fff; }
  @media screen and (min-width: 64em) {
  .section-hero__text-box {
    background: rgba(0, 99, 75, .7); } }

.video-text-box {
  background-color: #00634b;
  border-radius: 3px;
  color: white; }
  @media screen and (min-width: 40em) {
  .video-text-box {
    background-color: rgba(0, 99, 75, 0.7); } }
  .video-text-box h1, .video-text-box h2, .video-text-box h3, .video-text-box h4, .video-text-box h5, .video-text-box h6, .video-text-box p {
    color: white; }
  .video-text-box p {
    font-size: 16px; }
  @media screen and (min-width: 40em) {
    .video-text-box p {
      font-size: 18px; } }
  @media screen and (min-width: 40em) {
    .video-text-box p {
      font-size: 22px; } }

.section-hero__play {
  background: url("../../Images/Modular-v1/icons/icon-play-white.svg") center center no-repeat;
  background-size: auto 100px; }

.section-hero__play--pause {
  background: url("../../Images/Modular-v1/icons/icon-pause-white.svg") center center no-repeat;
  background-size: auto 100px; }
/* custom site header styles */
.site-header {
  background: #fff;
  border-bottom: 2px solid #646464; }

.menu-button {
  background: #00634b;
  border-radius: 3px;
  opacity: 1;
  transition: opacity 200ms ease; }
  .menu-button:hover {
    background: #004a38; }

.burger-icon span {
  background: white; }

.site-logo {
  background: #fff;
  border: 14px solid #fff; }
  .site-logo:hover {
    border: 14px solid #fff; }
  @media screen and (max-width: 63.9375em) {
  .site-logo {
    border: 0 solid #fff; } }
/* custom table styles */
table {
  font-size: 22px; }
  @media screen and (max-width: 39.9375em) {
  table {
    font-size: 16px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
  table {
    font-size: 18px; } }
  table tbody tr:nth-child(even) {
    background: #f7f7f7; }
/* custom cookie styles */
.cc-window {
  border-top: 2px solid #00634b; }

.cc-btn {
  font-size: 14px; }
  @media screen and (min-width: 40em) {
  .cc-btn {
    font-size: 16px; } }
  @media screen and (min-width: 64em) {
  .cc-btn {
    font-size: 18px; } }

.cc__header {
  color: #fff;
  font-size: 14px; }
  @media screen and (min-width: 40em) {
  .cc__header {
    font-size: 16px; } }
  @media screen and (min-width: 64em) {
  .cc__header {
    font-size: 18px; } }

.cc__message {
  font-size: 10px; }
  @media screen and (min-width: 40em) {
  .cc__message {
    font-size: 12px; } }
  @media screen and (min-width: 64em) {
  .cc__message {
    font-size: 14px; } }
  .cc__message a {
    color: #00634b; }
  .cc__message a:hover {
    color: #003024; }
/* custom event styles */
p.event-info {
  font-size: 14px; }
  @media screen and (min-width: 40em) {
  p.event-info {
    font-size: 16px; } }
  @media screen and (min-width: 64em) {
  p.event-info {
    font-size: 18px; } }
  p.event-info time {
    color: #00634b;
    font-size: 14px; }
  @media screen and (min-width: 40em) {
    p.event-info time {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    p.event-info time {
      font-size: 18px; } }

@media screen and (min-width: 40em) {
    .events-thumbnail {
      border-right: 2px solid #00634b; } }
/* custom sidebar widget styles */
.sidebar-widgets {
  filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.25));
  /**
   * mobile widget toggle button
   */
  /**
   * widget element
   */
  /**
   * icon button
   */
  /**
   * widget content
   */ }
  @media screen and (min-width: 40em) {
  .sidebar-widgets {
    filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.25)); } }
  .sidebar-widgets .toggle-widgets {
    background-color: #fff;
    border: 3px solid #fff; }
  .sidebar-widgets .toggle-widgets .toggle-widgets-icon {
    border: 3px solid #00634b; }
  .sidebar-widgets .toggle-widgets .icon-cross {
    border: 2px solid #00634b; }
  .sidebar-widgets .toggle-widgets .icon-cross::before, .sidebar-widgets .toggle-widgets .icon-cross::after {
    background: #00634b; }
  .sidebar-widgets .toggle-widgets.active {
    background-color: #00634b; }
  .sidebar-widgets .toggle-widgets.active .icon-cross {
    border-color: #fff; }
  .sidebar-widgets .toggle-widgets.active .icon-cross::before {
    background-color: #fff; }
  .sidebar-widgets .toggle-widgets.active .icon-cross::after {
    background-color: #fff; }
  .sidebar-widgets .side-widget {
    background: #fff;
    border: 3px solid #fff; }
  @media screen and (min-width: 40em) {
    .sidebar-widgets .side-widget {
      border-width: 10px; } }
  .sidebar-widgets .side-widget-icon {
    border: 3px solid #00634b; }
  @media screen and (min-width: 40em) {
    .sidebar-widgets .side-widget-icon:hover {
      background-color: #00634b; }
      .sidebar-widgets .side-widget-icon:hover .side-widget-svg {
        stroke: #fff; }
      .sidebar-widgets .side-widget-icon:hover .side-widget-fill-svg {
        fill: #fff; } }
  .sidebar-widgets .side-widget-svg {
    stroke: #00634b; }
  .sidebar-widgets .side-widget-fill-svg {
    fill: #00634b; }
  @media screen and (max-width: 39.9375em) {
    .sidebar-widgets .side-widget-body {
      background: #fff;
      border: 3px solid #fff;
      box-shadow: inset 3px 3px 0 #00634b, inset -3px -3px 0 #00634b; } }
  @media screen and (min-width: 40em) {
    .sidebar-widgets .side-widget-body {
      border: 5px solid #00634b; } }
  @media screen and (max-width: 39.9375em) {
    .sidebar-widgets .side-widget.open .side-widget-icon {
      background-color: #00634b; }
      .sidebar-widgets .side-widget.open .side-widget-icon .side-widget-svg {
        stroke: #fff; }
      .sidebar-widgets .side-widget.open .side-widget-icon .side-widget-fill-svg {
        fill: #fff; } }
  .sidebar-widgets h3 {
    color: #00634b;
    font-size: 18px; }
  @media screen and (max-width: 39.9375em) {
    .sidebar-widgets h3 {
      font-size: 24px; } }
  @media screen and (min-width: 40em) {
    .sidebar-widgets h3 {
      font-size: 28px; } }
  .sidebar-widgets p {
    font-size: 14px; }
  @media screen and (max-width: 39.9375em) {
    .sidebar-widgets p {
      font-size: 16px; } }
  @media screen and (min-width: 40em) {
    .sidebar-widgets p {
      font-size: 18px; } }
  .sidebar-widgets .close-button {
    color: #00634b; }
  .sidebar-widgets .close-button:hover {
    color: #00634b; }

.site-main-navigation .li-lvl-1 > a, .site-main-navigation .li-lvl-1 > span {
  font-size: 18px; }
  .site-main-navigation .li-lvl-1 > a:hover, .site-main-navigation .li-lvl-1 > span:hover, .site-main-navigation .li-lvl-1 > a:focus, .site-main-navigation .li-lvl-1 > span:focus {
    color: #00634b; }
  .site-main-navigation .li-lvl-1 > a:hover path, .site-main-navigation .li-lvl-1 > span:hover path, .site-main-navigation .li-lvl-1 > a:focus path, .site-main-navigation .li-lvl-1 > span:focus path {
    fill: #00634b; }
  .site-main-navigation .li-lvl-1.active > span, .site-main-navigation .li-lvl-1.active > a {
    color: #00634b; }
  .site-main-navigation .li-lvl-1.active > span path, .site-main-navigation .li-lvl-1.active > a path {
    fill: #00634b; }
  .site-main-navigation .li-lvl-1.has-sub-menu:hover {
    border-left-color: #00634b; }
  .site-main-navigation .li-lvl-1.has-sub-menu:hover > a, .site-main-navigation .li-lvl-1.has-sub-menu:hover > span {
    color: #00634b; }
  .site-main-navigation .li-lvl-1.has-sub-menu:hover path {
    fill: #00634b; }
  .site-main-navigation .li-lvl-1.has-sub-menu:last-child:hover, .site-main-navigation .li-lvl-1.has-sub-menu:nth-last-child(2):hover, .site-main-navigation .li-lvl-1.has-sub-menu:nth-last-child(3):hover {
    border-right-color: #00634b; }
    .site-main-navigation .li-lvl-1.has-sub-menu:last-child:hover + li, .site-main-navigation .li-lvl-1.has-sub-menu:nth-last-child(2):hover + li, .site-main-navigation .li-lvl-1.has-sub-menu:nth-last-child(3):hover + li {
      border-left-color: #00634b; }
  .site-main-navigation .li-lvl-2:last-child {
    border-bottom: 2px solid #00634b; }
  .site-main-navigation .li-lvl-2 a {
    color: #000;
    font-size: 14px; }
  .site-main-navigation .li-lvl-2 a:hover {
    color: #00634b; }
  .site-main-navigation .li-lvl-2.active > a {
    color: #00634b; }
  .site-main-navigation li:hover .li-lvl-2 {
    border-left-color: #00634b; }
  .site-main-navigation li:last-child:hover .li-lvl-2, .site-main-navigation li:nth-last-child(2):hover .li-lvl-2, .site-main-navigation li:nth-last-child(3):hover .li-lvl-2 {
    border-right-color: #00634b; }
/* custom maps styles */
.map-controls-button {
  background: #00634b none center center no-repeat; }
  .map-controls-button:hover {
    background-color: #003024; }

.map-controls-button-zoom-plus {
  background-image: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-plus-white.svg");
  background-size: 20px; }

.map-controls-button-zoom-minus {
  background-image: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-minus-white.svg");
  background-size: 20px; }

hr.ce-div {
  max-width: calc(1100px - 20px);
  width: calc(100% - 20px); }
  @media screen and (min-width: 40em) {
  hr.ce-div {
    max-width: calc(1100px - 40px);
    width: calc(100% - 40px); } }
  @media screen and (min-width: 81.25em) {
  hr.ce-div {
    max-width: calc(1100px - 1.25rem);
    width: calc(100% - 1.25rem); } }

.site-main-navigation .main-nav.has-level-3 li {
  background-color: #fff; }
  .site-main-navigation .main-nav.has-level-3 li.has-sub-menu {
    position: relative; }
  .site-main-navigation .main-nav.has-level-3 li.has-sub-menu:hover {
    border-right-color: #fff;
    transition: border-color 0s; }
  .site-main-navigation .main-nav.has-level-3 li.has-sub-menu:hover > a, .site-main-navigation .main-nav.has-level-3 li.has-sub-menu:hover > span {
    color: #00634b; }
  .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-1:hover > .sub-menu {
    overflow: visible; }
  .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-2 > span {
    cursor: pointer;
    font-weight: bold;
    font-size: 14px;
    padding-left: 18px; }
    .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-2 > span > svg {
      transform: rotate(0);
      margin-left: 6px;
      margin-right: 6px;
      width: 10px;
      height: 7px;
      position: relative;
      top: -1px; }
  .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-2 > .sub-menu {
    display: none;
    max-height: 600px;
    overflow: visible;
    z-index: 99999; }
  .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-2:last-child a {
    padding-bottom: 5px; }
    .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-2:last-child > span, .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-2:last-child > a {
      display: block;
      padding-bottom: 24px; }
  .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-2:hover > span > svg {
    transform: rotate(-90deg); }
  .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-2:hover > .sub-menu {
    display: block;
    left: 100%;
    top: 0;
    right: auto;
    min-width: 0;
    border-bottom: 2px solid #00634b; }
    .site-main-navigation .main-nav.has-level-3 li.has-sub-menu.li-lvl-2:hover > .sub-menu > li > a {
      white-space: nowrap;
      padding-top: 5px; }

.off-canvas-nav {
  z-index: 910; }

.ocn-list li > a, .ocn-list li.lvl-1.active > a, .ocn-list .name {
  color: #fff; }
  .ocn-list .active > a, .ocn-list li.lvl-1.active > a, .ocn-list .active > .sub-toggle .name, .ocn-list li.lvl-1.active > .sub-toggle .name {
    text-decoration: underline; }
  .ocn-list .lvl-1 .sub-menu {
    width: calc(100% - 20px); }
  .ocn-list .lvl-1 > a, .ocn-list .lvl-1 .name {
    font-size: 16px; }
  @media screen and (min-width: 40em) {
      .ocn-list .lvl-1 > a, .ocn-list .lvl-1 .name {
        font-size: 18px; } }
  @media screen and (min-width: 64em) {
      .ocn-list .lvl-1 > a, .ocn-list .lvl-1 .name {
        font-size: 22px; } }
  .ocn-list .lvl-1 .sub-toggle button:hover, .ocn-list .lvl-1.open .sub-toggle button:hover {
    background-color: #004a38; }
  .ocn-list .lvl-2 a, .ocn-list .lvl-2 .name {
    padding: 8px 20px;
    line-height: 1.3;
    display: inline-block;
    font-size: 14px; }
  @media screen and (min-width: 40em) {
      .ocn-list .lvl-2 a, .ocn-list .lvl-2 .name {
        font-size: 16px; } }
  @media screen and (min-width: 64em) {
      .ocn-list .lvl-2 a, .ocn-list .lvl-2 .name {
        font-size: 18px; } }
  .ocn-list .lvl-2 .name {
    width: calc(100% - 50px);
    border-left: 0; }
  .ocn-list .lvl-2 .name:hover {
    border-left: 0; }
  .ocn-list .lvl-2 > .sub-toggle button {
    background: transparent url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v1/icons/icon-nav-arrow-bottom-white.svg") center center no-repeat;
    background-size: 15px auto;
    cursor: pointer;
    float: right;
    display: block;
    width: 30px;
    height: 30px;
    margin-top: 5px;
    border-radius: 2px;
    transform: rotate(0deg); }
  .ocn-list .lvl-2.open > .sub-toggle button {
    transform: rotate(180deg); }
  .ocn-list .lvl-2 .sub-menu {
    padding: 0 0 10px 0;
    margin-bottom: 20px; }

.sidebar-widgets .side-widget {
  max-width: 110px; }

.sidebar-widgets .side-widget.open {
  max-width: 525px; }

.site-main-navigation {
  z-index: 901; }
  .site-main-navigation li:last-child .sub-menu, .site-main-navigation li:nth-last-child(2) .sub-menu, .site-main-navigation li:nth-last-child(3) .sub-menu {
    left: -2px;
    right: auto; }
  .site-main-navigation li:last-child .sub-menu .li-lvl-2, .site-main-navigation li:nth-last-child(2) .sub-menu .li-lvl-2, .site-main-navigation li:nth-last-child(3) .sub-menu .li-lvl-2 {
    text-align: left; }
  .site-main-navigation .sub-menu {
    min-width: 0;
    z-index: 901; }
  .site-main-navigation .sub-menu .li-lvl-2 a, .site-main-navigation .sub-menu .li-lvl-2 span {
    white-space: nowrap; }

body.menu-open:after {
  z-index: 902; }

@media print, screen and (max-width: 820px) and (min-width: 640px) {
  .sidebar-widgets {
    top: 80px;
    z-index: 839; }

  .sidebar-widgets .side-widget {
    display: block;
    min-width: 40px;
    min-height: 40px;
    border-width: 3px; }

  .sidebar-widgets .side-widget-icon {
    cursor: pointer;
    position: relative;
    display: block;
    -webkit-appearance: none;
    width: 34px !important;
    height: 34px !important;
    border: 3px solid #ced9ea !important;
    -webkit-transition: background-color 0.25s ease-in-out;
    -o-transition: background-color 0.25s ease-in-out;
    transition: background-color 0.25s ease-in-out; }

  .sidebar-widgets .side-widget-icon svg {
    width: 20px;
    height: auto; }

  .sidebar-widgets .side-widget.open .side-widget-body {
    visibility: visible;
    opacity: 1;
    -webkit-transition: opacity 0.4s ease-in-out;
    -o-transition: opacity 0.4s ease-in-out;
    transition: opacity 0.4s ease-in-out; }

  .side-widget.widget-phone.open {
    margin-top: -90px; } }
