body {
  font-size: 16px;
  min-height: 100%;
  color: #333333;
  position: relative;
  overflow-y: scroll;
  padding-bottom: 137px;
  font-family: "PT Sans", sans-serif; }
  @media (max-width: 576px) {
    body {
      padding-bottom: 163px; } }

h1, h2, h3, h4 {
  margin: 0px;
  padding: 0px;
  font-weight: 700;
  color: #333333; }

p {
  font-size: 16px;
  line-height: 28px;
  text-align: justify;
  margin-bottom: 25px; }

a {
  color: #dc0008; }
  a:hover, a:active {
    color: #333333;
    text-decoration: underline;
    -webkit-transition: color 350ms ease-out;
    -moz-transition: color 350ms ease-out;
    -o-transition: color 350ms ease-out;
    transition: color 350ms ease-out; }

header {
  height: 90px;
  background-color: #ffffff;
  border-bottom: 2px #f1f1f1 solid; }
  header nav {
    margin-top: 25px; }
    header nav ul {
      margin: 0px;
      padding: 0px;
      text-align: right;
      list-style-type: none; }
      header nav ul li {
        padding: 8px 15px;
        display: inline-block; }
        header nav ul li a {
          color: #333333; }
          header nav ul li a:hover, header nav ul li a:active, header nav ul li a.active {
            color: #dc0008;
            text-decoration: none; }
        header nav ul li:last-child {
          padding-right: 0px; }
  header button {
    width: 40px;
    height: 40px;
    display: none;
    cursor: pointer;
    background-color: #ffffff;
    border: 1px #f1f1f1 solid; }
    header button span {
      height: 3px;
      display: block;
      margin: 4px 0px;
      background-color: #dc0008; }
  header #mobile-menu {
    width: 100%;
    height: 100%;
    z-index: 9999;
    top: 0px;
    display: none;
    position: absolute;
    background: rgba(0, 0, 0, 0.8); }
    header #mobile-menu ul {
      padding: 0px;
      margin-top: 60px;
      text-align: center;
      list-style-type: none; }
      header #mobile-menu ul li a {
        color: #ffffff;
        font-size: 18px;
        font-weight: bold;
        padding: 10px 0px;
        display: inline-block;
        text-transform: uppercase; }
        header #mobile-menu ul li a:hover {
          color: #dc0008;
          text-decoration: none;
          -webkit-transition: color 350ms ease-out;
          -moz-transition: color 350ms ease-out;
          -o-transition: color 350ms ease-out;
          transition: color 350ms ease-out; }
      header #mobile-menu ul li.close-menu {
        color: #dc0008;
        cursor: pointer;
        font-size: 18px;
        font-weight: bold;
        padding: 10px 0px;
        text-transform: uppercase; }
  header .logo {
    margin-top: 15px; }
  @media (max-width: 992px) {
    header nav {
      display: none; }
    header button {
      float: right;
      display: block;
      margin-top: 26px; } }

footer {
  width: 100%;
  bottom: 0px;
  color: #ffffff;
  font-size: 14px;
  padding: 20px 0px;
  position: absolute;
  background-color: #25272e; }
  footer .social a {
    width: 50px;
    height: 50px;
    margin: 0px 5px;
    border-radius: 25px;
    display: inline-block;
    border: 1px rgba(255, 255, 255, 0.3) solid; }
    footer .social a img {
      height: 28px;
      margin-top: 9px; }
    footer .social a:hover {
      border-color: #dc0008;
      -webkit-transition: border-color 350ms ease-out;
      -moz-transition: border-color 350ms ease-out;
      -o-transition: border-color 350ms ease-out;
      transition: border-color 350ms ease-out; }
  footer .links {
    margin-top: 15px;
    padding-top: 10px;
    border-top: 1px rgba(255, 255, 255, 0.3) solid; }
    footer .links .copy a {
      color: #ffffff; }
      footer .links .copy a:hover {
        color: #dc0008;
        text-decoration: none;
        -webkit-transition: color 350ms ease-out;
        -moz-transition: color 350ms ease-out;
        -o-transition: color 350ms ease-out;
        transition: color 350ms ease-out; }
    footer .links .copy.author {
      text-align: right; }
  @media (max-width: 768px) {
    footer {
      font-size: 13px; } }
  @media (max-width: 576px) {
    footer .links {
      text-align: center; }
      footer .links .copy.author {
        margin-top: 5px;
        display: inline-block; } }

/*
	Cookies consent
*/
#cookies {
  width: 100%;
  bottom: 0px;
  z-index: 9999;
  padding: 15px;
  position: fixed;
  background-color: #f6f6f6;
  border-top: 1px #f1f1f1 solid; }
  #cookies p {
    display: inline;
    font-size: 14px;
    margin-bottom: 10px; }
  #cookies .wrapper {
    margin: 0 auto;
    max-width: 1140px; }
    #cookies .wrapper .agree {
      color: #ffffff;
      cursor: pointer;
      font-size: 14px;
      margin-left: 30px;
      padding: 8px 16px;
      background-color: #dc0008;
      border: 1px #dc0008 solid; }
      #cookies .wrapper .agree:hover {
        color: #dc0008;
        background-color: #ffffff;
        text-decoration: none;
        -webkit-transition: background-color 700ms ease-out, color 350ms ease-out;
        -moz-transition: background-color 700ms ease-out, color 350ms ease-out;
        -o-transition: background-color 700ms ease-out, color 350ms ease-out;
        transition: background-color 700ms ease-out, color 350ms ease-out; }

