/**
 * 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: 'Fira Sans', Verdana, Helvetica, Arial, sans-serif; }

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

h1, .headline {
  color: #61147c;
  font-size: 22px; }
  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: #61147c;
    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: #61147c;
  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 {
  color: #61147c;
  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: #61147c; }
  a:hover {
    color: #3f0d50;
    text-decoration: underline; }

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 {
    border-color: transparent #61147c; }
  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-container:before {
  background: #61147c; }
  .blockquote-container:after {
    background: #61147c; }

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: #61147c !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; } }

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: #fff;
  border: 3px solid #61147c;
  border-radius: 15px;
  color: #61147c;
  font-size: 22px;
  padding: 10px 15px; }
  .itl-theme-light-grey .button {
    background: #e9eef6; }
  @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-color: #3f0d50;
    color: white;
    border: 3px solid #3f0d50; }
  .button.hollow.light {
    color: #fff;
    border-color: #fff; }
  .button.hollow.light:hover {
    color: #61147c;
    background-color: white; }

.button-arrow {
  line-height: 16px;
  padding-right: 30px;
  position: relative; }
  @media screen and (min-width: 40em) {
  .button-arrow {
    line-height: 18px; } }
  @media screen and (min-width: 64em) {
  .button-arrow {
    line-height: 22px; } }
  .button-arrow:after {
    display: block;
    font-size: 20px;
    height: 21px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-49%);
    width: 10px; }
  @media screen and (min-width: 40em) {
    .button-arrow:after {
      font-size: 26px;
      top: 50%;
      transform: translateY(-52%); } }
  @media screen and (min-width: 64em) {
    .button-arrow:after {
      font-size: 36px;
      height: 25px; } }

.button-back {
  line-height: 16px;
  padding-left: 30px;
  position: relative; }
  @media screen and (min-width: 40em) {
  .button-back {
    line-height: 18px; } }
  @media screen and (min-width: 64em) {
  .button-back {
    line-height: 22px; } }
  .button-back:hover {
    line-height: 16px; }
  @media screen and (min-width: 40em) {
    .button-back:hover {
      line-height: 18px; } }
  @media screen and (min-width: 64em) {
    .button-back:hover {
      line-height: 22px; } }
  .button-back:before {
    display: block;
    font-size: 20px;
    height: 21px;
    left: 10px;
    position: absolute;
    top: 50%;
    transform: translateY(-49%);
    width: 10px; }
  @media screen and (min-width: 40em) {
    .button-back:before {
      font-size: 26px;
      top: 50%;
      transform: translateY(-52%); } }
  @media screen and (min-width: 64em) {
    .button-back:before {
      font-size: 36px;
      height: 25px; } }
/* custom social button styles */
.button-facebook::before {
  background: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-social-facebook.svg") center center no-repeat; }

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

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

.button-facebook-img {
  background: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/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-v2/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-v2/icons/icon-social-envelope.svg") center center no-repeat #8a8a8a !important;
  background-size: 25px auto !important; }
/* custom card teaser styles */
.card-teaser {
  border-radius: 15px; }
  .card-teaser.card-teaser-link {
    overflow: hidden; }
  .card-teaser.card-teaser-link .link-button {
    border: 2px solid #61147c;
    border-radius: 15px 0 0 0;
    border-width: 2px 0 0 2px;
    color: #61147c; }
  .card-teaser.card-teaser-link .link-button:hover, .card-teaser.card-teaser-link .link-button:focus {
    background: #61147c;
    color: white; }
  .card-teaser.card-teaser-link .link-button:after {
    font-size: 20px; }
    @media screen and (min-width: 40em) {
      .card-teaser.card-teaser-link .link-button:after {
        font-size: 26px; } }
    @media screen and (min-width: 64em) {
      .card-teaser.card-teaser-link .link-button:after {
        font-size: 36px; } }
  .card-teaser h2 {
    color: #61147c;
    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; } }
  .card-teaser .button {
    background: #fff; }
  .card-teaser .button:hover {
    background: #61147c;
    color: white; }
/* custom contact card styles */
.contact-card {
  border-radius: 5px; }
  .contact-card h3 {
    color: #61147c; }
  .contact-card h2 {
    color: #61147c;
    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: 5px; }
/* 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: #8e50a3;
  color: white;
  /**
   * slick arrows
   */ }
  .content-slider h2 {
    color: white;
    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: white; }
  .content-slider p {
    color: white;
    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: #8e50a3;
      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-v2/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-v2/icons/icon-arrow-right-white.svg") 53% 50% no-repeat; }
  .content-slider ul.list li:before {
    background: white; }
/* custom form styles */
label {
  color: #61147c;
  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: 5px; }

select {
  border-radius: 5px; }

.form-error, .alert.callout {
  border-radius: 5px; }
  .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: #61147c; }

label.radio input:checked ~ .pseudo-input:after {
  background: #61147c; }
/* 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; } }
/* 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: 5px 0 0 5px;
  font-size: 14px; }
  @media screen and (min-width: 40em) {
    .filter select {
      font-size: 16px; } }
  .filter button[type="submit"] {
    background: #61147c;
    border-radius: 0 5px 5px 0;
    color: white;
    font-size: 14px; }
  .filter button[type="submit"]:hover {
    background-color: #3f0d50; }
  @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: #61147c;
  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-v2/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-v2/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: #61147c; }
  .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: 5px; }
/* 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 {
    border-color: transparent #61147c; }
/* 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 site main nav styles */
.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: #61147c; }
    .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: #61147c; }
  .site-main-navigation .li-lvl-1.active > a, .site-main-navigation .li-lvl-1.active > span {
    color: #61147c; }
  .site-main-navigation .li-lvl-1.active > a path, .site-main-navigation .li-lvl-1.active > span path {
    fill: #61147c; }
  .site-main-navigation .li-lvl-1.has-sub-menu:hover {
    border-left-color: #61147c; }
    .site-main-navigation .li-lvl-1.has-sub-menu:hover > a {
      color: #61147c; }
    .site-main-navigation .li-lvl-1.has-sub-menu:hover path {
      fill: #61147c; }
  .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: #61147c; }
    .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: #61147c; }
  .site-main-navigation .li-lvl-2:last-child {
    border-bottom: 2px solid #61147c; }
  .site-main-navigation .li-lvl-2 a {
    font-size: 14px; }
  .site-main-navigation .li-lvl-2 a:hover {
    color: #61147c; }
  .site-main-navigation .li-lvl-2.active > a {
    color: #61147c; }
  .site-main-navigation li:hover .li-lvl-2 {
    border-left-color: #61147c; }
  .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: #61147c; }
/* custom off canvas nav styles */
body.menu-open:after {
  background: rgba(97, 20, 124, 0.6); }

@media screen and (min-width: 64em) {
      .off-canvas-nav .close-nav {
        background: #61147c; } }
  .off-canvas-nav .close-nav .cross {
    background: #61147c; }
  .off-canvas-nav .close-nav .cross::before, .off-canvas-nav .close-nav .cross::after {
    background: #fff; }
  .off-canvas-nav .close-nav:hover {
    background: #3f0d50; }
  .off-canvas-nav .close-nav:hover .cross::before, .off-canvas-nav .close-nav:hover .cross::after {
    background: #fff; }

.ocn-list .lvl-1 {
  /**
   * split button part to toggle sub menus
   */ }
  .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 > a:hover, .ocn-list .lvl-1 .name:hover {
    color: #61147c; }
  .ocn-list .lvl-1.active > a {
    color: #61147c; }
  .ocn-list .lvl-1 > .sub-toggle {
    background: transparent url(../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-nav-arrow-bottom-black.svg) center center no-repeat;
    background-size: 13px auto; }
  .ocn-list .lvl-2 > a {
    font-size: 18px; }
  .ocn-list .lvl-2 > a:hover {
    color: #61147c; }
  .ocn-list .lvl-2.active > a {
    color: #61147c; }
/* custom pagination styles */
@media screen and (min-width: 40em) {
  .pagination .current {
    background: transparent;
    border: 3px solid #501066;
    border-radius: 50%;
    color: #61147c; }
    .pagination li {
      font-size: 14px; }
    .pagination a, .pagination button {
      background: transparent;
      border: 3px solid #61147c;
      border-radius: 50%;
      color: #61147c; }
      .pagination a:hover, .pagination button:hover {
        background: #501066;
        color: white; }
    .pagination .pagination-previous a, .pagination .pagination-next a {
      background: none;
      border: none;
      color: #61147c; }
      .pagination .pagination-previous a:hover, .pagination .pagination-next a:hover {
        background: none;
        color: #61147c; } }
  @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 {
    text-decoration: none;
    color: #61147c; } }
/* custom portal styles */
.portal-login-head {
  background: #61147c; }
  .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: #61147c;
  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; }

.report-container a p {
  color: #323232; }
  .report-container date {
    color: #323232; }
/* custom search container styles */
.search-content-container {
  background: #fff; }
  .itl-theme-white .search-content-container {
    background: #e9eef6; }
  .search-content-container h3 {
    color: #61147c;
    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: #61147c; }
  .widget-form ::-moz-placeholder {
    color: #61147c; }
  .widget-form :-ms-input-placeholder {
    color: #61147c; }
  .widget-form :-moz-placeholder {
    color: #61147c; }
  .widget-form input[type="search"], .widget-form input[type="text"] {
    border-radius: 5px;
    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: #61147c url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-search-white.svg") center center no-repeat;
    background-size: 17px;
    border-radius: 5px; }
  .widget-form button[type="submit"]:hover, .widget-form button[type="submit"]:focus {
    background: #490f5d url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-search-white.svg") center center no-repeat;
    background-size: 17px; }
/* custom search form styles */
.search-form {
  border-radius: 5px; }
  .search-form ::-webkit-input-placeholder {
    color: #61147c; }
  .search-form ::-moz-placeholder {
    color: #61147c; }
  .search-form :-ms-input-placeholder {
    color: #61147c; }
  .search-form :-moz-placeholder {
    color: #61147c; }
  .search-form input[type="search"], .search-form input[type="text"] {
    background: #fff;
    border-bottom: 2px solid #61147c;
    border-radius: 5px;
    color: #61147c;
    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: #61147c url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-search-white.svg") center center no-repeat; }
  .search-form button[type="submit"]:hover {
    background-color: #501066; }
  .search-form#branches-filter button[type="submit"] {
    background: #61147c url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-search-arrow-white.svg") center center no-repeat;
    background-size: 22px auto; }
/* custom section hero styles */
.section-hero .hero-text-box {
  background-color: #61147c;
  border-radius: 15px 15px 0 0;
  color: white; }
  @media screen and (min-width: 40em) {
    .section-hero .hero-text-box {
      background-color: rgba(97, 20, 124, 0.7); } }
  @media screen and (max-width: 39.9375em) {
    .section-hero .hero-text-box {
      border-radius: 10px; } }
  .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-slider .slick-dots li.slick-active button {
  background-color: #61147c; }

.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-v2/icons/icon-arrow-left-white.svg") 47% 50% no-repeat; }
  .section-hero__img-slider .slick-next {
    background: transparent url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-arrow-right-white.svg") 53% 50% no-repeat; }
  .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__text-box {
  background: #61147c;
  border-radius: 5px;
  color: #fff; }
  @media screen and (min-width: 64em) {
  .section-hero__text-box {
    background: rgba(97, 20, 124, .7); } }

.video-text-box {
  background-color: rgba(97, 20, 124, .7);
  border-radius: 5px;
  color: #fff; }
  @media screen and (max-width: 39.9375em) {
  .video-text-box {
    background-color: #61147c; } }
  .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 .headline {
    color: #fff; }
  .video-text-box p {
    color: #fff; }

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

.section-hero__play--pause {
  background: url("../../Images/Modular-v2/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; }

.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; } }
/* custom cookie styles */
.cc-window {
  border-top: 2px solid #61147c; }

.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: #61147c; }
  .cc__message a:hover {
    color: #3f0d50; }
/* 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: #61147c;
    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; } }

.events-thumbnail {
  margin-top: 6px; }
/* 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 #61147c; }
  .sidebar-widgets .toggle-widgets .icon-cross {
    border: 2px solid #61147c; }
  .sidebar-widgets .toggle-widgets .icon-cross::before, .sidebar-widgets .toggle-widgets .icon-cross::after {
    background: #61147c; }
  .sidebar-widgets .toggle-widgets.active {
    background-color: #61147c; }
  .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 #61147c; }
  @media screen and (min-width: 40em) {
    .sidebar-widgets .side-widget-icon:hover {
      background-color: #61147c; }
      .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: #61147c; }
  .sidebar-widgets .side-widget-fill-svg {
    fill: #61147c; }
  @media screen and (max-width: 39.9375em) {
    .sidebar-widgets .side-widget-body {
      background: #fff;
      border: 3px solid #61147c;
      box-shadow: 0 0 0 3px #fff; } }
  @media screen and (min-width: 40em) {
    .sidebar-widgets .side-widget-body {
      border: 5px solid #61147c; } }
  @media screen and (max-width: 39.9375em) {
    .sidebar-widgets .side-widget.open .side-widget-icon {
      background-color: #61147c; }
      .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: #61147c;
    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: #61147c; }
  .sidebar-widgets .close-button:hover {
    color: #61147c; }
/* custom maps styles */
.map-controls-button {
  background: #61147c none center center no-repeat; }
  .map-controls-button:hover {
    background-color: #3f0d50; }

.map-controls-button-zoom-plus {
  background-image: url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/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-v2/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: #61147c; }
  .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 #61147c; }
  .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 .name {
  color: #323232; }
  .ocn-list li > a:hover, .ocn-list .name:hover {
    color: #61147c; }
  .ocn-list .active > a, .ocn-list .active > .sub-toggle .name {
    color: #61147c; }
  .ocn-list .active > a:hover, .ocn-list .active > .sub-toggle .name:hover {
    color: #61147c; }
  .ocn-list .lvl-1 .sub-menu {
    padding: 0 0 0 20px; }
  .ocn-list .lvl-1 > .sub-toggle button {
    background: transparent url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-nav-arrow-bottom-black.svg") center center no-repeat;
    background-size: 13px auto; }
  @media (max-width: 1024px) {
      .ocn-list .lvl-1 > .sub-toggle button {
        margin-top: 5px; } }
  .ocn-list .lvl-1 > .sub-toggle button:hover {
    background: #501066 url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-nav-arrow-bottom-white.svg") center center no-repeat;
    background-size: 13px auto; }
  .ocn-list .lvl-1 > a, .ocn-list .lvl-1 > .sub-toggle .name {
    font-size: 16px;
    line-height: 40px; }
  @media (max-width: 1024px) {
      .ocn-list .lvl-1 > a, .ocn-list .lvl-1 > .sub-toggle .name {
        line-height: 30px; } }
  @media screen and (min-width: 40em) {
      .ocn-list .lvl-1 > a, .ocn-list .lvl-1 > .sub-toggle .name {
        font-size: 18px; } }
  @media screen and (min-width: 64em) {
      .ocn-list .lvl-1 > a, .ocn-list .lvl-1 > .sub-toggle .name {
        font-size: 22px; } }
  .ocn-list .lvl-2 {
    float: left;
    width: 100%;
    position: relative; }
  .ocn-list .lvl-2 a, .ocn-list .lvl-2 .name {
    font-size: 14px;
    line-height: 24px;
    padding: 8px 0; }
  @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); }
  .ocn-list .lvl-2 > .sub-toggle button {
    background: transparent url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-nav-arrow-bottom-black.svg") center center no-repeat;
    background-size: 11px auto;
    cursor: pointer;
    float: right;
    display: block;
    width: 40px;
    height: 40px; }
  @media (max-width: 1024px) {
      .ocn-list .lvl-2 > .sub-toggle button {
        width: 20px;
        height: 20px;
        background-size: 13px auto;
        margin-top: 11px; } }
  .ocn-list .lvl-2 > .sub-toggle button:hover {
    background: #501066 url("../../typo3conf/ext/itl_theme/Resources/Modular/Public/Images/Modular-v2/icons/icon-nav-arrow-bottom-white.svg") center center no-repeat;
    background-size: 11px auto; }
  .ocn-list .lvl-2.open > .sub-toggle button {
    transform: rotate(180deg); }
  .ocn-list .lvl-2 .sub-menu {
    padding-bottom: 20px; }
  .ocn-list .lvl-3 a {
    line-height: 32px; }
  .ocn-list .lvl-3:hover {
    color: #61147c; }

.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; }

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

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

@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; } }

.image-overlay .slick-slide img {
  max-width: 100%;
  width: auto;
  margin: 0 auto; }
