/**
 * @package ista Internet Relaunch
 *
 * Frontend Refactor
 * @author Matthias Becker <matthias.becker@twt.de>
 *
 * Content:
 *  mediaQuery
 *  box-sizing
 *  background-gradient
 *  background-size
 *  border-radius
 *  box-shadow
 *  transform
 *  transform-style
 *  transition
 *  perspective
 *  perspective-origin
 *  keyframe
 *  animation
 *  flex-flow
 *  flexbox
 *  flex
 *  order
 *
 */
.clearfix:after {
  display: block;
  clear: both;
  content: ''; }

/**
 * @package ista Internet Relaunch
 *
 * Frontend Refactor
 * @author Matthias Becker <matthias.becker@twt.de>
 *
 */
@font-face {
  font-family: "icons";
  src: url("/fileadmin/twt_customer/base/system/templates/fonts/icons/icons.eot?717eef2e3f7897ed19defce3c9ae6aef");
  src: url("/fileadmin/twt_customer/base/system/templates/fonts/icons/icons.eot?#iefix") format("embedded-opentype"), url("/fileadmin/twt_customer/base/system/templates/fonts/icons/icons.woff2?717eef2e3f7897ed19defce3c9ae6aef") format("woff2"), url("/fileadmin/twt_customer/base/system/templates/fonts/icons/icons.woff?717eef2e3f7897ed19defce3c9ae6aef") format("woff"), url("/fileadmin/twt_customer/base/system/templates/fonts/icons/icons.ttf?717eef2e3f7897ed19defce3c9ae6aef") format("truetype"), url("/fileadmin/twt_customer/base/system/templates/fonts/icons/icons.svg?717eef2e3f7897ed19defce3c9ae6aef#icons") format("svg");
  font-weight: normal;
  font-style: normal; }

