/* stepanBolotnikov.fraktal */

@import url("utils.css");
@import url("headings.css");
@import url("fonts.css");
@import url("links.css");
@import url("lists.css");
@import url("form.css");
@import url("table.css");

body  {
  margin: 0;
  background: #1F1F1F;
  color: #4D4D4D;
  font-size: 16px;
  font-family: 'Open Sans', sans-serif;
  line-height: 1.5;
}
@media screen and (min-width: 641px) {
  body {
    min-width: 1250px;
  }
}

/* HEADER */

.extended-menu {
    float: right;
    font-family: PFSquare Sans, sans-serif;
    font-size: 16px;
    color: #D3D3D3 !important;
    text-transform: uppercase !important;
    max-height: 64px;
}

.extended-menu ul {
    float: right;
    margin-left: 120px;
    padding-left: 0;
    list-style: none;
}

.extended-menu li {
    float: left;
    border: 1px solid transparent;
}

.extended-menu li a {
    display: block;
    font-family: PFSquare Sans, sans-serif !important;
    font-weight: 200;
    text-decoration: none;
    color: #D3D3D3 !important;
    text-transform: uppercase !important;
    padding: 3px 20px;
}

.extended-menu li:hover {
    text-decoration: none;
    color: #FFF !important;
}

.extended-menu li a:hover, .extended-menu .active a {
    text-decoration: none;
    color: #FFF !important;
}

.extended-menu .active {
    text-decoration: none;
    color: #FFF !important;
    border: 1px solid #9B9B9B;
}



.page > header {
  height: 64px;
  background: url('../images/header-bg.jpg?1') no-repeat center top;
  background-size: cover;
  color: white;
}
.front .page > header {
  height: 612px;
}
.careers .page > header {
  height: 512px;
  background-image: url('../images/careers-bg.jpg?1');
  position: relative;
}
.careers .page > header.job {
  height: 400px;
}
.team-page .page > header {
  background: #1f1f1f;
}

/*
.branch .page > header {
  height: 171px;
}
*/

  .page > header a {
    color: white;
  }
.page > header .wrapper {
  z-index: 2;
}
.page header .logo {
  position: absolute;
  margin: 0;
}
  .page header .logo a,
  .page header a.logo {
    display: block;
    width: 123px;
    height: 123px;
    background: white;
    font-size: 0;
  }
    .page header .logo svg {
      width: 125px;
      height: 125px;
      margin-left: -1px;
    }
      .page header .logo path {
        fill: #E31E09;
      }
.page > header nav {
  position: relative;
  overflow: hidden;
  height: 64px;
}
.page > header nav.hovered, .page > header nav.open {
  overflow: visible;
}
  .page > header nav .toggle {
    display: block;
    padding: 19px 15px 18px 14px;
    border: none;
    background: #e31e09;
    font-size: 0;
    outline: none;
    cursor: pointer;
  }
  .page > header nav:hover ul { display: block; }
  .page > header nav .toggle:hover, .page > header .open .toggle {
    background: #a51000;
  }
    .page > header nav .toggle:before {
      display: block;
      padding: 6px 0;
      width: 33px;
      height: 5px;
      border-width: 5px 0;
      border-style: solid;
      border-color: white;
      background: white;
      background-clip: content-box;
      content: '';
    }
  .page > header nav ul {
    position: absolute;
    top: 64px;
    right: 0;
    display: none;
    clear: both;
    margin: 0;
    padding: 0;
  }
  .page > header nav ul:before {
    position: absolute;
    top: 0;
    right: 0;
    display: block;width: 0;
    height: 0;
    border-width: 9px;
    border-style: solid;
    border-color: #e31e09 #e31e09 transparent transparent;
    content: '';
  }
  .page > header nav .toggle:hover + ul:before {
    border-color: #a51000 #a51000 transparent transparent;
  }
    .page > header .open ul { display: block; }
    .page > header nav li {
      min-width: 250px;
      background: #B91200;
      list-style-type: none;
    }
      .page > header nav a {
        display: block;
        padding: 17px 26px;
        text-decoration: none;
        white-space: nowrap;font-size: 20px;
      }
      .page > header nav a:hover {
        background: #a51000;
      }
      .page > header nav a:hover:after {
        margin-left: 10px;
        color: #ff1900;
        content: '›';
      }
