/* TSELA TSWEU SCSS */
/* --- Variables --- */
/* --- Mixins --- */
/* --- Base --- */
html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: 100%;
  font-family: 'Montserrat', sans-serif;
  color: #565658;
  overflow-x: hidden;
  background: white; }

.full-background {
  background: white;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-attachment: absolute;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover; }

.hidden {
  display: none; }

.col-0-gutter {
  padding-left: 0;
  padding-right: 0; }

.col-0-left {
  padding-left: 0; }

.btn-red {
  background: white;
  color: #721526;
  border-radius: 20px;
  padding: 10px 25px;
  font-size: 0.8125rem;
  -webkit-transition: all, 0.25s;
  -ms-transition: all, 0.25s;
  transition: all, 0.25s; }
  .btn-red:hover {
    background: #721526;
    color: white; }

.display-none {
  display: none;
  left: -999em; }

.vh-75 {
  height: 75vh; }

a {
  color: #565658; }
  a:hover {
    text-decoration: none;
    color: #721526; }

body.home nav#navigation {
  background: white; }
  body.home nav#navigation ul.nav li a {
    color: #565658; }
    body.home nav#navigation ul.nav li a:hover {
      font-weight: 700;
      color: #721526; }
  body.home nav#navigation ul.nav li.active a {
    color: #721526;
    font-weight: 700; }
  body.home nav#navigation a.navbar-brand {
    margin-left: 40px; }

nav#navigation {
  position: absolute;
  z-index: 10;
  width: 100%; }
  nav#navigation ul.nav li a {
    color: white;
    border-bottom: 2px solid transparent;
    padding: 0.5rem 0rem;
    margin-left: 15px;
    margin-right: 15px; }
    nav#navigation ul.nav li a:hover {
      border-color: white; }
  nav#navigation ul.nav li.active a {
    font-weight: 700;
    border-bottom: 2px solid white; }
  nav#navigation a.navbar-brand {
    margin-left: 40px; }

div#home div.col-md-8 {
  background-image: url("../images/home-responsive-bg.jpg"); }
div#home div.intro {
  padding: 131px 40px 40px 40px;
  height: 100vh;
  color: white;
  position: relative; }
  div#home div.intro h1 {
    font-size: 2.188rem;
    font-weight: 600;
    margin-bottom: 30px;
    line-height: 1.4; }
  div#home div.intro p {
    font-weight: 600;
    padding-right: 80px;
    font-size: 0.875rem;
    line-height: 1.8; }
  div#home div.intro p.copy {
    position: absolute;
    bottom: 20px;
    font-size: 0.75rem; }
    div#home div.intro p.copy a {
      color: white; }
div#home div.home-right {
  padding-top: 81px;
  height: 100%;
  overflow: hidden; }
  div#home div.home-right p {
    margin-right: 15px;
    font-size: 0.875rem;
    margin-bottom: 0; }
  div#home div.home-right a.home-red {
    color: white;
    padding: 30px;
    background: #721526;
    height: 33%;
    min-height: 230px;
    -webkit-transition: all, 0.25s;
    -ms-transition: all, 0.25s;
    transition: all, 0.25s; }
    div#home div.home-right a.home-red h3 {
      margin-top: 10px; }
    div#home div.home-right a.home-red:hover {
      background: #5f0e1d; }
  div#home div.home-right a.home-blue {
    color: white;
    padding: 30px;
    background: #187689;
    height: 33%;
    min-height: 230px;
    -webkit-transition: all, 0.25s;
    -ms-transition: all, 0.25s;
    transition: all, 0.25s; }
    div#home div.home-right a.home-blue h3 {
      margin-top: 10px; }
    div#home div.home-right a.home-blue:hover {
      background: #0e5968; }
  div#home div.home-right a.home-grey {
    padding: 30px;
    background: #c0c8cd;
    color: #565658;
    height: 34%;
    min-height: 230px;
    -webkit-transition: all, 0.25s;
    -ms-transition: all, 0.25s;
    transition: all, 0.25s; }
    div#home div.home-right a.home-grey h3 {
      margin-top: 10px; }
    div#home div.home-right a.home-grey:hover {
      background: #b2bcc2; }

