:root {
  --white: white;
  --black: black;
  --dark-grey: #e6e6e6;
  --yellow: #fab500;
  --blue: #024ab9;
  --grey: #f4f2f4;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

body {
  background-color: var(--white);
  color: var(--black);
  font-family: proxima-nova, sans-serif;
  font-size: 21px;
  font-weight: 400;
  line-height: 1.5;
}

h2 {
  letter-spacing: 10px;
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 40px;
  margin-right: -10px;
  font-family: oswald, sans-serif;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.2;
}

h3 {
  letter-spacing: 8px;
  text-transform: uppercase;
  margin-top: 20px;
  margin-bottom: 10px;
  font-family: oswald, sans-serif;
  font-size: 32px;
  font-weight: 600;
  line-height: 1;
}

p {
  margin-bottom: 20px;
}

.body {
  background-color: var(--white);
  font-size: 18px;
}

.home-page-header {
  background-image: url('../images/Prima-Banner-Video.png');
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: 100%;
  flex-direction: column;
  justify-content: flex-end;
  height: 101vh;
  display: flex;
  position: relative;
  overflow: hidden;
}

.background-video {
  z-index: 1;
  color: var(--white);
  text-align: center;
  text-transform: uppercase;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding-bottom: 100px;
  font-family: proxima-nova, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  display: flex;
  position: absolute;
  inset: 0%;
}

.top-overlay {
  z-index: 2;
  text-align: center;
  position: relative;
}

.prima-image-top {
  width: 100%;
}

.bottom-overlay {
  z-index: 2;
  text-align: center;
  position: relative;
}

.prima-title {
  z-index: 2;
  color: #ffffff59;
  text-align: center;
  letter-spacing: 2vw;
  text-transform: uppercase;
  background-image: url('../images/Prima.svg');
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 240px;
  font-family: baskerville-display-pt, sans-serif;
  font-size: 16vw;
  font-weight: 700;
  line-height: 1;
  position: absolute;
  bottom: -2px;
}

.text-block {
  filter: invert();
  -webkit-text-fill-color: inherit;
  background-clip: border-box;
  font-weight: 700;
  line-height: 2;
}

.h1-home-title {
  z-index: 1;
  letter-spacing: 6px;
  margin-bottom: 0;
  margin-right: -6px;
  font-size: 28px;
  font-weight: 400;
  position: relative;
}

.page-header-sub-title {
  z-index: 1;
  letter-spacing: 10px;
  margin-right: -10px;
  font-family: oswald, sans-serif;
  font-size: 60px;
  font-weight: 600;
  line-height: 1.1;
  position: relative;
}

.nav-menu-bar {
  z-index: 998;
  text-align: center;
  justify-content: center;
  width: 100vw;
  min-height: 134px;
  padding: 30px 60px 10px;
  display: flex;
  position: fixed;
}

.nav-bar-wrapper {
  justify-content: center;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.call-button-box {
  z-index: 997;
  width: 90.15px;
  position: absolute;
  top: 30px;
  left: 60px;
}

.logo-box {
  z-index: 997;
  width: 200px;
  position: absolute;
  top: 30px;
}

.menu-widget-box {
  z-index: 999;
  color: var(--white);
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  justify-content: space-around;
  align-items: center;
  margin-top: 0;
  padding: 8px 12px;
  font-weight: 400;
  display: flex;
  position: absolute;
  top: 42px;
  right: 48px;
}

.menu-icon-holder {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  margin-left: 6px;
  display: flex;
}

.hamburger-bar {
  background-color: var(--white);
  border-radius: 30px;
  width: 100%;
  height: 3px;
  margin-top: 3px;
  margin-bottom: 3px;
}

.menu-text {
  font-size: 18px;
}

.brand-logo-link {
  cursor: pointer;
  width: 100%;
  height: 100%;
}

.body-section {
  padding: 8% 10%;
  overflow: hidden;
}

.body-section.blue-overlay {
  color: var(--white);
  background-image: linear-gradient(#024ab9bf, #024ab9bf), url('../images/Quality-Background-Image.png');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  justify-content: center;
  align-items: stretch;
  height: auto;
  min-height: 80vh;
  display: flex;
}

.body-section.detail {
  background-color: #f7f7f7;
  background-image: url('../images/Detail-footer_1.svg');
  background-position: 50% 101%;
  background-repeat: no-repeat;
  background-size: 160%;
  padding-top: 8%;
  padding-bottom: 15%;
}

.body-section.questions {
  background-color: #f7f7f7;
  background-image: url('../images/Questions-footer.svg');
  background-position: 50% 101%;
  background-repeat: no-repeat;
  background-size: 160%;
  padding-top: 8%;
  padding-bottom: 8%;
}

.body-section.cta {
  padding-bottom: 8%;
}

.body-section.page-subhead {
  height: auto;
  min-height: 56vh;
}

.body-section.page-subhead.contact {
  padding-top: 6%;
}

.body-section.page-subhead.design-insp {
  padding-bottom: 40px;
}

.body-section.grey-background {
  background-color: var(--dark-grey);
}

.body-section.light-grey-section {
  background-color: #f7f7f7;
  background-image: url('../images/Team-Footer.svg');
  background-position: 50% 101%;
  background-repeat: no-repeat;
  background-size: 160%;
  padding-bottom: 20%;
}

.body-section.continuous {
  padding-top: 0%;
}

.body-section.style-feed {
  padding-top: 1%;
}

.body-section.design-inspo {
  padding-top: 0%;
  padding-bottom: 3%;
}

.body-section.main-service {
  background-color: #f7f7f7;
}

.body-section.left-align {
  text-align: left;
}

.body-container {
  text-align: center;
  max-width: 1140px;
  padding-left: 0;
}

.body-container.blue-overlay {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 15%;
  display: flex;
}

.body-container.blue-overlay.dulux {
  padding-top: 5%;
}

.body-container.columns {
  text-align: center;
  padding-left: 20px;
  padding-right: 20px;
  position: relative;
}

.body-container.columns.style-feed {
  max-width: 1160px;
  padding-left: 40px;
}

.body-container.blue-cta {
  color: var(--white);
  background-image: linear-gradient(#024ab9bf, #024ab9bf), url('../images/CTA-Background.jpg');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  padding: 20px;
  position: relative;
  overflow: hidden;
}

.body-container.mini-services {
  padding-left: 60px;
  padding-right: 60px;
  position: relative;
}

.body-container.white-cta {
  background-image: url('../images/Contact-Background.jpg');
  background-position: 50% 20%;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: scroll;
  padding: 20px;
}

.body-container.design-inspo {
  text-align: left;
  padding-left: 0%;
  position: relative;
}

.body-container.left-align {
  text-align: left;
}

.counter-weight {
  z-index: 0;
  width: 100vw;
  height: auto;
  margin-top: 0;
  display: block;
  position: sticky;
  inset: 0 0% auto;
}

.map-section.contact-page {
  background-color: var(--white);
  background-image: url('../images/FindUs-Footer.svg');
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: 160%;
  padding-top: 7.5%;
  overflow: hidden;
}

.home-page-map {
  object-fit: cover;
  width: 100%;
  height: 300px;
}

.descriptive-para {
  padding-left: 15%;
  padding-right: 15%;
  line-height: 1.8;
}

.section-text {
  letter-spacing: normal;
  text-transform: uppercase;
  margin-bottom: 0;
  padding-left: 20px;
  padding-right: 20px;
  font-family: oswald, sans-serif;
  font-size: 80px;
  font-weight: 600;
  line-height: 1;
}

.horizontal-container {
  justify-content: space-between;
  margin-top: 100px;
  margin-bottom: 100px;
  display: flex;
}

.left-col {
  text-align: left;
  width: 50%;
  padding-left: 60px;
  padding-right: 60px;
  position: relative;
}

.left-col.text {
  padding-left: 90px;
  padding-right: 40px;
}

.left-col.text.right {
  padding-left: 130px;
  padding-right: 0;
}

.left-col.text.testimonials {
  padding-top: 30px;
  padding-right: 50px;
}

.right-col {
  align-items: center;
  width: 50%;
  display: flex;
}

.right-col.image {
  align-items: flex-start;
}

.right-col.image.testimonials {
  position: relative;
}

.right-col.left {
  justify-content: flex-end;
  align-items: flex-start;
}

.sub-title {
  letter-spacing: 4px;
  text-transform: uppercase;
  margin-right: -4px;
  font-family: proxima-nova, sans-serif;
  font-size: 18px;
  font-weight: 700;
}

.sub-title.testimonials {
  font-size: 18px;
}

.heading {
  font-size: 34px;
}

.service-heading {
  margin-top: 30px;
  margin-bottom: 40px;
  font-size: 42px;
  position: relative;
  left: -80px;
}

.service-heading.testimonials {
  margin-top: 10px;
}

.service-heading.blog-title {
  letter-spacing: 4px;
  font-family: proxima-nova, sans-serif;
  font-size: 28px;
  line-height: 1.2;
}

.body-button {
  color: var(--black);
  letter-spacing: 4px;
  text-transform: uppercase;
  cursor: pointer;
  background-color: #0000;
  border: 1px solid #000;
  margin-top: 10px;
  margin-left: 10px;
  margin-right: 10px;
  padding: 26px 36px 26px 40px;
  font-family: proxima-nova, sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  transition: background-color .5s, color .5s;
}

.body-button:hover {
  background-color: var(--black);
  color: var(--white);
}

.body-button.projects-carousel {
  z-index: 2;
  text-align: center;
  width: 140px;
  margin-right: 0;
  padding: 16px 0;
  position: absolute;
  bottom: 40px;
  left: 70px;
  right: 70px;
}

.body-button.blue-cta {
  border-color: var(--white);
  color: var(--white);
  background-color: #0000;
  transition: background-color .5s;
}

.body-button.blue-cta:hover {
  border-color: var(--yellow);
  background-color: var(--yellow);
  color: var(--white);
}

.body-button.blue-cta.mini-service {
  z-index: 2;
  min-width: 80%;
  margin-left: 0;
  margin-right: 0;
  padding-top: 14px;
  padding-bottom: 14px;
  position: absolute;
  bottom: 20px;
}

.body-button.blue-cta.mini-service.v2 {
  min-width: 80%;
  bottom: 80px;
}

.body-button.cta {
  margin-left: 10px;
  margin-right: 10px;
}

.body-button.gallery-button {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.paragraph {
  margin-bottom: 20px;
}

.body-image {
  box-shadow: 48px 34px 0 15px var(--dark-grey);
  object-fit: cover;
  width: 90%;
  height: 320px;
}

.body-image.right {
  box-shadow: 113px 41px 0 10px var(--dark-grey);
}

.body-image.left {
  box-shadow: -155px 41px 0 20px var(--dark-grey);
}

.body-image.testimonial {
  z-index: 1;
  box-shadow: none;
  width: 80%;
  height: 300px;
  position: absolute;
}

.body-image.testimonial-backdrop {
  box-shadow: none;
  filter: blur(5px);
}

.letter-holder {
  justify-content: space-between;
  margin-top: 20px;
  margin-bottom: 80px;
  display: flex;
}

.rotating-column-left {
  z-index: 2;
  perspective: none;
  perspective-origin: 0 0;
  transform-origin: 0 100%;
  letter-spacing: 10px;
  text-transform: uppercase;
  justify-content: flex-start;
  align-items: flex-end;
  width: 50%;
  height: 20px;
  margin-bottom: 0;
  font-size: 18px;
  line-height: 1;
  display: flex;
  position: absolute;
  top: 66%;
  left: -20px;
  overflow: hidden;
  transform: rotate(-90deg);
}

.rotating-column-left.bottom {
  width: 360px;
  top: auto;
  bottom: 0;
}

.rotating-column-left.text-switch {
  transform-origin: 100% 0;
  margin-left: -20px;
  top: 0;
  left: -50%;
}

.rotating-column-left.style-feed {
  margin-left: -40px;
  position: sticky;
  top: 600px;
  left: 0;
}

.dotted-line-div {
  border-bottom: 2px dotted #000;
  width: 100%;
  margin-bottom: 4px;
}

.text-block-3 {
  white-space: nowrap;
  margin-left: 0;
  margin-right: 40px;
}

.text-block-3.switch {
  margin-left: 40px;
  margin-right: -10px;
}

.video-container {
  background-image: url('../images/Video-Icon.png'), url('../images/Video---JOn-Hughes.png');
  background-position: 50%, 50%;
  background-repeat: no-repeat, no-repeat;
  background-size: auto, cover;
  height: 510px;
  margin-left: 10%;
  margin-right: 10%;
}

.scrolling-wrapper {
  margin-top: 30px;
  margin-bottom: 20px;
}

.portfolio-card {
  text-align: center;
  cursor: pointer;
  width: 100%;
  height: 320px;
  margin-right: 0;
  padding: 0;
  display: inline-block;
  position: relative;
  overflow: hidden;
}

.portfolio-card.cards {
  width: 280px;
  margin-left: 20px;
  margin-right: 20px;
}

.portfolio-button {
  z-index: 1;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  background-color: #00b6f1;
  border: 2px solid #fff;
  padding: 14px 24px;
  font-size: 18px;
  transition: background-color .5s;
  position: absolute;
  inset: auto 50px 40px;
}

.portfolio-button:hover {
  background-color: #ec008c;
}

.portfolio-logo {
  z-index: 1;
  width: 160px;
  max-width: 200px;
  position: absolute;
  inset: 70px 60px auto;
}

.portfolio-background-images {
  filter: brightness(85%);
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.para-link {
  color: var(--blue);
  font-weight: 700;
  text-decoration: none;
}

.para-link:hover {
  text-decoration: underline;
}

.para-link.white {
  color: var(--white);
}

.para-link.black {
  color: var(--black);
}

.faq-holder {
  padding-left: 5%;
  padding-right: 5%;
}

.faq-tabs-content {
  padding: 30px;
}

.faq-tabs-menu {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  padding: 30px 0;
  display: grid;
}

.faq-tabs-menu._2x2 {
  grid-template-columns: 1fr 1fr;
  padding-left: 30px;
  padding-right: 30px;
}

.faq-tab-link {
  text-align: center;
  cursor: pointer;
  background-color: #0000;
  border: 1px solid #000;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 100px;
  padding-top: 20px;
  padding-bottom: 20px;
  font-size: 18px;
  display: flex;
}

.faq-tab-link.w--current {
  border-color: var(--blue);
  background-color: var(--blue);
  color: var(--white);
}

.faq-answer-holder {
  text-align: left;
  padding: 20px 0;
  font-size: 18px;
}

.answer-marker {
  color: var(--yellow);
  font-family: oswald, sans-serif;
  font-size: 42px;
  font-weight: 600;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 20px;
}

.white-border {
  border: 1px solid var(--white);
  background-color: #0000;
  padding: 40px;
}

.white-border.with-background {
  background-color: #ffffffbf;
}

.testimonial-slider {
  background-color: var(--white);
  height: auto;
  overflow: hidden;
}

.left-arrow {
  color: var(--black);
  transition: color .5s;
  display: block;
  left: -20px;
}

.left-arrow:hover {
  color: var(--yellow);
}

.left-arrow.projects {
  z-index: 2;
  background-image: linear-gradient(to right, var(--grey) 35%, transparent);
}

.right-arrow {
  color: var(--black);
  transition: color .5s;
  display: block;
  right: -20px;
}

.right-arrow:hover {
  color: var(--yellow);
}

.right-arrow.projects {
  z-index: 2;
  background-image: linear-gradient(to right, #0000, #fff 65%);
}

.slide-nav {
  display: none;
}

.testimonial-slides {
  width: 100%;
  height: auto;
  padding-left: 20px;
  padding-right: 20px;
  right: auto;
  overflow: hidden;
}

.mask {
  height: auto;
  overflow: hidden;
}

.services-grid {
  grid-column-gap: 60px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.mini-service-holder {
  cursor: pointer;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 360px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.mini-service-background-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.mini-services-blue-overlay {
  z-index: 1;
  color: var(--white);
  letter-spacing: 8px;
  text-transform: uppercase;
  background-color: #024ab9cc;
  flex-direction: column;
  flex: none;
  justify-content: center;
  align-items: center;
  height: auto;
  padding: 146px 30px 130px;
  font-size: 24px;
  display: flex;
  position: absolute;
  inset: 0%;
}

.text-block-4 {
  margin-right: -8px;
}

.mini-service-icon-block {
  z-index: 2;
  width: 100px;
  height: 100px;
  position: absolute;
  top: 40px;
}

.mini-service-icon-image {
  width: 100%;
  height: 100%;
}

.footer-section {
  border-top: 6px solid var(--yellow);
  border-bottom: 6px solid var(--yellow);
  color: var(--white);
  text-align: center;
  letter-spacing: 4px;
  text-transform: uppercase;
  background-color: #525252;
  padding: 60px 10% 5%;
  font-size: 16px;
  overflow: hidden;
}

.footer-container {
  flex-direction: column;
  align-items: center;
  max-width: 1140px;
  display: flex;
}

.footer-brand-logo-image {
  width: 280px;
  height: auto;
}

.footer-links-grid {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  text-align: left;
  grid-template-rows: auto;
  grid-template-columns: 30% 1fr 1fr 1fr;
  margin-top: 50px;
  margin-bottom: 30px;
  padding-left: 60px;
  padding-right: 60px;
}

.footer-links-block-holder {
  text-transform: none;
}

.footer-accred-logo {
  margin-top: 10px;
}

.footer-link-title {
  letter-spacing: 4px;
  text-transform: uppercase;
  margin-bottom: 30px;
  font-family: proxima-nova, sans-serif;
  font-size: 18px;
}

.footer-link-list {
  color: #fffc;
  letter-spacing: 1px;
  padding-right: 20px;
  font-size: 16px;
}

.footer-link-list:hover {
  color: var(--white);
}

.footer-link-list-item {
  margin-bottom: 10px;
}

.footer-link {
  color: #fffc;
  cursor: pointer;
  text-decoration: none;
  transition: color .5s;
}

.footer-link:hover {
  color: var(--white);
}

.footer-creds {
  border-top: 1px solid var(--white);
  text-align: center;
  letter-spacing: normal;
  text-transform: none;
  justify-content: center;
  align-items: center;
  margin-left: 60px;
  margin-right: 60px;
  padding-top: 20px;
  padding-left: 0;
  font-size: 14px;
  display: flex;
  position: relative;
}

.footer-social-block {
  justify-content: center;
  align-items: center;
  width: 200px;
  display: flex;
  position: absolute;
  top: 20px;
}

.footer-social-icon-link {
  cursor: pointer;
  margin-left: 4px;
  margin-right: 4px;
}

.footer-social-icon {
  text-align: center;
  object-fit: contain;
  width: 22px;
  height: 22px;
}

.html-embed {
  position: absolute;
  top: 20px;
  left: 0;
}

.form-field {
  border-style: solid;
  border-width: 1px 0 1px 1px;
  border-color: var(--white);
  color: var(--white);
  letter-spacing: 4px;
  background-color: #0000;
  width: 300px;
  min-height: 50px;
  margin-top: 10px;
  padding: 16px 20px;
  line-height: 1;
  display: block;
}

.submit-button {
  border: 1px solid var(--white);
  letter-spacing: 4px;
  text-transform: uppercase;
  background-color: #0000;
  padding: 16px 20px;
  line-height: 1;
  transition: background-color .5s, color .5s;
}

.submit-button:hover {
  background-color: var(--white);
  color: var(--blue);
}

.form {
  justify-content: center;
  align-items: center;
  display: flex;
}

.form-block {
  margin-top: 10px;
  margin-bottom: 30px;
}

.full-page-menu {
  z-index: 998;
  background-color: var(--white);
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  padding: 160px 10% 30px;
  display: none;
  position: fixed;
  inset: 0%;
}

.full-page-menu.new {
  justify-content: flex-start;
  padding: 0 0%;
  display: none;
  overflow: scroll;
}

.menu-container {
  justify-content: space-between;
  max-width: 1140px;
  height: 100%;
  padding-bottom: 80px;
  display: flex;
  position: relative;
}

.menu-list-item {
  min-height: 50px;
}

.menu-link {
  color: var(--black);
  text-align: left;
  letter-spacing: 4px;
  text-transform: uppercase;
  cursor: pointer;
  margin-right: -4px;
  font-family: proxima-nova, sans-serif;
  font-size: 2.5vh;
  font-weight: 700;
  text-decoration: none;
  transition: font-size .5s, color .5s;
}

.menu-link:hover {
  color: var(--yellow);
}

.menu-link.small {
  font-size: 18px;
  font-weight: 400;
}

.menu-link.tablet {
  display: none;
}

.menu-link.service {
  text-align: left;
  font-size: 2vh;
  font-weight: 400;
}

.menu-link.child-service {
  text-align: left;
  margin-left: 30px;
  font-size: 2vh;
  font-weight: 400;
}

.menu-grid {
  grid-column-gap: 0px;
  grid-row-gap: 40px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.menu-option-holder {
  text-align: center;
  flex-direction: column;
  padding: 20px 20px 10px;
  display: flex;
}

.menu-option-holder.service-lead {
  padding-bottom: 12px;
}

.menu-option-holder.service-lead.inner {
  padding-left: 0;
}

.menu-option-image-link {
  width: 100%;
  height: 80px;
  margin-bottom: 10px;
  position: relative;
}

.menu-option-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: filter .5s;
}

.menu-option-image:hover {
  filter: brightness(110%) grayscale(0%);
}

.menu-item-image-filter {
  filter: grayscale();
  background-color: #0000;
  display: block;
  position: absolute;
  inset: 0%;
}

.menu-dropdown {
  text-align: center;
  width: 100%;
}

.dropdown-toggle {
  padding: 0 30px 0 0;
}

.dropdown-icon {
  margin-right: 0;
  right: 0;
}

.dropdown-list {
  position: relative;
}

.dropdown-list.w--open {
  background-color: var(--white);
  text-transform: uppercase;
  width: 100%;
  margin-top: 10px;
  font-size: 16px;
  display: flex;
}

.sub-link {
  letter-spacing: 2px;
  text-transform: uppercase;
  padding-left: 10px;
  padding-right: 10px;
  font-size: 16px;
  transition: color .5s, background-color .5s;
}

.sub-link:hover {
  background-color: var(--blue);
  color: var(--white);
}

.menu-contact-holder {
  text-align: center;
  flex-direction: column;
  padding: 20px;
  display: flex;
}

.prima-face-holder {
  width: 25%;
  position: absolute;
  bottom: 0;
  right: -6%;
}

.bloke-image {
  text-align: right;
  display: none;
}

.dulux-logo {
  width: 200px;
  height: 130px;
}

.page-header {
  background-image: linear-gradient(#024ab999, #024ab999), url('../images/GetinTouch-FeaturedImage.png');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  flex-direction: column;
  justify-content: flex-end;
  align-items: stretch;
  height: 420px;
  min-height: 46vh;
  padding: 160px 10% 60px;
  display: flex;
  overflow: hidden;
}

.page-header.design-inspiration {
  background-image: linear-gradient(#00000080, #00000080), url('../images/White-Living-Rom.jpg');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.header-container {
  color: var(--white);
  text-align: center;
  letter-spacing: 4px;
  text-transform: uppercase;
  max-width: 1140px;
  font-size: 24px;
  font-weight: 400;
}

.page-h1 {
  color: var(--white);
  letter-spacing: 10px;
  text-transform: uppercase;
  margin-right: -10px;
  font-family: oswald, sans-serif;
  font-size: 70px;
  line-height: 1;
}

.page-h1.project-pages {
  font-size: 60px;
}

.how-we-work-grid {
  grid-column-gap: 60px;
  grid-row-gap: 20px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 40px;
}

.hww-holder {
  padding: 10px;
}

.h3-hww {
  margin-bottom: 20px;
  margin-right: 8px;
  font-family: proxima-nova, sans-serif;
  font-size: 24px;
  font-weight: 700;
}

.image-2 {
  width: 50px;
  height: 43px;
}

.director-grid {
  grid-column-gap: 30px;
  grid-row-gap: 10px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 2fr;
  padding-left: 5%;
  padding-right: 5%;
}

.director-image {
  border-radius: 100%;
  width: 280px;
}

.director-text-holder {
  text-align: left;
}

.team-grid {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 60px;
  padding-left: 5%;
  padding-right: 5%;
}

.team-person-image {
  border: 4px solid var(--dark-grey);
  object-fit: cover;
  border-radius: 100%;
  width: 180px;
  height: 180px;
  transition: border-color .5s;
}

.team-person-image:hover {
  border-color: var(--blue);
}

.team-name {
  font-size: 24px;
}

.view-team-button {
  background-color: var(--white);
  letter-spacing: 4px;
  text-transform: uppercase;
  border: 1px solid #000;
  margin-top: 40px;
  padding: 26px 40px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  transition: color .5s, background-color .5s;
  display: none;
}

.view-team-button:hover {
  background-color: var(--black);
  color: var(--white);
}

.paragraph-2 {
  display: none;
}

.logo-icon {
  width: 60px;
}

.contact-links-holder {
  flex-direction: column;
  align-items: center;
  margin-top: 40px;
  margin-bottom: 40px;
  display: flex;
}

.contact-link {
  color: var(--black);
  letter-spacing: 2px;
  text-transform: none;
  cursor: pointer;
  align-items: center;
  margin-top: 4px;
  margin-bottom: 4px;
  font-size: 24px;
  font-weight: 700;
  text-decoration: none;
  transition: color .5s;
  display: inline-block;
  position: relative;
}

.contact-link:hover {
  color: var(--blue);
}

.contact-list-icon {
  color: var(--black);
  width: 22px;
  height: 22px;
  text-decoration: none;
  position: absolute;
  left: 0;
}

.contact-holder {
  align-items: center;
  padding-left: 40px;
  display: flex;
  position: relative;
}

.contact-page-map {
  z-index: 1;
  border: 0px none var(--black);
  width: 100%;
  height: 350px;
  margin-top: 0;
}

.find-us {
  text-align: center;
  object-fit: cover;
  width: 160%;
  max-width: none;
  height: 147.094px;
  margin-left: -30%;
}

.locations-block {
  letter-spacing: 2px;
  text-transform: uppercase;
  justify-content: center;
  align-items: center;
  margin-left: 0;
  font-family: oswald, sans-serif;
  font-weight: 600;
  display: flex;
}

.location-text {
  margin-left: 10px;
  margin-right: 10px;
  display: inline;
}

.location-link {
  color: var(--black);
  text-decoration: none;
  transition: color .5s;
}

.location-link:hover {
  color: var(--yellow);
}

.white-line-div {
  border-top: 1px solid var(--white);
  width: 10%;
  margin-bottom: 20px;
  display: inline-block;
}

.white-line-div.black {
  border-top-color: var(--black);
}

.contact-form-wrapper {
  padding: 30px 20px;
}

.text-form-field {
  width: 48%;
  min-height: 50px;
  margin-left: 1%;
  margin-right: 1%;
}

.message-field {
  width: 100%;
  min-height: 100px;
  margin-left: 1%;
  margin-right: 1%;
}

.main-contact-form {
  flex-flow: wrap;
  display: flex;
}

.form-button {
  background-color: var(--black);
  color: var(--white);
  letter-spacing: 4px;
  text-transform: uppercase;
  width: 48%;
  margin-left: 1%;
  margin-right: 1%;
  padding-top: 16px;
  padding-bottom: 16px;
  font-weight: 700;
  transition: background-color .5s;
}

.form-button:hover {
  background-color: var(--blue);
}

.form-button.blue-cta:hover {
  background-color: var(--yellow);
}

.form-disclaimer-text {
  text-align: left;
  width: 48%;
  margin-bottom: 0;
  margin-left: 1%;
  margin-right: 1%;
  font-size: 14px;
}

.privacy-link {
  color: var(--black);
  font-weight: 700;
  text-decoration: none;
}

.privacy-link:hover {
  text-decoration: underline;
}

.privacy-link.blue-cta {
  color: var(--white);
}

.testimonial-background-image {
  background-image: linear-gradient(#024ab9bf, #024ab9bf), url('../images/Painting.png');
  background-position: 0 0, 50% 80%;
  background-repeat: repeat, no-repeat;
  background-size: auto, 250%;
  width: 100%;
  height: 320px;
  margin-top: 40px;
  margin-left: 40px;
  position: static;
  top: 40px;
  left: 10%;
  right: auto;
}

.heading-text-block {
  line-height: 1;
}

._2-col-text {
  text-align: left;
  column-count: 2;
  column-gap: 60px;
  margin-left: 60px;
  margin-right: 60px;
}

.project-thumbnails {
  grid-column-gap: 60px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  margin-top: 30px;
  margin-bottom: 30px;
}

.project-image-viewer-wrapper {
  margin-top: 60px;
  margin-left: 10%;
  margin-right: 10%;
  position: relative;
}

.project-thumbnail-wrapper {
  cursor: pointer;
  align-content: center;
  width: 100%;
  height: 360px;
  position: static;
}

.project-thumbnail-image {
  cursor: pointer;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.project-thumbnail-overlay {
  z-index: 2;
  transition: background-color .5s;
  position: absolute;
  inset: 0%;
}

.project-thumbnail-overlay:hover {
  background-color: #00000059;
}

.view-port-image {
  z-index: 2;
  object-fit: cover;
  width: 100%;
  height: 360px;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
}

.left-side-image {
  transform-origin: 0 100%;
  width: 460px;
  height: auto;
  position: absolute;
  top: auto;
  bottom: 100px;
  left: 0;
  transform: rotate(-90deg);
}

.black-divider {
  text-align: center;
  border-top: 1px solid #000;
  width: 35%;
  height: 1px;
  margin-top: 0;
  margin-bottom: 8%;
  display: inline-block;
}

.heading-2.two-cols {
  margin-left: 0;
}

.prima-icon-2 {
  width: 50px;
  height: 43px;
  margin-bottom: 10px;
}

.project-work-grid {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 30px;
}

.project-work-grid.design-inspo {
  grid-template-rows: auto;
}

.indv-project-wrapper {
  width: 100%;
  height: 240px;
  position: relative;
  overflow: hidden;
}

.indv-project-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.indv-project-image-overlay {
  z-index: 2;
  color: var(--white);
  text-align: center;
  letter-spacing: 4px;
  text-transform: uppercase;
  justify-content: center;
  align-items: flex-start;
  padding: 30px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color .5s;
  display: flex;
  position: absolute;
  inset: 0%;
}

.indv-project-image-overlay:hover {
  background-color: #00000073;
}

.indv-project-title {
  font-size: 26px;
}

.indv-project-view-more {
  position: absolute;
  bottom: 40px;
}

.project-page-video-grid {
  grid-column-gap: 30px;
  grid-row-gap: 12px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
}

.project-head-grid-wrapper {
  text-align: left;
  padding-right: 50px;
}

.grid-video-wrap {
  height: 300px;
}

.project-video {
  width: 100%;
  height: 340px;
}

.lightbox-image {
  object-fit: cover;
  width: 24%;
  height: 160px;
  margin-bottom: 14px;
  margin-right: 0%;
  transition: filter .5s;
}

.lightbox-image:hover {
  filter: brightness(80%);
}

.project-lightbox-grid {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.project-lightbox-grid.design-insp {
  grid-template-rows: auto auto auto auto auto auto;
  grid-template-columns: 1fr;
}

.lightbox-image-holder {
  width: 100%;
  height: 240px;
  overflow: hidden;
}

.lightbox-image-holder.design-insp {
  height: 180px;
}

.load-more {
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 700;
  transition: color .5s;
}

.load-more:hover {
  color: var(--yellow);
}

.design-inspo-featured-image-holder {
  background-image: url('../images/White-Living-Rom.jpg');
  background-position: 50%;
  background-size: cover;
}

.design-inspo-blog-lightbox {
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 20px;
  display: flex;
  position: static;
  top: 0;
  left: 0;
}

.projects-card-link {
  z-index: 2;
  color: var(--black);
  cursor: pointer;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding-bottom: 30px;
  text-decoration: none;
  transition: background-color .5s;
  display: flex;
  position: absolute;
  inset: 0%;
}

.projects-card-link:hover {
  background-image: linear-gradient(#0000, #ffffffe6);
}

.projects-button {
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 21px;
}

.question-marker {
  color: var(--blue);
  font-family: oswald, sans-serif;
  font-size: 42px;
  font-weight: 700;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 20px;
}

.question-block {
  padding-top: 20px;
  padding-left: 70px;
  padding-right: 40px;
  font-weight: 700;
  position: relative;
}

.answer-block {
  padding-top: 20px;
  padding-left: 70px;
  padding-right: 40px;
  position: relative;
}

.icon, .icon-2 {
  cursor: pointer;
}

.div-block {
  background-color: #00000059;
  position: absolute;
  inset: 0%;
}

.h2-body {
  font-family: proxima-nova, sans-serif;
  font-size: 24px;
}

.mask-2 {
  width: 320px;
  height: auto;
  padding-left: 0;
  padding-right: 0;
  overflow: visible;
}

.slide {
  background-color: var(--white);
  width: 320px;
  height: auto;
  margin-left: 0;
  margin-right: 0;
}

.slider {
  background-color: var(--white);
  width: 100%;
  height: auto;
  margin-bottom: 20px;
  overflow: hidden;
}

.project-gallery-thumb {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: filter .5s;
}

.project-gallery-thumb:hover {
  filter: brightness(80%);
}

.latest-projects {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  margin-bottom: 20px;
  margin-left: 10%;
  margin-right: 10%;
}

.location-page-links {
  letter-spacing: 2px;
  text-transform: none;
  margin-bottom: 30px;
  padding-left: 5%;
  padding-right: 5%;
  font-size: 14px;
  font-weight: 400;
}

.footer-bold {
  color: var(--white);
  text-transform: none;
  font-weight: 700;
  text-decoration: none;
}

.footer-bold:hover {
  text-decoration: underline;
}

.project-featured-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.first-menu-col {
  padding-left: 10px;
  padding-right: 10px;
}

.first-menu-col.right-border {
  border-right: 1px solid var(--dark-grey);
  width: 33.3%;
  padding-top: 20px;
}

.two-col-image-head {
  object-fit: cover;
  width: 100%;
  height: 200px;
  margin-bottom: 0;
}

.two-col-image-holder {
  width: 100%;
  height: 200px;
  margin-bottom: 20px;
  overflow: hidden;
}

.second-menu-col {
  flex-direction: column;
  width: 66.6%;
  display: flex;
  position: static;
}

.menu-services-title {
  text-align: left;
  padding: 40px 40px 20px;
}

.child-services-menu {
  display: flex;
}

.child-services-col {
  width: 50%;
  padding-left: 20px;
  padding-right: 10px;
}

.menu-h2-title {
  margin-top: 0;
  margin-bottom: 0;
  font-family: proxima-nova, sans-serif;
  font-size: 2.5vh;
}

.menu-contact-details-holder {
  justify-content: space-around;
  width: 100%;
  margin-top: 0;
  padding-left: 20px;
  display: flex;
  position: absolute;
  bottom: 0;
}

.menu-logo {
  width: 200px;
  position: absolute;
  top: 30px;
}

.menu-image-holder {
  width: auto;
  height: 120px;
  margin-top: 10px;
  margin-left: 20px;
  margin-right: 20px;
}

.makers-mark {
  text-align: right;
  position: absolute;
  top: 20px;
  right: 0;
}

.header-button-holder {
  justify-content: center;
  align-items: center;
  width: 100%;
  min-width: 500px;
  margin-top: 30px;
  display: flex;
}

.header-contact-button {
  border: 2px solid var(--white);
  color: var(--white);
  text-align: center;
  cursor: pointer;
  background-color: #0000;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 210px;
  height: 54px;
  padding: 0;
  font-family: oswald, sans-serif;
  font-size: 21px;
  font-weight: 600;
  line-height: 1;
  transition: background-color 1s, color 1s;
  display: flex;
}

.header-contact-button:hover {
  background-color: var(--white);
  color: var(--blue);
}

.header-button-spacer {
  width: 50px;
  height: 10px;
}

.area-image-link {
  cursor: pointer;
  width: 100%;
  height: 140px;
}

.area-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: filter 1s;
}

.area-image:hover {
  filter: brightness(80%);
}

.area-option {
  width: 100%;
  height: auto;
}

.area-title {
  letter-spacing: 4px;
  font-size: 24px;
  line-height: 1.1;
}

.area-title-link {
  color: var(--black);
  cursor: pointer;
  text-decoration: none;
  transition: color 1s;
}

.area-title-link:hover {
  color: var(--blue);
}

.menu-grid-image-overlay {
  z-index: 2;
  cursor: pointer;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  transition: background-color 1.2s;
  display: flex;
  position: absolute;
  inset: 0%;
}

.menu-grid-image-overlay:hover {
  background-color: #020202cc;
}

.menu-grid-holder {
  color: #020202;
  text-align: center;
  letter-spacing: 1px;
  text-transform: uppercase;
  width: 100%;
  height: 100%;
  padding-bottom: 4px;
  font-size: 18px;
}

.menu-grid-holder.text {
  text-align: left;
  text-transform: none;
  padding-bottom: 20px;
  font-size: 14px;
  line-height: 1.6;
}

.menu-grid-holder.inner {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.contact-link-icon {
  object-fit: contain;
  width: 18px;
  height: 100%;
  position: absolute;
  left: 0;
}

.menu-grid-option-image-link {
  color: #0000;
  cursor: pointer;
  width: 100%;
  height: 12vh;
  text-decoration: none;
  transition: color 1.2s;
  position: relative;
  overflow: hidden;
}

.menu-grid-option-image-link:hover {
  color: #fff;
}

.menu-grid-option-image-link.inner {
  height: 90px;
}

.menu-grid-link {
  color: #020202;
  cursor: pointer;
  text-decoration: none;
  transition: color .8s;
}

.menu-grid-link:hover {
  color: var(--yellow);
}

.menu-grid-link.inner {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.menu-grid-title {
  color: var(--blue);
  margin-bottom: 2px;
  font-weight: 500;
}

.contact-link-block {
  color: #020202;
  cursor: pointer;
  align-items: center;
  padding-left: 26px;
  text-decoration: none;
  transition: color .8s;
  display: inline-block;
  position: relative;
}

.contact-link-block:hover {
  color: var(--yellow);
}

.menu-info-grid {
  grid-column-gap: 40px;
  grid-row-gap: 10px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 90%;
  max-width: 1260px;
  margin-bottom: 10px;
}

.main-menu-grid {
  grid-column-gap: 40px;
  grid-row-gap: 10px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  width: 90%;
  max-width: 1260px;
  height: auto;
  position: relative;
}

.main-menu-grid.inner {
  grid-template-columns: 1fr 1fr;
  width: 100%;
}

.menu-option-image-2 {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.full-page-menu-inner {
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: 100vh;
  min-height: 800px;
  padding: 180px 5% 80px;
  display: flex;
  overflow: hidden;
}

.mini-menu {
  z-index: 9;
  background-color: var(--white);
  padding: 30px 0;
  position: absolute;
  inset: 0%;
}

.mini-menu-grid {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  text-align: left;
  grid-template-rows: auto;
  width: 100%;
  height: auto;
  display: block;
}

.mini-menu-left {
  width: 100%;
  position: relative;
}

.mini-menu-right {
  width: 100%;
  margin-top: 20px;
  margin-bottom: 20px;
}

.mini-grid-titles {
  text-transform: none;
  margin-bottom: -20px;
}

.mini-grid-titles.bottom {
  margin-top: -16px;
  margin-bottom: 0;
}

.mini-grid-back {
  cursor: pointer;
  justify-content: flex-start;
  align-items: center;
  transition: color 1s;
  display: flex;
  position: static;
  bottom: 0;
  left: 20px;
}

.mini-grid-back:hover {
  color: var(--yellow);
}

.mini-grid-back-line {
  background-color: var(--yellow);
  width: 60px;
  height: 2px;
  margin-left: 8px;
}

.mini-menu-option-holder {
  padding-top: 6px;
  padding-bottom: 10px;
}

.mini-menu-link {
  color: var(--black);
  cursor: pointer;
  font-size: 21px;
  text-decoration: none;
  transition: color .8s;
}

.mini-menu-link:hover {
  color: var(--yellow);
}

.area-location-grid {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  margin-bottom: 30px;
}

.area-location-grid._3-cols {
  grid-template-columns: 1fr 1fr 1fr;
}

.location-area-link {
  color: var(--black);
  cursor: pointer;
  font-weight: 400;
  text-decoration: none;
  transition: color 1s;
}

.location-area-link:hover {
  color: var(--yellow);
}

.whatsapp-contact {
  z-index: 997;
  background-color: #25d366;
  border: 3px solid #fff;
  border-radius: 100%;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 70px;
  padding: 10px;
  transition: box-shadow 1s, background-color 1s;
  display: flex;
  position: fixed;
  bottom: 20px;
  right: 20px;
  box-shadow: 0 2px 12px 2px #0003;
}

.whatsapp-contact:hover {
  background-color: #3a84de;
  box-shadow: 0 2px 12px 2px #00000073;
}

.whatsapp-icon {
  filter: invert();
  object-fit: contain;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 1440px) {
  .menu-grid-option-image-link {
    height: 14vh;
  }
}

@media screen and (min-width: 1920px) {
  .menu-grid-holder {
    padding-bottom: 12px;
    font-size: 24px;
  }

  .menu-grid-holder.text {
    font-size: 18px;
  }

  .contact-link-icon {
    width: 20px;
  }

  .menu-grid-option-image-link {
    height: 15vh;
  }

  .menu-grid-title {
    margin-bottom: 4px;
  }

  .contact-link-block {
    padding-left: 28px;
  }

  .menu-info-grid, .main-menu-grid {
    max-width: 1400px;
  }

  .full-page-menu-inner {
    padding-bottom: 160px;
    padding-left: 12%;
    padding-right: 12%;
  }
}

@media screen and (max-width: 991px) {
  .background-video {
    height: 101vh;
  }

  .prima-title {
    background-size: 200%;
    height: 180px;
    font-family: proxima-nova, sans-serif;
  }

  .page-header-sub-title {
    font-size: 50px;
    line-height: 1.2;
  }

  .nav-menu-bar {
    min-height: 116px;
    padding-left: 30px;
    padding-right: 30px;
  }

  .call-button-box {
    display: none;
    top: 20px;
    left: 10px;
  }

  .logo-box {
    width: 160px;
    top: 24px;
  }

  .menu-widget-box {
    background-color: #00000080;
    top: 26px;
    right: 20px;
  }

  .menu-icon-holder {
    margin-left: 0;
  }

  .hamburger-bar.top, .hamburger-bar.bottom {
    height: 4px;
  }

  .menu-text {
    display: none;
  }

  .body-section {
    padding-left: 5%;
    padding-right: 5%;
  }

  .body-section.detail {
    background-position: 50% 101%;
    background-size: 200%;
    padding-bottom: 20%;
  }

  .body-section.questions {
    background-size: 200%;
  }

  .body-section.page-subhead.contact {
    padding-top: 8%;
  }

  .body-section.page-subhead.design-insp {
    text-align: left;
    padding-bottom: 0;
  }

  .body-section.light-grey-section {
    background-size: 200%;
  }

  .body-container.mini-services {
    padding-left: 0;
    padding-right: 0;
  }

  .body-container.design-inspo {
    padding-left: 0%;
  }

  .map-section.contact-page {
    background-size: 200%;
    padding-top: 9.5%;
  }

  .horizontal-container {
    flex-direction: column;
    margin-top: 60px;
    margin-bottom: 60px;
    padding-top: 360px;
    position: relative;
  }

  .left-col {
    width: 100%;
  }

  .left-col.text.right {
    padding-left: 90px;
    padding-right: 40px;
  }

  .left-col.text.testimonials {
    padding-bottom: 10px;
    padding-right: 30px;
  }

  .right-col {
    width: 100%;
  }

  .right-col.image {
    position: absolute;
    top: 0;
    left: 0;
  }

  .right-col.image.testimonials {
    position: absolute;
  }

  .right-col.left {
    position: absolute;
    top: 0;
    left: 0;
  }

  .service-heading.blog-title {
    font-size: 32px;
  }

  .body-button.blue-cta.mini-service {
    max-width: 80%;
  }

  .body-button.blue-cta.mini-service.v2 {
    bottom: 100px;
  }

  .body-button.cta {
    min-width: 240px;
    margin-bottom: 10px;
  }

  .body-image.right {
    width: 100%;
    height: 280px;
  }

  .body-image.left {
    box-shadow: -113px 41px 0 10px var(--dark-grey);
    width: 100%;
    height: 280px;
  }

  .rotating-column-left {
    display: none;
  }

  .video-container {
    height: 340px;
    margin-left: 40px;
    margin-right: 40px;
  }

  .portfolio-card {
    width: 100%;
    margin-right: 30px;
  }

  .portfolio-logo {
    width: 140px;
    left: 50px;
    right: 50px;
  }

  .faq-holder {
    padding-left: 10px;
    padding-right: 10px;
  }

  .faq-tab-link {
    font-size: 16px;
  }

  .services-grid {
    grid-column-gap: 20px;
  }

  .mini-services-blue-overlay {
    padding: 120px 10px 170px;
    font-size: 21px;
  }

  .mini-service-icon-block {
    width: 80px;
    height: 80px;
    top: 30px;
  }

  .footer-section {
    padding-bottom: 60px;
    padding-left: 5%;
    padding-right: 5%;
  }

  .footer-links-grid {
    padding-left: 0;
    padding-right: 0;
  }

  .footer-creds {
    margin-bottom: 40px;
    margin-left: 0;
    margin-right: 0;
  }

  .full-page-menu {
    padding-top: 140px;
    padding-left: 5%;
    padding-right: 5%;
    display: none;
    overflow: scroll;
  }

  .full-page-menu.new {
    display: block;
  }

  .menu-container {
    max-width: none;
    padding-top: 40px;
    padding-bottom: 120px;
  }

  .menu-link {
    text-align: left;
    white-space: normal;
    font-size: 21px;
  }

  .menu-link.email {
    font-size: 18px;
  }

  .menu-link.small {
    display: block;
  }

  .menu-link.tablet {
    margin-top: 10px;
    font-size: 18px;
    display: block;
  }

  .menu-link.service {
    letter-spacing: 2px;
    font-size: 16px;
  }

  .menu-link.child-service {
    font-size: 16px;
  }

  .menu-grid {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .menu-option-holder {
    min-height: auto;
    margin-right: 20px;
    padding: 10px 10px 12px;
  }

  .menu-option-holder.service-lead {
    text-align: left;
    width: 100%;
    padding-bottom: 14px;
    display: block;
  }

  .menu-option-image-link {
    height: 80px;
    display: none;
  }

  .dropdown-list.w--open {
    margin-top: 4px;
  }

  .menu-contact-holder {
    padding: 10px;
  }

  .menu-contact-holder.contacts {
    width: 50%;
    display: block;
  }

  .menu-contact-holder.tablet {
    width: 100%;
    margin-right: 0%;
  }

  .prima-face-holder {
    width: 35%;
    right: -10%;
  }

  .page-header {
    height: 400px;
  }

  .page-header.design-inspiration {
    padding-bottom: 40px;
  }

  .page-h1 {
    font-size: 60px;
  }

  .page-h1.project-pages {
    font-size: 50px;
  }

  .how-we-work-grid {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    font-size: 18px;
  }

  .director-grid {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .director-image {
    width: 200px;
  }

  .director-text-holder {
    text-align: center;
    margin-top: 20px;
  }

  .team-grid {
    padding-left: 0%;
    padding-right: 0%;
    font-size: 18px;
  }

  .team-person-image {
    width: 140px;
    height: 140px;
  }

  .team-name {
    font-size: 21px;
  }

  .contact-form-wrapper {
    padding-left: 10px;
    padding-right: 10px;
  }

  .form-button {
    padding-top: 12px;
    padding-bottom: 12px;
    font-size: 18px;
  }

  .form-disclaimer-text {
    margin-bottom: 0;
  }

  .paragraph-3 {
    font-size: 18px;
  }

  ._2-col-text {
    margin-left: 0;
    margin-right: 0;
  }

  .project-thumbnails {
    grid-column-gap: 20px;
  }

  .left-side-image {
    left: 20px;
  }

  .indv-project-wrapper {
    font-size: 18px;
  }

  .indv-project-image-overlay {
    padding-top: 20px;
  }

  .indv-project-title {
    font-size: 21px;
  }

  .indv-project-view-more {
    bottom: 30px;
  }

  .project-page-video-grid {
    padding-top: 320px;
    padding-left: 10px;
    padding-right: 10px;
    display: block;
    position: relative;
  }

  .project-page-video-grid.design-inspo {
    text-align: left;
    padding-left: 0;
    padding-right: 0;
  }

  .project-head-grid-wrapper {
    text-align: center;
    padding-right: 0;
  }

  .grid-video-wrap {
    width: 100%;
    height: 300px;
    padding-left: 10px;
    padding-right: 10px;
    position: absolute;
    top: 0;
    left: 0;
  }

  .lightbox-image {
    margin-bottom: 10px;
  }

  .project-lightbox-grid {
    grid-row-gap: 20px;
  }

  .design-inspo-featured-image-holder {
    width: 100%;
    height: 340px;
    position: absolute;
    top: 0;
    left: 0;
  }

  .design-inspo {
    text-align: left;
  }

  .projects-card-link {
    border: 1px solid var(--dark-grey);
    background-image: linear-gradient(#fff0, #fff);
  }

  .question-block, .answer-block {
    padding-right: 20px;
  }

  .icon {
    margin-bottom: 140px;
  }

  .icon-2 {
    margin-bottom: 140px;
    bottom: 0;
  }

  .mask-2 {
    padding-left: 0;
    padding-right: 0;
  }

  .latest-projects {
    margin-left: 0%;
    margin-right: 0%;
  }

  .first-menu-col {
    flex-wrap: wrap;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 0;
    display: flex;
  }

  .first-menu-col.right-border {
    border-right: 1px solid var(--dark-grey);
    border-bottom: 0px none var(--dark-grey);
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 30%;
    padding-top: 30px;
  }

  .second-menu-col {
    width: 70%;
  }

  .menu-services-title, .child-services-col {
    padding-left: 20px;
  }

  .menu-contact-details-holder {
    flex-wrap: wrap;
    padding-left: 0;
  }

  .menu-logo {
    width: 160px;
    left: 40px;
  }

  .header-button-holder {
    min-width: auto;
  }

  .header-contact-button {
    width: 180px;
    height: 48px;
    font-size: 18px;
  }

  .header-button-spacer {
    width: 40px;
  }

  .area-image-link {
    height: 160px;
  }

  .menu-grid-holder {
    font-size: 16px;
  }

  .menu-grid-holder.text {
    font-size: 14px;
  }

  .menu-grid-option-image-link {
    height: 120px;
  }

  .contact-link-holder {
    margin-bottom: 6px;
  }

  .menu-info-grid, .main-menu-grid {
    grid-column-gap: 20px;
    width: 100%;
  }

  .full-page-menu-inner {
    padding: 160px 5% 60px;
  }

  .mini-grid-titles {
    margin-bottom: -10px;
  }

  .mini-grid-back {
    left: 10px;
  }

  .mini-menu-link {
    font-size: 18px;
  }

  .whatsapp-contact {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    display: flex;
    left: auto;
    right: 20px;
  }

  .whatsapp-contact:hover {
    background-color: var(--blue);
  }
}

@media screen and (max-width: 767px) {
  h2 {
    font-size: 28px;
  }

  .body {
    font-size: 18px;
  }

  .home-page-header {
    min-height: 800px;
  }

  .background-video {
    height: 100vh;
    min-height: 800px;
    padding-left: 30px;
    padding-right: 30px;
  }

  .prima-title {
    object-fit: fill;
    height: 120px;
    min-height: 100px;
  }

  .page-header-sub-title {
    font-size: 42px;
  }

  .nav-menu-bar {
    min-height: 90px;
    padding-top: 10px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .call-button-box {
    z-index: 999;
    left: 0;
  }

  .logo-box {
    width: 140px;
    display: block;
    top: 20px;
    left: auto;
  }

  .menu-widget-box {
    background-color: #00000080;
  }

  .body-section {
    padding: 60px 20px;
  }

  .body-section.detail {
    padding-top: 60px;
    padding-bottom: 120px;
  }

  .body-section.questions {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .body-section.page-subhead.contact {
    padding-top: 60px;
  }

  .body-section.page-subhead.design-insp {
    padding-top: 30px;
    padding-bottom: 10px;
  }

  .body-section.light-grey-section {
    padding-bottom: 120px;
  }

  .body-section.design-inspo {
    padding-bottom: 30px;
  }

  .body-container {
    max-width: none;
    padding-left: 10px;
    padding-right: 10px;
  }

  .body-container.columns {
    padding-left: 10px;
    padding-right: 10px;
  }

  .body-container.design-inspo {
    padding-top: 0;
    padding-left: 10px;
  }

  .descriptive-para {
    padding-left: 0%;
    padding-right: 0%;
  }

  .section-text {
    padding-left: 14px;
    padding-right: 14px;
    font-size: 50px;
  }

  .horizontal-container.testimonials {
    padding-top: 230px;
  }

  .service-heading {
    font-size: 36px;
  }

  .service-heading.blog-title {
    font-size: 28px;
  }

  .body-button {
    min-width: auto;
  }

  .body-button.projects-carousel {
    width: 120px;
    left: 40px;
    right: 40px;
  }

  .body-button.cta {
    white-space: normal;
    min-width: 240px;
  }

  .body-image.testimonial {
    height: 160px;
  }

  .video-container {
    background-size: 30%, cover;
    height: 260px;
    margin-left: 20px;
    margin-right: 20px;
  }

  .portfolio-card {
    width: 100%;
    height: 180px;
    margin-right: 20px;
  }

  .portfolio-button {
    font-size: 16px;
  }

  .portfolio-logo {
    width: 120px;
    top: 50px;
    left: 40px;
    right: 40px;
  }

  .faq-tabs-content {
    padding: 10px;
  }

  .faq-tabs-menu {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 1fr;
    padding: 10px;
  }

  .faq-tabs-menu._2x2 {
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .left-arrow, .right-arrow {
    font-size: 30px;
  }

  .services-grid {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .footer-section {
    padding-left: 20px;
    padding-right: 20px;
  }

  .footer-container {
    padding-left: 10px;
    padding-right: 10px;
  }

  .footer-brand-logo-image {
    width: 240px;
  }

  .footer-links-grid {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .footer-creds {
    margin-bottom: 60px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .html-embed {
    top: 60px;
    left: auto;
  }

  .full-page-menu {
    padding-top: 120px;
    padding-left: 30px;
    padding-right: 30px;
    display: none;
  }

  .menu-container {
    flex-direction: column;
    justify-content: flex-start;
    max-width: 100vw;
    padding-top: 0;
  }

  .menu-link {
    font-size: 18px;
  }

  .menu-link.small, .menu-link.tablet {
    font-size: 16px;
  }

  .menu-link.service {
    font-size: 18px;
    font-weight: 700;
  }

  .menu-grid {
    grid-template-rows: auto auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .menu-option-holder {
    text-align: left;
    align-items: flex-start;
    min-height: auto;
    padding-bottom: 10px;
    padding-left: 10px;
  }

  .menu-option-holder.service-lead {
    padding-bottom: 10px;
  }

  .menu-option-holder.sub, .menu-option-image-link {
    display: none;
  }

  .menu-dropdown {
    text-align: left;
  }

  .dropdown-toggle {
    min-width: 60%;
  }

  .dropdown-list.w--open {
    text-align: right;
    flex-direction: column;
    align-items: flex-end;
  }

  .sub-link {
    text-align: right;
    min-width: 100%;
    margin-top: 4px;
    margin-bottom: 4px;
    font-size: 18px;
  }

  .menu-contact-holder {
    align-items: flex-start;
    padding-left: 40px;
  }

  .menu-contact-holder.contacts {
    width: 100%;
    padding-left: 10px;
    line-height: 2;
  }

  .menu-contact-holder.tablet {
    padding-left: 10px;
  }

  .prima-face-holder {
    display: none;
  }

  .page-header {
    height: 300px;
    padding-bottom: 50px;
  }

  .page-header.design-inspiration {
    padding-bottom: 40px;
  }

  .page-h1 {
    font-size: 38px;
  }

  .page-h1.project-pages {
    font-size: 42px;
  }

  .how-we-work-grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
  }

  .team-grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .team-person-image {
    width: 120px;
    height: 120px;
  }

  .view-team-button {
    display: inline-block;
  }

  .paragraph-2 {
    display: block;
  }

  .locations-block {
    flex-wrap: wrap;
    line-height: 2;
  }

  .white-line-div {
    width: 20%;
  }

  .text-form-field {
    width: 100%;
  }

  .form-button {
    white-space: normal;
    width: 100%;
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .form-disclaimer-text {
    width: 100%;
    margin-bottom: 20px;
  }

  .testimonial-background-image {
    height: 180px;
  }

  .paragraph-3 {
    font-size: 16px;
  }

  ._2-col-text {
    text-align: center;
    column-count: auto;
  }

  .project-image-viewer-wrapper {
    margin-left: 10px;
    margin-right: 10px;
  }

  .left-side-image {
    display: none;
    overflow: visible;
  }

  .heading-2 {
    text-align: center;
  }

  .heading-3 {
    text-align: center;
    line-height: 1.2;
  }

  .project-work-grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .project-page-video-grid {
    padding-top: 320px;
  }

  .grid-video-wrap, .project-video {
    height: 300px;
  }

  .lightbox-image {
    width: 32%;
    margin-right: 0%;
  }

  .project-lightbox-grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 1fr 1fr;
  }

  .project-lightbox-grid.design-insp {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr 1fr;
  }

  .lightbox-image-holder {
    height: 120px;
  }

  .design-inspo-featured-image-holder {
    height: 310px;
  }

  .design-inspo-blog-lightbox {
    justify-content: space-around;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .question-block, .answer-block {
    padding-right: 10px;
  }

  .slide {
    max-width: 80vw;
  }

  .latest-projects {
    grid-row-gap: 20px;
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
  }

  .first-menu-col.right-border {
    border-right-style: none;
    border-right-width: 0;
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
  }

  .second-menu-col {
    flex-direction: column;
    width: 100%;
  }

  .menu-services-title {
    display: none;
  }

  .child-services-menu {
    flex-direction: column;
    align-items: flex-start;
  }

  .child-services-col {
    width: 100%;
    padding-left: 0;
  }

  .menu-contact-details-holder {
    flex-direction: column;
    position: static;
  }

  .menu-logo {
    display: none;
  }

  .makers-mark {
    top: 80px;
    right: auto;
  }

  .header-button-holder {
    margin-top: 20px;
  }

  .header-button-spacer {
    width: 30px;
  }

  .menu-grid-holder {
    text-align: left;
    padding-bottom: 14px;
  }

  .menu-grid-holder.text {
    padding-bottom: 30px;
    font-size: 16px;
  }

  .menu-grid-option-image-link {
    display: none;
  }

  .menu-grid-title {
    margin-bottom: 8px;
  }

  .contact-link-holder {
    margin-bottom: 8px;
    font-size: 18px;
  }

  .menu-info-grid {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    grid-template-columns: 1fr;
    width: 80%;
    margin-bottom: 60px;
    margin-right: 20%;
  }

  .main-menu-grid {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 40px;
  }

  .main-menu-grid.inner {
    grid-template-columns: 1fr;
  }

  .full-page-menu-inner {
    flex-direction: column-reverse;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 140px 30px 40px;
  }

  .mini-menu {
    padding: 0;
    display: block;
    position: static;
  }

  .mini-menu-grid {
    display: block;
  }

  .mini-menu-left {
    display: none;
  }

  .mini-menu-right {
    margin-top: 0;
    padding-top: 14px;
  }

  .mini-menu-option-holder {
    color: var(--black);
    margin-bottom: 14px;
    padding-top: 0;
    padding-bottom: 0;
  }

  .mini-menu-link {
    color: var(--black);
    text-decoration: none;
    transition: color .8s;
  }

  .mini-menu-link:hover {
    color: var(--yellow);
  }

  .area-location-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media screen and (max-width: 479px) {
  h2 {
    font-size: 26px;
  }

  p {
    text-align: left;
  }

  .body {
    text-align: left;
    font-size: 18px;
  }

  .home-page-header, .background-video {
    min-height: auto;
  }

  .prima-title {
    background-size: 225%;
    height: 100px;
    min-height: auto;
  }

  .h1-home-title {
    margin-bottom: 10px;
    font-size: 24px;
    line-height: 1.2;
  }

  .page-header-sub-title {
    font-size: 32px;
    line-height: 1.4;
  }

  .nav-menu-bar {
    min-height: 72px;
  }

  .call-button-box {
    top: 10px;
    left: 0;
  }

  .logo-box {
    width: 120px;
    top: 14px;
    left: auto;
  }

  .menu-widget-box {
    padding-right: 12px;
    top: 16px;
    right: 6px;
  }

  .body-section.detail {
    background-position: 50% 100.1%;
    padding-bottom: 100px;
  }

  .body-section.questions, .body-section.light-grey-section {
    background-position: 50% 100.1%;
  }

  .body-section.design-inspo {
    padding-left: 20px;
  }

  .body-container {
    text-align: left;
  }

  .body-container.blue-overlay {
    align-items: flex-start;
  }

  .body-container.columns {
    text-align: left;
  }

  .body-container.design-inspo {
    padding-top: 0;
  }

  .section-text {
    padding-left: 8px;
    padding-right: 8px;
    font-size: 32px;
  }

  .horizontal-container {
    margin-top: 30px;
    margin-bottom: 40px;
    padding-top: 240px;
  }

  .horizontal-container.testimonials {
    padding-top: 160px;
  }

  .left-col.text, .left-col.text.right {
    padding-left: 40px;
    padding-right: 0;
  }

  .left-col.text.testimonials {
    padding-right: 0;
  }

  .sub-title {
    line-height: 1.2;
  }

  .sub-title.testimonials {
    font-size: 14px;
  }

  .service-heading {
    margin-top: 20px;
    font-size: 24px;
    left: -40px;
  }

  .service-heading.testimonials {
    font-size: 28px;
  }

  .service-heading.blog-title {
    font-size: 24px;
  }

  .body-button {
    text-align: center;
    white-space: normal;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: 26px;
    padding-right: 22px;
  }

  .body-button.projects-carousel {
    bottom: 20px;
  }

  .body-button.cta {
    text-align: center;
    white-space: normal;
    margin-left: 0;
    margin-right: 0;
  }

  .body-image {
    width: 100%;
    height: 160px;
  }

  .body-image.right, .body-image.left {
    height: 160px;
  }

  .body-image.testimonial {
    height: 120px;
  }

  .video-container {
    height: 150px;
    margin-left: 0;
    margin-right: 0;
  }

  .faq-holder {
    padding-left: 0;
    padding-right: 0;
  }

  .faq-tabs-content {
    padding-top: 40px;
    padding-left: 0;
    padding-right: 0;
  }

  .faq-tabs-menu {
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-columns: 1fr;
    padding: 0;
  }

  .faq-tab-link {
    min-height: auto;
    padding: 14px 10px;
  }

  .faq-answer-holder {
    padding-left: 0;
    padding-right: 0;
  }

  .answer-marker {
    left: 0;
  }

  .white-border {
    padding: 20px 10px;
  }

  .left-arrow {
    margin-left: 10px;
  }

  .right-arrow {
    margin-right: -10px;
  }

  .services-grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
  }

  .mini-service-holder {
    height: 220px;
  }

  .mini-service-background-image {
    object-fit: cover;
  }

  .mini-services-blue-overlay {
    padding-top: 30px;
  }

  .mini-service-icon-block {
    width: 40px;
    height: 40px;
    display: none;
  }

  .cta-head {
    letter-spacing: 6px;
    font-size: 21px;
  }

  .footer-brand-logo-image {
    width: 100%;
  }

  .footer-links-grid {
    text-align: center;
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .footer-link-list {
    padding-right: 0;
    font-size: 18px;
  }

  .form-field {
    border-right-width: 1px;
    width: 100%;
    min-width: 200px;
  }

  .form {
    flex-direction: column;
    align-items: stretch;
  }

  .form-block {
    width: 100%;
  }

  .full-page-menu {
    padding-top: 90px;
    padding-left: 10px;
    padding-right: 10px;
    display: none;
  }

  .menu-link {
    font-size: 16px;
  }

  .menu-link.small {
    font-size: 14px;
  }

  .menu-link.tablet {
    font-size: 12px;
  }

  .menu-link.service {
    font-size: 16px;
  }

  .menu-link.child-service {
    width: 100%;
    font-size: 14px;
  }

  .menu-grid {
    grid-row-gap: 10px;
  }

  .menu-option-holder {
    width: 100%;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-left: 10px;
  }

  .menu-option-holder.service-lead {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .dropdown-toggle {
    min-width: 100%;
  }

  .dropdown-list.w--open {
    flex-direction: column;
    align-items: flex-end;
  }

  .sub-link {
    font-size: 16px;
  }

  .menu-contact-holder {
    padding-left: 10px;
  }

  .menu-contact-holder.contacts, .menu-contact-holder.tablet {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .page-header {
    text-align: center;
    align-items: flex-start;
    height: auto;
    padding-bottom: 50px;
    padding-left: 0;
    padding-right: 0;
    display: flex;
  }

  .page-header.design-inspiration {
    padding-bottom: 30px;
  }

  .header-container {
    text-align: left;
    font-size: 21px;
  }

  .page-h1 {
    letter-spacing: 2px;
    margin-right: 0;
    font-size: 36px;
  }

  .page-h1.project-pages {
    letter-spacing: 6px;
    font-size: 38px;
  }

  .director-grid {
    text-align: left;
    justify-items: stretch;
  }

  .director-image, .director-text-holder {
    text-align: left;
  }

  .team-grid {
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .contact-links-holder {
    align-items: flex-start;
    font-size: 16px;
  }

  .contact-link {
    margin-bottom: 8px;
  }

  .contact-holder {
    font-size: 16px;
  }

  .locations-block {
    font-size: 21px;
    line-height: 2.5;
    display: block;
  }

  .location-text {
    display: block;
  }

  .location-spacer, .white-line-div {
    display: none;
  }

  .contact-form-wrapper {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .form-button {
    font-size: 16px;
    line-height: 1;
  }

  .testimonial-background-image {
    height: 120px;
  }

  ._2-col-text {
    text-align: left;
  }

  .project-thumbnails {
    grid-column-gap: 12px;
  }

  .project-image-viewer-wrapper {
    margin-left: 0;
    margin-right: 0;
    display: block;
  }

  .heading-2 {
    text-align: left;
  }

  .heading-3 {
    text-align: left;
    font-size: 26px;
  }

  .project-work-grid {
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .indv-project-wrapper {
    height: 180px;
    font-size: 16px;
  }

  .indv-project-title {
    font-size: 21px;
  }

  .project-page-video-grid {
    padding-top: 260px;
  }

  .grid-video-wrap {
    height: 240px;
    padding-left: 0;
    padding-right: 0;
  }

  .project-video {
    height: 240px;
  }

  .lightbox-image {
    width: 46%;
    height: 110px;
    margin-bottom: 10px;
    margin-right: 4%;
  }

  .project-lightbox-grid {
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .project-lightbox-grid.design-insp {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .lightbox-image-holder.design-insp {
    height: 120px;
  }

  .design-inspo-featured-image-holder {
    height: 250px;
  }

  .question-marker {
    left: 0;
  }

  .question-block, .answer-block {
    padding-left: 40px;
    padding-right: 0;
  }

  .location-page-links {
    padding-left: 0%;
    padding-right: 0%;
  }

  .project-featured-image {
    height: 240px;
  }

  .first-menu-col.right-border {
    margin-top: 20px;
  }

  .head-text-container {
    width: 100vw;
    padding-left: 30px;
    padding-right: 30px;
  }

  .header-button-holder {
    flex-direction: column;
    align-items: flex-start;
    margin-top: 16px;
  }

  .header-contact-button {
    width: 220px;
    min-width: 100%;
  }

  .header-button-spacer {
    width: 10px;
    height: 14px;
  }

  .area-title {
    font-size: 21px;
  }

  .menu-grid-holder.text {
    font-size: 14px;
  }

  .menu-grid-holder.services, .menu-grid-holder.bottom {
    padding-bottom: 0;
  }

  .contact-link-block {
    font-size: 16px;
  }

  .menu-info-grid {
    grid-row-gap: 0px;
    width: 100%;
    margin-bottom: 40px;
    margin-right: 0%;
  }

  .main-menu-grid {
    grid-template-columns: 1fr;
    margin-bottom: 20px;
  }

  .full-page-menu-inner {
    padding-top: 100px;
    padding-bottom: 40px;
  }

  .mini-menu-right, .mini-menu-option-holder.bottom {
    margin-bottom: 0;
  }

  .area-location-grid, .area-location-grid._3-cols {
    grid-template-columns: 1fr 1fr;
  }

  .whatsapp-contact {
    bottom: 40px;
    right: 10px;
  }
}

#w-node-_355a4914-9b9f-b609-7f25-e1690a2d3e45-97541198, #w-node-_5dfa7477-4bb3-0463-76ff-94648eb29c90-97541198, #w-node-ad105e1a-6bb4-a587-8abf-eb53b81c654d-97541198, #w-node-_507771f5-718e-cf78-68ce-cac8d58b8ad9-97541198, #w-node-_4352cb8b-f106-5db7-1898-c9c38e64d624-97541198 {
  place-self: stretch stretch;
}

#w-node-_2c9f0199-5a6d-4c65-30a5-3335ce9f1c26-b283409e {
  place-self: center start;
}

#w-node-ac38c29e-e643-86cf-ad54-3a2160cd9c5d-b283409e {
  align-self: center;
}

#w-node-_5dfa7477-4bb3-0463-76ff-94648eb29c90-b283409e, #w-node-ad105e1a-6bb4-a587-8abf-eb53b81c654d-b283409e, #w-node-_507771f5-718e-cf78-68ce-cac8d58b8ad9-b283409e, #w-node-_4352cb8b-f106-5db7-1898-c9c38e64d624-b283409e {
  place-self: stretch stretch;
}

#w-node-_7b4dcc59-4274-05c2-3980-3a0d8796905f-ea83de28, #w-node-_16981aca-6e3d-80eb-98fb-c43b3f8ae988-ea83de28, #w-node-fe81d8d4-7ab2-dba6-90ba-b24127345382-ea83de28, #w-node-_314e379f-50e9-ed7c-a81d-e135162af59f-ea83de28, #w-node-_56d262ba-06c5-63d6-3040-7dff38c0085b-ea83de28, #w-node-d8ef2cb5-c68a-b300-7af1-8cfed6347fa9-ea83de28, #w-node-_8f569d94-f448-57f8-aa72-6cb27cade0dd-ea83de28, #w-node-_0d607d1e-4a97-aff0-da73-f5c920fbad87-ea83de28, #w-node-_0d83f9ca-5aa3-1e87-517b-33c9956f02a6-ea83de28, #w-node-_0d83f9ca-5aa3-1e87-517b-33c9956f02a8-ea83de28, #w-node-_0d83f9ca-5aa3-1e87-517b-33c9956f02aa-ea83de28, #w-node-_0d83f9ca-5aa3-1e87-517b-33c9956f02ac-ea83de28, #w-node-_0d83f9ca-5aa3-1e87-517b-33c9956f02ae-ea83de28, #w-node-_0d83f9ca-5aa3-1e87-517b-33c9956f02b0-ea83de28, #w-node-_0d83f9ca-5aa3-1e87-517b-33c9956f02b2-ea83de28, #w-node-_0d83f9ca-5aa3-1e87-517b-33c9956f02b4-ea83de28 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_5dfa7477-4bb3-0463-76ff-94648eb29c90-ea83de28, #w-node-ad105e1a-6bb4-a587-8abf-eb53b81c654d-ea83de28, #w-node-_507771f5-718e-cf78-68ce-cac8d58b8ad9-ea83de28, #w-node-_4352cb8b-f106-5db7-1898-c9c38e64d624-ea83de28 {
  place-self: stretch stretch;
}

#w-node-dd8dd90c-c9e5-af10-5230-85d847e1bb41-b168b30c {
  place-self: start stretch;
}

#w-node-_96036693-3249-3be7-5128-8f181712ee6f-b168b30c {
  grid-area: span 1 / span 1 / span 1 / span 1;
  place-self: stretch stretch;
}

#w-node-_1e45a500-b1cb-f729-3550-788252e8af25-b168b30c {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_5dfa7477-4bb3-0463-76ff-94648eb29c90-b168b30c, #w-node-ad105e1a-6bb4-a587-8abf-eb53b81c654d-b168b30c, #w-node-_507771f5-718e-cf78-68ce-cac8d58b8ad9-b168b30c, #w-node-_4352cb8b-f106-5db7-1898-c9c38e64d624-b168b30c, #w-node-_76eb75eb-3380-1159-d330-b5ec0a7815a9-ba29f9fd, #w-node-_5dfa7477-4bb3-0463-76ff-94648eb29c90-ba29f9fd, #w-node-ad105e1a-6bb4-a587-8abf-eb53b81c654d-ba29f9fd, #w-node-_507771f5-718e-cf78-68ce-cac8d58b8ad9-ba29f9fd, #w-node-_4352cb8b-f106-5db7-1898-c9c38e64d624-ba29f9fd {
  place-self: stretch stretch;
}

#w-node-_8c1895c0-da4f-32ec-1f01-fd491c43b842-a6ad6eca, #w-node-eaacdb1c-09f7-db19-e4db-afcf4b1d1524-a6ad6eca, #w-node-d754ed1c-7a34-633a-ccfa-914418d14881-a6ad6eca, #w-node-_4798f940-c68b-666e-04a1-eb1c93aa59be-a6ad6eca, #w-node-_19147e4d-0750-d115-ab05-0ffabe31be75-a6ad6eca, #w-node-_3ceba422-4064-711b-b0eb-d7c49b79fc9e-a6ad6eca, #w-node-_8edab6a9-1481-b199-0a9e-64a73364fdef-a6ad6eca, #w-node-_8edab6a9-1481-b199-0a9e-64a73364fdf6-a6ad6eca, #w-node-_8edab6a9-1481-b199-0a9e-64a73364fdfd-a6ad6eca, #w-node-_8edab6a9-1481-b199-0a9e-64a73364fe04-a6ad6eca, #w-node-_8edab6a9-1481-b199-0a9e-64a73364fe0b-a6ad6eca, #w-node-_8edab6a9-1481-b199-0a9e-64a73364fe12-a6ad6eca {
  place-self: center;
}

#w-node-_5dfa7477-4bb3-0463-76ff-94648eb29c90-a6ad6eca, #w-node-ad105e1a-6bb4-a587-8abf-eb53b81c654d-a6ad6eca, #w-node-_507771f5-718e-cf78-68ce-cac8d58b8ad9-a6ad6eca, #w-node-_4352cb8b-f106-5db7-1898-c9c38e64d624-a6ad6eca {
  place-self: stretch stretch;
}

#w-node-_0e6143a0-391c-0674-3488-64acc2628f9d-e301d833 {
  place-self: center start;
}

#w-node-_7ce3bf35-93af-e730-e6fd-2535046f6010-e301d833, #w-node-b35597a8-ab54-2926-cd53-02ebbc576db5-e301d833, #w-node-_3e87dff0-fd85-8008-8161-80807af91b6a-e301d833, #w-node-_7800fd88-6c9b-ab47-a67c-42643b02584b-e301d833, #w-node-ebd70da9-4d20-bb61-0f24-741fd383fb37-e301d833, #w-node-ef7bb568-73ea-5995-269c-82a5a1e75525-e301d833, #w-node-_6239500e-8c18-3e25-ddab-f987403d5aa2-e301d833, #w-node-f5890eda-a33d-8b29-7322-81ef76425a81-e301d833 {
  place-self: center;
}

#w-node-_5dfa7477-4bb3-0463-76ff-94648eb29c90-e301d833, #w-node-ad105e1a-6bb4-a587-8abf-eb53b81c654d-e301d833, #w-node-_507771f5-718e-cf78-68ce-cac8d58b8ad9-e301d833, #w-node-_4352cb8b-f106-5db7-1898-c9c38e64d624-e301d833, #w-node-_5dfa7477-4bb3-0463-76ff-94648eb29c90-80f5d8f9, #w-node-ad105e1a-6bb4-a587-8abf-eb53b81c654d-80f5d8f9, #w-node-_507771f5-718e-cf78-68ce-cac8d58b8ad9-80f5d8f9, #w-node-_4352cb8b-f106-5db7-1898-c9c38e64d624-80f5d8f9 {
  place-self: stretch stretch;
}

#w-node-_0e6143a0-391c-0674-3488-64acc2628f9d-4d2abede {
  place-self: center start;
}

#w-node-_09561823-bd78-333e-c64e-67f33f827ac7-4d2abede, #w-node-_09561823-bd78-333e-c64e-67f33f827ace-4d2abede, #w-node-_09561823-bd78-333e-c64e-67f33f827ad5-4d2abede {
  place-self: center;
}

#w-node-_5dfa7477-4bb3-0463-76ff-94648eb29c90-4d2abede, #w-node-ad105e1a-6bb4-a587-8abf-eb53b81c654d-4d2abede, #w-node-_507771f5-718e-cf78-68ce-cac8d58b8ad9-4d2abede, #w-node-_4352cb8b-f106-5db7-1898-c9c38e64d624-4d2abede, #w-node-b8a07d52-4330-b77d-b15b-5eebb4d506e0-9906919a, #w-node-b8a07d52-4330-b77d-b15b-5eebb4d506e5-9906919a, #w-node-b8a07d52-4330-b77d-b15b-5eebb4d506ea-9906919a, #w-node-b8a07d52-4330-b77d-b15b-5eebb4d506f8-9906919a, #w-node-b8a07d52-4330-b77d-b15b-5eebb4d50700-9906919a, #w-node-b8a07d52-4330-b77d-b15b-5eebb4d50708-9906919a, #w-node-b8a07d52-4330-b77d-b15b-5eebb4d50710-9906919a, #w-node-b8a07d52-4330-b77d-b15b-5eebb4d50718-9906919a, #w-node-_5f5a23f0-f589-798c-7726-e4e81339c675-9906919a {
  place-self: stretch stretch;
}

#w-node-_5f5a23f0-f589-798c-7726-e4e81339c67d-9906919a {
  grid-area: span 1 / span 1 / span 1 / span 1;
  place-self: stretch stretch;
}

#w-node-_5f5a23f0-f589-798c-7726-e4e81339c67f-9906919a, #w-node-_5f5a23f0-f589-798c-7726-e4e81339c687-9906919a, #w-node-_5f5a23f0-f589-798c-7726-e4e81339c68f-9906919a, #w-node-_5f5a23f0-f589-798c-7726-e4e81339c697-9906919a {
  place-self: stretch stretch;
}

#w-node-_5f5a23f0-f589-798c-7726-e4e81339c6a3-9906919a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b8a07d52-4330-b77d-b15b-5eebb4d50720-9906919a, #w-node-_9a200bb1-5705-b8b4-5884-c0659409ed38-9906919a {
  place-self: stretch stretch;
}

#w-node-_9a200bb1-5705-b8b4-5884-c0659409ed44-9906919a {
  grid-area: span 1 / span 1 / span 1 / span 1;
  place-self: stretch stretch;
}

#w-node-edd3490d-d92d-9145-da51-c652c4cdb3d0-9906919a, #w-node-edd3490d-d92d-9145-da51-c652c4cdb3d8-9906919a, #w-node-edd3490d-d92d-9145-da51-c652c4cdb3e0-9906919a, #w-node-edd3490d-d92d-9145-da51-c652c4cdb3e8-9906919a {
  place-self: stretch stretch;
}

#w-node-_0f7f26dd-cd46-0eb4-a3ba-2a615bccb0b4-9906919a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_0da7ea2c-7289-4862-66e8-7e29414b12de-17d6ae14 {
  place-self: stretch stretch;
}

@media screen and (max-width: 991px) {
  #w-node-_2c9f0199-5a6d-4c65-30a5-3335ce9f1c26-b283409e, #w-node-ac38c29e-e643-86cf-ad54-3a2160cd9c5d-b283409e {
    justify-self: center;
  }
}

@media screen and (max-width: 479px) {
  #w-node-_2c9f0199-5a6d-4c65-30a5-3335ce9f1c26-b283409e {
    justify-self: start;
  }
}

