﻿* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  background-color: black;
  /* prevent text selection while dragging */
  /*
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  */
}

.container {
  display: block;
  position: relative;
  background-color: white;
  margin: 0 auto;
  width: 100%;
  height: 100%;
}

.anchor {
  visibility: hidden;
}

img {
  display: block; /* remove descender gap below image */
  width: 100%;
  height: auto;
  margin: auto;
}

.heading {
  display: block;
  position: absolute;
  top: 5%;
  width: 99.5%;
  text-align: center;
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 2.5vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.3vw;
  letter-spacing: 2.222222px;
}

.heading img {
  display: block;
  width: 34%;
  height: auto;
}

.writeup {
  display: block;
  position: absolute;
  top: 20%;
  width: 99.5%;
}

.writeup-inner {
  display: table;
  margin: 0 auto;
  width: 55%;
  height: 50%;
  color: #575756;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.5vw;
  text-align: center;
  text-transform: none;
  letter-spacing: 1.833333px;
}

.writeup ul {
  display: inline-block;
  text-align: left;
  color: black;
}

.writeup li {
  margin: 0 0 0.5em 0;
}

/* simple hack to control the line-break height without affecting the rest */
.writeup br {
  display: block;
  content: "";
  margin: 1.5%;
}

.scroller {
  display: block;
  position: absolute;
  top: 90%;
  margin: 0 auto;
  width: 99.5%;
}

.scroller-offer {
  top: 94%;
}

.scroller img {
  display: block;
  margin: 0 auto;
  width: 1.5%;
  height: auto;
}

.scroller img:hover {
  filter: invert(100%);
}

/* menu system */

@keyframes moveMenuUp {
  from {
    top: 2.3vw;
  }
  to {
    top: 0;
  }
}

@keyframes moveMenuDn {
  from {
    top: 0;
  }
  to {
    top: 2.3vw;
  }
}