div#about-us div.intro-banner {
  background-image: url("../images/about-banner.png");
  position: relative; }
  div#about-us div.intro-banner h1 {
    padding: 150px 0 0 0;
    font-weight: 700;
    font-size: 1.875rem;
    margin: 0;
    text-align: center; }
    div#about-us div.intro-banner h1 span {
      background: white;
      padding: 30px;
      text-align: center;
      width: 100%; }
div#about-us h3 {
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center; }
div#about-us div.content {
  padding: 40px 0; }
  div#about-us div.content p {
    font-size: 0.875rem;
    font-weight: 500;
    text-align: center; }
div#about-us div.vision-mission {
  background-image: url("../images/mission-vision-bg.jpg");
  padding: 40px 0;
  margin: 40px 0; }
  div#about-us div.vision-mission h3 {
    color: white; }
  div#about-us div.vision-mission div.mission {
    margin: 20px 0; }
    div#about-us div.vision-mission div.mission div.mission-icon {
      border-radius: 15px 0 0 15px;
      background: #187689;
      padding: 25px;
      width: 20%; }
      div#about-us div.vision-mission div.mission div.mission-icon p {
        margin: 10px 0 0 0;
        font-size: 0.875rem;
        color: white;
        font-weight: 700; }
      div#about-us div.vision-mission div.mission div.mission-icon p.text-center {
        margin: 0; }
    div#about-us div.vision-mission div.mission div.mission-text {
      background: white;
      border-radius: 0 15px 15px 0;
      padding: 25px;
      width: 80%; }
      div#about-us div.vision-mission div.mission div.mission-text p {
        margin: 0;
        text-align: left; }
  div#about-us div.vision-mission div.vision {
    margin: 20px 0 0 0; }
    div#about-us div.vision-mission div.vision div.vision-icon {
      border-radius: 15px 0 0 15px;
      background: #187689;
      padding: 25px;
      width: 20%; }
      div#about-us div.vision-mission div.vision div.vision-icon p {
        margin: 10px 0 0 0;
        font-size: 0.875rem;
        color: white;
        font-weight: 700;
        width: 100%; }
      div#about-us div.vision-mission div.vision div.vision-icon p.text-center {
        margin: 0; }
    div#about-us div.vision-mission div.vision div.vision-text {
      background: white;
      border-radius: 0 15px 15px 0;
      padding: 25px;
      width: 80%; }
      div#about-us div.vision-mission div.vision div.vision-text p {
        margin: 0;
        text-align: left; }
div#about-us div.values div.d-flex {
  margin-bottom: 20px; }
  div#about-us div.values div.d-flex div.image {
    margin-right: 15px; }
  div#about-us div.values div.d-flex div.text h4 {
    font-size: 1.125rem;
    font-weight: 700; }
    div#about-us div.values div.d-flex div.text h4 hr {
      border: 2px solid #c0c8cd;
      margin: 5px 0; }
  div#about-us div.values div.d-flex div.text p {
    text-align: left;
    font-size: 0.813rem;
    font-weight: 500; }

div#services div.intro-banner {
  background-image: url("../images/about-banner.png");
  position: relative; }
  div#services div.intro-banner h1 {
    padding: 150px 0 0 0;
    font-weight: 700;
    font-size: 1.875rem;
    margin: 0; }
    div#services div.intro-banner h1 span {
      background: white;
      padding: 30px;
      text-align: center; }
div#services h3 {
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center; }
div#services div.content {
  padding: 40px 0; }
  div#services div.content div.infographic {
    width: 900px; }
    div#services div.content div.infographic div.d-flex {
      width: 100%; }
      div#services div.content div.infographic div.d-flex p {
        width: 14.29%;
        text-align: center;
        color: #187689;
        font-size: 0.813rem;
        font-weight: 700; }
  div#services div.content p {
    font-size: 0.875rem;
    font-weight: 400;
    text-align: center; }