.page > header .hero {
  margin: 200px 0 0;
}
.careers .page > header .hero {
  text-align: center;
  font-size: 18px;
  margin-left: auto;
  margin-right: auto;
  width: 630px;
  margin-top: 160px;
}
  .careers .page > header .hero h1 {
    font-family: 'PFSquare Sans', sans-serif;
    color: #ff1900;
    font-size: 120px;
    margin: 0 0 5px;
    line-height: 1;
    font-weight: 200;
  }
  .careers .page > header .hero h1.job-title {
    color: white;
    font-size: 50px;
  }
  .careers .page > header .hero h1.job-title span {
    display: block;
  }
  .careers .page > header .hero h3 {
    color: #ff1900;
    font-size: 20px;
    font-family: 'PFSquare Sans', sans-serif;
    font-weight: normal;
    margin-top: 6px;
  }
  .careers .hero .btn.back-to-jobs {
    position: absolute;
    left: 0;
    bottom: 0;
    margin-top: 0;
  }
  .careers .hero .btn.btn-apply {
    display: none;
  }
  .careers .page > header .wrapper {
    min-height: 100%;
  }
  .page > header .hero h2 {
    letter-spacing: -4px;
    font-weight: 600;
    font-size: 110px;
    font-family: PFSquare Sans, sans-serif;
    line-height: 1;
    margin: 0;
  }
  .page > header .hero mark {
    background: none;
    color: #e31e09;
    font-weight: 100;
  }
@media screen and (max-width: 640px) {
  .careers .page > header {
    height: auto;
  }
  .careers .page > header.job {
    height: auto;
  }
  .careers .page > header .hero {
    font-size: 16px;
    width: auto;
    padding: 0 20px 60px;
  }
  .careers .page > header .hero h1 {
    font-size: 50px;
  }
  .careers .hero .btn {
    background: none;
    color: #ff1900;
    padding: 0;
    margin-top: 10px;
  }
  .careers .subnav dl {
    margin-top: 0;
  }
  .careers .subnav dt {
    display: block;
    float: none;
    padding: 10px 20px !important;
    border-bottom: 1px solid #e6e6e6;
  }
  .careers .page > header .hero h1.job-title {
    font-size: 26px;
  }
  .careers .page > header .hero h3 {
    margin-top: 0;
    font-size: 16px;
  }
  .careers .hero .btn.back-to-jobs {
    width: 50%;
    padding: 10px 0 !important;
    background: #ea3228 !important;
    color: white !important;
    text-align: center;
  }
  .careers .hero .btn.btn-apply {
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 50%;
    color: white !important;
    padding: 10px 0 !important;
    background: #bc261e !important;
    text-align: center;
  }
}

/* BODY */
.page > .body {
  background: white;
}
.careers .page > .body, .team-page .page > .body {
  background: white url('../images/careers-body-bg.jpg?1') no-repeat center bottom;
  background-size: 100% auto;
  width: 100%;
}
.careers .page > .body {
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .careers .page > .body, .team-page .page > .body {
    background-size: 300% auto;
  }
}

