.main-content__sections-wrapper {
  gap:0;
}
.component {
  margin-bottom: 3rem;
}
.hero-project__strapline {
  color:#757575;
  display: block;
  font-size: 1.75rem;
  margin-bottom: 2rem;
  font-family: arial;
}
.projects-hero-block__details {
  display: none;
}
.projects-hero-block__image-wrapper {
  height:20rem;
}
@media (min-width:768px) {
  .projects-hero-block__image-wrapper {
  height:35rem;
  }
}
@media (min-width:1280px) {
  .projects-hero-block__image-wrapper {
  height:50rem;
  }
}
@media (min-width:1520px) {
  .projects-hero-block__image-wrapper {
    height:60rem;
  }
}

 .fullrichtextblock .rich-text__inner {
  border-top:1px solid #e0e0e0;
  padding-top:3rem;
}

#intro .rich-text__inner {
  border-top: none;
  padding-top: 0;
}
#intro .rich-text__par--intro {
  margin-bottom: 0;
}
.fullrichtextblock:nth-of-type(1) .rich-text__inner {
  border-top: none;
  padding-top: 0;
}

@media (min-width:768px) {
  .rich-text__inner {
    grid-column: 3 / span 8;
  }
}
@media (min-width:1024px) {
  .rich-text__inner {
    grid-column: 4 / span 6;
  }
}
.line-wrapper {
  width: 100%;
}
.project-name, h1, p.rich-text__par--intro {
text-align: center;
display: block;
}

.project-name {
  font-size:1rem;
  letter-spacing: 0;
  line-height: 100%;
  padding-bottom:1rem;
}
@media (min-width:1024px) {
  .project-name {
    font-size: 1.25rem;
  }
}

h1 {
  font-family: spectral;
  line-height: 110%;
  font-weight: 400;
  font-size: 1.75rem;
  letter-spacing: -0.05em;
  padding-right: .05em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding-bottom:2rem;
}
@media (min-width:1024px) {
  h1 {
    font-size: 4.25rem;
  }
}

.navigation-block {
  grid-column: 10 / span 3;
  padding-top: 3rem;
}
.key-points {
  border:none;
  background-color:#f2f2f2;
}
.key-points .step-process-block__step {
  gap:1rem;
  padding-bottom: 1rem;
}
.key-points li:last-of-type {
  padding-bottom: 0;
}
.navigation-block a {
  transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
  transition-duration: 300ms;
  transition-property: transform,opacity,width,outline, border;
  will-change: transform;
  text-decoration: none;
  color:#000;
}
.navigation-block a:hover {
  outline-offset: 0.3125rem;
  border-radius: 0.0625rem;
  border-bottom: 1px solid #e61e28;
}
.key-points .key-points__title {
  margin-bottom: 1rem!important;
  font-size: 1.75rem;
}
.rich-text__inner ol.step-process-block__step-list {
  padding-left: 0;
  list-style-type: disc;
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
    list-style-position: inside;
    display: block;
}
.rich-text__inner ol.step-process-block__step-list li {
  padding-bottom: 1rem;
  padding-top:1rem;
}
.rich-text__inner .key-points h3 {
  font-size: 1.375rem;
}
/* what we delivered - above 1024 carousel functionality to be hidden */
.js-sidebar-insert .html-block__wrapper {
        grid-column: 1 / span 12;
    }
.htmlcomponentblock .corporate-carousel.container {
  padding: 0 0;
}
.htmlcomponentblock:has(#head-element) {
  background: #f2f2f2;
  margin-bottom: 0;
  padding-top:3rem;
  padding-bottom:;
}
.htmlcomponentblock:has(#head-element) button {
  border-radius: 7.5rem;
  padding: 0 1.25rem;
}
.corporateoverviewblock {
  padding:3rem 0;
  background-color: #f2f2f2;
}

.base-heading-block__strapline {
  display: none;
}
.corporate-carousel {
  padding-top:3rem;
  padding-bottom: 3rem;
}
.corporate-carousel__slide {
      display: flex;
      flex-direction: column-reverse;
      padding-bottom: 0;
    }