/* 
	General elements
*/
span.at::before {
  content: '@'; }

/* 
	General layout
*/
section#heading {
  padding: 30px 0px;
  border-bottom: 2px #f1f1f1 solid;
  /*
  	Report page
  */ }
  section#heading h1 {
    color: #dc0008;
    font-size: 46px; }
  section#heading h2 {
    margin-top: 15px;
    color: #505050;
    font-size: 30px;
    font-weight: normal; }
  section#heading a {
    font-size: 22px;
    margin-top: 15px;
    display: inline-block; }
    section#heading a:hover {
      text-decoration: none; }
section#main {
  /* 
  	Banner - About us 
  */ }
  section#main #sidebar strong {
    margin-bottom: 15px;
    display: inline-block;
    text-transform: uppercase; }
  section#main #sidebar ul {
    padding: 0px;
    list-style-type: none;
    margin: 0px 0px 30px 0px; }
    section#main #sidebar ul li {
      padding: 10px 15px;
      border-bottom: 1px #f1f1f1 solid; }
      section#main #sidebar ul li:last-of-type {
        border: none; }
    section#main #sidebar ul:last-of-type {
      margin-bottom: 0px; }
  section#main #links {
    margin-top: 30px; }
    section#main #links .previous span.label,
    section#main #links .next span.label {
      width: 100%;
      color: #dc0008;
      font-size: 15px;
      margin-bottom: 3px;
      display: inline-block; }
    section#main #links .previous a,
    section#main #links .next a {
      padding: 10px 40px 10px 20px;
      display: inline-block;
      border: 2px #f1f1f1 solid; }
      section#main #links .previous a span:before,
      section#main #links .next a span:before {
        font-size: 40px;
        color: #333333; }
      section#main #links .previous a h5,
      section#main #links .next a h5 {
        float: right;
        font-size: 17px;
        font-weight: 700;
        color: #333333;
        margin: 20px 0px 0px 20px; }
      section#main #links .previous a:hover,
      section#main #links .next a:hover {
        text-decoration: none;
        background-color: #f6f6f6; }
        section#main #links .previous a:hover span:before,
        section#main #links .next a:hover span:before {
          color: #dc0008; }
    section#main #links .next {
      text-align: right; }
      section#main #links .next a {
        padding: 10px 20px 10px 40px; }
        section#main #links .next a h5 {
          float: left;
          margin: 20px 20px 0px 0px; }
  section#main .text h3 {
    font-size: 16px;
    margin-bottom: 20px;
    display: inline-block;
    text-transform: uppercase; }
  section#main .text p:last-of-type {
    margin-bottom: 0px; }
  section#main .text .points {
    padding-left: 15px;
    margin-bottom: 25px; }
    section#main .text .points ul {
      margin: 0px;
      padding: 0px;
      list-style-type: none; }
      section#main .text .points ul li {
        padding: 5px 0px 0px 20px;
        background: url(../images/point.png) no-repeat left 15px; }
  section#main .banner {
    height: 180px;
    margin-top: 30px;
    background: #f6f6f6 url(../images/banner.jpg) no-repeat left center; }
    section#main .banner a {
      height: 180px;
      display: block; }
      section#main .banner a .title {
        width: 350px;
        height: 180px;
        right: 14px;
        text-align: right;
        position: absolute;
        background-color: #ffffff;
        -webkit-clip-path: polygon(21% 0, 100% 0, 100% 100%, 0% 100%);
        clip-path: polygon(33% 0, 100% 0, 100% 100%, 0% 100%); }
        section#main .banner a .title h4 {
          font-size: 26px;
          margin-top: 55px;
          font-weight: 700;
          color: #333333;
          padding-right: 15px; }
          section#main .banner a .title h4 span {
            color: #dc0008;
            display: block;
            margin-top: 8px;
            font-size: 22px;
            font-weight: normal; }
      section#main .banner a:hover .title h4 {
        color: #dc0008;
        -webkit-transition: color 350ms ease-out;
        -moz-transition: color 350ms ease-out;
        -o-transition: color 350ms ease-out;
        transition: color 350ms ease-out; }
    section#main .banner:hover {
      box-shadow: 0 1px 30px rgba(0, 0, 0, 0.2);
      -webkit-transition: box-shadow 500ms ease-out;
      -moz-transition: box-shadow 500ms ease-out;
      -o-transition: box-shadow 500ms ease-out;
      transition: box-shadow 500ms ease-out; }