.job-cols {
  display: flex;
  padding-bottom: 250px;
  justify-content: stretch;
}
  .job-cols h2 {
    font-size: 26px;
  }
  .job-main-col {
    flex: 1 1 auto;
    margin-right: 50px;
    margin-left: 20px;
    padding-top: 70px;
  }
    .job-main-col ul {
      border: none;
      margin-bottom: 60px;
    }
    .job-main-col ul li {
      border: none;
      font-size: inherit;
      line-height: inherit;
    }
  .job-side-col {
    position: relative;
    background: linear-gradient(to bottom, rgba(236, 236, 236, 1), rgba(236, 236, 236, 0));
    flex: 0 0 290px;
    padding: 70px 20px 750px 50px;
  }
  .job-side-col:after {
    content: '';
    position: absolute;
    left: 100%;
    top: 0;
    bottom: 0;
    right: -50vw;
    background: linear-gradient(to bottom, rgba(236, 236, 236, 1), rgba(236, 236, 236, 0));
  }
    .job-side-col .form_area {
      background: none;
      padding: 0;
    }
    .job-side-col .form_field_textfield,
    .job-side-col .form_field_textarea {
      width: 100%;
      box-sizing: border-box;
      -webkit-appearance: none;
      border-radius: 0;
    }
    .job-side-col .form_submit input {
      -webkit-appearance: none;
      border-radius: 0;
    }
    .job-side-col .form_field_required .form_field_label:after {
      content: ' *';
      color: #e31e09;
      font-size: 12px;
    }
    .job-side-col .position {
      display: none;
    }
    .form_field_file_wrapper {
      border: 1px solid #d9d9d9;
      padding: 9px 10px 7px;
      font-size: 14px;
      text-transform: uppercase;
      font-weight: bold;
      color: #e31e09;
      background: white;
      cursor: pointer;
    }
      .form_field_file_wrapper .form_field_file {
        position: absolute;
        right: 100%;
        top: 100%;
        opacity: 0;
      }
    .job-side-col .form_field_with_errors input,
    .job-side-col .form_field_with_errors .form_field_file_wrapper {
      border-color: #f90606;
    }
    .job-side-col .form_field_error,
    .job-side-col .form_error {
      font-size: 13px;
      color: #f90606;
    }
@media screen and (max-width: 640px) {
  .job-cols {
    display: block;
    padding-bottom: 180px;
  }
  .job-main-col {
    margin: 0 20px;
    padding-top: 40px;
  }
  .job-side-col {
    padding: 40px 20px 0;
    margin-top: 40px;
    padding-bottom: 0;
  }
}

.form-success-modal {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.2);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  display: none;
}
  .form-success-modal.-open {
    display: flex;
  }
  .form-success-modal-content {
    background: white;
    font-size: 26px;
    color: #333333;
    font-family: "PFSquare Sans", sans-serif;
    line-height: 30px;
    height: 280px;
    width: 440px;
    padding: 0 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    text-align: center;
  }
  .form-success-modal-close {
    border: none;
    cursor: pointer;
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    height: 40px;
    background: url('../assets/form-success-modal-close.svg?1') no-repeat center;
  }
@media screen and (max-width: 640px) {
  .form-success-modal-content {
    width: auto;
    margin: 0 20px;
  }
}

.subnav {
  margin-left: 125px;
  color: #343434;
}
.subnav.wider {
  margin-left: 0;
}
  .subnav dl {
    margin: 0;
    padding: 0;
  }
    .subnav dt {
      float: left;
      padding: 24px 0 0 31px;
      text-transform: uppercase;
      font-size: 12px;
      color: #B4B4B4;
    }
    .subnav.wider dt {
      padding-left: 0;
    }
      .subnav dt a {
        color: inherit;
      }
      .subnav dt a:hover {
        color: #808080;
      }
    .subnav dd {
      float: left;
      margin: 0 0 0 28px;
      padding-top: 20px;
    }
    .subnav a {
      color: inherit;
    }
    .subnav .active {
      padding-top: 12px;
      border-top: 8px solid #E31E09;
    }
    .subnav .active a,
    .subnav a:hover {
      color: #E31E09;
      text-decoration: none;
    }


.careers-list {
  margin: 35px -13px 40px 0;
}
  .careers-list a {
    display: block;
    float: left;
    font-size: 16px;
    color: #343434;
    background: #f2f2f2;
    height: 240px;
    width: 240px;
    margin: 0 13px 13px 0;
    padding: 20px;
    box-sizing: border-box;
    position: relative;
    transition: color 200ms linear, background 200ms linear;
  }
  .careers-list a:after {
    content: '';
    height: 62px;
    width: 62px;
    position: absolute;
    right: 0;
    bottom: 0;
    background: #9e0f00 url('../assets/arrow.svg') no-repeat center;
    background-size: 30px auto;
    transform: rotate(90deg);
    opacity: 0;
    transition: opacity 200ms linear;
  }
  .careers-list a h3 {
    font-size: 26px;
    color: #e31e09;
    margin: 0;
    transition: color 200ms linear;
  }
  .careers-list a:hover {
    background: #e31e09;
    color: white;
    opacity: 1;
  }
  .careers-list a:hover:after {
    opacity: 1;
  }
  .careers-list a:hover h3 {
    color: white;
  }