.topMenu {
  display: block;
  position: fixed !important;
  position: absolute; /* ie */
  top: 2.3vw;
  width: 100%;
  height: 6.5vw;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.topMenu-inner {
  display: flex;
  justify-content: center;
  margin: 2.3vw auto;
  width: 65%;
  letter-spacing: 1.866667px;
  text-align: center;
}

.topMenu-item {
  width: 10vw;
}

.tm-gallery {
  padding: auto;
}

.tm-contact {
  padding: auto;
}

.login {
  display: block;
  position: absolute;
  margin: 2.3vw;
  left: 81%;
}

.login-content {
  display: flex;
}

.login a {
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 0.8vw;
  text-decoration: none;
  padding-bottom: 0.3vw;
  letter-spacing: 1.866667px;
}

.login-icon {
  display: block;
  margin: -0.5vw auto;
}

.login-icon img {
  margin: 0 1vw;
  display: block;
  width: 2vw;
  height: auto;
}

.topMenu-logo {
  display: block;
  margin: -2.3vw auto;
}

.topMenu-logo img {
  display: block;
  width: 7.3vw;
  height: auto;
}

.topMenu a {
  display: block;
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 0.8vw;
  text-decoration: none;
  padding-bottom: 0.3vw;
}

.topMenu-underbar {
  width: 25%;
  height: auto;
}

/* landing page */

.openingStatement {
  display: block;
  position: absolute;
  top: 47.5%;
  width: 99.5%;
  text-align: center;
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1.39vw;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: 2.222222px;
}

/* about page */

.aboutHeading {
  top: 32%;
  color: green;
}

.aboutWriteup {
  display: block;
  position: absolute;
  top: 43%;
  width: 99.5%;
}

.aboutWriteup-inner {
  display: table;
  margin: 0 auto;
  width: 60%;
  height: 50%;
  color: #575756;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 0.9vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.8vw;
  text-align: center;
  text-transform: none;
  letter-spacing: 1.833333px;
}

.aboutWriteup b {
  font-size: 1.39vw;
  line-height: 3vw;
}

.aboutWriteup br {
  line-height: 1.5vw;
}

/* values page */

.valuesHeading {
  top: 12%;
}

.valuesHeading img {
  display: block;
  width: 22%;
  height: auto;
}

.valuesChoices {
  display: block;
  position: absolute;
  top: 25%;
  width: 99.5%;
}

.valuesChoices-inner {
  display: table;
  margin: 0 auto;
  width: 83%;
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 0.8vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.4vw;
  text-align: center;
  text-transform: none;
  letter-spacing: 1.833333px;
}

@media screen and (max-width: 600px) {
  .valuesChoices {
    top: 22%;
  }
  .valuesChoices-inner {
    width: 95%;
  }
}

.valuesChoices img {
  display: block; /* remove descender gap below image */
  max-width: 60%;
  width: 20%;
  height: auto;
  margin: 0 auto 5% auto;
}

.valuesChoices td {
  padding-left: 11px;
  padding-right: 11px;
  text-align: left;
  vertical-align: top;
}

.valuesChoices .c {
  text-align: center;
  padding-bottom: 1vw;
  /* padding-bottom: 1.5%; */
  font-size: 1.39vw;
  font-style: italic;
  font-weight: bold;
}

.goingHeading {
  top: 69%;
}

.goingHeading img {
  display: block; /* remove descender gap below image */
  max-width: 60%;
  width: 31%;
  height: auto;
  margin: 0 auto;
}

.goingWriteup {
  display: block;
  position: absolute;
  top: 78%;
  width: 99.5%;
}

.goingWriteup-inner {
  display: table;
  margin: 0 auto;
  width: 60%;
  height: 50%;
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.8vw;
  text-align: center;
  text-transform: none;
  letter-spacing: 1.833333px;
}

/* offer page */

.offerHeading {
  top: 15%;
}

.offerWriteup {
  display: block;
  position: absolute;
  top: 25%;
  width: 99.5%;
}

.offerWriteup-inner {
  display: table;
  margin: 0 auto;
  width: 55%;
  height: 50%;
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.5vw;
  text-align: center;
  text-transform: none;
  letter-spacing: 1.833333px;
}

.offerChoices {
  display: block;
  position: absolute;
  top: 40%;
  width: 99.5%;
}

.offerChoices-inner {
  display: table;
  margin: 0 auto;
  width: 86%;
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.5vw;
  text-align: center;
  text-transform: none;
  letter-spacing: 1.833333px;
}

@media screen and (max-width: 600px) {
  .offerWriteup-inner {
    width: 85%;
  }
  .offerChoices-inner {
    width: 95%;
  }
}

.offerChoices img {
  display: block; /* remove descender gap below image */
  width: 7vw;
  height: auto;
  margin: 0 auto 5% auto;
}

.offerChoices-writeup {
  font-size: 0.8vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.1vw;
  text-align: left;
}

.offerChoices-writeup td {
  padding-top: 1.5vw;
}

.offerChoices-headings td {
  padding-left: 0.5vw;
  padding-right: 0.5vw;
}

.offerChoices table {
  width: 100%;
  table-layout: fixed;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0.5vw 0;
  border: none;
  text-align: center;
}

/* industries page */

.industriesHeading img {
  width: 24%;
  height: auto;
}

.industriesHeading {
  top: 22%;
}

.industriesWriteup {
  top: 33%;
}

.industriesWriteup-inner {
}

.industriesWriteup ul {
  font-size: 1.3vw;
  line-height: 1.5vw;
  color: #575756;
}

.industriesPanel {
  display: block;
  position: absolute;
  top: 0;
  height: 100%;
  width: 50%;
  background: transparent;
}

.industriesPanel-l {
  left: 0;
}

.industriesPanel-r {
  right: 0;
}

.industriesPanel img {
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: auto;
  -webkit-animation-name: fade;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-duration: 8s;
  animation-name: fade;
  animation-iteration-count: infinite;
  animation-duration: 8s;
}

.industriesPanel-r img {
  -webkit-animation-duration: 11s;
  animation-duration: 11s;
}

@-webkit-keyframes fade {
  0% {
    opacity: 0;
  }

  20% {
    opacity: 1;
  }

  33% {
    opacity: 1;
  }

  53% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fade {
  0% {
    opacity: 0;
  }

  20% {
    opacity: 1;
  }

  33% {
    opacity: 1;
  }

  53% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

#f1 {
  -webkit-animation-delay: 5s;
}

#f2 {
  -webkit-animation-delay: -8s;
}

#f3 {
  -webkit-animation-delay: -7s;
}

#f4 {
  -webkit-animation-delay: -8s;
}

#f5 {
  -webkit-animation-delay: -6s;
}

#f6 {
  -webkit-animation-delay: -10s;
}

/* management page */

.managementHeading {
  top: 28%;
}

.managementHeading img {
  display: block;
  width: 50%;
  height: auto;
}

.managementTeam {
  display: block;
  position: absolute;
  top: 47%;
  width: auto;
}

.managementTeam-inner {
  display: table;
  margin: 0 auto;
  width: 75%;  /* spacing between directors name */
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 0.8vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.5vw;
  text-align: center;
  text-transform: none;
  letter-spacing: 1.833333px;
}

.managementTeam img {
  display: block; /* remove descender gap below image */
  width: 100%;
  height: auto;
  margin: 0 auto 5% auto;
}

.managementTeam table {
  width: 80%; /* Cetering of the directors on the page*/
  table-layout: fixed;
  margin: 0;
  border-collapse: collapse;
  border: none;
  text-align: center;
}

.managementTeam td {
  padding-left: 8px;
  padding-right: 8px;
  text-align: center;
  vertical-align: top;
}

/* clients page */

.clientsHeading {
  top: 12%;
}

.clientsHeading img {
  display: block;
  width: 25%;
  height: auto;
}

.clientsList {
  display: block;
  position: absolute;
  top: 24%;
  width: 99.5%;
}

.clientsList-inner {
  display: block;
  margin: 0 auto;
  width: 85%;
}

@media screen and (max-width: 600px) {
  .clientsList-inner {
    width: 95%;
  }
}

.clientsList img {
  display: inline;
  width: 10vw;
  height: auto;
  padding-left: 2.2vw;
  padding-right: 2.2vw;
  vertical-align: middle;
  object-fit: scale-down;
}

