:root {
  --colors--background: var(--_colour---neutral--white);
  --_typography---paragraph-body--font: var(--_typography---fonts--body-font);
  --_colour---neutral--black: #1a2837;
  --_typography---paragraph-body--font-size: clamp(var(--_typography---paragraph-body--font-size-min-rem) * 1rem, ((var(--_typography---paragraph-body--font-size-min-rem)  - ((var(--_typography---paragraph-body--font-size-max-rem)  - var(--_typography---paragraph-body--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---paragraph-body--font-size-max-rem)  - var(--_typography---paragraph-body--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---paragraph-body--font-size-max-rem) * 1rem);
  --_typography---paragraph-body--line-height: 1.4;
  --_typography---paragraph-body--font-weight: 400;
  --_typography---paragraph-body--letter-spacing: -.02em;
  --_typography---h1--bottom-margin: .2em;
  --_typography---h1--font: var(--_typography---fonts--heading-font);
  --colors--headings: var(--_colour---neutral--black);
  --_typography---h1--font-size: clamp(var(--_typography---h1--font-size-min-rem) * 1rem, ((var(--_typography---h1--font-size-min-rem)  - ((var(--_typography---h1--font-size-max-rem)  - var(--_typography---h1--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---h1--font-size-max-rem)  - var(--_typography---h1--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---h1--font-size-max-rem) * 1rem);
  --_typography---h1--line-height: .9;
  --_typography---h1--font-weight: 500;
  --_typography---h1--letter-spacing: 0em;
  --_typography---h2--bottom-margin: .2em;
  --_typography---h2--font: var(--_typography---fonts--heading-font);
  --_typography---h2--font-size: clamp(var(--_typography---h2--font-size-min-rem) * 1rem, ((var(--_typography---h2--font-size-min-rem)  - ((var(--_typography---h2--font-size-max-rem)  - var(--_typography---h2--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---h2--font-size-max-rem)  - var(--_typography---h2--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---h2--font-size-max-rem) * 1rem);
  --_typography---h2--line-height: .85;
  --_typography---h2--font-weight: 500;
  --_typography---h2--letter-spacing: -.005em;
  --_typography---h3--bottom-margin: .3em;
  --_typography---h3--font: var(--_typography---fonts--body-font);
  --_typography---h3--font-size: clamp(var(--_typography---h3--font-size-min-rem) * 1rem, ((var(--_typography---h3--font-size-min-rem)  - ((var(--_typography---h3--font-size-max-rem)  - var(--_typography---h3--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---h3--font-size-max-rem)  - var(--_typography---h3--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---h3--font-size-max-rem) * 1rem);
  --_typography---h3--line-height: 1.2;
  --_typography---h3--font-weight: 500;
  --_typography---h3--letter-spacing: -.04em;
  --_typography---h4--bottom-margin: .3em;
  --_typography---h4--font: var(--_typography---fonts--body-font);
  --_typography---h4--font-size: clamp(var(--_typography---h4--font-size-min-rem) * 1rem, ((var(--_typography---h4--font-size-min-rem)  - ((var(--_typography---h4--font-size-max-rem)  - var(--_typography---h4--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---h4--font-size-max-rem)  - var(--_typography---h4--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---h4--font-size-max-rem) * 1rem);
  --_typography---h4--line-height: 1.2;
  --_typography---h4--font-weight: 500;
  --_typography---h4--letter-spacing: -.03em;
  --_typography---h5--bottom-margin: .4em;
  --_typography---h5--font: var(--_typography---fonts--body-font);
  --_typography---h5--font-size: clamp(var(--_typography---h5--font-size-min-rem) * 1rem, ((var(--_typography---h5--font-size-min-rem)  - ((var(--_typography---h5--font-size-max-rem)  - var(--_typography---h5--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---h5--font-size-max-rem)  - var(--_typography---h5--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---h5--font-size-max-rem) * 1rem);
  --_typography---h5--line-height: 1.2;
  --_typography---h5--font-weight: 500;
  --_typography---h5--letter-spacing: -.04em;
  --_typography---h6--bottom-margin: .5em;
  --_typography---h6--font: var(--_typography---fonts--body-font);
  --_typography---h6--font-size: clamp(var(--_typography---h6--font-size-min-rem) * 1rem, ((var(--_typography---h6--font-size-min-rem)  - ((var(--_typography---h6--font-size-max-rem)  - var(--_typography---h6--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---h6--font-size-max-rem)  - var(--_typography---h6--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---h6--font-size-max-rem) * 1rem);
  --_typography---h6--line-height: 1.3;
  --_typography---h6--font-weight: 500;
  --_typography---h6--letter-spacing: 0em;
  --_typography---paragraph-body--bottom-margin: 1em;
  --colors--accent: var(--_colour---primary--green);
  --_typography---paragraph-lg--font-size: clamp(var(--_typography---paragraph-lg--font-size-min-rem) * 1rem, ((var(--_typography---paragraph-lg--font-size-min-rem)  - ((var(--_typography---paragraph-lg--font-size-max-rem)  - var(--_typography---paragraph-lg--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---paragraph-lg--font-size-max-rem)  - var(--_typography---paragraph-lg--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---paragraph-lg--font-size-max-rem) * 1rem);
  --_components---section--padding: clamp(var(--_components---section--padding-min-rem) * 1rem, ((var(--_components---section--padding-min-rem)  - ((var(--_components---section--padding-max-rem)  - var(--_components---section--padding-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_components---section--padding-max-rem)  - var(--_components---section--padding-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_components---section--padding-max-rem) * 1rem);
  --colors--body: var(--_colour---neutral--dark-grey);
  --_colour---neutral--light-grey: #e8e8e8;
  --_colour---neutral--dark-grey: #59616b;
  --_colour---neutral--white: white;
  --colors--border: var(--_colour---neutral--light-grey);
  --_components---container--max-width: calc(var(--_layout---fluid--max) * 1rem);
  --_components---container--padding: clamp(var(--_components---container--padding-min-rem) * 1rem, ((var(--_components---container--padding-min-rem)  - ((var(--_components---container--padding-max-rem)  - var(--_components---container--padding-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_components---container--padding-max-rem)  - var(--_components---container--padding-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_components---container--padding-max-rem) * 1rem);
  --_layout---grid--gap-main: 16px;
  --_layout---grid--gap-md: 8px;
  --_layout---grid--gap-sm: 4px;
  --_components---button--vertical-padding: .75em;
  --_components---button--horizontal-padding: 1em;
  --_components---button--border-radius: .25rem;
  --_components---button--font: var(--_typography---fonts--body-font);
  --_components---button--font-size: 1rem;
  --_components---button--line-height: 1.3em;
  --_components---button--font-weight: 400;
  --_components---button--letter-spacing: -.015em;
  --_typography---paragraph-lg--font: var(--_typography---fonts--body-font);
  --_typography---paragraph-lg--letter-spacing: -.05em;
  --_colour---green--dark-pale: #e6f9cc;
  --_typography---paragraph-sm--font: var(--_typography---fonts--body-font);
  --_typography---paragraph-sm--font-size: clamp(var(--_typography---paragraph-sm--font-size-min-rem) * 1rem, ((var(--_typography---paragraph-sm--font-size-min-rem)  - ((var(--_typography---paragraph-sm--font-size-max-rem)  - var(--_typography---paragraph-sm--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---paragraph-sm--font-size-max-rem)  - var(--_typography---paragraph-sm--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---paragraph-sm--font-size-max-rem) * 1rem);
  --_typography---paragraph-sm--line-height: 1.3;
  --_typography---paragraph-sm--font-weight: 400;
  --_typography---paragraph-sm--letter-spacing: .01em;
  --_colour---neutral--mid-black: #2b384a;
  --_components---card--border-radius: .25rem;
  --_components---card--padding: clamp(var(--_components---card--padding-min-rem) * 1rem, ((var(--_components---card--padding-min-rem)  - ((var(--_components---card--padding-max-rem)  - var(--_components---card--padding-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_components---card--padding-max-rem)  - var(--_components---card--padding-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_components---card--padding-max-rem) * 1rem);
  --_components---input--bottom-margin: 1rem;
  --_size---0-5rem\<deleted\|variable-70a8c3ac-c656-f79e-479c-716ec38165c2\>: .5rem;
  --_colour---neutral--mid-grey: #94949e;
  --_components---input--border-radius: .25rem;
  --_components---input--font: var(--_typography---fonts--body-font);
  --_components---input--font-size: 1rem;
  --_components---input--line-height: 1.5em;
  --_components---input--font-weight: 400;
  --_components---input--letter-spacing: 0em;
  --_colour---primary--green: #bff080;
  --_components---input-label--font: var(--_typography---fonts--body-font);
  --_components---input-label--font-size: .9rem;
  --_components---input-label--line-height: 1em;
  --_components---input-label--font-weight: 500;
  --_components---input-label--letter-spacing: 0em;
  --_typography---eyebrow--bottom-margin\<deleted\|variable-a0ff2b92-47ad-c568-8cfc-735c2370a96f\>: 1.5em;
  --_typography---eyebrow--font\<deleted\|variable-6354049b-61e7-343b-5872-e54c59467d70\>: var(--_typography---fonts--body-font);
  --_typography---eyebrow--font-size\<deleted\|variable-6e55da87-7307-ac61-f1f0-052fa5e60fdf\>: clamp(var(--_typography---eyebrow--font-size-min-rem\<deleted\|variable-cebfdf3a-9db3-35ba-d074-b13fbd14a4b6\>) * 1rem, ((var(--_typography---eyebrow--font-size-min-rem\<deleted\|variable-cebfdf3a-9db3-35ba-d074-b13fbd14a4b6\>)  - ((var(--_typography---eyebrow--font-size-max-rem\<deleted\|variable-b037e491-8441-4a02-99f9-d4f377e41a7f\>)  - var(--_typography---eyebrow--font-size-min-rem\<deleted\|variable-cebfdf3a-9db3-35ba-d074-b13fbd14a4b6\>)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---eyebrow--font-size-max-rem\<deleted\|variable-b037e491-8441-4a02-99f9-d4f377e41a7f\>)  - var(--_typography---eyebrow--font-size-min-rem\<deleted\|variable-cebfdf3a-9db3-35ba-d074-b13fbd14a4b6\>)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---eyebrow--font-size-max-rem\<deleted\|variable-b037e491-8441-4a02-99f9-d4f377e41a7f\>) * 1rem);
  --_typography---eyebrow--line-height\<deleted\|variable-2b389937-b23e-2321-44d8-acf51e8dcf94\>: 1.2;
  --_typography---eyebrow--font-weight\<deleted\|variable-dca0469b-4a3b-41f3-758b-8dda2cf21083\>: 500;
  --_typography---paragraph-sm--bottom-margin: 1em;
  --_typography---paragraph-lg--bottom-margin: 1em;
  --_typography---paragraph-lg--line-height: 1.4;
  --_typography---paragraph-lg--font-weight: 500;
  --_layout---spacing--margin-xs: .5em;
  --_layout---spacing--margin-sm: 1em;
  --_layout---spacing--margin-md: 2em;
  --_typography---paragraph-xl--bottom-margin: .5em;
  --_typography---paragraph-xl--font: var(--_typography---fonts--body-font);
  --_typography---paragraph-xl--font-size: clamp(var(--_typography---paragraph-xl--font-size-min-rem) * 1rem, ((var(--_typography---paragraph-xl--font-size-min-rem)  - ((var(--_typography---paragraph-xl--font-size-max-rem)  - var(--_typography---paragraph-xl--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min)) * var(--_layout---fluid--min))) * 1rem + ((var(--_typography---paragraph-xl--font-size-max-rem)  - var(--_typography---paragraph-xl--font-size-min-rem)) / (var(--_layout---fluid--max)  - var(--_layout---fluid--min))) * 100vw), var(--_typography---paragraph-xl--font-size-max-rem) * 1rem);
  --_typography---paragraph-xl--line-height: 1.25;
  --_typography---paragraph-xl--font-weight: 400;
  --_typography---paragraph-xl--letter-spacing: -.05em;
  --_layout---spacing--margin-lg: 3.25em;
  --_typography---type-paragraph-lg--font-size-md\<deleted\|variable-cdbe9950-9272-2284-ccf6-60cab96acd5f\>: 1.25rem;
  --_typography---type-paragraph-lg--font-size-sm\<deleted\|variable-841c9cf1-74b8-7850-db1d-b82cdc8d3013\>: 1.1rem;
  --_typography---type-paragraph-lg--font-size-xs\<deleted\|variable-dab72a89-1875-a2f7-1d85-bd05f81dd817\>: 1.1rem;
  --_typography---type-paragraph-sm--font-size-md\<deleted\|variable-94c5336e-6e13-9026-329b-a7b4ba64e183\>: .9rem;
  --_typography---type-paragraph-sm--font-size-sm\<deleted\|variable-dce65071-f183-75c5-98aa-d8afc83560a0\>: .9rem;
  --_typography---type-paragraph-sm--font-size-xs\<deleted\|variable-5ffbcc90-83d8-60d2-b7ba-601684d03f16\>: .9rem;
  --_responsive---padding--card\<deleted\|variable-5fcf010a-6fe9-5ba2-24fb-53a12ac0d5b0\>: 1.5rem;
  --_components---card--card-body-padding-sm\<deleted\|variable-886aa6f6-843b-26b9-170b-96cc08ca36e2\>: 20px;
  --_typography---fonts--heading-font: Sohneschmal, Arial, sans-serif;
  --_size---1-5rem\<deleted\|variable-f3ca9317-f658-e5ae-7950-f14c04b8bdeb\>: 1.5rem;
  --_size---2rem\<deleted\|variable-703e76dd-22c1-0e62-be30-102e06bdb527\>: 2rem;
  --_size---3rem\<deleted\|variable-69c16ee0-18a3-4590-ef2c-d3d00d2064c9\>: 3rem;
  --_size---0-75rem\<deleted\|variable-51df6ead-a71c-263d-332f-348c569f6d5f\>: .75rem;
  --_typography---fonts--body-font: Circular, Arial, sans-serif;
  --_typography---display--font: var(--_typography---fonts--heading-font);
  --_typography---display--line-height: .85;
  --_typography---display--font-weight: 500;
  --_typography---display--letter-spacing: 0em;
  --_colour---green--pale-green: #f2fce5;
  --_layout---grid--gap-button: 16px;
  --_layout---grid--gap-lg: 32px;
  --_layout---fluid--max: 100;
  --_layout---fluid--min: 20;
  --_components---section--padding-min-rem: 3;
  --_components---section--padding-max-rem: 6;
  --_typography---display--font-size-min-rem: 5.5;
  --_typography---display--font-size-max-rem: 14.25;
  --_components---container--padding-min-rem: 1;
  --_components---container--padding-max-rem: 3.5;
  --_components---card--padding-min-rem: 1;
  --_components---card--padding-max-rem: 1.5;
  --_typography---display--bottom-margin: 0em;
  --_typography---h1--font-size-min-rem: 4;
  --_typography---h1--font-size-max-rem: 7.5;
  --_typography---h2--font-size-min-rem: 3.75;
  --_typography---h2--font-size-max-rem: 5.75;
  --_typography---h3--font-size-min-rem: 1.5;
  --_typography---h3--font-size-max-rem: 2;
  --_typography---h4--font-size-min-rem: 1.3;
  --_typography---h4--font-size-max-rem: 1.9;
  --_typography---h5--font-size-min-rem: 1.25;
  --_typography---h5--font-size-max-rem: 1.4;
  --_typography---h6--font-size-min-rem: 1;
  --_typography---h6--font-size-max-rem: 1.1;
  --_typography---paragraph-xl--font-size-min-rem: 1.2;
  --_typography---paragraph-xl--font-size-max-rem: 1.75;
  --_typography---paragraph-lg--font-size-min-rem: 1.1;
  --_typography---paragraph-lg--font-size-max-rem: 1.25;
  --_typography---paragraph-body--font-size-min-rem: .95;
  --_typography---paragraph-body--font-size-max-rem: 1;
  --_typography---paragraph-sm--font-size-min-rem: .7;
  --_typography---paragraph-sm--font-size-max-rem: .8;
  --_typography---eyebrow--font-size-min-rem\<deleted\|variable-cebfdf3a-9db3-35ba-d074-b13fbd14a4b6\>: .7;
  --_typography---eyebrow--font-size-max-rem\<deleted\|variable-b037e491-8441-4a02-99f9-d4f377e41a7f\>: .8;
}

body {
  background-color: var(--colors--background);
  font-family: var(--_typography---paragraph-body--font);
  color: var(--_colour---neutral--black);
  font-size: var(--_typography---paragraph-body--font-size);
  line-height: var(--_typography---paragraph-body--line-height);
  font-weight: var(--_typography---paragraph-body--font-weight);
  letter-spacing: var(--_typography---paragraph-body--letter-spacing);
  text-wrap: pretty;
}

h1 {
  margin-top: 0;
  margin-bottom: var(--_typography---h1--bottom-margin);
  font-family: var(--_typography---h1--font);
  color: var(--colors--headings);
  font-size: var(--_typography---h1--font-size);
  line-height: var(--_typography---h1--line-height);
  font-weight: var(--_typography---h1--font-weight);
  letter-spacing: var(--_typography---h1--letter-spacing);
  text-transform: uppercase;
}

h2 {
  margin-top: 0;
  margin-bottom: var(--_typography---h2--bottom-margin);
  font-family: var(--_typography---h2--font);
  color: var(--colors--headings);
  font-size: var(--_typography---h2--font-size);
  line-height: var(--_typography---h2--line-height);
  font-weight: var(--_typography---h2--font-weight);
  letter-spacing: var(--_typography---h2--letter-spacing);
  text-transform: uppercase;
}

h3 {
  margin-top: 0;
  margin-bottom: var(--_typography---h3--bottom-margin);
  font-family: var(--_typography---h3--font);
  color: var(--colors--headings);
  font-size: var(--_typography---h3--font-size);
  line-height: var(--_typography---h3--line-height);
  font-weight: var(--_typography---h3--font-weight);
  letter-spacing: var(--_typography---h3--letter-spacing);
}

h4 {
  margin-top: 0;
  margin-bottom: var(--_typography---h4--bottom-margin);
  font-family: var(--_typography---h4--font);
  color: var(--colors--headings);
  font-size: var(--_typography---h4--font-size);
  line-height: var(--_typography---h4--line-height);
  font-weight: var(--_typography---h4--font-weight);
  letter-spacing: var(--_typography---h4--letter-spacing);
}

h5 {
  margin-top: 0;
  margin-bottom: var(--_typography---h5--bottom-margin);
  font-family: var(--_typography---h5--font);
  color: var(--colors--headings);
  font-size: var(--_typography---h5--font-size);
  line-height: var(--_typography---h5--line-height);
  font-weight: var(--_typography---h5--font-weight);
  letter-spacing: var(--_typography---h5--letter-spacing);
}

h6 {
  margin-top: 0;
  margin-bottom: var(--_typography---h6--bottom-margin);
  font-family: var(--_typography---h6--font);
  color: var(--colors--headings);
  font-size: var(--_typography---h6--font-size);
  line-height: var(--_typography---h6--line-height);
  font-weight: var(--_typography---h6--font-weight);
  letter-spacing: var(--_typography---h6--letter-spacing);
}

p {
  margin-bottom: var(--_typography---paragraph-body--bottom-margin);
}

a {
  color: inherit;
  text-underline-offset: -.075em;
  text-underline-position: under;
  text-decoration: underline;
  text-decoration-thickness: .06em;
}

a:focus-visible, a[data-wf-focus-visible] {
  outline-color: var(--colors--accent);
  outline-offset: 2px;
  outline-width: 2px;
  outline-style: solid;
}

ul {
  margin-bottom: 1em;
  padding-left: 1em;
}

ol {
  margin-top: 0;
  margin-bottom: 1em;
  padding-left: 2.2em;
}

li {
  margin-bottom: .75em;
}

img {
  max-width: 100%;
  display: inline-block;
}

label {
  margin-bottom: 5px;
  display: block;
}

strong {
  font-weight: bold;
}

blockquote {
  border-left: 5px solid #e2e2e2;
  margin-bottom: 10px;
  padding: 10px 20px;
  font-size: 18px;
  line-height: 22px;
}

figure {
  margin-bottom: 10px;
}

figcaption {
  text-align: center;
  margin-top: 5px;
}

.h3 {
  margin-top: 0;
  margin-bottom: var(--_typography---h3--bottom-margin);
  font-family: var(--_typography---h3--font);
  color: var(--colors--headings);
  font-size: var(--_typography---h3--font-size);
  line-height: var(--_typography---h3--line-height);
  font-weight: var(--_typography---h3--font-weight);
  letter-spacing: var(--_typography---h3--letter-spacing);
}

.h4 {
  margin-top: 0;
  margin-bottom: var(--_typography---h4--bottom-margin);
  font-family: var(--_typography---h4--font);
  color: var(--colors--headings);
  font-size: var(--_typography---h4--font-size);
  line-height: var(--_typography---h4--line-height);
  font-weight: var(--_typography---h4--font-weight);
  letter-spacing: var(--_typography---h4--letter-spacing);
}

.h5 {
  margin-top: 0;
  margin-bottom: var(--_typography---h5--bottom-margin);
  font-family: var(--_typography---h5--font);
  color: var(--colors--headings);
  font-size: var(--_typography---h5--font-size);
  line-height: var(--_typography---h5--line-height);
  font-weight: var(--_typography---h5--font-weight);
  letter-spacing: var(--_typography---h5--letter-spacing);
}

.h5.cc-work-name {
  margin-bottom: 0;
}

.h5.cc-work-icon {
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  display: flex;
}

.section {
  padding-top: var(--_components---section--padding);
  padding-bottom: var(--_components---section--padding);
  --colors--background: var(--_colour---neutral--white);
  --colors--headings: var(--_colour---neutral--black);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--dark-grey);
  --colors--border: var(--_colour---neutral--light-grey);
  position: relative;
}

.section:where(.w-variant-ffdae436-6d76-12b6-39d6-0e4201c47aad) {
  background-color: var(--colors--body);
  color: var(--colors--background);
}

.section:where(.w-variant-8251da35-d56b-3ffb-d48d-7c7a41627606) {
  background-color: var(--_colour---neutral--light-grey);
  color: var(--_colour---neutral--black);
}

.section:where(.w-variant-24d38caf-5dc4-e032-8615-f1b8b9543543) {
  background-color: var(--_colour---neutral--dark-grey);
  color: var(--_colour---neutral--white);
}

.section.cc-themed {
  background-color: var(--colors--background);
  color: var(--colors--body);
  --colors--background: var(--_colour---neutral--white);
  --colors--headings: var(--_colour---neutral--black);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--dark-grey);
  --colors--border: var(--_colour---neutral--light-grey);
}

.section.cc-themed:where(.w-variant-ffdae436-6d76-12b6-39d6-0e4201c47aad) {
  --colors--background: var(--_colour---neutral--black);
  --colors--headings: var(--_colour---neutral--white);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--light-grey);
  --colors--border: var(--_colour---neutral--mid-black);
}

.section.cc-themed:where(.w-variant-8251da35-d56b-3ffb-d48d-7c7a41627606) {
  --colors--background: var(--_colour---neutral--light-grey);
  --colors--headings: var(--_colour---neutral--black);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--black);
  --colors--border: var(--_colour---neutral--white);
}

.section.cc-themed:where(.w-variant-24d38caf-5dc4-e032-8615-f1b8b9543543) {
  --colors--background: var(--_colour---neutral--dark-grey);
  --colors--headings: var(--_colour---neutral--black);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--white);
  --colors--border: var(--_colour---neutral--black);
}

.section.cc-home-hero {
  padding-bottom: calc(var(--_components---section--padding) / 2);
  padding-top: calc(var(--_components---section--padding)  + 4.5vw);
}

.section.u-pd-sm {
  padding-bottom: calc(var(--_components---section--padding) / 2);
  padding-top: calc(var(--_components---section--padding) / 2);
}

.section.u-pd-sm.u-pb-0 {
  padding-bottom: 0;
}

.section.cc-social-proof {
  background-color: var(--_colour---neutral--light-grey);
  padding-top: calc(var(--_components---section--padding) / 1.75);
  padding-bottom: calc(var(--_components---section--padding) / 1.75);
}

.section.u-pb-sm {
  padding-bottom: calc(var(--_components---section--padding) / 2);
}

.section.u-pb-sm.u-pb-0 {
  padding-bottom: 0;
}

.section.cc-footer {
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: var(--colors--border);
  background-color: var(--colors--background);
  color: var(--colors--body);
  --colors--background: var(--_colour---neutral--white);
  --colors--headings: var(--_colour---neutral--black);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--dark-grey);
  --colors--border: var(--_colour---neutral--light-grey);
  padding-bottom: 1.5rem;
  padding-top: calc(var(--_components---section--padding) / 2);
  margin-top: auto;
}

.section.u-pt-sm {
  padding-top: calc(var(--_components---section--padding) / 2);
}

.section.cc-cta {
  background-color: var(--colors--background);
  --colors--background: var(--_colour---neutral--black);
  --colors--headings: var(--_colour---neutral--white);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--light-grey);
  --colors--border: var(--_colour---neutral--mid-black);
  padding-top: calc(var(--_components---section--padding) * 1.25);
  padding-bottom: calc(var(--_components---section--padding) * 1.25);
}

.section.u-mode-invert {
  background-image: linear-gradient(51deg, #000 10%, #0000), url("https://cdn.prod.website-files.com/6929c16929ef1ab9e56bc14a/6978def25b9f4322764ea365_jameel_wide-02.avif");
  background-position: 0 0, 100%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  background-attachment: scroll, scroll;
  justify-content: flex-start;
  align-items: flex-end;
  min-height: 75px;
  display: flex;
}

.section.u-mode-invert.cc-people-slider {
  --colors--background: var(--_colour---neutral--black);
  --colors--headings: var(--_colour---neutral--white);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--light-grey);
  --colors--border: var(--_colour---neutral--mid-black);
  background-color: #0000;
  background-image: none;
  align-items: flex-end;
  min-height: 75vh;
  display: flex;
}

.section.cc-hero {
  padding-bottom: calc(var(--_components---section--padding) / 2);
  padding-top: calc(var(--_components---section--padding)  + 4.5rem);
}

.section.cc-hero.cc-news {
  padding-bottom: 1rem;
}

.section.cc-hero.u-pb-0 {
  padding-bottom: 0;
}

.section.cc-hero.cc-h-100 {
  z-index: 1;
  --colors--background: var(--_colour---neutral--black);
  --colors--headings: var(--_colour---neutral--white);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--light-grey);
  --colors--border: var(--_colour---neutral--mid-black);
  flex-flow: column;
  justify-content: flex-end;
  min-height: 100vh;
  display: flex;
  overflow: hidden;
}

.container {
  max-width: var(--_components---container--max-width);
  padding-right: var(--_components---container--padding);
  padding-left: var(--_components---container--padding);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.container.cc-marquee-title {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  text-decoration: none;
  position: relative;
}

.container.cc-about-marquee {
  padding-left: calc(var(--_components---container--padding)  - 1vw);
  padding-right: calc(var(--_components---container--padding)  - 1vw);
}

.container.cc-our-people {
  flex-flow: column;
  height: 100%;
  display: flex;
}

.container.u-p-0.u-no-max-w {
  max-width: none;
}

.row {
  grid-row-gap: var(--_layout---grid--gap-main);
  margin-left: calc(var(--_layout---grid--gap-main) / 2 * -1);
  margin-right: calc(var(--_layout---grid--gap-main) / 2 * -1);
  flex-wrap: wrap;
  align-content: stretch;
  display: flex;
}

.row:where(.w-variant-478364d0-b9a1-9a8d-3561-fc2372ac7598) {
  justify-content: center;
}

.row:where(.w-variant-5d43bd90-6372-654d-731d-541adec41264) {
  justify-content: space-between;
}

.row:where(.w-variant-74857e04-b06e-e825-b9a7-b1c429c16d7e) {
  align-items: center;
}

.row:where(.w-variant-83b17255-59f7-790b-da69-1e44aab5c586) {
  justify-content: center;
  align-items: center;
}

.row:where(.w-variant-d8cdc2fb-aedc-5d05-72c6-68fd71715228) {
  justify-content: space-between;
  align-items: center;
}

.row:where(.w-variant-b304d51f-8499-8e80-0632-b7e8accf301a) {
  justify-content: flex-end;
  align-items: stretch;
}

.row:where(.w-variant-84c0d3ac-e67c-aa17-8572-49b2e539ff14) {
  justify-content: flex-end;
  align-items: center;
}

.row:where(.w-variant-3d1b8c14-9e99-f9f9-47c1-87e724473bc0) {
  justify-content: flex-start;
  align-items: flex-end;
}

.row:where(.w-variant-30bc1b76-8350-656c-94d9-a238454cac88) {
  justify-content: flex-end;
  align-items: flex-end;
}

.row:where(.w-variant-17c26d76-ad6d-56cb-bed9-f93779ad31e8) {
  justify-content: center;
  align-items: flex-end;
}

.row:where(.w-variant-c4e0622f-418c-65e4-f062-f3424e8d2467) {
  justify-content: space-between;
  align-items: flex-end;
}

.row.row-justify-end {
  justify-content: flex-end;
}

.row.row-justify-around {
  justify-content: space-around;
}

.row.row-gap-0 {
  grid-row-gap: 0rem;
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
}

.row.row-gap-md {
  grid-row-gap: var(--_layout---grid--gap-md);
  margin-left: calc(var(--_layout---grid--gap-md) / 2 * -1);
  margin-right: calc(var(--_layout---grid--gap-md) / 2 * -1);
}

.row.row-gap-sm {
  grid-row-gap: var(--_layout---grid--gap-sm);
  margin-left: calc(var(--_layout---grid--gap-sm) / 2 * -1);
  margin-right: calc(var(--_layout---grid--gap-sm) / 2 * -1);
}

.row.cc-team {
  grid-row-gap: 3rem;
}

.row.work-tags-row {
  grid-row-gap: 2px;
}

.row.cc-work-thumb {
  flex-flow: row;
}

.row.row-justify-between {
  justify-content: space-between;
}

.row.row-align-end {
  align-items: flex-end;
}

.row.row-justify-center {
  justify-content: center;
}

.row.row-align-center {
  align-items: center;
}

.row.row-gap-lg {
  grid-row-gap: 32px;
}

.col {
  padding-left: calc(var(--_layout---grid--gap-main) / 2);
  padding-right: calc(var(--_layout---grid--gap-main) / 2);
  flex-flow: column;
  flex: 1;
  display: flex;
  position: relative;
}

.col:where(.w-variant-28e74f51-d7e2-a771-32c6-dda728ccfa16) {
  flex: 25%;
  max-width: 16.6667%;
}

.col:where(.w-variant-2a872dd3-bab5-8141-0ad7-251b924e42e6) {
  flex-grow: 1;
  flex-basis: 33.3333%;
  max-width: 33.3333%;
}

.col:where(.w-variant-52b169ce-f9c2-1128-cb8d-e5acee9f9159) {
  flex-grow: 1;
  flex-basis: 50%;
  max-width: 50%;
}

.col:where(.w-variant-f8adaa2d-7dff-f490-b6dd-19f48419d59b) {
  flex: 75%;
  max-width: 75%;
}

.col:where(.w-variant-1809bbfe-93c5-9995-a76f-dc2c5b37bfe3) {
  flex: 41.6667%;
  max-width: 41.6667%;
}

.col:where(.w-variant-d2d2a23d-14a1-7f5e-e8ec-4a285e5f4a7b) {
  flex: 58.3333%;
  max-width: 58.3333%;
}

.col:where(.w-variant-c40c2b54-bd7f-c6df-c4ad-1c9f757a89d2) {
  flex-basis: 66.6667%;
  max-width: 66.6667%;
}

.col:where(.w-variant-63569d8e-a8ac-61e1-0666-21eb6073c541) {
  flex: 0 auto;
}

.col:where(.w-variant-95c67bf8-407f-143d-c1b2-46906c26a2f4) {
  flex: 83.3333%;
  max-width: 83.3333%;
}

.col:where(.w-variant-6f373193-993b-d370-7068-a233ac19befc) {
  flex: 91.6667%;
  max-width: 91.6667%;
}

.col:where(.w-variant-c2470e99-215a-e78c-3ec0-c579f938e15e) {
  flex: 100%;
  max-width: 100%;
}

.col:where(.w-variant-37882ba8-3b46-b8b4-f297-a33f19abd3db) {
  flex: 25%;
  max-width: 25%;
}

.col.col-lg-6 {
  flex-basis: 50%;
  max-width: 50%;
}

.col.col-lg-6.col-sm-12 {
  max-width: 50%;
}

.col.col-lg-6.col-md-8.col-sm-12 {
  flex-basis: 0%;
  max-width: 50%;
}

.col.col-lg-7 {
  flex-basis: 58.33%;
  max-width: 58.3333%;
}

.col.col-lg-2 {
  flex-basis: 16.67%;
  max-width: 16.6667%;
}

.col.col-lg-5 {
  flex-basis: 41.67%;
  max-width: 41.6667%;
}

.col.col-lg-8 {
  flex-basis: 66.67%;
  max-width: 66.6667%;
}

.col.col-lg-10 {
  flex-basis: 83.33%;
  max-width: 83.3333%;
}

.col.col-lg-first {
  order: -1;
}

.col.col-lg-last {
  order: 1;
}

.col.col-lg-offset-2 {
  margin-left: 16.6667%;
}

.col.col-lg-offset-3 {
  margin-left: 25%;
}

.col.col-lg-offset-4 {
  margin-left: 33.3333%;
}

.col.col-lg-offset-5 {
  margin-left: 41.67%;
}

.col.col-lg-offset-6 {
  margin-left: 50%;
}

.col.col-lg-3 {
  flex-basis: 25%;
  max-width: 25%;
}

.col.col-lg-9 {
  flex-basis: 75%;
  max-width: 75%;
}

.col.col-lg-12 {
  flex-basis: 100%;
  max-width: 100%;
}

.col.col-lg-11 {
  flex-basis: 91.67%;
  max-width: 91.6667%;
}

.col.col-lg-4 {
  flex-basis: 33.33%;
  max-width: 33.3333%;
}

.col.col-lg-1 {
  flex-basis: 8.33%;
  max-width: 8.33333%;
}

.col.col-shrink {
  flex: 0 auto;
}

.col.col-lg-offset-1 {
  margin-left: 8.33333%;
}

.col.col-lg-offset-1.col-lg-6.col-md-offset-0.col-sm-12 {
  align-self: flex-start;
}

.button {
  padding: var(--_components---button--vertical-padding) var(--_components---button--horizontal-padding);
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  border-radius: var(--_components---button--border-radius);
  background-color: var(--colors--headings);
  pointer-events: auto;
  font-family: var(--_components---button--font);
  color: var(--colors--background);
  font-size: var(--_components---button--font-size);
  line-height: var(--_components---button--line-height);
  font-weight: var(--_components---button--font-weight);
  text-align: center;
  letter-spacing: var(--_components---button--letter-spacing);
  border: 1px solid #0000;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  transition: color .3s cubic-bezier(.165, .84, .44, 1), background-color .3s cubic-bezier(.165, .84, .44, 1), border-color .3s cubic-bezier(.165, .84, .44, 1);
  display: inline-flex;
  position: relative;
}

.button:where(.w-variant-052759b4-b398-e98d-c28c-099b380d4426) {
  border-top-color: var(--colors--headings);
  border-right-color: var(--colors--headings);
  border-bottom-color: var(--colors--headings);
  border-left-color: var(--colors--headings);
  color: var(--colors--headings);
  background-color: #0000;
}

.button:where(.w-variant-335ded52-674f-c37c-53b2-288ab5dc88b6) {
  color: var(--colors--headings);
  background-color: #0000;
  border-style: none;
  padding: .1em;
}

.button:where(.w-variant-8e5e0c47-d094-d767-c4c5-67678be3ebb9), .button:where(.w-variant-114c6a2a-b4f2-e633-9691-249a91896529) {
  border-style: solid;
  border-color: var(--colors--headings);
  font-family: var(--_typography---paragraph-lg--font);
  color: var(--colors--headings);
  font-size: var(--_typography---paragraph-lg--font-size);
  letter-spacing: var(--_typography---paragraph-lg--letter-spacing);
  background-color: #0000;
  line-height: 1;
}

.button:where(.w-variant-f79a0139-0f1c-843f-62ec-e3f153e88427) {
  border-color: var(--colors--accent);
  background-color: var(--_colour---green--dark-pale);
  font-family: var(--_typography---paragraph-sm--font);
  color: var(--colors--headings);
  font-size: var(--_typography---paragraph-sm--font-size);
  line-height: var(--_typography---paragraph-sm--line-height);
  font-weight: var(--_typography---paragraph-sm--font-weight);
  letter-spacing: var(--_typography---paragraph-sm--letter-spacing);
  padding: .4em .4em .3em;
}

.button:where(.w-variant-4dd1548d-4937-bb3c-221d-b31235c2ab31) {
  border-color: var(--colors--headings);
  font-family: var(--_typography---paragraph-sm--font);
  color: var(--colors--headings);
  font-size: var(--_typography---paragraph-sm--font-size);
  line-height: var(--_typography---paragraph-sm--line-height);
  font-weight: var(--_typography---paragraph-sm--font-weight);
  letter-spacing: var(--_typography---paragraph-sm--letter-spacing);
  background-color: #0000;
  padding: .4em .4em .3em;
}

.button:hover {
  background-color: var(--colors--accent);
  color: var(--colors--headings);
}

.button:hover:where(.w-variant-052759b4-b398-e98d-c28c-099b380d4426) {
  border-color: var(--colors--accent);
}

.button:hover:where(.w-variant-335ded52-674f-c37c-53b2-288ab5dc88b6) {
  background-color: #0000;
}

.button:hover:where(.w-variant-8e5e0c47-d094-d767-c4c5-67678be3ebb9) {
  border-color: var(--colors--accent);
}

.button:hover:where(.w-variant-114c6a2a-b4f2-e633-9691-249a91896529) {
  border-color: var(--colors--accent);
  color: var(--colors--background);
}

.button:hover:where(.w-variant-f79a0139-0f1c-843f-62ec-e3f153e88427) {
  border-color: var(--_colour---neutral--mid-black);
  color: var(--colors--headings);
  background-color: #0000;
}

.button:hover:where(.w-variant-4dd1548d-4937-bb3c-221d-b31235c2ab31) {
  border-color: var(--colors--accent);
  background-color: var(--colors--accent);
  color: var(--colors--background);
}

.button:focus-visible, .button[data-wf-focus-visible] {
  outline-color: var(--colors--accent);
  outline-offset: 2px;
  outline-width: 2px;
  outline-style: solid;
}

.button.cc-full {
  width: 100%;
}

.button.cc-marquee {
  color: var(--colors--body);
  font-size: var(--_typography---paragraph-sm--font-size);
  background-color: #0000;
  border-style: none;
  padding: .1em;
}

.button.cc-marquee:hover {
  background-color: #0000;
}

.button.cc-load-more {
  border-color: var(--colors--headings);
  background-color: var(--colors--background);
  color: var(--colors--headings);
  margin-left: auto;
  margin-right: auto;
}

.button.cc-load-more:hover {
  background-color: var(--colors--headings);
  color: var(--colors--accent);
}

.button.cc-work-title {
  color: var(--colors--headings);
  background-color: #0000;
  border-style: none;
  padding: 0;
  transition: opacity .3s;
}

.button.cc-work-title:hover {
  opacity: .7;
}

.button.cc-socials {
  background-color: #0000;
  border-style: none;
  border-width: 0;
  padding: 0;
}

.button.cc-socials:hover {
  color: var(--colors--background);
}

.button.cc-nav {
  color: inherit;
  background-color: #0000;
}

.button.tertiary {
  color: var(--colors--headings);
  background-color: #0000;
  border-style: none;
  padding: .1em;
}

.button.tertiary:hover {
  background-color: #0000;
}

.card {
  border: 1px solid var(--colors--border);
  border-radius: var(--_components---card--border-radius);
  flex-direction: column;
  justify-content: flex-start;
  transition: background-color .3s cubic-bezier(.165, .84, .44, 1);
  display: flex;
  position: relative;
  overflow: hidden;
}

.card:hover:where(.w-variant-7a49f1e4-82e5-f9b4-164d-70415eb8af86) {
  background-color: var(--colors--border);
}

.card.cc-blog {
  background-color: var(--colors--background);
  --colors--background: var(--_colour---green--dark-pale);
  --colors--headings: var(--_colour---neutral--black);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--dark-grey);
  --colors--border: var(--_colour---primary--green);
  height: 100%;
  text-decoration: none;
  transition: color .3s cubic-bezier(.165, .84, .44, 1), background-color .3s cubic-bezier(.165, .84, .44, 1);
}

.card.cc-blog:hover {
  --colors--background: var(--_colour---neutral--black);
  --colors--headings: var(--_colour---neutral--white);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--light-grey);
  --colors--border: var(--_colour---neutral--mid-black);
}

.card-body {
  padding: var(--_components---card--padding);
  flex-direction: column;
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  position: relative;
}

.card-body.cc-blog {
  display: flex;
}

.page-wrapper {
  background-color: var(--colors--background);
  color: var(--colors--body);
  flex-flow: column;
  display: flex;
  position: relative;
  overflow: clip;
}

.page-wrapper.cc-utility {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  display: flex;
}

.styles__global-embed-code {
  position: fixed;
  inset: 0% auto auto 0%;
}

.paragraph-sm {
  margin-bottom: var(--_typography---paragraph-sm--bottom-margin);
  font-family: var(--_typography---paragraph-sm--font);
  color: var(--colors--body);
  font-size: var(--_typography---paragraph-sm--font-size);
  line-height: var(--_typography---paragraph-sm--line-height);
  font-weight: var(--_typography---paragraph-sm--font-weight);
  letter-spacing: var(--_typography---paragraph-sm--letter-spacing);
}

.paragraph-sm.u-mb-0 {
  margin-bottom: 0%;
}

.paragraph-lg {
  margin-bottom: var(--_typography---paragraph-lg--bottom-margin);
  font-family: var(--_typography---paragraph-lg--font);
  color: var(--colors--body);
  font-size: var(--_typography---paragraph-lg--font-size);
  line-height: var(--_typography---paragraph-lg--line-height);
  font-weight: var(--_typography---paragraph-lg--font-weight);
  letter-spacing: var(--_typography---paragraph-lg--letter-spacing);
}

.paragraph-lg.u-mb-md.u-text-heading {
  margin-top: 25px;
  margin-bottom: var(--_layout---spacing--margin-xs);
  width: 100%;
}

.paragraph-lg.cc-blog-title {
  text-transform: none;
  color: inherit;
  margin-bottom: 0;
}

.paragraph-lg.cc-work-summary {
  margin-bottom: var(--_layout---spacing--margin-md);
}

.paragraph-xl {
  margin-bottom: var(--_typography---paragraph-xl--bottom-margin);
  font-family: var(--_typography---paragraph-xl--font);
  color: var(--colors--body);
  font-size: var(--_typography---paragraph-xl--font-size);
  line-height: var(--_typography---paragraph-xl--line-height);
  font-weight: var(--_typography---paragraph-xl--font-weight);
  letter-spacing: var(--_typography---paragraph-xl--letter-spacing);
}

.u-text-primary {
  color: var(--colors--accent);
  display: inline;
}

.u-d-none {
  display: none;
}

.u-sr-only {
  white-space: nowrap;
  border: 0 solid #0000;
  width: 1px;
  height: 1px;
  margin-top: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.u-w-100 {
  width: 100%;
}

.u-w-100.cc-logo {
  display: none;
}

.u-img-cover {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.u-img-cover:where(.w-variant-109354ec-e18b-6d34-fc97-2bd60ed75688) {
  object-position: 0% 0%;
}

.u-img-cover:where(.w-variant-40e3e929-19ef-9b36-6290-dc5709682adc) {
  object-position: 50% 0%;
}

.u-img-cover:where(.w-variant-0da5bd83-82c0-9ff7-a129-8f787e266277) {
  object-position: 100% 0%;
}

.u-img-cover:where(.w-variant-95f10c6a-375e-6791-942f-befcfd098245) {
  object-position: 0% 50%;
}

.u-img-cover:where(.w-variant-70209591-5532-2fc0-7d51-2b8b6dddb987) {
  object-position: 100% 50%;
}

.u-img-cover:where(.w-variant-a7ddd5b7-263c-c9cb-72d3-05c79a748253) {
  object-position: 0% 100%;
}

.u-img-cover:where(.w-variant-1d20b8de-5e87-989b-a18d-586e4efc38e7) {
  object-position: 50% 100%;
}

.u-img-cover:where(.w-variant-0230cd8b-7253-149b-4b7c-efe7ca05c971) {
  object-position: 100% 100%;
}

.u-img-cover.cc-header {
  z-index: -1;
  z-index: -1;
}

.u-link-cover {
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.u-z-index-1 {
  z-index: 1;
  position: relative;
}

.u-mt-lg {
  margin-top: var(--_layout---spacing--margin-lg);
}

.u-mt-auto {
  margin-top: auto;
}

.u-mb-0 {
  margin-bottom: 0;
}

.u-pb-0 {
  padding-bottom: 0;
}

.u-position-relative {
  position: relative;
}

.page-main {
  flex-flow: column;
  flex: 1;
  display: flex;
}

.u-minh-100vh {
  min-height: 100vh;
}

.btn-icon {
  justify-content: center;
  align-items: center;
  max-width: .8em;
  line-height: 1;
  display: inline-flex;
}

.btn-icon.cc-load-more {
  max-width: 1em;
}

.btn-icon.cc-nav {
  aspect-ratio: 1;
  flex-flow: column;
  width: .8em;
  height: .8em;
}

.u-mb-xs {
  margin-bottom: var(--_layout---spacing--margin-xs);
}

.nav {
  z-index: 999;
  border-bottom: 1px solid var(--colors--border);
  background-color: var(--colors--background);
  color: var(--colors--headings);
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
  transition: color .3s cubic-bezier(.165, .84, .44, 1), border-color .3s cubic-bezier(.165, .84, .44, 1);
  position: fixed;
  top: 0%;
}

.nav:where(.w-variant-a581c9fc-ef98-8c23-9236-9b7313e49a63) {
  color: var(--colors--background);
  background-color: #0000;
  border-bottom-color: #0000;
  transition: color .3s, border-color .3s cubic-bezier(.165, .84, .44, 1);
}

.nav.scrolled {
  border-bottom-style: solid;
  border-bottom-color: var(--colors--border);
}

.nav-logo_link {
  width: 5rem;
  padding-left: 0;
  transition-property: color, opacity;
  transition-duration: .3s, .3s;
  transition-timing-function: cubic-bezier(.165, .84, .44, 1), cubic-bezier(.165, .84, .44, 1);
  color: inherit !important;
}

.nav-logo_link:hover {
  opacity: .75;
}

.nav-link {
  color: currentColor;
  justify-content: center;
  align-items: center;
  padding: .125rem .25rem;
  transition-property: color;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.165, .84, .44, 1);
  display: inline-flex;
}

.nav-link:hover, .nav-link:focus-visible, .nav-link[data-wf-focus-visible] {
  color: var(--colors--accent);
}

.nav-link.w--current {
  color: currentColor;
}

.nav-link.u-d-none {
  display: none;
}

.nav-menu {
  margin-left: auto;
  position: static;
}

.nav-custom-css {
  display: none;
}

.nav-menu_btn {
  z-index: 1;
  border-radius: var(--_components---button--border-radius);
  background-color: var(--colors--border);
  color: var(--colors--headings);
  justify-content: center;
  align-items: center;
  margin-left: auto;
  padding: 0;
  overflow: hidden;
}

.nav-menu_btn-bar {
  background-color: currentColor;
  width: 100%;
  height: 1px;
  transition-property: opacity, transform;
  transition-duration: .3s, .3s;
  transition-timing-function: cubic-bezier(.165, .84, .44, 1), cubic-bezier(.165, .84, .44, 1);
}

.nav-menu_btn-bar.cc-middle {
  margin-top: 4px;
  margin-bottom: 4px;
}

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

.footer-link {
  color: var(--colors--headings);
  text-decoration: none;
  transition: opacity .3s;
}

.footer-link:hover {
  opacity: .6;
}

.footer-link.cc-footer-extras {
  color: var(--colors--body);
  font-size: var(--_typography---paragraph-sm--font-size);
  font-size: var(--_typography---paragraph-sm--font-size);
}

.footer-social_link {
  grid-column-gap: .4em;
  grid-row-gap: .4em;
  border-radius: var(--_components---button--border-radius);
  background-color: var(--colors--accent);
  color: var(--colors--headings);
  font-size: var(--_typography---paragraph-sm--font-size);
  line-height: var(--_typography---paragraph-sm--line-height);
  align-items: center;
  padding: .5em;
  text-decoration: none;
  transition: background-color .3s, color .3s;
  display: flex;
}

.footer-social_link:hover {
  background-color: var(--colors--headings);
  color: var(--colors--accent);
}

.u-text-balance {
  text-wrap: balance;
}

.u-text-clamp-3 {
  display: -webkit-box;
  overflow: hidden;
}

.icon-color {
  color: inherit;
  display: inline-flex;
}

.icon-color:where(.w-variant-51d5d8fc-9046-c299-32a4-4c984147d74e) {
  color: var(--colors--accent);
}

.icon {
  width: 1em;
  font-size: 1em;
  font-style: normal;
  display: inline-flex;
}

.icon:where(.w-variant-cdea1590-5e30-cc7c-cd65-a8b7cf1f5b9e) {
  font-size: var(--_size---1-5rem\<deleted\|variable-f3ca9317-f658-e5ae-7950-f14c04b8bdeb\>);
}

.icon:where(.w-variant-073eca29-ad4a-37a9-ba36-9e6d4f264087) {
  font-size: var(--_size---2rem\<deleted\|variable-703e76dd-22c1-0e62-be30-102e06bdb527\>);
}

.icon:where(.w-variant-3a6d74cd-d37c-fae6-8975-689219a7df3f) {
  font-size: var(--_size---3rem\<deleted\|variable-69c16ee0-18a3-4590-ef2c-d3d00d2064c9\>);
}

.u-mode-invert {
  background-color: var(--colors--background);
  color: var(--colors--body);
  --colors--background: var(--_colour---neutral--black);
  --colors--headings: var(--_colour---neutral--white);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--light-grey);
  --colors--border: var(--_colour---neutral--mid-black);
}

.footer-logo_link {
  color: var(--colors--headings);
  width: 100%;
  line-height: 1;
  transition: color .3s cubic-bezier(.165, .84, .44, 1);
}

.footer-logo_link:hover {
  color: var(--colors--accent);
}

.img-component {
  aspect-ratio: 4 / 3;
  border-radius: var(--_components---card--border-radius);
  width: 100%;
  position: relative;
  overflow: hidden;
}

.img-component:where(.w-variant-b5e7a2df-0aae-a75d-3cfa-d5f2e50ac839) {
  aspect-ratio: 16 / 9;
}

.img-component:where(.w-variant-c7b9829e-5860-6efa-0d93-1aa6a99a637f) {
  aspect-ratio: 3 / 4;
}

.img-component:where(.w-variant-1ead5ba6-2a8f-9163-58f6-93b05efab34b) {
  aspect-ratio: 9 / 16;
}

.img-component:where(.w-variant-9fbd509f-cdc1-3164-90ff-53a572e70fad) {
  aspect-ratio: 1;
}

.img-component:where(.w-variant-0375267a-29ec-433a-03b2-8f111c99a60b) {
  aspect-ratio: auto;
}

.img-component:where(.w-variant-bb15dbc4-816d-ba55-5a68-046b1d0e5917) {
  z-index: -1;
  aspect-ratio: auto;
  border-radius: 0;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.img-component:where(.w-variant-4dfb4402-6ba4-4a31-330f-5985bd038edc) {
  aspect-ratio: auto;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.spacer-component {
  height: var(--_layout---grid--gap-main);
  box-shadow: none;
  width: 100%;
  padding: 0;
  outline: none !important;
}

.spacer-component:where(.w-variant-e4fc4cad-f8e2-63d7-bb51-6c5b9af34c38) {
  height: var(--_layout---grid--gap-sm);
}

.spacer-component:where(.w-variant-60e88f1c-8990-2b60-1d3a-e5ec07d412dc) {
  height: var(--_layout---grid--gap-md);
}

.spacer-component:where(.w-variant-aea45f07-8b30-d181-0430-911625064b03) {
  height: calc(var(--_components---section--padding) * .75);
}

.spacer-component:where(.w-variant-be7ce5b4-d478-e0d4-acc9-409afe8efce5) {
  height: 2rem;
}

.img-component_bg-overlay {
  display: none;
}

.img-component_bg-overlay:where(.w-variant-bb15dbc4-816d-ba55-5a68-046b1d0e5917) {
  opacity: .75;
  background-image: linear-gradient(0deg, #000, #0000 50%);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset: 0%;
}

.slider-pagination {
  grid-column-gap: .4em;
  grid-row-gap: .4em;
  border-radius: var(--_components---button--border-radius);
  background-color: var(--colors--accent);
  border: 1px #000;
  flex: 0 auto;
  justify-content: center;
  align-items: center;
  padding: .4em;
  display: flex;
}

.slider-pagination.cc-jointworks {
  right: var(--_components---container--padding);
  bottom: var(--_components---section--padding);
}

.slider-nav {
  z-index: 99;
  justify-content: space-between;
  align-items: center;
  width: auto;
  display: flex;
  position: absolute;
  bottom: 1.5rem;
  right: 1.5rem;
}

.slider-nav:where(.w-variant-3be1a3db-5e87-630b-91c6-1da61f1114c5), .slider-nav.cc-our-people, .slider-nav.cc-our-people {
  right: var(--_components---container--padding);
  bottom: var(--_components---section--padding);
}

.slider-pagination_button {
  border: 1px solid var(--colors--background);
  background-color: var(--colors--background);
  opacity: .5;
  cursor: pointer;
  border-radius: 10rem;
  width: .5rem;
  height: .5rem;
  padding: 0;
  transition: border-color .3s cubic-bezier(.165, .84, .44, 1), background-color .3s cubic-bezier(.165, .84, .44, 1);
}

.slider-pagination_button:hover {
  border-color: #fff;
}

.slider-pagination_button:focus-visible, .slider-pagination_button[data-wf-focus-visible] {
  outline-offset: 2px;
  outline: 2px solid #d14424;
}

.slider-pagination_button.cc-active {
  opacity: 1;
}

.footer-inner-footer {
  display: none;
}

.btn-wrap {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.btn-wrap.cc-contact {
  grid-column-gap: 0rem;
  grid-row-gap: 0rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.btn-wrap.cc-time {
  grid-column-gap: .3em;
  grid-row-gap: .3em;
}

.btn-wrap.cc-work-title {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  color: var(--colors--headings);
  text-align: left;
  font-size: 1.2em;
}

.btn-wrap.cc-work-tag {
  margin-top: auto;
}

.btn-wrap.u-mb-md {
  margin-bottom: var(--_layout---spacing--margin-xs);
}

.btn-wrap.cc-section-link {
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.btn-wrap.cc-center {
  justify-content: center;
  align-items: center;
}

.btn-wrap.cc-footer {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: wrap;
  justify-content: flex-end;
  align-items: center;
}

.embed-code.cc-cta {
  background-color: var(--colors--background);
  background-color: var(--colors--background);
  inset: 0% 0% 0% auto;
  justify-content: flex-end;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.nav-inner {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.u-line {
  background-color: var(--colors--border);
  width: 100%;
  height: 1px;
  padding: 0;
}

.u-line.cc-home-hero {
  margin-top: calc(var(--_components---section--padding) / 2);
  margin-bottom: calc((var(--_components---section--padding) / 2)  - 1rem);
}

.u-text-heading {
  color: var(--colors--headings);
}

.cl-wrap.cc-client-list {
  flex: none;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.cta-content {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  text-align: center;
  flex-flow: column;
  align-items: center;
  display: flex;
}

.cta-bg {
  background-color: var(--colors--border);
  opacity: .75;
  position: absolute;
  inset: 2rem;
}

.scroll-top {
  aspect-ratio: 1;
  border-radius: var(--_components---button--border-radius);
  background-color: var(--colors--accent);
  color: var(--colors--headings);
  font-size: var(--_typography---paragraph-lg--font-size);
  cursor: pointer;
  justify-content: center;
  align-items: center;
  width: 2rem;
  margin-left: auto;
  padding: 0;
  display: flex;
}

.scroll-top:hover {
  background-color: var(--colors--headings);
  color: var(--colors--accent);
}

.footer-spacer {
  height: calc(var(--_components---section--padding) / 2);
}

.news-title-link {
  margin-bottom: var(--_layout---spacing--margin-xs);
  color: var(--colors--headings);
  text-decoration: none;
  transition: opacity .3s cubic-bezier(.165, .84, .44, 1);
}

.news-title-link:hover {
  opacity: .7;
}

.image-wrap {
  border-radius: var(--_components---card--border-radius);
  position: relative;
  overflow: hidden;
}

.image-wrap.cc-featured-news {
  aspect-ratio: 16 / 9;
}

.image-wrap.cc-news-head {
  aspect-ratio: 2;
  border-radius: 0;
  width: 100%;
}

.image-wrap.cc-socials {
  aspect-ratio: 3 / 4;
  background-color: var(--colors--headings);
  justify-content: center;
  align-items: center;
  min-width: 20vw;
  margin-left: .125rem;
  margin-right: .125rem;
  text-decoration: none;
  display: flex;
}

.image-wrap.cc-blog-thumb {
  margin-bottom: var(--_layout---spacing--margin-sm);
}

.image-wrap.our-people {
  height: 100%;
}

.tag {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  border: 1px solid var(--colors--border);
  border-radius: var(--_components---button--border-radius);
  background-color: var(--colors--background);
  font-size: var(--_typography---paragraph-sm--font-size);
  --colors--background: var(--_colour---green--dark-pale);
  --colors--headings: var(--_colour---neutral--black);
  --colors--accent: var(--_colour---primary--green);
  --colors--body: var(--_colour---neutral--dark-grey);
  --colors--border: var(--_colour---primary--green);
  flex: 0 auto;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  padding: .25em;
  text-decoration: none;
  display: inline-flex;
}

.tag.cc-blog {
  inset: auto auto 1rem 1rem;
  position: absolute;
  inset: auto auto 1rem 1rem;
}

.line-offset-wrap {
  border-left: 1px solid var(--colors--border);
  flex-flow: row;
  padding-left: 1rem;
}

.line-offset-wrap.cc-team {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  display: flex;
}

.line-offset-wrap.cc-quote {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  border: 1px solid var(--colors--accent);
  border-radius: var(--_components---card--border-radius);
  background-color: var(--_colour---green--pale-green);
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  border: 1px solid var(--colors--accent);
  border-radius: var(--_components---card--border-radius);
  background-color: var(--_colour---green--pale-green);
  flex-flow: column;
  padding: 1rem;
  display: flex;
}

.hero-fade {
  background-image: linear-gradient(#00000080, #0000 25% 50%, #0000 75%, #00000080);
  position: absolute;
  inset: 0%;
}

.team-title {
  font-family: var(--_typography---fonts--heading-font);
  color: var(--_colour---neutral--light-grey);
  text-align: right;
  text-transform: uppercase;
  padding-bottom: .05em;
  font-size: 5rem;
  line-height: .8;
}

.team-title.u-text-primary {
  color: var(--colors--accent);
}

.u-text-decoration-none {
  text-transform: none;
}

.cc-cta-only {
  grid-column-gap: .075em;
  grid-row-gap: .075em;
  text-wrap: pretty;
  flex-flow: wrap;
  justify-content: center;
  display: inline-flex;
}

.background-slider {
  z-index: 1;
  pointer-events: none;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.logo-lottie, .logo-lottie-white {
  width: 100%;
}

@media screen and (max-width: 991px) {
  .section.cc-home-hero {
    padding-top: calc(var(--_components---section--padding)  + 2.5rem);
  }

  .section.cc-hero, .section.cc-home-hero {
    padding-top: calc(var(--_components---section--padding)  + 2.5rem);
  }

  .section.cc-social-proof {
    padding-top: calc(var(--_components---section--padding) / 3);
    padding-bottom: calc(var(--_components---section--padding) / 3);
  }

  .section.u-mode-invert.cc-people-slider {
    min-height: 100vh;
  }

  .section.cc-hero {
    padding-top: calc(var(--_components---section--padding)  + 2.5rem);
  }

  .row.cc-team {
    grid-row-gap: 2.5rem;
    grid-row-gap: 2.5rem;
  }

  .col:where(.w-variant-28e74f51-d7e2-a771-32c6-dda728ccfa16) {
    flex-basis: 50%;
    max-width: 33.3333%;
  }

  .col:where(.w-variant-2a872dd3-bab5-8141-0ad7-251b924e42e6) {
    flex-basis: 50%;
    max-width: 50%;
  }

  .col:where(.w-variant-f8adaa2d-7dff-f490-b6dd-19f48419d59b) {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col:where(.w-variant-1809bbfe-93c5-9995-a76f-dc2c5b37bfe3) {
    flex-basis: 50%;
    max-width: 50%;
  }

  .col:where(.w-variant-d2d2a23d-14a1-7f5e-e8ec-4a285e5f4a7b), .col:where(.w-variant-c40c2b54-bd7f-c6df-c4ad-1c9f757a89d2) {
    flex-basis: 50%;
    max-width: 100%;
  }

  .col:where(.w-variant-95c67bf8-407f-143d-c1b2-46906c26a2f4), .col:where(.w-variant-6f373193-993b-d370-7068-a233ac19befc) {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col:where(.w-variant-37882ba8-3b46-b8b4-f297-a33f19abd3db) {
    flex-basis: 50%;
    max-width: 50%;
  }

  .col.col-md-9 {
    flex-basis: 75%;
    max-width: 75%;
  }

  .col.col-md-2 {
    flex-basis: 16.67%;
    max-width: 16.6667%;
  }

  .col.col-md-6 {
    flex-basis: 50%;
    max-width: 50%;
  }

  .col.col-md-6.col-xs-12.cc-hide-last:last-child {
    display: none;
  }

  .col.col-md-5 {
    flex-basis: 41.67%;
    max-width: 41.6667%;
  }

  .col.col-md-4 {
    flex-basis: 33.33%;
    max-width: 33.3333%;
  }

  .col.col-md-11 {
    flex-basis: 91.67%;
    max-width: 91.6667%;
  }

  .col.col-md-3 {
    flex-basis: 25%;
    max-width: 25%;
  }

  .col.col-md-8 {
    flex-basis: 66.67%;
    max-width: 66.6667%;
  }

  .col.col-md-7 {
    flex-basis: 58.33%;
    max-width: 58.3333%;
  }

  .col.col-md-10 {
    flex-basis: 83.33%;
    max-width: 83.3333%;
  }

  .col.col-md-1 {
    flex-basis: 8.33%;
    max-width: 8.33333%;
  }

  .col.col-md-12 {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col.col-md-first {
    order: -1;
  }

  .col.col-md-last {
    order: 1;
  }

  .col.col-lg-offset-6.col-md-offset-3.col-sm-offset-0 {
    padding-left: calc(var(--_layout---grid--gap-main) / 2);
    padding-left: calc(var(--_layout---grid--gap-main) / 2);
    padding-left: calc(var(--_layout---grid--gap-main) / 2);
  }

  .col.col-md-offset-0 {
    margin-left: 0%;
  }

  .col.col-md-offset-1 {
    margin-left: 8.33333%;
  }

  .col.col-md-offset-2 {
    margin-left: 16.6667%;
  }

  .col.col-md-offset-3 {
    margin-left: 25%;
  }

  .col.col-md-offset-4 {
    margin-left: 33.3333%;
  }

  .col.col-md-offset-5 {
    margin-left: 41.67%;
  }

  .col.col-md-offset-6 {
    margin-left: 50%;
  }

  .col.cc-work-thumb:last-child {
    display: none;
  }

  .button.cc-nav {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    padding: .6em;
  }

  .u-mt-0 {
    margin-top: 0;
  }

  .u-mb-0 {
    margin-bottom: 0;
  }

  .u-m-0 {
    margin: 0;
  }

  .u-pb-0 {
    padding-bottom: 0;
  }

  .u-p-0 {
    padding: 0;
  }

  .u-pt-0 {
    padding-top: 0;
  }

  .rich-text blockquote {
    font-size: var(--_typography---type-paragraph-lg--font-size-md\<deleted\|variable-cdbe9950-9272-2284-ccf6-60cab96acd5f\>);
  }

  .rich-text figcaption {
    font-size: var(--_typography---type-paragraph-sm--font-size-md\<deleted\|variable-94c5336e-6e13-9026-329b-a7b4ba64e183\>);
  }

  .rich-text.cc-work-cms li {
    max-width: calc(75.5% - (var(--_layout---grid--gap-main) / 2));
    margin-bottom: .25em;
  }

  .rich-text.cc-work-cms ul {
    flex-flow: wrap;
  }

  .rich-text.cc-work-cms p {
    max-width: calc(75% - (var(--_layout---grid--gap-main) / 2));
  }

  .u-md-d-none {
    display: none;
  }

  .u-md-d-block {
    display: block;
  }

  .nav-logo_link {
    z-index: 1;
    width: 3rem;
  }

  .nav-link {
    font-family: var(--_typography---fonts--heading-font);
    text-align: center;
    text-transform: uppercase;
    justify-content: flex-start;
    align-items: center;
    width: auto;
    margin-left: auto;
    margin-right: auto;
    padding: 0 0 .05em;
    font-size: 12vw;
    line-height: .9;
    display: block;
  }

  .nav-link.u-d-none.u-md-d-block {
    display: block;
  }

  .nav-menu {
    background-color: var(--colors--background);
    color: var(--colors--headings);
    --colors--background: var(--_colour---neutral--black);
    --colors--headings: var(--_colour---neutral--white);
    --colors--accent: var(--_colour---primary--green);
    --colors--body: var(--_colour---neutral--light-grey);
    --colors--border: var(--_colour---neutral--mid-black);
    flex-flow: column;
    order: -1;
    justify-content: space-between;
    align-items: center;
    min-width: 100vw;
    min-height: 100dvh;
    padding-top: 6rem;
    padding-bottom: 1.5rem;
    position: fixed;
    inset: 0%;
  }

  .nav-menu_btn {
    border-radius: var(--_components---button--border-radius);
    order: 1;
  }

  .nav-menu_btn:where(.w-variant-a581c9fc-ef98-8c23-9236-9b7313e49a63) {
    background-color: var(--colors--headings);
    color: var(--colors--background);
  }

  .nav-menu_btn:focus-visible, .nav-menu_btn[data-wf-focus-visible] {
    outline-color: var(--colors--accent);
    outline-offset: 0px;
    outline-width: 2px;
    outline-style: solid;
  }

  .nav-menu_btn.w--open {
    background-color: var(--colors--accent);
    color: var(--_colour---neutral--black);
  }

  .nav-menu_container {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    border-top: 1px solid var(--colors--border);
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .spacer-component:where(.w-variant-be7ce5b4-d478-e0d4-acc9-409afe8efce5) {
    height: 1.5rem;
  }

  .footer-inner-footer {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    flex-flow: column;
    justify-content: flex-end;
    align-items: center;
    height: 100%;
    display: flex;
  }

  .nav-menu_inner {
    flex-flow: column;
    justify-content: space-between;
    height: 100%;
    display: flex;
  }

  .btn-wrap {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    display: flex;
  }

  .btn-wrap.cc-gap-lg {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .btn-wrap.cc-team {
    flex-flow: wrap;
  }

  .menu_footer-social {
    aspect-ratio: 1;
    color: var(--colors--accent);
    width: 3rem;
  }

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

  .hero_video {
    aspect-ratio: 3 / 2;
  }

  .u-line.cc-home-hero {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }

  .marquee-card {
    width: 16rem;
  }

  .work-thumbnail {
    min-width: 30vw;
  }

  .social-proof-item {
    max-width: 15vw;
    height: 5vw;
    margin-left: 3.5vw;
    margin-right: 3.5vw;
  }

  .cta-bg {
    left: var(--_components---container--padding);
    top: var(--_components---container--padding);
    right: var(--_components---container--padding);
    bottom: var(--_components---container--padding);
  }

  .image-wrap.our-people {
    aspect-ratio: 16 / 9;
    width: 100%;
    height: auto;
  }

  .image-wrap.cc-socials {
    min-width: 30vw;
  }

  .about-marquee-item {
    width: 25vw;
  }

  .team-title-wrap {
    grid-column-gap: .8em;
    grid-row-gap: .2em;
    flex-flow: wrap;
    display: flex;
  }

  .accordion.cc-custom-tm {
    margin-top: 1rem;
  }

  .section-alternative.cc-home-hero {
    padding-top: calc(var(--_components---section--padding)  + 2.5rem);
  }

  .section-alternative.cc-hero, .section-alternative.cc-home-hero {
    padding-top: calc(var(--_components---section--padding)  + 2.5rem);
  }

  .section-alternative.cc-social-proof {
    padding-top: calc(var(--_components---section--padding) / 3);
    padding-bottom: calc(var(--_components---section--padding) / 3);
  }

  .section-alternative.u-mode-invert.cc-people-slider {
    min-height: 100vh;
  }

  .section-alternative.cc-hero {
    padding-top: calc(var(--_components---section--padding)  + 2.5rem);
  }
}

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

  h6 {
    font-size: .8rem;
  }

  .h5.cc-work-description {
    font-size: var(--_typography---paragraph-lg--font-size);
    line-height: var(--_typography---paragraph-body--line-height);
    font-size: var(--_typography---paragraph-lg--font-size);
    line-height: var(--_typography---paragraph-body--line-height);
  }

  .row.row-gap-sm.cc-work-thumb {
    margin-left: 0;
    margin-right: 0;
  }

  .row.cc-featured-news {
    grid-row-gap: var(--_layout---grid--gap-md);
  }

  .row.work-tags-row {
    grid-row-gap: 0px;
  }

  .col:where(.w-variant-2a872dd3-bab5-8141-0ad7-251b924e42e6), .col:where(.w-variant-52b169ce-f9c2-1128-cb8d-e5acee9f9159), .col:where(.w-variant-1809bbfe-93c5-9995-a76f-dc2c5b37bfe3), .col:where(.w-variant-d2d2a23d-14a1-7f5e-e8ec-4a285e5f4a7b), .col:where(.w-variant-c40c2b54-bd7f-c6df-c4ad-1c9f757a89d2) {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col:where(.w-variant-28e74f51-d7e2-a771-32c6-dda728ccfa16) {
    max-width: 50%;
  }

  .col.col-sm-12 {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col.col-sm-9 {
    flex-basis: 75%;
    max-width: 75%;
  }

  .col.col-lg-2.col-md-3.col-sm-grow {
    flex: 1;
    max-width: 100%;
  }

  .col.col-sm-10 {
    flex-basis: 83.33%;
    max-width: 83.3333%;
  }

  .col.col-sm-7 {
    flex-basis: 58.33%;
    max-width: 58.3333%;
  }

  .col.col-sm-5 {
    flex-basis: 41.67%;
    max-width: 41.6667%;
  }

  .col.col-sm-6 {
    flex-basis: 50%;
    max-width: 50%;
  }

  .col.col-sm-3 {
    flex-basis: 25%;
    max-width: 25%;
  }

  .col.col-lg-12.cc-featured-img {
    margin-bottom: .5rem;
  }

  .col.col-sm-4 {
    flex-basis: 33.33%;
    max-width: 33.3333%;
  }

  .col.col-sm-1 {
    flex-basis: 8.33%;
    max-width: 8.33333%;
  }

  .col.col-sm-8 {
    flex-basis: 66.67%;
    max-width: 66.6667%;
  }

  .col.col-sm-11 {
    flex-basis: 91.67%;
    max-width: 91.6667%;
  }

  .col.col-lg-4.cc-work-thumb {
    flex: none;
    width: 60vw;
    max-width: none;
  }

  .col.col-sm-2 {
    flex-basis: 16.67%;
    max-width: 16.6667%;
  }

  .col.col-sm-first {
    order: -1;
  }

  .col.col-sm-last {
    order: 1;
  }

  .col.col-sm-offset-0 {
    margin-left: 0%;
  }

  .col.col-sm-offset-1 {
    margin-left: 8.33333%;
  }

  .col.col-sm-offset-2 {
    margin-left: 16.6667%;
  }

  .col.col-sm-offset-3 {
    margin-left: 25%;
  }

  .col.col-sm-offset-4 {
    margin-left: 33.3333%;
  }

  .col.col-sm-offset-5 {
    margin-left: 41.67%;
  }

  .col.col-sm-offset-6 {
    margin-left: 50%;
  }

  .col.col-sm-shrink {
    flex: 0 auto;
  }

  .col.cc-work-thumb:first-child {
    display: block;
  }

  .col.cc-work-image {
    flex: 0 auto;
  }

  .form-success_flex {
    max-width: 340px;
  }

  .styles__section-label {
    padding-bottom: 10px;
  }

  .paragraph-lg.u-text-heading.u-mb-0.u-mb-sm {
    margin-bottom: var(--_layout---spacing--margin-sm);
  }

  .paragraph-lg.u-text-heading.u-mb-0.u-mb-xs {
    margin-bottom: var(--_layout---spacing--margin-xs);
  }

  .paragraph-lg.cc-work-summary {
    font-size: var(--_typography---paragraph-body--font-size);
    line-height: var(--_typography---paragraph-body--line-height);
  }

  .u-pb-0 {
    padding-bottom: 0;
  }

  .u-p-0 {
    padding: 0;
  }

  .u-pt-0 {
    padding-top: 0;
  }

  .rich-text blockquote {
    font-size: var(--_typography---type-paragraph-lg--font-size-sm\<deleted\|variable-841c9cf1-74b8-7850-db1d-b82cdc8d3013\>);
  }

  .rich-text figcaption {
    font-size: var(--_typography---type-paragraph-sm--font-size-sm\<deleted\|variable-dce65071-f183-75c5-98aa-d8afc83560a0\>);
  }

  .rich-text.cc-work-cms li {
    min-width: calc(50% - (var(--_layout---grid--gap-main) / 2));
    max-width: calc(50% - (var(--_layout---grid--gap-main) / 2));
    margin-bottom: .5em;
  }

  .rich-text.cc-work-cms ul {
    justify-content: flex-start;
  }

  .rich-text.cc-work-cms p {
    max-width: none;
  }

  .u-sm-d-none {
    display: none;
  }

  .u-sm-d-block {
    display: block;
  }

  .accordion-trigger {
    padding: var(--_components---card--card-body-padding-sm\<deleted\|variable-886aa6f6-843b-26b9-170b-96cc08ca36e2\>);
  }

  .accordion-icon {
    align-items: center;
    width: 28px;
    height: 28px;
    display: flex;
  }

  .accordion-content {
    padding-right: var(--_components---card--card-body-padding-sm\<deleted\|variable-886aa6f6-843b-26b9-170b-96cc08ca36e2\>);
    padding-left: var(--_components---card--card-body-padding-sm\<deleted\|variable-886aa6f6-843b-26b9-170b-96cc08ca36e2\>);
  }

  .modal {
    padding: var(--_components---card--card-body-padding-sm\<deleted\|variable-886aa6f6-843b-26b9-170b-96cc08ca36e2\>);
  }

  .nav-link {
    font-size: 18vw;
  }

  .footer-logo_link {
    width: 15vw;
  }

  .spacer-component:where(.w-variant-be7ce5b4-d478-e0d4-acc9-409afe8efce5) {
    height: 1.25rem;
  }

  .slider-pagination {
    flex: none;
    order: 9999;
    width: 100%;
    margin-top: 2em;
  }

  .slider-pagination.cc-our-people {
    margin-top: 1em;
  }

  .slider-nav {
    flex-flow: wrap;
  }

  .slider-nav.cc-our-people {
    margin-left: calc(var(--_layout---grid--gap-main) / 2);
    margin-left: calc(var(--_layout---grid--gap-main) / 2);
    position: static;
  }

  .btn-wrap.cc-team {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .btn-wrap.cc-work-title {
    justify-content: space-between;
  }

  .btn-wrap.cc-work-tag {
    justify-content: flex-end;
    align-items: center;
    margin-top: 0;
  }

  .menu_footer-social {
    width: 2.5rem;
  }

  .display {
    font-size: clamp(3rem, 25vw, 14rem);
  }

  .cl-wrap.cc-work-thumb {
    padding-left: 16px;
    padding-right: 16px;
    overflow: scroll;
  }

  .social-proof-item {
    max-width: 25vw;
  }

  .footer-spacer {
    height: 2rem;
  }

  .image-wrap.cc-featured-news, .image-wrap.cc-news-head {
    aspect-ratio: 4 / 3;
  }

  .image-wrap.our-people {
    aspect-ratio: 3 / 2;
  }

  .image-wrap.cc-featured-news, .image-wrap.cc-news-head {
    aspect-ratio: 4 / 3;
  }

  .line-offset-wrap.cc-sm-hide {
    border-left-style: none;
    padding-left: 0;
  }

  .line-offset-wrap.cc-team {
    border-left-style: none;
    padding-left: 0;
    display: flex;
  }

  .line-offset-wrap.cc-sm-no-line {
    border-left-style: none;
    padding-left: 0;
  }

  .line-offset-wrap.cc-quote {
    display: flex;
  }

  .team-title {
    font-size: 3.5rem;
  }

  .contact-arrow {
    margin-top: 0;
  }

  .work-body.row.row-align-end {
    padding-top: var(--_layout---spacing--margin-sm);
    padding-top: var(--_layout---spacing--margin-sm);
    padding-top: var(--_layout---spacing--margin-sm);
  }

  .thumbnail-scroll {
    overflow: scroll;
  }

  .accordion.cc-custom-tm {
    margin-top: .5rem;
  }

  .image {
    position: fixed;
    top: 0%;
    left: 0%;
  }
}

@media screen and (max-width: 479px) {
  .section.cc-home-hero, .section.cc-hero, .section.cc-home-hero, .section.cc-hero {
    padding-top: calc(var(--_components---section--padding)  + 3rem);
  }

  .row.row-align-end.row-justify-between {
    flex-flow: wrap;
  }

  .row.row-gap-sm.cc-work-thumb {
    margin-left: 0;
    margin-right: 0;
  }

  .row.cc-footer {
    grid-row-gap: 1.5rem;
  }

  .col:where(.w-variant-28e74f51-d7e2-a771-32c6-dda728ccfa16) {
    flex-basis: 100%;
  }

  .col:where(.w-variant-63569d8e-a8ac-61e1-0666-21eb6073c541) {
    flex: 0 auto;
  }

  .col:where(.w-variant-37882ba8-3b46-b8b4-f297-a33f19abd3db) {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col.col-lg-6.col-sm-12 {
    flex: 100%;
    max-width: 100%;
  }

  .col.col-lg-6.col-md-8.col-sm-12 {
    flex-flow: column;
    flex: 100%;
    max-width: 100%;
  }

  .col.col-xs-11 {
    flex-basis: 91.67%;
    max-width: 91.6667%;
  }

  .col.col-lg-5.col-md-4.col-xs-12.col-xs-last {
    order: 9999;
  }

  .col.col-xs-6 {
    flex-basis: 50%;
    max-width: 50%;
  }

  .col.col-xs-10 {
    flex-basis: 83.33%;
    max-width: 83.3333%;
  }

  .col.col-xs-4 {
    flex-basis: 33.33%;
    max-width: 33.3333%;
  }

  .col.col-xs-3 {
    flex-basis: 25%;
    max-width: 25%;
  }

  .col.col-xs-7 {
    flex-basis: 58.33%;
    max-width: 58.3333%;
  }

  .col.col-xs-8 {
    flex-basis: 66.67%;
    max-width: 66.6667%;
  }

  .col.col-xs-9 {
    flex-basis: 75%;
    max-width: 75%;
  }

  .col.col-xs-2 {
    flex-basis: 16.67%;
    max-width: 16.6667%;
  }

  .col.col-xs-12 {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col.col-xs-5 {
    flex-basis: 41.67%;
    max-width: 41.6667%;
  }

  .col.col-xs-1 {
    flex-basis: 8.33%;
    max-width: 8.33333%;
  }

  .col.col-xs-first {
    order: -1;
  }

  .col.col-xs-offset-0 {
    margin-left: 0%;
  }

  .col.col-xs-offset-1 {
    margin-left: 8.33333%;
  }

  .col.col-xs-offset-2 {
    margin-left: 16.6667%;
  }

  .col.col-xs-offset-3 {
    margin-left: 25%;
  }

  .col.col-xs-offset-4 {
    margin-left: 33.3333%;
  }

  .col.col-xs-offset-5 {
    margin-left: 41.67%;
  }

  .col.col-xs-offset-6 {
    margin-left: 50%;
  }

  .styles__row-example {
    height: auto;
  }

  .u-mt-0 {
    margin-top: 0;
  }

  .u-mb-0 {
    margin-bottom: 0;
  }

  .u-m-0 {
    margin: 0;
  }

  .u-pb-0 {
    padding-bottom: 0;
  }

  .u-p-0 {
    padding: 0;
  }

  .u-pt-0 {
    padding-top: 0;
  }

  .rich-text blockquote {
    font-size: var(--_typography---type-paragraph-lg--font-size-xs\<deleted\|variable-dab72a89-1875-a2f7-1d85-bd05f81dd817\>);
  }

  .rich-text figcaption {
    font-size: var(--_typography---type-paragraph-sm--font-size-xs\<deleted\|variable-5ffbcc90-83d8-60d2-b7ba-601684d03f16\>);
  }

  .rich-text.cc-work-cms li {
    min-width: calc(50% - (var(--_layout---grid--gap-main) / 2));
    max-width: none;
  }

  .rich-text.cc-work-cms ul {
    flex-flow: column;
  }

  .u-xs-d-none {
    display: none;
  }

  .u-xs-d-block {
    display: block;
  }

  .footer-logo_link {
    width: auto;
    height: 100%;
  }

  .spacer-component:where(.w-variant-be7ce5b4-d478-e0d4-acc9-409afe8efce5) {
    height: 1rem;
  }

  .btn-wrap.cc-footer {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: .3em;
  }

  .display {
    font-size: clamp(3rem, 26vw, 14rem);
  }

  .home-hero_video {
    aspect-ratio: auto;
    height: auto;
  }

  .hero_video {
    aspect-ratio: 1;
    height: auto;
    max-height: 45rem;
  }

  .marquee-group {
    flex: none;
  }

  .work-thumbnail {
    min-width: 45vw;
  }

  .marquee-item {
    padding-bottom: .25rem;
  }

  .social-proof-item {
    max-width: 30vw;
    height: 7vw;
    margin-left: 4vw;
    margin-right: 4vw;
  }

  .image-wrap.our-people {
    aspect-ratio: 4 / 3;
  }

  .image-wrap.cc-socials {
    min-width: 45vw;
  }

  .about-marquee-item {
    width: 50vw;
  }

  .line-offset-wrap.cc-team, .line-offset-wrap.cc-quote, .line-offset-wrap.cc-team, .line-offset-wrap.cc-quote {
    flex-flow: column;
  }

  .section-alternative.cc-home-hero, .section-alternative.cc-hero, .section-alternative.cc-home-hero, .section-alternative.cc-hero {
    padding-top: calc(var(--_components---section--padding)  + 3rem);
  }
}