div#services div.specialisation {
  background-image: url("../images/services-bg.jpg");
  padding: 40px 0;
  margin: 40px 0; }
  div#services div.specialisation p {
    font-weight: 600;
    font-size: 0.938rem;
    color: white;
    margin: 0; }
div#services div.services-list h3 {
  margin-bottom: 20px; }
div#services div.services-list div.d-flex {
  margin-bottom: 20px; }
  div#services div.services-list div.d-flex div.service-item {
    width: 33%; }
  div#services div.services-list div.d-flex div.service-item-last {
    width: 34%; }
  div#services div.services-list div.d-flex div.service-item, div#services div.services-list div.d-flex div.service-item-last {
    text-align: center; }
    div#services div.services-list div.d-flex div.service-item p, div#services div.services-list div.d-flex div.service-item-last p {
      font-weight: 700;
      font-size: 0.938rem; }
    div#services div.services-list div.d-flex div.service-item img, div#services div.services-list div.d-flex div.service-item-last img {
      margin-bottom: 10px; }

div#projects div.intro-banner {
  background-image: url("../images/about-banner.png");
  position: relative; }
  div#projects div.intro-banner h1 {
    padding: 150px 0 0 0;
    font-weight: 700;
    font-size: 1.875rem;
    margin: 0;
    text-align: center; }
    div#projects div.intro-banner h1 span {
      background: white;
      padding: 30px;
      text-align: center;
      width: 100%; }
div#projects h3 {
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center; }
div#projects div.content {
  padding: 40px 0; }
  div#projects div.content div.project {
    margin-bottom: 40px; }
  div#projects div.content h3 {
    font-size: 1.125rem;
    background: #187689;
    padding: 15px;
    text-align: center;
    font-weight: 600;
    color: white; }
  div#projects div.content p {
    font-size: 0.813rem;
    font-weight: 500; }
  div#projects div.content p.project-info {
    font-weight: 500;
    font-size: 0.938rem;
    color: #187689;
    border-bottom: 1px solid #187689;
    padding: 10px 0; }
    div#projects div.content p.project-info strong {
      font-size: 1rem;
      font-weight: 700; }
    div#projects div.content p.project-info span {
      float: right; }
div#projects div.gallery {
  margin-bottom: 40px; }
  div#projects div.gallery div.d-flex div.item {
    width: 25%;
    padding: 0 10px; }

div#contact-us div.intro-banner {
  background-image: url("../images/about-banner.png");
  position: relative; }
  div#contact-us div.intro-banner h1 {
    padding: 150px 0 0 0;
    font-weight: 700;
    font-size: 1.875rem;
    margin: 0;
    text-align: center; }
    div#contact-us div.intro-banner h1 span {
      background: white;
      padding: 30px;
      text-align: center;
      width: 100%; }
div#contact-us div.content {
  padding: 40px 0;
  min-height: 60vh; }
  div#contact-us div.content div.col-xs-12 {
    padding-bottom: 30px; }
  div#contact-us div.content div.office {
    border-radius: 15px 0;
    height: 100%;
    -webkit-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.25);
    margin-bottom: 20px; }
    div#contact-us div.content div.office h4 {
      font-size: 1.125rem;
      font-weight: 600;
      background: #187689;
      color: white;
      text-align: center;
      border-top-left-radius: 15px;
      padding: 15px 25px;
      margin-bottom: 20px; }
    div#contact-us div.content div.office p {
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      width: 100%;
      padding: 0 25px;
      margin-bottom: 15px;
      font-size: 0.813rem;
      font-weight: 500; }
    div#contact-us div.content div.office a {
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      padding: 0 25px;
      margin-bottom: 15px;
      font-size: 0.813rem;
      font-weight: 500; }
      div#contact-us div.content div.office a a {
        padding: 0;
        margin-top: -4px; }
    div#contact-us div.content div.office img {
      height: 14px;
      margin-right: 15px; }
  div#contact-us div.content div.head-office h4 {
    background: #721526; }

