:root {
  --font--headings: "Open Sans", sans-serif;
  --font--body: "Open Sans", sans-serif;
  --text-dark: #0b1215;
  --font--link: "Open Sans", sans-serif;
  --text-link: #ed1c24;
  --text-light: white;
  --button--colour: #ed1c24;
  --button--dark: #0b1215;
  --button--light: white;
  --size--l: 6rem;
  --size--m: 4rem;
  --size--s: 2rem;
  --button--neutral: #eeebe7;
  --size--xl: 8rem;
  --size--xxl: 10rem;
  --black: #0b1215;
  --size--xs: 1rem;
  --white: white;
  --size--xxs: .5rem;
  --font--quote: "Open Sans", sans-serif;
  --font--display: "Open Sans", sans-serif;
}

.w-embed-youtubevideo {
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/youtube-placeholder.2b05e7d68d.svg');
  background-position: 50%;
  background-size: cover;
  width: 100%;
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  position: relative;
}

.w-embed-youtubevideo:empty {
  min-height: 75px;
  padding-bottom: 56.25%;
}

.w-form-formradioinput--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 50%;
  width: 12px;
  height: 12px;
}

.w-form-formradioinput--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.w-form-formradioinput--inputType-custom.w--redirected-checked {
  border-width: 4px;
  border-color: #3898ec;
}