@media screen and (max-width: 640px) {
  .careers-list {
    margin: 20px;
  }
  .careers-list a {
    width: 100%;
    height: 165px;
  }
}

.front-slides {
  position: relative;
  top: -125px;
  height: 700px;
}
.front-slides nav li {
  height: 250px;
}
.front-slides nav li a,
.front-slides nav li a:before {
  background-position: center 60%;
  background-repeat: no-repeat;
}
  .front-slides nav .front-slide-parking a,
  .front-slides nav .front-slide-parking a:before {
    background-image: url('../assets/parking.svg?1');
  }
  .front-slides nav .front-slide-ev-charging a,
  .front-slides nav .front-slide-ev-charging a:before {
    background-image: url('../assets/evcharging.svg?1');
  }
  .front-slides nav .front-slide-other-services a,
  .front-slides nav .front-slide-other-services a:before {
    background-image: url('../assets/otherservices.svg?1');
  }
  .front-slides nav .front-slide-about-us a,
  .front-slides nav .front-slide-about-us a:before {
    background-image: url('../assets/aboutus.svg?1');
  }
.block-nav { }
  .block-nav ul {
    margin: 0;padding: 0;
    border: none;
  }
    .block-nav ul li {
      position: relative;
      float: left;
      -webkit-box-sizing: border-box;
         -moz-box-sizing: border-box;
              box-sizing: border-box;
      padding: 15px 20px;
      min-height: 64px;
      width: 25%;
      border-bottom: none;
      /*background-color: #0f0f0f;*/
      color: white;
      list-style-type: none;
      font-weight: 400;
      font-size: 26px;
      font-family: PFSquare Sans, sans-serif;
      cursor: pointer;

      perspective: 1000px;
    }
    .block-nav a {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 1;
      display: block;
      padding: 15px 20px;
      background-color: #0F0F0F;
      color: white;
      transition: transform 0.3s ease 0s;

      transform-origin: 50% 0 0;
      transform-style: preserve-3d;
    }
    .block-nav ul li a:before { content: none; } /* override default ul li */
    .block-nav li:nth-child(even) a:before {
      background-color: #1F1F1F;
    }
    .block-nav li a:hover {
      transform: translateZ(50px);
    }
    .block-nav a:hover {
      text-decoration: none;
      opacity: 1;
    }
    .block-nav ul li:nth-child(even) a {
      background-color: #1F1F1F;
    }
    .block-nav ul li.active a:after {
      position: absolute;
      right: 0;
      bottom: -29px;
      left: 0;
      display: block;
      height: 0;
      border-width: 13px 0 16px 16px;
      border-style: solid;
      border-color: #e31e09 transparent transparent #e31e09;
      content: '';
    }
.front-slide {
  position: absolute;
  top: 250px;
  left: 0;
  padding: 70px 0 0;
  width: 100%;
  transform: translateX(0);
}
.front-slide.hidden {
  display: none;
}
  .front-slide .left {
    width: 310px;
    opacity: 0;
  }
  .front-slide .left,
  .front-slide .right {
    transition: transform .2s linear, opacity .2s linear;
  }
  .front-slide.active .left,
  .front-slide.active .right {
    opacity: 1;
  }
  .front-slide.next .left,
  .front-slide.next .right {
    transform: translateX(100px);
  }
  .front-slide.prev .left,
  .front-slide.prev .right {
    transform: translateX(-100px);
  }
  .front-slide .right {
    opacity: 0;
    transition-delay: .2s;
  }
  .front-slide h2 {
    margin: 0 0 .2em 0; /* TODO: refactor to global h2?*/
    color: #E31E09;
    font-weight: 200;
    font-size: 50px;
    font-family: PFSquare Sans, sans-serif;
    line-height: 1;
  }
  .front-slide img.right {
    max-width: 690px;
    margin-top: 60px;
  }