.corporate-carousel__slide-content {
  background-color: #f2f2f2;
  padding:0 0;
}
.corporate-carousel__slide-content:before {
  display: none;
}
.corporate-carousel__slide-image {
  position: relative;
  border-radius: 0.75rem;
}
.corporate-carousel__slide:nth-child(1) .corporate-carousel__slide-content:before {
  content: "";
  font-family: spectral;
  line-height: 110%;
  font-weight: 400;
  font-size: 1.75rem;
  letter-spacing: -0.05em;
  padding-right: .05em;
  -webkit-font-smoothing: antialiased;
  border-radius: 0.75rem;
  background: #91967d;
  color: #000;
  display: block;
  position:relative;
  margin-bottom: 1rem;
  padding:1rem;
}
 
 .corporate-carousel__slide-cta {
  display: none;
}
.corporate-carousel__slide:nth-child(1) .corporate-carousel__slide-title {
  display: block;
  position: absolute;
  top:5%;
  left:5%;
}
@media (min-width: 768px) {
  .corporate-carousel__slide:nth-child(odd), .corporate-carousel__slide:nth-child(even) {
    flex: 0 0 calc((100% - 80px)/6*2 + 64px);
  }
}
@media (min-width: 1024px) {
    .base-heading-block__heading {
        font-family: spectral;
        line-height: 110%;
        font-weight: 400;
        font-size: 2.375rem;
        letter-spacing: -0.05em;
        padding-right: .05em;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        color:#000;
    }
    .corporate-carousel__control-group {
      display: none;
    }
    .corporate-carousel__slide {
      display: flex;
      flex-direction: column-reverse;
    }

    .corporate-carousel__slide:nth-child(1) {
        flex: 0 0 calc((100% - 10px) / 12* 3 - 15.5px);
    }
    .corporate-carousel__slide:nth-child(2) {
        flex: 0 0 calc((100% - 10px) / 12* 4 - 15.5px);
    }
    .corporate-carousel__slide:nth-child(3) {
        flex: 0 0 calc((100% - 10px) / 12* 2 - 15.5px);
    }
    .corporate-carousel__slide:nth-child(4) {
        flex: 0 0 calc((100% - 10px) / 12* 3 - 15.5px);
    }
    .corporate-carousel__slide:nth-child(3) .corporate-carousel__slide-image {
        height: calc(var(--additional-space) + 80px);
    }
.corporate-carousel__slide:nth-child(4) .corporate-carousel__slide-image {
        height: calc(var(--additional-space-large) + 40px);
    }
.corporate-carousel__slide:nth-child(1) .corporate-carousel__slide-content {
  padding-top:0;
}
.corporate-carousel__slide:nth-child(1) .corporate-carousel__slide-content:before {
  font-size: 1.75rem;
  letter-spacing: -0.05em; 
  height: calc(var(--additional-space) + 130px);
  border-radius: 0.75rem;
}
  }
/* clients testimonial */
.clientstestimonialblock {
  padding-top: 0;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.clients-testimonial-block {
  grid-column: 1 / span 12;
  max-width: 100%;
}
.client-testimonial__image {
  aspect-ratio: 0;
}
.client-testimonial__wrapper:nth-child(1) .client-testimonial__content {
  background-color:#1e9bd7;
}
.client-testimonial__wrapper:nth-child(2) .client-testimonial__content {
  background-color:#e66e23;
}
.client-testimonial__wrapper:nth-child(3) .client-testimonial__content {
  background-color:#32A4a0;
}

@media (min-width: 1024px) {
    .client-testimonial__content-copy {
        font-size: 2.375rem;
      }
}

/* related content - under 1024 will revert to carousel */
.corporate-carousel--alternate .corporate-carousel__slide {
  display: flex;
  flex-direction: column;
  padding-bottom: calc(var(--additional-space) + 100px);
}
.corporate-carousel--alternate .corporate-carousel__slide-content {
  padding:1rem!important;
  background-color: initial;
}
.corporate-carousel--alternate .corporate-carousel__slide-content .corporate-carousel__slide-title, .corporate-carousel--alternate .corporate-carousel__slide-content .corporate-carousel__slide-title {
  display: block;
}
.corporate-carousel--alternate .corporate-carousel__slide-image {
  mix-blend-mode: normal;
  border-radius: 0;
  position: absolute;
}
.corporate-carousel--alternate .corporate-carousel__slide-content:before {
  background: none;
  display: none!important;
}
.corporate-carousel--alternate .corporate-carousel__slide:nth-child(1) .corporate-carousel__slide-title {
  position: relative;
  top:initial;
  left:initial;
}
.corporate-carousel--alternate .corporate-carousel__slide-title, .corporate-carousel--alternate .corporate-carousel__slide-cta {
  display: block;
}
.corporate-carousel--alternate .corporate-carousel__slide-title {
    font-size: 1.25rem;
  }
.corporate-carousel--alternate .cta-inline {
  font-size: 1rem;
  line-height: 130%;
}
.corporate-carousel--alternate .cta-inline .icon {
  font-size: 1.5rem;
}
@media (min-width: 1024px) {
  .corporate-carousel--alternate .corporate-carousel__carousel {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
  }

  .corporate-carousel--alternate .corporate-carousel__carousel-wrapper {
    grid-column: 1 / span 12;
  }
  /*
  .corporate-carousel--alternate .corporate-carousel__slide {
    padding-bottom: calc(var(--additional-space-large) + 125px);
  }
  */
  .corporate-carousel--alternate .corporate-carousel__slide {
  padding-bottom: calc(var(--additional-space-large) + 80px);
}
  .corporate-carousel--alternate .corporate-carousel__slide:nth-child(odd) {
    flex: 0 0 calc((100% - 48px)/12*4);
  }

  .corporate-carousel--alternate .corporate-carousel__slide:nth-child(even) {
    flex: 0 0 calc((100% - 48px)/12*4);
  }
  .corporate-carousel--alternate .corporate-carousel__slide:last-of-type {
    margin-right: 0!important;
  }
  
  .corporate-carousel--alternate .corporate-carousel__slide-image, .corporate-carousel--alternate .corporate-carousel__slide:nth-child(3) .corporate-carousel__slide-image {
        height: calc(var(--additional-space-medium) + 175px);
    }
}
@media (min-width:1280px) {
  .corporate-carousel--alternate .corporate-carousel__carousel-wrapper {
    grid-column: 3 / span 8;
  }
  .corporate-carousel--alternate .corporate-carousel__slide-title {
    font-size: 1.75rem;
  }
}

/* quote */
.component.quotewithaudioblock {
  padding-top: 0;
}

.quote-with-audio__inner {
  border-radius: 0;
  border-left:none;
  border-right:none;
}
.fullrichtextblock:has(#engineering) {
  padding-top:0;
}
#remove-border .rich-text__inner{
  border-top:none;
  padding-top:0;
}
.quote-with-audio__text, .quote-with-audio__author {
  text-align: center;
}
.quote-with-audio__text {
  color:#757575;
}
span.bold {
  color:#000;
}
@media (min-width:768px) {
  .quote-with-audio__inner {
    grid-column: 3 / span 8;
  }
}
@media (min-width:1024px) {
  .quote-with-audio__inner {
    grid-column: 4 / span 6;
  }
}