footer div.footer-holder {
  -webkit-box-shadow: 0px -4px 10px rgba(50, 50, 50, 0.15);
  -moz-box-shadow: 0px -4px 10px rgba(50, 50, 50, 0.15);
  box-shadow: 0px -4px 10px rgba(50, 50, 50, 0.15);
  border-top: 20px solid white;
  background: #e7eaec;
  padding: 30px 20px;
  text-align: center;
  width: 100%; }
  footer div.footer-holder p.copy {
    font-size: 0.688rem;
    margin: 0; }

@media (min-width: 992px) and (max-width: 1200px) {
  div#services div.content div.infographic {
    width: 100%; } }
@media (min-width: 768px) and (max-width: 992px) {
  div#services div.content div.infographic {
    width: 100%; } }
@media (min-width: 576px) and (max-width: 768px) {
  body.home nav#navigation .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28114, 21, 38, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
  body.home nav#navigation .navbar-toggler {
    color: #721526;
    border-color: #721526; }
  body.home nav#navigation ul.nav li a {
    margin-left: 15px;
    margin-right: 15px; }
  body.home nav#navigation a.navbar-brand {
    margin-left: 0px; }
  body.home nav#navigation .collapsing {
    margin-left: 0;
    margin-right: 0; }

  nav#navigation {
    background: white; }
    nav#navigation .navbar-toggler-icon {
      background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28114, 21, 38, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
    nav#navigation .navbar-toggler {
      color: #721526;
      border-color: #721526; }
    nav#navigation ul.nav li a {
      color: #721526;
      margin-left: 15px;
      margin-right: 15px; }
    nav#navigation a.navbar-brand {
      margin-left: 0px; }
    nav#navigation .collapsing {
      margin-left: 0;
      margin-right: 0; }

  div#home div.intro p.copy {
    margin-top: 40px;
    position: relative; }
  div#home div.home-right {
    padding-top: 0px;
    overflow: visible; }

  div#services div.content div.infographic {
    width: 100%; }
    div#services div.content div.infographic p {
      background: #565658;
      padding: 10px;
      text-align: center;
      color: white;
      position: relative;
      margin: 0;
      border-bottom: 2px solid white; }
      div#services div.content div.infographic p::after {
        position: absolute;
        left: 50%;
        bottom: -10px;
        margin-left: -10px;
        content: '';
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-top: 10px solid #fff;
        z-index: 110; }
    div#services div.content div.infographic p.last {
      margin-bottom: 20px; }
      div#services div.content div.infographic p.last::after {
        display: none; }

  div#projects div.content p.project-info span {
    float: none;
    display: block; } }