section.content {
  padding: 35px 0px; }
  section.content h2 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 25px;
    display: inline-block;
    text-transform: uppercase; }
  section.content a.external {
    color: #dc0008;
    padding: 10px 20px;
    display: inline-block;
    border: 1px #dc0008 solid; }
    section.content a.external:hover {
      color: #ffffff;
      background-color: #dc0008;
      text-decoration: none;
      -webkit-transition: background-color 700ms ease-out, color 350ms ease-out;
      -moz-transition: background-color 700ms ease-out, color 350ms ease-out;
      -o-transition: background-color 700ms ease-out, color 350ms ease-out;
      transition: background-color 700ms ease-out, color 350ms ease-out; }
  section.content.grey {
    background-color: #f6f6f6; }
@media (max-width: 992px) {
  section#main #links .previous a {
    padding: 10px 15px; }
    section#main #links .previous a h5 {
      margin-left: 10px; }
  section#main #links .next a {
    padding: 10px 15px; }
    section#main #links .next a h5 {
      margin-right: 10px; }
  section#main .text .links strong {
    margin-bottom: 5px; }
  section#main .text .links a {
    margin-top: 15px; } }
@media (max-width: 768px) {
  section#heading {
    text-align: center; }
  section#main #sidebar {
    margin-top: 30px;
    text-align: center; }
  section#main #links {
    display: none; }
  section#main .text h3 {
    width: 100%;
    text-align: center; }
  section#main .text .links {
    text-align: center; } }