.front-collage {
  position: relative;
  top: -45px;
  height: 500px;
}
  .front-collage > div {
    position: relative;
    float: left;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    padding: 20px;
  }
  .collage-col-1 { width: 25%; }
  .collage-col-2 { width: 50%; }
  .collage-col-3 { width: 75%; }
  .collage-col-4 { width: 100%; }
  .collage-row-1 { height: 50%; }
  .collage-row-2 { height: 100%; }
  .body .collage-header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    margin: 0;
    padding: 0 20px;
    background: #E31E09;
    color: white;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 12px;
    font-family: Open Sans, sans-serif;
    line-height: 31px;
  }
  .body .collage-header-inverse {
    background: white;
    color: #E31E09;
  }
  .collage-block-link,
  .collage-focus a,
  .collage-case-study a,
  .collage-benefits a {
    display: block;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
  }
  .body .collage-block-link:hover {
    background: rgba(0,0,0,.05);
    opacity: 1;
  }
  /* specific tiles*/
  .collage-news {
    background: #E6E6E6;
  }
    .latest-news { /* TODO: move to lists.css?*/
      margin: 0;
      padding: 25px 0 0 0;
    }
      .latest-news li {
        list-style-type: none;
        font-weight: 400;
        font-family: PFSquare Sans, sans-serif;
      }
        .latest-news time {
          color: #E31E09;
          text-transform: uppercase;
          font-size: 12px;
        }
        .latest-news h3 {
          margin-top: 0;
          font-weight: 400;
          font-size: 14px;
          line-height: 1.3;
        }
          .latest-news a {
            color: #4B4B4B;
          }
      .latest-news .em { }
        .latest-news .em time {
          font-size: 14px;
        }
        .latest-news .em h3 {
          font-size: 26px;
        }
  .front-collage > .collage-benefits {
    padding: 0;
    background: url('../photos/collage-benefits.jpg?1') center / cover no-repeat;
    font-size: 26px;
    font-family: PFSquare Sans, sans-serif;
  }
    .collage-benefits a {
      padding: 20px 50px 20px 20px;
      color: #4D4D4D;
    }
    .collage-benefits h3 {
      margin: 0;
      color: #4D4D4D;
      font-weight: 400;
      line-height: 1.3;
    }
    .collage-benefits mark {
      display: block;
      background: none;
      color: #E31E09;
      font-weight: 100;
      font-size: 100px;
      line-height: 1;
    }
  .front-collage > .collage-case-study {
    padding: 0;
    background: url('../images/collage-case-study-2.jpg?1') center / cover no-repeat;
  }
    .collage-case-study a {
      padding: 20px;
      color: white;
    }
    .collage-case-study h3 {
      margin-top: 50px;
      color: white;
      font-weight: 400;
      font-size: 26px; /* TODO: refactor to wider scope - .front-collage h3*/
      font-family: PFSquare Sans, sans-serif;
    }
  .front-collage > .collage-event {
    padding: 50px 0 0 0;
  }
  .collage-event-article {
    margin: 20px;
  }
  .separator {
    border-bottom: 1px solid #e5e5e5;
  }
    .collage-event-link {
      display: block;
    }
      .collage-event h3 {
        margin: 0;
        color: #4D4D4D;
        font-weight: 400;
        font-size: 26px;
        font-family: PFSquare Sans, sans-serif;
      }
      .collage-event p {
        margin: 0 0 19px;
        font-size: 14px;
      }
  .front-collage > .collage-focus {
    padding: 0;
    background: #1F1F1F;
    text-align: center;
    line-height: 245px;
  }
    .collage-focus img {
      vertical-align: middle;
    }
    .collage-focus a {
      padding: 20px;
    }
  .front-collage > .collage-focus.videobox {
    background: url("/images/videobox-bg.jpg") no-repeat center;
    background-size: cover;
    color: #fff;
    font-size: 18px;
    text-transform: uppercase;
    font-family: PFSquare Sans, sans-serif;
    position: relative;
    cursor: pointer;
    height: 250px;
  }
    .front-collage > .collage-focus.videobox:after {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background: #e31e09;
      background: rgba(227, 30, 9, 0.9);
    }
    .front-collage > .collage-focus.videobox:hover:after {
      background: #c31c0b;
      background: rgba(195, 28, 11, 0.9);
    }
    .collage-focus.videobox .videobox-content {
      position: relative;
      z-index: 2;
      padding: 0 45px 0 105px;
      line-height: 1.1;
      vertical-align: middle;
      text-align: left;
      /*top: 50%;
      transform: translateY(-50%);*/
      display: inline-block;
    }
      .collage-focus.videobox .videobox-content:before {
        content: "";
        position: absolute;
        left: 48px;
        top: 50%;
        margin-top: -22px;
        width: 38px;
        height: 38px;
        background: url("/images/icon-play.png") no-repeat 55%;
        border: 3px solid #fff;
        border-radius: 50%;
      }