@media (max-width: 576px) {
  body.home nav#navigation .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28114, 21, 38, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
  body.home nav#navigation .navbar-toggler {
    color: #721526;
    border-color: #721526; }
  body.home nav#navigation ul.nav li a {
    margin-left: 15px;
    margin-right: 15px; }
  body.home nav#navigation a.navbar-brand {
    margin-left: 0px; }
  body.home nav#navigation .collapsing {
    margin-left: 0;
    margin-right: 0; }

  nav#navigation {
    background: white; }
    nav#navigation .navbar-toggler-icon {
      background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28114, 21, 38, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
    nav#navigation .navbar-toggler {
      color: #721526;
      border-color: #721526; }
    nav#navigation ul.nav li a {
      color: #721526;
      margin-left: 15px;
      margin-right: 15px; }
    nav#navigation a.navbar-brand {
      margin-left: 0px; }
    nav#navigation .collapsing {
      margin-left: 0;
      margin-right: 0; }

  div#home div.intro {
    padding: 111px 20px 20px 20px; }
    div#home div.intro h1 {
      font-size: 1.5rem; }
    div#home div.intro p {
      padding-right: 0;
      padding-right: 0; }
    div#home div.intro p.copy {
      margin-top: 40px;
      position: relative; }
  div#home div.home-right {
    padding-top: 0px;
    overflow: visible; }

  div#about-us div.intro-banner {
    background-image: url("../images/about-banner.png");
    position: relative; }
    div#about-us div.intro-banner h1 img {
      display: none; }
    div#about-us div.intro-banner h1 span {
      background: none;
      color: white;
      padding: 0px;
      text-align: center;
      width: 100%; }
  div#about-us div.vision-mission {
    background-image: url("../images/mission-vision-bg.jpg");
    padding: 40px 0;
    margin: 40px 0; }
    div#about-us div.vision-mission h3 {
      color: white; }
    div#about-us div.vision-mission div.mission {
      margin: 20px 0;
      flex-wrap: wrap; }
      div#about-us div.vision-mission div.mission div.mission-icon {
        border-radius: 15px 15px 0 0;
        width: 100%; }
      div#about-us div.vision-mission div.mission div.mission-text {
        background: white;
        border-radius: 0 0 15px 15px;
        width: 100%; }
    div#about-us div.vision-mission div.vision {
      margin: 20px 0 0 0;
      flex-wrap: wrap; }
      div#about-us div.vision-mission div.vision div.vision-icon {
        border-radius: 15px 15px 0 0;
        width: 100%; }
      div#about-us div.vision-mission div.vision div.vision-text {
        border-radius: 0 0 15px 15px;
        width: 100%; }
  div#about-us div.values div.d-flex {
    margin-bottom: 20px; }
    div#about-us div.values div.d-flex div.image {
      margin-right: 15px; }
      div#about-us div.values div.d-flex div.image img {
        width: 50px; }

  div#services div.intro-banner {
    background-image: url("../images/about-banner.png");
    position: relative; }
    div#services div.intro-banner h1 {
      padding-bottom: 10px; }
      div#services div.intro-banner h1 img {
        display: none; }
      div#services div.intro-banner h1 span {
        background: none;
        color: white;
        padding: 0px;
        text-align: center;
        width: 100%; }
  div#services div.content {
    padding: 20px 0; }
    div#services div.content div.infographic {
      width: 100%; }
      div#services div.content div.infographic p {
        background: #565658;
        padding: 10px;
        text-align: center;
        color: white;
        position: relative;
        margin: 0;
        border-bottom: 2px solid white; }
        div#services div.content div.infographic p::after {
          position: absolute;
          left: 50%;
          bottom: -10px;
          margin-left: -10px;
          content: '';
          border-left: 10px solid transparent;
          border-right: 10px solid transparent;
          border-top: 10px solid #fff;
          z-index: 110; }
      div#services div.content div.infographic p.last {
        margin-bottom: 20px; }
        div#services div.content div.infographic p.last::after {
          display: none; }
  div#services div.specialisation {
    margin: 0 0 40px 0; }
  div#services div.services-list h3 {
    margin-bottom: 20px; }
  div#services div.services-list div.d-flex {
    flex-wrap: wrap; }
    div#services div.services-list div.d-flex div.service-item {
      width: 100%; }
    div#services div.services-list div.d-flex div.service-item-last {
      width: 100%; }

  div#projects div.intro-banner {
    background-image: url("../images/about-banner.png");
    position: relative; }
    div#projects div.intro-banner h1 {
      padding-bottom: 10px; }
      div#projects div.intro-banner h1 img {
        display: none; }
      div#projects div.intro-banner h1 span {
        background: none;
        color: white;
        padding: 0px;
        text-align: center;
        width: 100%; }
  div#projects div.content p.project-info span {
    float: none;
    display: block; }
  div#projects div.gallery div.d-flex {
    flex-wrap: wrap; }
    div#projects div.gallery div.d-flex div.item {
      width: 100%;
      margin-bottom: 20px;
      text-align: center; }

  div#contact-us div.intro-banner {
    background-image: url("../images/about-banner.png");
    position: relative; }
    div#contact-us div.intro-banner h1 {
      padding-bottom: 10px; }
      div#contact-us div.intro-banner h1 img {
        display: none; }
      div#contact-us div.intro-banner h1 span {
        background: none;
        color: white;
        padding: 0px;
        text-align: center;
        width: 100%; } }