/*
	Video section
*/
#slideshow {
  height: 400px;
  overflow: hidden;
  position: relative;
  border-bottom: 2px #f1f1f1 solid;
  /* Only for IE 10 & IE 11 */ }
  #slideshow .claim {
    width: 100%;
    top: 40%;
    z-index: 999;
    position: absolute;
    transform: translateY(-40%); }
    #slideshow .claim h1 {
      font-size: 52px;
      line-height: 62px; }
      #slideshow .claim h1 span {
        width: 100%;
        display: inline-block; }
    #slideshow .claim h2 {
      font-size: 32px;
      margin-top: 15px;
      color: #505050;
      font-weight: normal; }
    #slideshow .claim .links {
      margin-top: 35px; }
      #slideshow .claim .links a {
        color: #ffffff;
        padding: 10px 20px;
        display: inline-block;
        background-color: #dc0008;
        border: 1px #dc0008 solid; }
        #slideshow .claim .links a:hover {
          color: #dc0008;
          background-color: #ffffff;
          text-decoration: none;
          -webkit-transition: background-color 700ms ease-out, color 350ms ease-out;
          -moz-transition: background-color 700ms ease-out, color 350ms ease-out;
          -o-transition: background-color 700ms ease-out, color 350ms ease-out;
          transition: background-color 700ms ease-out, color 350ms ease-out; }
  #slideshow .video {
    width: 75%;
    right: 0px;
    position: absolute;
    -webkit-clip-path: polygon(47% 0, 100% 0, 100% 100%, 0% 100%);
    clip-path: polygon(47% 0, 100% 0, 100% 100%, 0% 100%); }
    #slideshow .video video {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center; }
    #slideshow .video:before {
      content: '';
      top: 0px;
      width: 100%;
      height: 70%;
      position: absolute;
      background: linear-gradient(rgba(0, 0, 0, 0.3), transparent); }
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    #slideshow {
      height: 380px; }
      #slideshow .video {
        width: 50%; } }
  @media (max-width: 992px) {
    #slideshow {
      height: 300px; }
      #slideshow .claim {
        top: 35%;
        transform: translateY(-35%); }
        #slideshow .claim h1 {
          font-size: 38px;
          line-height: 48px; }
        #slideshow .claim h2 {
          font-size: 28px; }
      #slideshow .video {
        width: 70%; } }
  @media (max-width: 768px) {
    #slideshow {
      height: auto;
      padding: 35px 0px; }
      #slideshow .claim {
        top: auto;
        z-index: auto;
        transform: none;
        text-align: center;
        position: relative; }
        #slideshow .claim h1 span {
          display: inline; }
      #slideshow .video {
        display: none; } }

/*
	List of works
*/
#services p {
  margin-bottom: 0px; }
#services a.external {
  margin-top: 25px; }
#services .box {
  padding: 20px;
  margin-top: 30px;
  border: 2px #f1f1f1 solid; }
  #services .box a .icon {
    text-align: center; }
    #services .box a .icon span:before {
      font-size: 60px;
      color: #333333; }
  #services .box a .title h4 {
    font-size: 17px;
    margin-top: 20px;
    font-weight: 700;
    text-align: center; }
  #services .box a:hover, #services .box a:active, #services .box a:focus {
    text-decoration: none; }
    #services .box a:hover .icon span:before, #services .box a:active .icon span:before, #services .box a:focus .icon span:before {
      color: #dc0008; }
  #services .box a:hover {
    text-decoration: none;
    box-shadow: 0 1px 30px rgba(0, 0, 0, 0.2);
    -webkit-transition: box-shadow 500ms ease-out;
    -moz-transition: box-shadow 500ms ease-out;
    -o-transition: box-shadow 500ms ease-out;
    transition: box-shadow 500ms ease-out; }
#services .part {
  margin-top: 35px; }
  #services .part h3 {
    font-size: 16px;
    display: inline-block;
    text-transform: uppercase; }
  #services .part:hover h3 {
    color: #dc0008;
    -webkit-transition: color 350ms ease-out;
    -moz-transition: color 350ms ease-out;
    -o-transition: color 350ms ease-out;
    transition: color 350ms ease-out; }
#services.module {
  border-top: 2px #f1f1f1 solid; }
@media (max-width: 768px) {
  #services .part {
    text-align: center; } }

/*
	Call to action
*/
#feedback {
  padding-bottom: 35px; }
  #feedback .contact {
    padding-top: 35px;
    text-align: center;
    border-top: 3px #dc0008 solid; }
    #feedback .contact strong {
      display: block;
      font-size: 18px;
      margin-bottom: 25px; }
    #feedback .contact .buttons a,
    #feedback .contact .buttons span:not(.at) {
      color: #dc0008;
      width: 168px;
      margin: 0px 7px;
      padding: 10px 0px;
      display: inline-block;
      border: 1px #dc0008 solid; }
      #feedback .contact .buttons a:hover,
      #feedback .contact .buttons span:not(.at):hover {
        color: #ffffff;
        background-color: #dc0008;
        text-decoration: none;
        -webkit-transition: background-color 700ms ease-out, color 350ms ease-out;
        -moz-transition: background-color 700ms ease-out, color 350ms ease-out;
        -o-transition: background-color 700ms ease-out, color 350ms ease-out;
        transition: background-color 700ms ease-out, color 350ms ease-out; }
  @media (max-width: 768px) {
    #feedback .contact strong {
      margin-bottom: 10px; }
    #feedback .contact .buttons a,
    #feedback .contact .buttons span:not(.at) {
      margin-top: 15px; } }
  @media (max-width: 576px) {
    #feedback .contact .buttons a:nth-child(3),
    #feedback .contact .buttons span:not(.at):nth-child(3) {
      margin-top: 15px; } }