.clientsList tr {
  height: 8vw;
}

.clientsList td {
  padding-left: 11px;
  padding-right: 11px;
  text-align: center;
  vertical-align: middle;
}

/* gallery page */

.galleryHeading {
  color: green;
  top: 13%;
}

.galleryHeading img {
  display: block;
  width: 34%;
  height: auto;
}

.galleryNav {
  display: block;
  position: absolute;
  top: 35vw;
  width: 99.5%;
  z-index: 3000;
}

@media screen and (max-width: 600px) {
  .galleryNav {
    top: 32vw;
  }
}

.galleryNav-inner {
  margin: 0 auto;
  width: 90%;
}

.galleryNav table {
  width: 100%;
  table-layout: fixed;
  margin: 0;
  border-collapse: collapse;
  border: none;
}

.galleryNav td {
  vertical-align: top;
  text-align: center;
}

.galleryNav img {
  display: inline-block;
  width: 19%;
  height: auto;
}

.galleryNav img:hover {
  /**/
}

.gallerySlider {
  display: block;
  position: absolute;
  top: 25%;
  width: 99.5%;
}

.gallerySlider-inner {
  display: block;
  margin: 0 auto;
  width: 550px;
  height: 550px;
  text-align: center;
}

/* contact page */

.contactHeading {
  display: block;
  position: absolute;
  top: 17%;
}

.contactDetails {
  display: block;
  position: absolute;
  top: 35%;
  width: 99.5%;
}

.contactDetails-inner {
  display: block;
  margin-left: auto;
  margin-right: 11%;
  width: 35%;
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.5vw;
  text-align: right;
  text-transform: none;
  letter-spacing: 1.692307px;
}

.contactMap {
  display: block;
  position: absolute;
  display: block;
  position: absolute;
  top: 46%;
  width: 99.5%;
  height: 33%;
}

.contactMap-inner {
  display: block;
  margin-left: auto;
  margin-right: 11%;
  width: 34%;
  height: 91%;
  text-align: right;
}

.contactMap-inner iframe {
  width: 100%;
  height: 100%;
  /* border: solid 1px darkgray; */
}

.contactInput {
  display: block;
  position: absolute;
  top: 34%;
  width: 40%;
  height: 20%;
  text-align: left;
  font-family: "Source Sans Pro", sans-serif;
}

.contactInput input,
.contactInput textarea {
  background: transparent;
  border: 2px solid white;
  font-size: 1vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  color: white;
  letter-spacing: 1.692307px;
  text-transform: none;
  margin-left: 25%;
  width: 75%;
  padding: 1em 1em;
}

#m {
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 1.5vw;
  text-transform: none;
  letter-spacing: 1.692307px;
}

#input-name {
  display: block;
  position: absolute;
  top: 0;
}

#input-email {
  display: block;
  position: absolute;
  top: 4.7em;
}

#input-msg {
  display: block;
  position: absolute;
  top: 9.6em;
  height: 14em;
  resize: none;
}

.contactSubmit {
  display: table;
  position: absolute;
  color: white;
  top: 37em;
  margin-left: 11%;
  width: 31.3%;
  height: 3em;
  padding: 0;
  vertical-align: middle;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1.3vw;
}

.contactSubmit .btn-submit {
  display: block;
  float: right;
  width: 9vw;
  height: 3.5vw;
  background-color: white;
  color: black;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1vw;
  font-style: normal;
  font-stretch: normal;
  font-weight: 400;
  line-height: 22px;
  text-transform: none;
  letter-spacing: 1.692307px;
}

.contactFooter {
  display: block;
  position: absolute;
  top: 92%;
  width: 99.5%;
  text-align: center;
}

.social {
  display: block;
  position: absolute;
  margin: 0 auto;
  width: 99.5%;
}

.social-inner {
  width: 35%;
  float: right;
  text-align: center;
}

.social-inner ul li {
  display: inline-block;
}

.social-inner img {
  display: block; /* remove descender gap below image */
  width: 2.2vw;
  height: auto;
  margin-right: 0.5vw;
}

/* bottom menu */

.bottomMenu {
  display: block;
  position: absolute;
  bottom: 3vw;
  width: 44%;
  text-align: center;
  white-space: nowrap;
  padding-left: 11%;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 0.8vw;
}

.bottomMenu table {
  width: 94%;
  table-layout: fixed;
  border-collapse: collapse;
  border: none;
  text-align: center;
}

.bottomMenu td {
  vertical-align: middle;
  text-align: center;
  color: white;
}

.bottomMenu-logo {
  display: block;
  margin: -1.2vw auto;
  width: 4vw;
  height: auto;
  vertical-align: middle;
}

.bottomMenu a {
  display: block;
  color: white;
  text-decoration: none;
  padding: 0;
  padding-bottom: 0.1vw;
}

.bottomMenu-sep {
  width: 5px;
}

.bottomMenu-underbar {
  display: block;
  width: 4.5vw;
  height: auto;
}

::placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: lightgray;
  opacity: 1; /* Firefox */
}

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: lightgray;
}

::-ms-input-placeholder {
  /* Microsoft Edge */
  color: lightgray;
}