.branch .page .block-nav {
  position: relative;
  top: -30px;
}
.intro {
  margin-right: auto;
  margin-left: auto;
  width: 720px;
}

.branch-cols {
  display: table;
  margin: 45px 0;
  background: #E6E6E6;
  width: 100%;
}
  .branch-cols > div {
    display: table-cell;
    padding: 20px;
    width: 25%;
    vertical-align: top;
  }
  .branch-cols > div:nth-child(even) {
    background: #F2F2F2;
  }
    .branch-cols h2 small {
      display: block;
      color: #808080;
      text-transform: uppercase;
      font-size: 12px;
      font-family: Open Sans, sans-serif;
      line-height: 1;
    }
    .branch-cols ul {
      border-color: #CCC;
    }
      .branch-cols ul li {
        border-color: #CCC;
      }

.partners {
  margin: 34px 0;
  padding: 24px;
  border: 1px solid #E6E6E6;
  color: #595959;
  text-transform: uppercase;
  font-size: 14px;
}
  .partners img {
    margin: 0 20px;
    vertical-align: middle;
  }

/* terminology-page */
.terminology-page {}
  .terminology-page h1 {
    font-size: 50px;
    margin: 55px 0 15px;
  }
  .terminology-holder {
    overflow-x: auto;
  }
  table.terminology-table {
    font-size: 14px;
    margin: 10px 0;
    width: 960px;
    border: 1px solid #e9e9e9;
    border-top: none;
  }
    .terminology-table th, .terminology-table td {
      padding: 8px 14px;
      line-height: 23px;
    }
    .terminology-table th {
      background: #e31e09;
      color: #fff;
      font-weight: bold;
      border: 1px solid #e31e09;
      border-bottom: 1px solid #fff;
      cursor: pointer;
      outline: none;
    }
      .terminology-sorter {
        position: relative;
        margin-left: 5px;
      }
      .terminology-sorter:before, .terminology-sorter:after {
        content: "";
        position: absolute;
        left: 0;
        border-left: 5px solid rgba(255, 255, 255, 0);
        border-right: 5px solid rgba(255, 255, 255, 0);
      }
      .terminology-sorter:before {
        border-bottom: 6px solid rgba(0, 0, 0, 0.3);
        top: 1px;
      }
      .terminology-sorter:after {
        border-top: 6px solid rgba(0, 0, 0, 0.3);
        top: 9px;
      }
      .tablesorter-headerAsc .terminology-sorter:after {
        border-top-color: #fff;
      }
      .tablesorter-headerDesc .terminology-sorter:before {
        border-bottom-color: #fff;
      }
    .terminology-table td {
      border: 1px solid #e9e9e9;
    }
    .terminology-table th.tablesorter-no-sort {
      cursor: text;
    }
    .terminology-term td {
      cursor: pointer;
    }
    .terminology-term td:first-child {
      text-align: center;
      width: 12px;
      border-left: none;
    }
    .terminology-definition {
      display: none;
    }
      .terminology-definition td {
        padding: 11px 14px 14px;
      }
      .terminology-definition td:first-child {
        border-right-color: rgba(255, 255, 255, 0);
      }
    .terminology-arrow {
      width: 0;
      height: 0;
      display: inline-block;
      margin-top: 1px;
      border-top: 8px solid #939393;
      border-left: 6px solid rgba(255, 255, 255, 0);
      border-right: 6px solid rgba(255, 255, 255, 0);
    }
    .terminology-item.-open .terminology-definition {
      display: table-row;
    }
    .terminology-item.-open .terminology-term td {
      background: #f7f7f7;
      color: #e31e09;
    }
    .terminology-item.-open .terminology-arrow {
      border-top: none;
      border-bottom: 8px solid #e31e09;
    }
  a.terminology-link {
    text-decoration: underline;
    font-size: 14px;
    margin-left: 25px;
  }
    .terminology-link:first-child {
      margin-left: 0;
    }
    .terminology-link-all {
      padding-left: 32px;
      background: url('../assets/icon-all-definitions.svg') 6px center no-repeat;
    }
    .terminology-link-print {
      padding-left: 22px;
      background: url('../assets/icon-print.svg') left center no-repeat;
    }

  @media screen and (max-width: 640px) {
    .terminology-page h1 {
      margin-top: 15px;
      font-size: 30px;
    }
    .terminology-links {
      text-align: center;
    }
    .terminology-link-print {
      display: none;
    }
    .terminology-table tr {
      position: relative;
    }
    .terminology-term td:first-child {
      position: absolute;
      background: #fff;
      height: 23px;
      border-bottom: none;
    }
    .terminology-term td:first-child + td {
      padding-left: 26px;
    }
  }