/*
	List of projects
*/
#projects .box {
  margin-bottom: 30px;
  padding-bottom: 15px;
  background-color: #ffffff; }
  #projects .box .image {
    overflow: hidden; }
    #projects .box .image a img {
      max-width: 100%;
      -moz-transition: all 700ms;
      -webkit-transition: all 700ms;
      transition: all 700ms; }
    #projects .box .image a:hover img {
      -webkit-transform: scale(1.15);
      -moz-transform: scale(1.15);
      -ms-transform: scale(1.15);
      -o-transform: scale(1.15);
      transform: scale(1.15); }
  #projects .box .text {
    margin-top: 15px;
    padding: 0px 15px; }
    #projects .box .text h4 {
      font-size: 16px;
      padding-bottom: 8px;
      margin-bottom: 15px;
      display: inline-block;
      text-transform: uppercase;
      border-bottom: 3px #dc0008 solid; }
    #projects .box .text p {
      text-align: left;
      margin-bottom: 0px; }
    #projects .box .text a {
      margin-top: 10px;
      display: inline-block; }
  #projects .box:hover {
    box-shadow: 0 1px 30px rgba(0, 0, 0, 0.2);
    -webkit-transition: box-shadow 500ms ease-out;
    -moz-transition: box-shadow 500ms ease-out;
    -o-transition: box-shadow 500ms ease-out;
    transition: box-shadow 500ms ease-out; }

/*
	Contact page
*/
@media (max-width: 992px) {
  #contact .form {
    margin-top: 30px; } }
@media (max-width: 768px) {
  #contact .text p {
    text-align: center; }
  #contact .form {
    text-align: center; } }

/*
	Modal window
*/
.modal .modal-content {
  border-radius: 0px; }
  .modal .modal-content .modal-header {
    padding: 20px; }
    .modal .modal-content .modal-header h3 {
      font-size: 16px;
      color: #333333;
      text-transform: uppercase; }
  .modal .modal-content .close-window {
    border: 0px;
    padding: 0px;
    cursor: pointer;
    margin-top: 10px;
    color: #333333;
    display: inline-block;
    background-color: transparent; }
    .modal .modal-content .close-window:hover {
      color: #dc0008;
      text-decoration: underline;
      -webkit-transition: color 350ms ease-out;
      -moz-transition: color 350ms ease-out;
      -o-transition: color 350ms ease-out;
      transition: color 350ms ease-out; }

/*
	Forms
*/
.form input[name="number"] {
  background: #fff url(../images/captcha.png) no-repeat left center; }
.form input[type="submit"] {
  color: #ffffff;
  border: 0px;
  cursor: pointer;
  padding: 8px 16px;
  border-radius: 0px;
  display: inline-block;
  background-color: #dc0008;
  border: 1px #dc0008 solid; }
  .form input[type="submit"]:hover {
    color: #dc0008;
    background-color: transparent;
    -webkit-transition: background-color 700ms ease-out, color 350ms ease-out;
    -moz-transition: background-color 700ms ease-out, color 350ms ease-out;
    -o-transition: background-color 700ms ease-out, color 350ms ease-out;
    transition: background-color 700ms ease-out, color 350ms ease-out; }
.form input.form-control {
  color: #333;
  height: 40px;
  font-size: 15px;
  box-shadow: none;
  border-radius: 0px;
  border: 1px #d2d2d2 solid; }
.form input:disabled {
  background-color: transparent; }
.form textarea {
  resize: none; }
  .form textarea.form-control {
    color: #333;
    font-size: 15px;
    box-shadow: none;
    border-radius: 0px;
    border: 1px #d2d2d2 solid; }
.form .consent {
  margin-bottom: 15px; }

/*# sourceMappingURL=main.css.map */