/* stats */

.key-stats__wrapper {
  grid-column: 1 / span 12;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  background-color: #e61e28;
  padding:1rem;
  border-radius: 0.75rem;
  color:#fff;
}

.key-stats__stat-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.key-stats__description {
  text-align: center;
align-self: center;
}
@media (min-width:1024px) {
  .key-stats__wrapper {
    padding:3rem;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width:1280px) {
  .key-stats__wrapper {
    grid-column: 3 / span 8;
  }
}
/* services overlay */
.extra-details-block__modal-body {
  margin-top:1rem;
}
.extra-details-block__modal-body ul {
  padding-left:20px;
}
.extra-details-block__modal-body ul li {
  border-bottom:1px solid #e0e0e0;
  padding:1rem 0;
}
.extra-details-block__modal-body ul li:first-of-type {
  padding-top:0;
}
.extra-details-block__modal-body ul li:last-of-type{
  border-bottom: none;
}
.rich-text__par--cta {
  opacity: 0;
  width: 100%;
  border-color: #e0e0e0;
  border-width: 1px;
  position: relative;
  border-top-style: solid;
  margin-bottom: 0;
}
.rich-text__par--cta a {
  padding-bottom: .5rem;
  padding-top: .5rem;
  column-gap: .5rem;
  display: flex;
  justify-content: space-between;
  text-decoration: none;
}
.rich-text__par--cta a:hover, .rich-text__inner .rich-text__par--cta a:focus-visible {
  background-color: #f2f2f2;
  cursor: pointer;
}
.rich-text__par--cta a span {
    font-family: spectral;
    line-height: 110%;
    font-weight: 400;
    font-size: 1.25rem;
    letter-spacing: -0.05em;
    padding-right: .05em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .rich-text__inner .rich-text__par--cta a:hover span, .rich-text__inner .rich-text__par--cta a:focus-visible span {
  color: #000;
  transform: translateX(1rem);
  text-decoration: underline;
}
  .rich-text__par--cta a .icon-wrapper {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}
.rich-text__par--cta a .icon-wrapper .icon {
  font-size: 1.5rem;
  color: #000;
}
.rich-text__par--cta a .icon-wrapper .icon--arrow-right {
  transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
  transition-duration: 300ms;
  transition-property: transform;
}
.rich-text__par--cta a .icon-wrapper .icon--arrow-right:first-child {
  position: absolute;
  left: -120%;
}
 .rich-text__par--cta a:hover .icon--arrow-right, .rich-text__inner .rich-text__par--cta a:focus-visible .icon--arrow-right {
  transform: translate3d(120%, 0, 0);
}
@media (min-width:768px) {
  .extra-details-block__modal-intro, .extra-details-block__modal-title, .extra-details-block__modal-body {
    grid-column: 3 / span 8;
  }
  .rich-text__par--cta a span {
    font-size: 1.75rem;
  }
}

@media (min-width: 1280px) {
    .modal-generic--extra-details .modal-generic__inner {
        grid-column: 3 / span 8!important;
    }
}