.icon, .redesign-interactive-shape .shape-detail-close-button span::before {
  font-family: "icons";
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  font-weight: normal;
  font-style: normal;
  speak: none;
  text-decoration: inherit;
  text-transform: none;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-arrow-left:before {
  content: "\f101"; }

.icon-arrow-right:before {
  content: "\f102"; }

.icon-book:before {
  content: "\f103"; }

.icon-building:before {
  content: "\f104"; }

.icon-calender:before {
  content: "\f105"; }

.icon-checkmark:before {
  content: "\f106"; }

.icon-chevron-down:before {
  content: "\f107"; }

.icon-chevron-left:before {
  content: "\f108"; }

.icon-chevron-right:before {
  content: "\f109"; }

.icon-chevron-up:before {
  content: "\f10a"; }

.icon-close:before, .redesign-interactive-shape .shape-detail-close-button span::before {
  content: "\f10b"; }

.icon-computer:before {
  content: "\f10c"; }

.icon-confirmation:before {
  content: "\f10d"; }

.icon-download:before {
  content: "\f10e"; }

.icon-drop:before {
  content: "\f10f"; }

.icon-envelope-closed:before {
  content: "\f110"; }

.icon-faq:before {
  content: "\f111"; }

.icon-footer-facebook:before {
  content: "\f112"; }

.icon-footer-kununu:before {
  content: "\f113"; }

.icon-footer-linkedin:before {
  content: "\f114"; }

.icon-footer-twitter:before {
  content: "\f115"; }

.icon-footer-xing:before {
  content: "\f116"; }

.icon-footer-youtube:before {
  content: "\f117"; }

.icon-heart:before {
  content: "\f118"; }

.icon-home:before {
  content: "\f119"; }

.icon-marker:before {
  content: "\f11a"; }

.icon-Menu-More:before {
  content: "\f11b"; }

.icon-menu:before {
  content: "\f11c"; }

.icon-phone-2:before {
  content: "\f11d"; }

.icon-Phone:before {
  content: "\f11e"; }

.icon-Plus:before {
  content: "\f11f"; }

.icon-print:before {
  content: "\f120"; }

.icon-question:before {
  content: "\f121"; }

.icon-search:before {
  content: "\f122"; }

.icon-social-media:before {
  content: "\f123"; }

.icon-sort:before {
  content: "\f124"; }

.icon-speaker:before {
  content: "\f125"; }

.icon-speech-bubble:before {
  content: "\f126"; }

.icon-twitter:before {
  content: "\f127"; }

.icon-upload-image:before {
  content: "\f128"; }

.icon-user-female:before {
  content: "\f129"; }

.icon-user-male:before {
  content: "\f12a"; }

.icon-warning:before {
  content: "\f12b"; }

.icon-webportal:before {
  content: "\f12c"; }

.icon-world:before {
  content: "\f12d"; }

.redesign-interactive-shape {
  display: flex; }
  .redesign-interactive-shape .shape-container {
    flex-basis: 60%;
    position: relative; }
  .redesign-interactive-shape .shape-item {
    cursor: pointer;
    transition: fill 0.1s ease; }
    .redesign-interactive-shape .shape-item:hover, .redesign-interactive-shape .shape-item:focus {
      opacity: .8; }
    .redesign-interactive-shape .shape-item.active {
      cursor: default;
      opacity: 1;
      fill: #8c8c8c; }
  .redesign-interactive-shape .shape-center-text {
    width: 35%;
    position: absolute;
    top: 50%;
    left: 50%;
    font-family: "TheSansBold", Arial, Verdana, sans-serif;
    font-size: 18px;
    font-size: 1.2vw;
    color: #0a2864;
    text-align: center;
    text-transform: ita;
    transform: translate(-50%, -50%); }
  .redesign-interactive-shape .shape-text {
    pointer-events: none;
    position: absolute;
    z-index: 5;
    font-family: "TheSansBold", Arial, Verdana, sans-serif;
    font-size: 16px;
    font-size: 1vw;
    color: #fff;
    text-align: center; }
    .redesign-interactive-shape .shape-text--shape-1 {
      width: 22%;
      height: 23%;
      top: 5%;
      left: 25%; }
    .redesign-interactive-shape .shape-text--shape-2 {
      width: 28%;
      height: 15%;
      top: 18%;
      left: 64%; }
    .redesign-interactive-shape .shape-text--shape-3 {
      width: 30%;
      height: 16%;
      top: 60%;
      left: 67%; }
    .redesign-interactive-shape .shape-text--shape-4 {
      width: 25%;
      height: 25%;
      top: 73%;
      left: 30%; }
    .redesign-interactive-shape .shape-text--shape-5 {
      width: 25%;
      height: 20%;
      top: 44%;
      left: 2%; }
  .redesign-interactive-shape .shape-text-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .redesign-interactive-shape .shape-text-headline {
    display: block;
    letter-spacing: 2px;
    text-transform: uppercase; }
  .redesign-interactive-shape .shape-detail {
    padding-left: 50px;
    flex-basis: 40%; }
  .redesign-interactive-shape .shape-detail-item {
    margin-bottom: 50px;
    display: none;
    position: relative; }
    .redesign-interactive-shape .shape-detail-item.active {
      display: block;
      animation: shapeDetailFadeIn 0.3s ease; }
  .redesign-interactive-shape .shape-detail-close-button {
    background: transparent;
    width: 48px;
    height: 48px;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 5; }
    .redesign-interactive-shape .shape-detail-close-button::before {
      display: none; }
    .redesign-interactive-shape .shape-detail-close-button span {
      width: 32px;
      height: 32px;
      display: block;
      position: absolute;
      top: 50%;
      left: 50%;
      font-size: 22px;
      border-radius: 50%;
      border: 2px solid #fff;
      transform: translate(-50%, -50%); }
      .redesign-interactive-shape .shape-detail-close-button span::before {
        margin-top: 0;
        position: absolute;
        top: 50%;
        right: auto;
        left: 50%;
        transform: translate(-50%, -50%); }
  .redesign-interactive-shape .shape-detail-image {
    background: no-repeat center;
    background-size: cover; }
    .redesign-interactive-shape .shape-detail-image::before {
      padding-bottom: 56.25%;
      display: block;
      content: ''; }
  .redesign-interactive-shape .shape-detail-text {
    padding-top: 25px; }
  @media only screen and (max-width: 1023px) {
    .redesign-interactive-shape {
      display: block; }
      .redesign-interactive-shape .shape-container {
        margin-bottom: 50px; }
      .redesign-interactive-shape .shape-center-text {
        font-size: 18px; }
      .redesign-interactive-shape .shape-text {
        font-size: 14px; }
      .redesign-interactive-shape .shape-detail {
        padding-left: 0; } }
  @media only screen and (max-width: 767px) {
    .redesign-interactive-shape .shape-center-text {
      font-size: 14px; }
    .redesign-interactive-shape .shape-text {
      font-size: 10px; } }

@keyframes shapeDetailFadeIn {
  0% {
    opacity: 0;
    transform: translateY(25px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

@media screen\0 {
  .redesign-interactive-shape .shape-container svg {
    width: 100%;
    padding-bottom: 100.52%;
    height: 1px;
    overflow: visible; } }