/* FOOTER */
.page > footer {
  padding: 0 0 50px;
  font-weight: 100;
}
  .page > footer .logo {
    display: block;
    margin-bottom: 20px;
    width: 63px;
    height: 63px;
    font-size: 0;
  }
    .page > footer .logo svg {
      width: 63px;
      height: 63px;
    }
      .page > footer .logo path {
        fill: white;
      }
  .page > footer .left {
    color: white;
    font-size: 14px;
  }
    .page > footer .left h4 {
      margin: 0;
      font-weight: 100;
      font-size: 22px;
    }
    .copy {
      color: #595959;
    }
    .page > footer .left a {
      color: #E31E09;
      text-decoration: none;
    }
    .page > footer .left a:hover {
      opacity: 0.5;
    }
  .page > footer .right { }
    .page > footer .right ul {
      margin: 0;
      padding: 0;
    }
      .page > footer .right li {
        float: left;
        margin-left: 20px;
        list-style-type: none;
      }
      .page > footer .right li:first-child {
        margin-left: 0;
      }
        .page > footer .right a {
          color: white;
          text-decoration: none;
        }
        .page > footer .right a:hover {
          opacity: 0.8;
        }


// Visibility helpers

.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}
@media (max-width: 640px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 640px) {
  .visible-xs-block {
    display: block !important;
  }
}
@media (max-width: 640px) {
  .visible-xs-inline {
    display: inline !important;
  }
}
@media (max-width: 640px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 641px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 641px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}
@media (min-width: 641px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 641px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
@media (max-width: 640px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 641px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}
@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}

// Solutions page
.solutions-1 {
  width: 640px;

}

.solutions-1 td {
  width: 50%;
  padding-right: 30px;
  vertical-align: top;
}

.solutions-wide {
  max-width: 100%;
}

.solutions-wide td {
  width: 33%;
  padding-right: 30px;
  vertical-align: top;
}


td.cs-img {
  width: 100px;
  padding: 20px;
}

.case-study table p {
  font-size:13px;
}

.contactbox {
  background:#F3F3F4;
  margin-bottom: 40px;
}

.contactbox-col-wide {
  display: block;
  margin: 20px;
  padding-right: 40px;
}

.contactbox-col-1 {
  display: inline-block;
  width: 100%;
  max-width:620px;
  margin-bottom: 30px;
}
.contactbox-col-2 {
  display: inline-block;
  vertical-align: top;
  margin: 0px 20px;
  max-width: 150px;
}

.contactbox-col-2 a {
  display: inline-block;
  margin: 0px 0px 10px 10px;
}

i.email {
  display: inline-block;
  width: 40px;
  height: 28px;
  background: url(/photos/email.png) no-repeat;
  background-position: 0px 0px;
  vertical-align: middle;
}

i.web {
  display: inline-block;
  width: 40px;
  height: 30px;
  background: url(/photos/web.png) no-repeat;
  background-position: 0px 0px;
  vertical-align: middle;
}