.w-checkbox {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: 4px 0 0 -20px;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

.w-checkbox-input--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

body {
  color: #333;
  font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

h1 {
  font-family: var(--font--headings);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.2;
}

h2 {
  font-family: var(--font--headings);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.2;
}

h3 {
  font-family: var(--font--headings);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2.3rem;
  font-weight: 700;
  line-height: 1.2;
}

h4 {
  font-family: var(--font--headings);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.3;
}

h5 {
  font-family: var(--font--headings);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4;
}

h6 {
  font-family: var(--font--headings);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.4;
}

p {
  font-family: var(--font--body);
  color: var(--text-dark);
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
}

a {
  font-family: var(--font--link);
  color: var(--text-link);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  text-decoration: none;
}

.button {
  font-family: var(--font--body);
  color: var(--text-light);
  text-align: center;
  background-color: #3898ec;
  border-radius: .2rem;
  flex-direction: row;
  place-content: center;
  align-items: center;
  min-width: 260px;
  padding: .6rem 1.6rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
  transition: all .2s;
  display: inline-block;
}

.button.colour {
  background-color: var(--button--colour);
  box-shadow: inset 0 0 0 2px var(--button--colour);
  color: var(--text-light);
}

.button.colour:hover {
  color: var(--button--colour);
  background-color: #fff0;
}

.button.colour.reverse {
  color: var(--text-dark);
  background-color: #3898ec00;
}

.button.colour.reverse:hover {
  background-color: var(--button--colour);
  color: var(--text-light);
}

.button.colour.mobile {
  display: none;
}

.button.dark {
  background-color: var(--button--dark);
  box-shadow: inset 0 0 0 2px var(--button--dark);
  color: var(--text-light);
}

.button.dark:hover {
  color: var(--text-dark);
  background-color: #8453ff00;
}

.button.dark.reverse {
  color: var(--text-dark);
  background-color: #3898ec00;
}

.button.dark.reverse:hover {
  background-color: var(--button--dark);
  color: var(--button--light);
}

.button.light {
  background-color: var(--button--light);
  box-shadow: inset 0 0 0 2px var(--button--light);
  color: var(--text-dark);
}

.button.light:hover {
  color: var(--text-light);
  background-color: #30303000;
}

.button.light.reverse {
  color: var(--text-light);
  background-color: #3898ec00;
  box-shadow: inset 0 0 0 2px #fff;
}

.button.light.reverse:hover {
  background-color: var(--button--light);
  color: var(--text-dark);
}

.container-small {
  width: 100%;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.section {
  padding-top: var(--size--l);
  padding-bottom: var(--size--l);
}

.section.padding-h-medium {
  padding-top: var(--size--s);
  padding-bottom: var(--size--s);
}

.section.relative {
  position: relative;
}

.section.paralax {
  background-image: url('../images/KPPS-KPSecurity-37-1920w.jpg_1.webp');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

.section.neutral {
  background-color: var(--button--neutral);
}

.flex-h {
  display: flex;
}

.h1.dark {
  color: var(--text-dark);
}

.h1.light {
  color: var(--text-light);
}

.h5 {
  font-weight: 700;
}

.h5.hero-tagline {
  text-align: center;
}

.h5.team {
  color: var(--text-link);
  font-weight: 400;
}

.padding-h-medium {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.text-large {
  font-size: 1.25rem;
}

.text-large.dark {
  color: var(--text-dark);
}

.text-large.light {
  color: var(--text-light);
}

.text-medium {
  font-size: 1.125rem;
}

.text-medium.dark {
  color: var(--text-dark);
}

.text-medium.light {
  color: var(--text-light);
}

.text-regular {
  color: var(--text-dark);
  font-size: 1rem;
  font-weight: 400;
}

.text-regular.dark {
  color: var(--text-dark);
}

.text-regular.light {
  color: var(--text-light);
}

.text-regular.underline {
  text-decoration: underline;
}

.text-small {
  font-size: .875rem;
}

.text-small.dark {
  color: var(--text-dark);
}

.text-small.light {
  color: var(--text-light);
}

.text-align-centre {
  text-align: center;
}

.text-align-right {
  text-align: right;
}

.container-medium {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  width: 100%;
  max-width: 64rem;
  margin-left: auto;
  margin-right: auto;
}

.grid-2 {
  grid-column-gap: 5rem;
  grid-row-gap: 5rem;
  grid-template-rows: auto;
  grid-template-columns: .5fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.grid-3 {
  grid-column-gap: 5.8rem;
  grid-row-gap: 5.8rem;
  grid-template-rows: auto;
  grid-template-columns: .75fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.grid-4 {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.grid-6 {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.grid-12 {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.grid-1 {
  grid-column-gap: var(--size--s);
  grid-row-gap: var(--size--s);
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.container-large {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
}

.container-large.grid {
  grid-column-gap: 8rem;
  grid-row-gap: 8rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 2px 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.style-guide-body {
  background-color: #e4e4e4;
}

.section-full-screen {
  width: 100%;
  height: 1000px;
}

.section-footer {
  padding: var(--size--xl) 5% var(--size--xxl);
  background-color: var(--black);
  color: var(--text-light);
}

.nav-padding {
  width: 100svw;
  height: 4rem;
}

.navbar {
  background-color: #ddd0;
  flex-direction: row;
  width: 100%;
  display: block;
  position: fixed;
}

.brand {
  height: 100%;
  padding-bottom: 0;
}

.image {
  object-fit: contain;
  height: 3rem;
  margin: 1rem;
}

.nav-link {
  color: var(--button--light);
  margin-top: 40px;
  margin-bottom: 40px;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 2rem;
  line-height: 2.3rem;
  transition: all .2s;
}

.nav-link:hover {
  color: var(--text-link);
}

.nav-menu {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background-color: #09000080;
  flex-direction: column;
  place-content: center space-around;
  align-items: stretch;
  width: 50%;
  height: 100vh;
  padding-top: 49px;
  padding-left: 0;
  padding-right: 0;
  display: flex;
  position: fixed;
  top: 0;
}

.menu-button {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 1rem;
  display: flex;
}

.menu-button.w--open {
  background-color: #c8c8c800;
}

.icon {
  color: var(--button--colour);
  width: 2rem;
  height: 2rem;
  font-size: 2rem;
  line-height: 2rem;
  display: block;
}

.footer-logo {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.margin-top-xs {
  margin-top: var(--size--xs);
}

.margin-top-s {
  margin-top: var(--size--s);
}

.margin-top-m {
  margin-top: var(--size--m);
}

.margin-top-l {
  margin-top: var(--size--l);
}

.margin-top-xl {
  margin-top: var(--size--xl);
}

.margin-top-xxl {
  margin-top: var(--size--xxl);
}

.margin-bottom-xs {
  margin-bottom: var(--size--xs);
}

.margin-bottom-s {
  margin-bottom: var(--size--s);
}

.margin-bottom-m {
  margin-bottom: var(--size--m);
}

.margin-bottom-l {
  margin-bottom: var(--size--l);
}

.margin-bottom-xl {
  margin-bottom: var(--size--xl);
}

.margin-bottom-xxl {
  margin-bottom: var(--size--xxl);
}

.margin-xs {
  margin: var(--size--xs);
}

.margin-s {
  margin: var(--size--s);
}

.margin-m {
  margin: var(--size--m);
}

.margin-l {
  margin: var(--size--l);
}

.margin-xl {
  margin: var(--size--xl);
}

.margin-xxl {
  margin: var(--size--xxl);
}

.margin-left-xs {
  margin-left: var(--size--xs);
}

.margin-left-s {
  margin-left: var(--size--s);
}

.margin-left-m {
  margin-left: var(--size--m);
}

.margin-left-l {
  margin-left: var(--size--l);
}

.margin-left-xl {
  margin-left: var(--size--xl);
}

.margin-left-xxl {
  margin-left: var(--size--xxl);
}

.margin-right-xs {
  margin-right: var(--size--xs);
}

.margin-right-s {
  margin-right: var(--size--s);
}

.margin-right-m {
  margin-right: var(--size--m);
}

.margin-right-l {
  margin-right: var(--size--l);
}

.margin-right-xl {
  margin-right: var(--size--xl);
}

.margin-right-xxl {
  margin-right: var(--size--xxl);
}

.margin-vertical-xs {
  margin-top: var(--size--xs);
  margin-bottom: var(--size--xs);
}

.margin-vertical-s {
  margin-top: var(--size--s);
  margin-bottom: var(--size--s);
}

.margin-vertical-m {
  margin-top: var(--size--m);
  margin-bottom: var(--size--m);
}

.margin-vertical-l {
  margin-top: var(--size--l);
  margin-bottom: var(--size--l);
}

.margin-vertical-xl {
  margin-top: var(--size--xl);
  margin-bottom: var(--size--xl);
}

.margin-vertical-xxl {
  margin-top: var(--size--xxl);
  margin-bottom: var(--size--xxl);
}

.margin-horizontal-xs {
  margin-right: var(--size--xs);
  margin-left: var(--size--xs);
}

.margin-horizontal-s {
  margin-right: var(--size--s);
  margin-left: var(--size--s);
}

.margin-horizontal-m {
  margin-right: var(--size--m);
  margin-left: var(--size--m);
}

.margin-horizontal-l {
  margin-right: var(--size--l);
  margin-left: var(--size--l);
}

.margin-horizontal-xl {
  margin-right: var(--size--xl);
  margin-left: var(--size--xl);
}

.margin-horizontal-xxl {
  margin-right: var(--size--xxl);
  margin-left: var(--size--xxl);
}

.style-guide-hero {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.style-guide-hero.colour-dark {
  background-image: url('../images/placeholder.webp');
  background-position: 0 0;
  background-size: auto;
}

.image-placeholder {
  object-fit: cover;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/img/background-image.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 1rem;
  width: 100%;
  height: 100%;
}

.container-full {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.page-wrapper {
  overflow: hidden;
}

.padding-global {
  padding-left: 5%;
  padding-right: 5%;
}

.flex-v {
  display: flex;
}

.flex-h-top-left {
  align-items: flex-start;
  display: flex;
}

.flex-h-top-right {
  justify-content: flex-end;
  align-items: flex-start;
  display: flex;
}

.flex-h-bottom-right {
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.flex-h-bottom-left {
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.flex-h-center-left {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.flex-h-center-right {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

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

.flex-h-top-center {
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.flex-h-bottom-center {
  justify-content: center;
  align-items: flex-end;
  display: flex;
}

.flex-v-top-right {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.flex-v-top-center {
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.flex-v-top-left {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.flex-v-bottom-right {
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.flex-v-bottom-center {
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.flex-v-bottom-left {
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  display: flex;
}

.flex-v-center {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.flex-v-center-left {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.flex-v-center-right {
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  display: flex;
}

.colour-dark {
  background-color: var(--button--dark);
}

.colour-light {
  background-color: var(--button--light);
}

.colour-brand {
  background-color: var(--button--colour);
}

.navbar-wrap {
  width: 100%;
}

.card {
  padding: var(--size--s);
  background-color: var(--button--light);
  border-radius: 1rem;
  box-shadow: 0 0 19px #0003;
}

.carousel-container {
  border-radius: 0;
  display: flex;
  overflow: hidden;
}

.carousel-container.margin-bottom-l {
  border-radius: 1rem;
  box-shadow: 0 0 20px #0003;
}

.logo-container {
  padding-top: var(--size--s);
  padding-bottom: var(--size--s);
  background-color: var(--button--dark);
  justify-content: space-around;
  min-width: 100.1%;
  display: flex;
}

.logo-container._2 {
  margin-left: -.1%;
}

.logo-image {
  height: 40px;
}

.social-icon {
  color: var(--button--colour);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 2rem;
  transition: all .3s cubic-bezier(.165, .84, .44, 1);
  display: flex;
}

.social-icon:hover {
  color: var(--button--dark);
  transform: scale(1.2);
}

.social-icon.footer {
  color: var(--white);
  height: 1.5rem;
}

.social-icon.footer:hover {
  color: var(--text-link);
}

.social-icon.nav {
  color: var(--white);
}

.social-icon.nav:hover {
  color: var(--text-link);
}

.icon-embed-xxsmall {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  display: flex;
}

.card-flex-h-distribute {
  padding: var(--size--s);
  background-color: var(--button--light);
  border-radius: 1rem;
  justify-content: space-between;
  display: flex;
  box-shadow: 0 0 19px #0003;
}

.colour-text-brand {
  color: var(--button--colour);
}

.colour-text-light {
  color: var(--button--light);
}

.colour-text-dark {
  color: var(--button--dark);
}

.card-link {
  padding: var(--size--s);
  background-color: var(--button--light);
  color: var(--text-dark);
  border-radius: 1rem;
  text-decoration: none;
  transition: all .2s cubic-bezier(.215, .61, .355, 1);
  box-shadow: 0 0 19px #0003;
}

.card-link:hover {
  transform: scale(1.05);
}

.section-2-col {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

._2-col-container {
  padding: var(--size--l) 10%;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.image-2-col {
  object-fit: cover;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.div-block {
  background-color: var(--button--light);
  border-radius: 10px;
  padding: 6px;
  box-shadow: 0 0 20px #0003;
}

.div-block-2 {
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.button-icon {
  width: .7rem;
  height: .9rem;
  font-size: 1rem;
  line-height: 1rem;
}

.div-block-3 {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  justify-content: center;
  align-items: center;
  display: flex;
}

.cursor-wrapper {
  z-index: 100;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0%;
  overflow: hidden;
}

.cursor-dot {
  -webkit-backdrop-filter: invert();
  backdrop-filter: invert();
  background-color: #f070;
  border-radius: 50%;
  width: 0;
  height: 0;
  inset: 0%;
}

.cursor-circle {
  border: 2px solid #ff00773b;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  position: absolute;
}

.hero-heading {
  font-family: var(--font--headings);
  color: var(--text-light);
  font-size: 10rem;
  font-weight: 400;
  line-height: 11rem;
}

.nav-menu-wrapper {
  grid-row-gap: 3rem;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.div-block-4 {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 90vh;
  display: flex;
}

.accordian-wrapper {
  border-radius: 1rem;
  box-shadow: 0 0 19px #0003;
}

.accordian {
  cursor: pointer;
}

.accordian-header {
  padding: var(--size--s);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.accordian-panel {
  padding-right: var(--size--s);
  padding-left: var(--size--s);
  display: block;
  overflow: hidden;
}

.accordian-icon {
  width: .7rem;
  height: .9rem;
  font-size: 1rem;
  line-height: 1rem;
  transform: rotate(90deg);
}

.accordian-icon-wrapper {
  margin-left: 2rem;
}

.card-image {
  background-color: var(--button--light);
  border-radius: 1rem;
  overflow: hidden;
  box-shadow: 0 0 19px #0003;
}

.card-image.left {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  box-shadow: none;
  border-radius: 0;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.card-content-padding {
  padding: var(--size--s);
}

.card-image-wrapper {
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  display: flex;
  overflow: clip;
}

.card-image-content {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 510px;
  display: inline-flex;
  overflow: clip;
}

.quote {
  color: var(--text-light);
  text-align: center;
  font-style: italic;
  font-weight: 700;
}

.quote.red-glow {
  text-shadow: 0 0 5px var(--text-link);
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.quote-mark {
  opacity: .2;
}

.quote-mark.left {
  margin-right: 1rem;
}

.quote-mark.right {
  margin-left: 1rem;
}

.div-block-5 {
  width: 100%;
  height: 100%;
  position: relative;
}

.section-image {
  z-index: -1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.overflow-hidden {
  overflow: hidden;
}

.section-image-static {
  z-index: -1;
  object-fit: cover;
  width: 100svw;
  height: 100svh;
  position: fixed;
  inset: 0;
}

.content-divider {
  background-color: var(--white);
  width: 100%;
  height: 2px;
}

.content-divider.small {
  width: 40px;
}

.content-divider.small.margin-bottom-s.black {
  background-color: var(--black);
}

.content-divider.small.margin-bottom-s.red {
  background-color: var(--button--colour);
}

.content-divider.small.red {
  color: var(--button--colour);
}

.content-divider.small.red.margin-bottom-s {
  background-color: var(--button--colour);
}

.content-divider.medium {
  width: 200px;
}

.content-divider.medium.margin-bottom-s.black {
  background-color: var(--black);
}

.content-divider.medium.margin-bottom-s.red {
  background-color: var(--button--colour);
}

.content-divider.medium.red {
  background-color: var(--button--colour);
  color: var(--button--colour);
}

.content-divider.medium.red.margin-bottom-s {
  background-color: var(--button--colour);
}

.custom-heading-1 {
  color: #3330;
  -webkit-text-stroke-width: 1.5px;
  -webkit-text-stroke-color: var(--button--colour);
  word-break: normal;
  font-size: 13rem;
  font-weight: 400;
  line-height: .8;
}

.process-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: .5fr 1.25fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

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

.slider-her-fullscreen {
  background-color: var(--black);
  width: 100%;
  height: 100%;
}

.slide-link {
  background-image: url('../images/placeholder.webp');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 5rem 11.9rem;
  display: flex;
}

.slide-image {
  transition: all .6s;
}

.slide-image:hover {
  transform: scale(.95);
}

.left-arrow, .right-arrow {
  opacity: 0;
}

.menu-wrap {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: row;
  justify-content: space-between;
  display: flex;
}

.menu-name {
  margin-bottom: 20px;
  font-size: 30px;
  font-weight: 700;
  line-height: 30px;
}

.menu-price {
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.div-block-6 {
  color: #000;
  background-color: #000;
}

.grid-menu-1 {
  grid-column-gap: 5.8rem;
  grid-row-gap: 5.8rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.div-block-7 {
  background-color: #000;
  width: 2px;
  height: 100%;
}

.slide-1 {
  background-image: linear-gradient(#0003, #0003), url('../images/KPPS-KPSecurity-37-1920w.jpg_1.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  width: 100%;
  height: 100%;
}

.slide-wrap {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.hero-header {
  color: var(--button--light);
  text-align: center;
  font-weight: 700;
}

.footer-text-link {
  color: var(--white);
  text-decoration: none;
}

.footer-text {
  font-family: Open Sans, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

.footer-text.logo {
  margin-top: var(--size--xxs);
  background-image: none;
  height: auto;
  font-size: .9rem;
  font-weight: 400;
}

.footer-socials {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.icon-embed-custom {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1.375rem;
  height: 1.125rem;
  display: flex;
}

.margin-top-xxs {
  margin-top: var(--size--xxs);
}

.margin-bottom-xxs {
  margin-bottom: var(--size--xxs);
}

.margin-right-xxs {
  margin-right: var(--size--xxs);
}

.margin-left-xxs {
  margin-left: var(--size--xxs);
}

.margin-xxs {
  margin: var(--size--xxs);
}

.margin-vertical-xxs {
  margin-top: var(--size--xxs);
  margin-bottom: var(--size--xxs);
}

.margin-horizontal-xxs {
  margin-right: var(--size--xxs);
  margin-left: var(--size--xxs);
}

.margin-zero {
  margin: 0;
}

.max-width-xxs {
  max-width: 16rem;
}

.max-width-xs {
  max-width: 32rem;
}

.max-width-s {
  max-width: 48rem;
}

.max-width-m {
  max-width: 64rem;
}

.max-width-l {
  max-width: 80rem;
}

.section-full-width {
  width: 100%;
}

.full-3-grid-wrap {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: var(--black);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.div-block-8 {
  justify-content: center;
  align-items: center;
  display: flex;
}

.service-card {
  aspect-ratio: 1;
  background-image: url('../images/placeholder.webp');
  background-position: 50%;
  background-size: cover;
  justify-content: center;
  align-items: center;
  display: flex;
}

.service-card.licence {
  background-image: url('../images/licensed-venue-security.webp');
}

.service-card.private {
  background-image: url('../images/private-parties.webp');
}

.service-card.events {
  background-image: url('../images/events-crowd-control.webp');
}

.service-card.events.about {
  background-image: url('../images/services-events-card.webp');
}

.service-card-hover {
  padding-right: var(--size--s);
  padding-left: var(--size--s);
  background-color: #0000;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  transition: all .2s;
  display: flex;
}

.service-card-hover:hover {
  -webkit-backdrop-filter: grayscale();
  backdrop-filter: grayscale();
  background-color: #00000078;
}

.service-card-text {
  text-align: center;
  text-decoration: none;
}

.slide-nav {
  opacity: 0;
}

.footer-logo-wrap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.navbar-2 {
  padding: var(--size--xs) var(--size--s);
  background-color: var(--black);
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-width: 100%;
  display: flex;
  position: fixed;
}

.navbar-link {
  color: var(--white);
  text-transform: uppercase;
  padding: 0;
  font-family: Open Sans, sans-serif;
  font-size: .9rem;
  font-weight: 400;
  line-height: 1.5;
}

.navbar-link.w--current {
  box-shadow: inset 0 0 0 2px var(--button--colour);
  color: var(--white);
  padding: .6rem .8rem;
}

.navbar-link.standalone {
  height: 3rem;
  padding: .8rem;
  transition: all .2s;
}

.navbar-link.standalone:hover {
  box-shadow: inset 0 0 0 2px var(--button--colour);
}

.navbar-dropdown {
  color: var(--white);
  text-transform: uppercase;
  padding: 0;
}

.navbar-dropdown.w--open {
  transition: all .2s;
}

.dropdown-link-internal {
  color: var(--white);
  text-transform: uppercase;
  font-size: .9rem;
  font-weight: 400;
  transition: all .2s;
}

.dropdown-link-internal:hover {
  background-color: var(--button--colour);
  font-weight: 600;
}

.dropdown-link-internal.w--current {
  color: var(--text-link);
}

.dropdown-link-internal.w--current:hover {
  color: var(--text-light);
}

.dropdown-list {
  color: var(--text-light);
  transition: all .2s;
}

.dropdown-list.w--open {
  background-color: var(--black);
  color: var(--white);
}

.text-block {
  font-family: Open Sans, sans-serif;
}

.logo {
  aspect-ratio: 2;
  background-image: url('../images/KP-Logo-340w.webp');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  height: 7rem;
  padding-bottom: 0;
}

.nav-menu-desktop {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  background-color: #c8c8c800;
  flex-flow: row;
  flex: 0 auto;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.div-block-9 {
  width: 100%;
}

.header-text {
  color: var(--white);
  white-space: nowrap;
  margin-top: -9px;
  padding-left: 87px;
  font-family: Open Sans, sans-serif;
  font-size: .6rem;
  font-weight: 300;
  line-height: 1.5;
}

.header-text.logo {
  margin-top: var(--size--xxs);
  font-size: .9rem;
  font-weight: 400;
}

.footer-fineprint {
  font-family: "Source Sans 3", sans-serif;
  font-size: .8rem;
  font-weight: 400;
  line-height: 1.5;
}

.footer-fineprint.link {
  text-decoration: underline;
}

.text-span {
  color: var(--text-link);
}

.text-span.white {
  color: var(--text-light);
}

.text-span-2 {
  color: var(--text-link);
}

.sub-page-hero-section {
  width: 100%;
  height: 27rem;
}

.sub-page-hero-wrap {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-top: 7rem;
  display: flex;
}

.sub-page-hero-wrap.about {
  background-image: linear-gradient(#0003, #0003), url('../images/KPPS-KPSecurity-37-1920w.jpg_1.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap.team {
  background-image: linear-gradient(#0003, #0003), url('../images/Team-Hero.webp');
  background-position: 0 0, 50% 35%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap.testimonials {
  background-image: linear-gradient(#0003, #0003), url('../images/KPPS-KPSecurity-37-1920w.jpg_1.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap.security-services {
  background-image: linear-gradient(#0003, #0003), url('../images/Team-Hero.webp');
  background-position: 0 0, 50% 40%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap.licensed-venue {
  background-image: url('../images/Licensed-Hero.webp');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.sub-page-hero-wrap.contact {
  background-image: linear-gradient(#0003, #0003), url('../images/Contact-hero-image.webp');
  background-position: 0 0, 50% 100%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap.events-crowd-control {
  background-image: url('../images/Crowd-Control-Hero.jpg.webp');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.sub-page-hero-wrap.party {
  background-image: url('../images/Party-Hero.webp');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.sub-page-hero-wrap.employment {
  background-image: linear-gradient(#0003, #0003), url('../images/Employment-Hero.webp');
  background-position: 0 0, 50% 42%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap.event-quote {
  background-image: linear-gradient(#0003, #0003), url('../images/Event-Hero.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap.venue-quote {
  background-image: linear-gradient(#0003, #0003), url('../images/Venue-Quote-Hero.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap.party-quote {
  background-image: linear-gradient(#0003, #0003), url('../images/Party-Quote-Hero.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap.about-copy {
  background-image: linear-gradient(#00000080, #00000080), url('../images/KPPS-KPSecurity-37-1920w.jpg_1.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.sub-page-hero-wrap._404page {
  background-image: linear-gradient(#000000b0, #000000b0), url('../images/KPPS-KPSecurity-37-1920w.jpg_1.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.testimonial-slider {
  background-color: #ddd0;
  width: 100%;
}

.slide-nav-2, .left-arrow-2, .right-arrow-2 {
  display: none;
}

.testimonial-wrap {
  width: 100%;
  height: 100%;
}

._3-grid-services {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.youtube-embed-1.max-width-m {
  aspect-ratio: 16 / 9;
}

.team-image {
  border-radius: 100%;
  width: 350px;
  overflow: hidden;
}

._4-grid-services {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.lightbox-thumb {
  aspect-ratio: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: all .2s;
}

.lightbox-thumb:hover {
  filter: grayscale();
  object-fit: cover;
}

.lightbox-link {
  flex-flow: row;
  height: auto;
  display: flex;
}

.form {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.form.quote {
  grid-template-columns: 1fr 1fr;
}

.form-wrap {
  width: 100%;
}

.radio-wrap {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  display: flex;
}

.google-maps-embed {
  width: 100%;
  height: 500px;
}

.form-contact {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

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

.card-image-contact {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: inline-flex;
  overflow: clip;
}

.content-divider-2 {
  background-color: #fff;
  width: 100%;
  height: 2px;
}

.content-divider-2.small {
  width: 40px;
}

.content-divider-2.small.margin-bottom-s.black {
  background-color: #212226;
}

.slide-2 {
  background-image: linear-gradient(#0003, #0003), url('../images/Home-Hero2.webp');
  background-position: 0 0, 50% 0;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  width: 100%;
  height: 100%;
}

.slide-3 {
  background-image: linear-gradient(#0003, #0003), url('../images/Home-Hero1.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  width: 100%;
  height: 100%;
}

.nav-dropdown {
  height: 3rem;
}

.dropdown-link {
  width: 100%;
  height: 100%;
  padding: .8rem;
  transition: all .2s;
  display: flex;
  overflow: visible;
}

.dropdown-link:hover {
  box-shadow: inset 0 0 0 2px var(--button--colour);
}

.dropdown-link.w--current {
  box-shadow: inset 0 0 0 2px var(--button--colour);
  padding-top: .8rem;
  padding-bottom: .8rem;
  padding-right: .8rem;
}

.menu-arrow {
  color: var(--button--light);
  margin-left: .5rem;
  margin-right: 0;
  position: static;
}

.menu-logo-wrap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.form-text-field {
  resize: vertical;
  border: 1px solid #000;
  margin-bottom: 0;
  padding: 8px 12px;
}

.form-label {
  font-family: var(--font--body);
  font-weight: 400;
}

.form-quote {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.form-quote.quote {
  grid-template-columns: 1fr 1fr;
}

.nav-menu-mobile {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: row;
  flex: none;
  justify-content: flex-end;
  align-items: center;
  display: flex;
  position: relative;
}

.navbar-mobile {
  padding: var(--size--xs) var(--size--s);
  background-color: var(--black);
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-width: 100%;
  display: none;
  position: fixed;
}

.nav-socials {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.mobile-nav-text {
  color: var(--text-dark);
  font-size: 1rem;
  font-weight: 400;
}

.mobile-nav-text.dark {
  color: var(--text-dark);
}

.mobile-nav-text.light {
  color: var(--text-light);
}

.mobile-nav-text.underline {
  text-decoration: underline;
}

.div-block-10 {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  display: flex;
}

._404 {
  width: 100%;
  height: 100svh;
}

.text-span-3, .text-span-4, .text-span-5 {
  text-decoration: underline;
}

.date-picker {
  color: #0e0000;
  padding-right: 0;
}

.time-picker {
  font-family: var(--font--body);
  color: var(--text-dark);
  width: 100%;
  font-weight: 400;
}

.div-block-11 {
  width: 100%;
  height: auto;
}

.service-card-text-mobile {
  padding-right: var(--size--s);
  padding-left: var(--size--s);
  background-color: #0000;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  transition: all .2s;
  display: none;
}

.service-card-text-mobile:hover {
  -webkit-backdrop-filter: grayscale();
  backdrop-filter: grayscale();
  background-color: #00000078;
}

.service-card-text-mob {
  text-align: center;
  text-decoration: none;
}

.success-message {
  margin-top: 30px;
}

@media screen and (max-width: 991px) {
  h1 {
    font-size: 2.9rem;
  }

  h2 {
    font-size: 2.3rem;
  }

  h3 {
    font-size: 1.9rem;
  }

  h4 {
    font-size: 1.6rem;
  }

  h5 {
    font-size: 1.2rem;
  }

  h6 {
    font-size: 1rem;
  }

  .button.colour.mobile {
    display: block;
  }

  .section {
    padding-top: var(--size--m);
    padding-bottom: var(--size--m);
  }

  .grid-2 {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }

  .grid-3 {
    grid-template-columns: 1fr 1fr;
  }

  .grid-1 {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }

  .grid-1.menu {
    grid-column-gap: 0rem;
    grid-row-gap: 0rem;
    place-items: center;
  }

  .section-full-screen {
    height: 900px;
  }

  .footer-logo {
    object-fit: contain;
    object-position: 0% 50%;
    height: 200px;
  }

  .logo-image {
    height: 30px;
  }

  .social-icon.nav {
    color: var(--text-link);
    height: 1.5rem;
  }

  .cursor-wrapper {
    display: none;
  }

  .hero-heading {
    font-size: 7rem;
    line-height: 8rem;
  }

  .accordian-wrapper.menu {
    box-shadow: none;
  }

  .accordian-header.menu {
    justify-content: center;
    padding-top: .5rem;
    padding-bottom: .5rem;
  }

  .accordian-panel.mobile {
    flex-flow: column;
    display: flex;
  }

  .accordian-icon.white {
    color: var(--white);
  }

  .accordian-icon-wrapper.menu {
    margin-left: 1rem;
  }

  .card-image-content {
    max-height: none;
  }

  .slide-link {
    padding-left: 5rem;
    padding-right: 5rem;
  }

  .left-arrow, .right-arrow {
    display: none;
  }

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

  .service-card-hover {
    padding: var(--size--xxs);
  }

  .service-card-text {
    text-align: center;
  }

  .footer-logo-wrap {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .navbar-2 {
    justify-content: space-between;
    min-width: 100%;
    display: none;
  }

  .navbar-link.standalone.mobile {
    height: auto;
    padding-top: .5rem;
    padding-bottom: .5rem;
    font-size: 1rem;
  }

  .navbar-link.standalone.mobile:hover {
    box-shadow: none;
  }

  .logo {
    object-fit: contain;
    object-position: 0% 50%;
    height: 5rem;
  }

  .nav-menu-desktop {
    background-color: var(--black);
  }

  .sub-page-hero-section {
    height: 20rem;
  }

  .sub-page-hero-wrap {
    padding-top: 7rem;
  }

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

  .lightbox-link {
    height: auto;
  }

  .card-image-contact {
    max-height: none;
  }

  .nav-dropdown {
    margin-left: 0;
    margin-right: 0;
  }

  .menu-arrow {
    font-size: 1.5rem;
    font-weight: 300;
  }

  .menu-logo-wrap {
    flex-flow: column;
    width: 100%;
    display: flex;
  }

  .menu-logo-wrap.mobile {
    width: auto;
  }

  .icon-2 {
    color: var(--white);
    font-size: 2.3rem;
  }

  .menu-button-2 {
    background-color: var(--button--dark);
    padding: 15px;
  }

  .menu-button-2.w--open {
    z-index: 100;
    background-color: var(--black);
    border-radius: .4rem;
  }

  .nav-menu-mobile {
    background-color: var(--black);
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
    width: 100svw;
    height: 100svh;
    position: fixed;
    inset: 0%;
  }

  .navbar-mobile {
    justify-content: space-between;
    min-width: 100%;
    display: flex;
  }

  .nav-socials {
    justify-content: center;
    align-items: center;
    position: static;
    inset: auto 0% 0%;
  }

  .nav-socials.margin-bottom-s {
    position: static;
    top: auto;
    left: auto;
    right: auto;
  }

  .mobile-nav-wrap {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    border: 1px solid var(--black);
    flex-flow: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    display: flex;
  }

  .mobile-nav-text {
    color: var(--text-light);
    font-family: Open Sans, sans-serif;
  }

  .service-card-text-mobile {
    padding: var(--size--xxs);
    display: none;
  }

  .service-card-text-mob {
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.3rem;
  }

  h2 {
    font-size: 2rem;
  }

  h3 {
    font-size: 1.6rem;
  }

  h4 {
    font-size: 1.4rem;
    line-height: 1.4;
  }

  h5 {
    font-size: 1.2rem;
  }

  h6 {
    font-size: 1rem;
  }

  .text-large {
    font-size: 1.125rem;
  }

  .text-medium {
    font-size: 1rem;
  }

  .grid-2, .grid-3 {
    grid-template-columns: 1fr;
  }

  .section-full-screen {
    height: 800px;
  }

  .image {
    height: 2.5rem;
  }

  .image-placeholder {
    aspect-ratio: 16 / 9;
  }

  .card {
    padding-right: var(--size--xs);
    padding-left: var(--size--xs);
  }

  .logo-container {
    min-width: 150%;
  }

  .card-flex-h-distribute, .card-link {
    padding-right: var(--size--xs);
    padding-left: var(--size--xs);
  }

  .section-2-col {
    grid-template-columns: 1fr .5fr;
  }

  .hero-heading {
    font-size: 5rem;
    line-height: 6rem;
  }

  .card-image {
    padding-right: var(--size--xs);
    padding-left: var(--size--xs);
  }

  .card-image.left {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    padding-left: 0;
    padding-right: 0;
  }

  .card-image-content {
    max-height: 250px;
  }

  .quote.red-glow {
    margin-top: 0;
    margin-bottom: 0;
  }

  .slide-link {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

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

  .full-3-grid-wrap {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
  }

  .service-card {
    aspect-ratio: 16 / 9;
  }

  .sub-page-hero-section {
    height: 10rem;
  }

  .sub-page-hero-wrap {
    padding-top: 0;
  }

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

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

  .form {
    grid-template-columns: minmax(200px, 1fr);
  }

  .field-wrap {
    width: 100%;
  }

  .card-image-contact {
    max-height: 250px;
  }

  .icon-2 {
    font-size: 2rem;
  }

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

  .form-label {
    font-weight: 600;
  }

  .form-quote {
    grid-template-columns: minmax(200px, 1fr) minmax(200px, 1fr);
  }

  .nav-menu-mobile {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    height: 100svh;
    position: fixed;
  }

  .navbar-mobile {
    position: relative;
  }

  .service-card-text-mobile {
    padding-top: var(--size--xs);
    padding-bottom: var(--size--s);
    background-color: #fff;
    display: flex;
  }

  .service-card-text-mobile:hover {
    background-color: #fff;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: 2.1rem;
  }

  h2 {
    font-size: 1.8rem;
  }

  h3 {
    font-size: 1.6rem;
  }

  h6 {
    font-size: 1rem;
  }

  .button.colour {
    min-width: 250px;
  }

  .grid-2 {
    grid-template-columns: 1fr;
  }

  .grid-3 {
    grid-column-gap: 2.5rem;
    grid-row-gap: 2.5rem;
  }

  .section-full-screen {
    height: 600px;
  }

  .image {
    height: 2rem;
  }

  .image-placeholder {
    aspect-ratio: 1;
    min-height: auto;
  }

  .carousel-container {
    border-radius: 0;
  }

  .logo-container {
    min-width: 300%;
  }

  .logo-image {
    height: 25px;
  }

  .section-2-col {
    grid-template-columns: 1fr;
  }

  .image-2-col {
    height: 100svw;
  }

  .hero-heading {
    font-size: 3rem;
    line-height: 4rem;
  }

  .accordian-wrapper.menu {
    box-shadow: none;
  }

  .accordian-header.menu {
    justify-content: center;
    align-items: center;
  }

  .accordian-icon.white {
    color: var(--button--light);
  }

  .accordian-icon-wrapper.menu {
    margin-left: 1rem;
  }

  .content-divider.medium.red.margin-vertical-xs {
    width: 150px;
  }

  .slide-link {
    padding: 5rem 1.5rem;
  }

  .hero-header.margin-top-m {
    margin-top: var(--size--xxs);
  }

  .full-3-grid-wrap {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
  }

  .service-card {
    aspect-ratio: 3 / 2;
  }

  .logo, .logo.w--current {
    width: 100%;
    height: auto;
  }

  .sub-page-hero-section, .sub-page-hero-wrap {
    height: 200px;
  }

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

  .team-image {
    width: 200px;
  }

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

  .form {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    grid-template-columns: minmax(200px, 1fr);
  }

  .menu-logo-wrap.mobile {
    width: 60%;
  }

  .icon-2 {
    font-size: 2rem;
  }

  .menu-button-2 {
    padding: 10px;
  }

  .form-quote {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    grid-template-columns: minmax(200px, 1fr);
  }

  .nav-menu-mobile {
    width: 100%;
  }

  .navbar-mobile {
    padding: var(--size--xxs) var(--size--xxs) var(--size--xxs) var(--size--xs);
  }

  .mobile-nav-wrap {
    height: 100svh;
    overflow: visible;
  }

  ._404 {
    height: 200px;
  }
}

#w-node-_109aea49-809e-d390-4658-fc4248ee45b4-48ee45b1, #w-node-_109aea49-809e-d390-4658-fc4248ee45b6-48ee45b1, #w-node-_109aea49-809e-d390-4658-fc4248ee45b7-48ee45b1, #w-node-_109aea49-809e-d390-4658-fc4248ee45b9-48ee45b1, #w-node-_109aea49-809e-d390-4658-fc4248ee45c1-48ee45b1, #w-node-_109aea49-809e-d390-4658-fc4248ee45c2-48ee45b1, #w-node-_109aea49-809e-d390-4658-fc4248ee45c4-48ee45b1 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_0600fe38-5e04-0f39-7848-a9d107b683d0-b864cdd6 {
  place-self: auto start;
}

#w-node-_724fa3c2-87d1-b14e-ac5b-21b4e2834527-b864cdd7, #w-node-_724fa3c2-87d1-b14e-ac5b-21b4e283452f-b864cdd7 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_8a61b47c-b90b-a1e6-63e2-2bc8266e32e5-b864cdd7 {
  order: -9999;
}

#w-node-_61b1f222-6e55-69f1-d261-05aaa77a8110-b864cdd7 {
  order: 9999;
  grid-area: 1 / 1 / 2 / 2;
}

#w-node-_61b1f222-6e55-69f1-d261-05aaa77a8111-b864cdd7, #w-node-_07e0b9df-17e4-efae-8a61-5183602de66c-b864cdd7, #w-node-_07e0b9df-17e4-efae-8a61-5183602de673-b864cdd7, #w-node-_07e0b9df-17e4-efae-8a61-5183602de67a-b864cdd7, #w-node-_07e0b9df-17e4-efae-8a61-5183602de682-b864cdd7, #w-node-_07e0b9df-17e4-efae-8a61-5183602de68c-b864cdd7, #w-node-_07e0b9df-17e4-efae-8a61-5183602de696-b864cdd7, #w-node-_2f577732-2760-fff3-dad9-be308eab4bff-b864cdd7 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_59bdab0d-3d33-61df-5b1e-b0df6ede834e-a78db4e9, #w-node-_9758b4d0-ae59-f278-da5a-e5599debb6b2-a78db4e9, #w-node-_105c99db-ffab-feab-e72e-47b230878ab7-a78db4e9, #w-node-c04b19b6-672e-6510-3a93-2e2ec6d135a0-a78db4e9 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_728264ad-7616-1fc9-b626-37d397750e06-a78db4e9 {
  grid-area: span 1 / span 4 / span 1 / span 4;
}

#w-node-_20c7a08c-b84f-0eb8-a74f-43accd8428b0-a78db4e9, #w-node-b95edd56-ee47-6eb7-5525-48af0acc002a-a78db4e9, #w-node-a05185a1-fa1c-eafa-0f5c-d3c56e26369c-a78db4e9, #w-node-_373a6d76-f53b-dd10-86f7-bc55dca9ab04-a78db4e9, #w-node-_280a9ac3-fded-de75-2234-8a82baa947d7-a78db4e9, #w-node-bda96cfc-c2f7-ed80-3146-883ca069dbde-a78db4e9, #w-node-a8fdfec1-ff7a-76bf-9b13-faad7f4d5b9e-a78db4e9, #w-node-_9e64cfc7-34a8-ab93-e6ad-0e163d598517-a78db4e9, #w-node-ff0cc040-5a40-1936-6872-26cf1fd30d29-a78db4e9 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-ed8e2ee1-edba-7032-ef28-779d1fda3749-a78db4e9, #w-node-_03200ab5-285f-0c93-d861-426bb43f78f1-a78db4e9, #w-node-b5215cd4-b61f-705e-f5fc-fc6e923d7c31-a78db4e9 {
  grid-area: span 1 / span 4 / span 1 / span 4;
}

#w-node-a3c1c0d3-530f-aa56-91a7-2e6c4c9eec0c-a78db4e9 {
  grid-area: span 1 / span 3 / span 1 / span 3;
}

#w-node-_82041786-2814-2946-d49b-330e6ebdd459-b53c49e9, #w-node-_82041786-2814-2946-d49b-330e6ebdd45d-b53c49e9, #w-node-_82041786-2814-2946-d49b-330e6ebdd461-b53c49e9, #w-node-_82041786-2814-2946-d49b-330e6ebdd465-b53c49e9 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_72e6070c-7c07-57cb-68c6-a1068d98a923-b53c49e9, #w-node-_82041786-2814-2946-d49b-330e6ebdd469-b53c49e9 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_82041786-2814-2946-d49b-330e6ebdd46d-b53c49e9 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-f2761ac8-5aac-b83e-2597-645bf36226dd-b53c49e9 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b0d-a7e4e350, #w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b11-a7e4e350, #w-node-_636c228c-addb-7fa6-6ed5-98876c262a9c-a7e4e350, #w-node-_9cb8f154-c6d0-9c49-6551-5b04778e4716-a7e4e350, #w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b15-a7e4e350, #w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b19-a7e4e350 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b1d-a7e4e350 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b22-a7e4e350, #w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b26-a7e4e350 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_8c5de557-d649-eff0-04e8-82208ce184dd-a7e4e350, #w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b3e-a7e4e350 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_2d6e190a-b64f-5a51-f5ac-f26eb77b1b21-0b17064d, #w-node-_2d6e190a-b64f-5a51-f5ac-f26eb77b1b25-0b17064d, #w-node-_2d6e190a-b64f-5a51-f5ac-f26eb77b1b35-0b17064d, #w-node-_2d6e190a-b64f-5a51-f5ac-f26eb77b1b31-0b17064d {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-d140371d-9659-7496-04c7-f2683c9c4772-0b17064d {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_2d6e190a-b64f-5a51-f5ac-f26eb77b1b40-0b17064d {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_2d6e190a-b64f-5a51-f5ac-f26eb77b1b5f-0b17064d {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_0b52c9b5-8668-dd99-f717-741137a56a24-c9642881, #w-node-_0b52c9b5-8668-dd99-f717-741137a56a2c-c9642881, #w-node-eb8a5db9-d62e-8dbf-1876-b4b8c89232f7-c9642881 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_0b52c9b5-8668-dd99-f717-741137a56a34-c9642881, #w-node-_0b52c9b5-8668-dd99-f717-741137a56a74-c9642881 {
  grid-area: span 1 / span 3 / span 1 / span 3;
}

@media screen and (max-width: 991px) {
  #w-node-_109aea49-809e-d390-4658-fc4248ee45b4-48ee45b1 {
    grid-column: span 2 / span 2;
  }

  #w-node-_9e64cfc7-34a8-ab93-e6ad-0e163d598517-a78db4e9, #w-node-ff0cc040-5a40-1936-6872-26cf1fd30d29-a78db4e9 {
    grid-column: span 4 / span 4;
  }

  #w-node-_0b52c9b5-8668-dd99-f717-741137a56a24-c9642881 {
    grid-column: span 1 / span 1;
  }
}

@media screen and (max-width: 767px) {
  #w-node-_724fa3c2-87d1-b14e-ac5b-21b4e2834527-b864cdd7 {
    grid-area: 2 / 1 / 3 / 2;
  }

  #w-node-_2a580dcd-49e5-09e9-5547-d849d1fed83c-a412dd70, #w-node-b39ec3bc-742d-1590-02e0-1e5ee5cb30a6-a412dd70 {
    order: -9999;
  }

  #w-node-_59bdab0d-3d33-61df-5b1e-b0df6ede834e-a78db4e9, #w-node-_9758b4d0-ae59-f278-da5a-e5599debb6b2-a78db4e9, #w-node-_105c99db-ffab-feab-e72e-47b230878ab7-a78db4e9, #w-node-c04b19b6-672e-6510-3a93-2e2ec6d135a0-a78db4e9, #w-node-_728264ad-7616-1fc9-b626-37d397750e06-a78db4e9, #w-node-_20c7a08c-b84f-0eb8-a74f-43accd8428b0-a78db4e9 {
    grid-column: span 1 / span 1;
  }

  #w-node-b95edd56-ee47-6eb7-5525-48af0acc002a-a78db4e9, #w-node-_9e64cfc7-34a8-ab93-e6ad-0e163d598517-a78db4e9, #w-node-ff0cc040-5a40-1936-6872-26cf1fd30d29-a78db4e9, #w-node-ed8e2ee1-edba-7032-ef28-779d1fda3749-a78db4e9, #w-node-_03200ab5-285f-0c93-d861-426bb43f78f1-a78db4e9, #w-node-b5215cd4-b61f-705e-f5fc-fc6e923d7c31-a78db4e9, #w-node-a3c1c0d3-530f-aa56-91a7-2e6c4c9eec0c-a78db4e9 {
    grid-column: span 2 / span 2;
  }

  #w-node-_8a2048af-4162-0959-f181-7760e72c4139-c9642881 {
    order: -9999;
  }

  #w-node-_0b52c9b5-8668-dd99-f717-741137a56a24-c9642881, #w-node-_0b52c9b5-8668-dd99-f717-741137a56a2c-c9642881, #w-node-eb8a5db9-d62e-8dbf-1876-b4b8c89232f7-c9642881 {
    grid-column: span 3 / span 3;
  }
}

@media screen and (max-width: 479px) {
  #w-node-_109aea49-809e-d390-4658-fc4248ee45b4-48ee45b1 {
    grid-column: span 1 / span 1;
  }

  #w-node-_8a61b47c-b90b-a1e6-63e2-2bc8266e32e5-b864cdd7 {
    order: -9999;
  }

  #w-node-_61b1f222-6e55-69f1-d261-05aaa77a8110-b864cdd7 {
    order: 9999;
  }

  #w-node-b95edd56-ee47-6eb7-5525-48af0acc002a-a78db4e9, #w-node-a05185a1-fa1c-eafa-0f5c-d3c56e26369c-a78db4e9, #w-node-_373a6d76-f53b-dd10-86f7-bc55dca9ab04-a78db4e9, #w-node-_280a9ac3-fded-de75-2234-8a82baa947d7-a78db4e9, #w-node-bda96cfc-c2f7-ed80-3146-883ca069dbde-a78db4e9, #w-node-a8fdfec1-ff7a-76bf-9b13-faad7f4d5b9e-a78db4e9, #w-node-_9e64cfc7-34a8-ab93-e6ad-0e163d598517-a78db4e9, #w-node-ff0cc040-5a40-1936-6872-26cf1fd30d29-a78db4e9, #w-node-ed8e2ee1-edba-7032-ef28-779d1fda3749-a78db4e9, #w-node-_03200ab5-285f-0c93-d861-426bb43f78f1-a78db4e9, #w-node-b5215cd4-b61f-705e-f5fc-fc6e923d7c31-a78db4e9, #w-node-a3c1c0d3-530f-aa56-91a7-2e6c4c9eec0c-a78db4e9, #w-node-_72e6070c-7c07-57cb-68c6-a1068d98a923-b53c49e9, #w-node-_82041786-2814-2946-d49b-330e6ebdd469-b53c49e9, #w-node-f2761ac8-5aac-b83e-2597-645bf36226dd-b53c49e9, #w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b1d-a7e4e350, #w-node-_8c5de557-d649-eff0-04e8-82208ce184dd-a7e4e350, #w-node-_0cef1f2a-7244-6ca2-6e2a-ccc4d2d33b3e-a7e4e350, #w-node-d140371d-9659-7496-04c7-f2683c9c4772-0b17064d, #w-node-_2d6e190a-b64f-5a51-f5ac-f26eb77b1b5f-0b17064d {
    grid-column: span 1 / span 1;
  }
}