/* Edicy -> Voog migration CSS */
.edy-positionable-container-left,
.edy-texteditor-container-wrapper-left {
  margin-right: 20px;
}

.edy-positionable-container-right,
.edy-texteditor-container-wrapper-right {
  margin-left: 20px;
}

.edy-image-container-with-title:after {
  display: block;
  padding: 4px;
  font-size: 12px;
  line-height: 1.3em;
  content: attr(data-title);
}

.extended-menu .cms-btn {
  margin-left: 15px;
}

.cms-btn-mobile {
  padding: 0 26px 10px;
}


/* Team page */
.team-header {
  position: relative;
  background: #333 center / auto 100% no-repeat;
}
.team-page .submenu-holder {
  position: absolute;
}
.team-page .subnav {
  color: #fff;
}
.team-header-img {
  min-height: 350px;
}
.team-header-img img {
  display: block;
  margin: 0 auto;
}
.team-content-title {
  background-color: #e31e09;
  color: #fff;
  font-size: 60px; font-weight: 100;
  font-family: PFSquare Sans, sans-serif;
  line-height: 1;
  padding: 15px 75px;
  display: inline-block;
  text-transform: uppercase;
  position: absolute; left: 50%;
  transform: translate3d(-50%, -65px, 0);
  white-space: nowrap;
}
.team-content-header {
  margin: 70px auto 45px;
  font-size: 20px;
}
.team {
  margin: 0 -8px 0 0;
  display: flex;
  flex-wrap: wrap;
}
.team-item {
  width: 244px; height: 244px;
  background: #333 center / cover no-repeat;
  margin: 0 8px 8px 0;
  position: relative;
  z-index: 1;
}
.team-item:after {
  content: "";
  width: 100%; height: 100%;
  position: absolute; top: 0; left: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 47%, rgba(0, 0, 0, 0.23) 70%, rgba(0, 0, 0, 0.46) 100%);
  z-index: -1;
}
.team-item.with-link {
  background-color: #e31e09;
}
.team-item.with-link:after {
  display: none;
}
.team-item-details {
  position: absolute; left: 20px; right: 20px; bottom: 25px;
  color: #fff;
}
.team-item-link, a.team-item-link {
  position: absolute; top: 0; left: 0;
  width: 100%; height: 100%;
  box-sizing: border-box;
  padding: 25px 20px;
  text-align: center;
  color: #fff;
  text-transform: uppercase;
  transition: background-color 0.2s linear;
}
a.team-item-link:hover {
  opacity: 1;
  background-color: #a51000;
}
a.team-item-edit-link {
  position: absolute; bottom: 25px; left: 20px;
  color: #fff;
}
.team-item-link-inner {
  position: absolute; top: 50%; left: 50%;
  transform: translate3d(-50%, -50%, 0);
  white-space: nowrap;
}
.team-item-link-inner:after {
  content: "\00a0\203A";
}
.team-item h3 {
  font-size: 26px;
  margin: 0;
  color: #fff;
}

@media screen and (max-width: 640px) {
  .team-content-header {
    margin-top: 10px; margin-bottom: 15px;
  }
  .team-page .submenu-holder {
    position: static;
    background-color: white;
  }
  .team-page .subnav {
    color: inherit;
  }
  .team-content-title {
    font-size: 40px;
    padding-left: 45px; padding-right: 45px;
    position: relative;
    transform: translate3d(-50%, 0, 0);
  }
  .team-header-img {
    min-height: 0;
  }
  .team {
    width: 496px;
    margin: 0 auto;
  }
  .team-item:nth-child(even) {
    margin-right: 0;
  }
}

@media screen and (max-width: 536px) {
  .team {
    width: auto;
    align-items: center;
    flex-direction: column;
    padding: 0 20px;
  }
  .team-item, .team-item:nth-child(even) {
    margin: 0 0 8px;
  }
  .team-item {
    width: 100%; height: auto;
  }
  .team-item:before {
    content: "";
    width: 100%;
    padding-bottom: 100%;
    display: block;
  }
  .team-item.with-link:before {
    padding-bottom: 25%;
  }
}
