@font-face {
  font-family: Bricolage Grotesque Variable;
  src: url('../images/') format("truetype");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}

:root {
  --silver: #fffdeb;
  --black: #1f1f1f;
  --dark-grey: #6c6354;
  --soft-grey: #f8f0d5;
  --orange: #ed5724;
  --white: white;
  --dark-orange: #cf4111;
  --light-grey: #eee1c1;
  --grey: #9b9082;
  --mid-grey: #e2d2a9;
  --light-orange: #ffdbbe;
}

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

.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 {
  background-color: var(--silver);
  color: var(--black);
  font-family: Bricolage Grotesque, sans-serif;
  font-size: 16px;
  line-height: 1.4em;
}

h1 {
  margin-top: 0;
  margin-bottom: 24px;
  font-size: 45px;
  font-weight: 700;
  line-height: 1.25em;
}

h2 {
  font-variation-settings: "wght" 700, "wdth" 81, "opsz" 10;
  margin-top: 0;
  margin-bottom: 16px;
  font-size: 38px;
  line-height: 1.2em;
}

h3 {
  margin-top: 0;
  margin-bottom: 16px;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.4em;
}

h4 {
  margin-top: 0;
  margin-bottom: 8px;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.4em;
}

h5 {
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 12px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5em;
}

h6 {
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 5px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5em;
}

p {
  margin-bottom: 16px;
  font-family: Inter, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5em;
}

a {
  color: var(--dark-grey);
  text-decoration: none;
  transition: opacity .2s, color .2s;
}

ul {
  margin-top: 0;
  margin-bottom: 12px;
  padding-left: 20px;
}

li {
  color: var(--dark-grey);
  margin-bottom: 4px;
  font-size: 16px;
  line-height: 1.4em;
}

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

label {
  color: var(--dark-grey);
  margin-bottom: 8px;
  font-weight: 400;
  display: block;
}

em {
  font-style: italic;
}

blockquote {
  border-left: 5px solid var(--soft-grey);
  margin-bottom: 16px;
  padding: 10px 20px;
  font-size: 16px;
  line-height: 1.4em;
}

.wrapper {
  min-height: 90vh;
  overflow: hidden;
}

.wrapper.no-margin {
  max-width: 100vw;
}

.wrapper.cream {
  background-color: var(--silver);
}

.section {
  z-index: 0;
  color: var(--dark-grey);
  padding-top: 80px;
  padding-bottom: 80px;
}

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

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

.section.hero {
  height: 80vh;
  padding-top: 40px;
  padding-bottom: 80px;
}

.section.orange {
  background-color: var(--orange);
  color: var(--white);
}

.section.large {
  padding-top: 100px;
  padding-bottom: 100px;
}

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

.section.dark-cream.overflow-none {
  overflow: hidden;
}

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

.button {
  background-color: var(--orange);
  color: var(--white);
  text-align: center;
  border-radius: 100px;
  flex: none;
  margin-bottom: 8px;
  padding: 9px 32px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  transition: opacity .2s, border-color .2s, color .2s, background-color .2s;
  display: inline-block;
}

.button:hover {
  background-color: var(--dark-orange);
  color: var(--white);
}

.button:active {
  opacity: .6;
}

.button.outline {
  box-shadow: inset 0 0 0 1px var(--black);
  color: var(--black);
  background-color: #0000;
}

.button.outline:hover {
  background-color: var(--black);
  box-shadow: inset 0 0 0 2px var(--black);
  color: #fff;
}

.button.outline:active {
  opacity: .6;
}

.button.disabled {
  box-shadow: none;
  opacity: .1;
}

.button.disabled:hover {
  color: var(--soft-grey);
}

.spacer {
  background-color: var(--light-grey);
  height: 48px;
}

.spacer._64 {
  background-color: #0000;
  width: 64px;
  height: 64px;
}

.spacer._32 {
  background-color: #0000;
  border-radius: 6px;
  height: 32px;
}

.spacer._24 {
  text-transform: uppercase;
  background-color: #0000;
  width: 24px;
  height: 24px;
}

.spacer._48 {
  background-color: #0000;
  border-radius: 6px;
  width: 48px;
}

.spacer._128 {
  background-color: #0000;
  width: 128px;
  height: 128px;
}

.spacer._80 {
  background-color: #0000;
  height: 80px;
}

.spacer._96 {
  background-color: #5eb2f400;
  width: 96px;
  height: 96px;
}

.spacer._32 {
  background-color: #0000;
  height: 32px;
}

.spacer._16 {
  background-color: #0000;
  width: 16px;
  height: 16px;
}

.text-box {
  z-index: 2;
  width: 100%;
  transition: opacity .2s, color .2s;
  position: relative;
}

.text-box._550px {
  max-width: 550px;
}

.text-box._800px {
  max-width: 800px;
}

.text-box._800px.centered {
  margin-left: auto;
  margin-right: auto;
}

.text-box._400px {
  max-width: 400px;
}

.text-box._220px {
  max-width: 220px;
}

.text-box._500px {
  max-width: 500px;
}

.text-box._300px {
  max-width: 300px;
}

.text-box._700px {
  max-width: 700px;
}

.text-box._700px.centered {
  margin-left: auto;
  margin-right: auto;
}

._12-columns {
  flex-flow: wrap;
  place-content: stretch center;
  align-items: flex-start;
  margin-left: -16px;
  margin-right: -16px;
  display: flex;
}

._12-columns.flex-horizontal {
  flex-wrap: nowrap;
  justify-content: flex-start;
  display: flex;
}

._12-columns.align-left {
  justify-content: flex-start;
}

.container {
  flex-direction: column;
  justify-content: center;
  width: 100%;
  max-width: 1440px;
  min-height: 50px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
  display: block;
}

.container.full-height {
  height: 100%;
}

.container.relative {
  position: relative;
}

.color-block {
  background-color: var(--black);
  width: 100%;
  height: 60px;
  margin-bottom: 10px;
  margin-left: 0;
  margin-right: 0;
}

.color-block.grey {
  background-color: var(--grey);
}

.color-block.light-grey {
  background-color: var(--light-grey);
}

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

.color-block.soft-grey {
  background-color: var(--soft-grey);
}

.color-block.silver {
  border: 1px solid var(--soft-grey);
  background-color: var(--silver);
}

.color-block.white {
  border: 1px solid var(--soft-grey);
  background-color: #fff;
}

.color-block.orange {
  background-color: var(--orange);
}

.color-block.dark-orange {
  background-color: var(--dark-orange);
}

.white {
  color: #fff;
}

.column-styleguide {
  background-color: var(--soft-grey);
  width: 100%;
  height: 40px;
  margin-bottom: 20px;
}

.column {
  flex-flow: column;
  flex: 0 auto;
  align-items: stretch;
  min-height: 32px;
  padding-left: 16px;
  padding-right: 16px;
  display: flex;
  position: relative;
}

.column.desktop-10-column {
  width: 83.33%;
}

.column.desktop-11-column {
  width: 91.66%;
}

.column.desktop-6-column {
  width: 50%;
}

.column.desktop-5-column {
  width: 41.66%;
}

.column.desktop-1-column {
  width: 8.33%;
}

.column.desktop-4-column {
  width: 33.33%;
}

.column.desktop-9-column {
  width: 75%;
}

.column.desktop-3-column {
  width: 25%;
}

.column.desktop-2-column {
  width: 16.66%;
}

.column.desktop-7-column {
  width: 58.3333%;
}

.column.desktop-8-column {
  width: 66.6667%;
}

.ds-block {
  margin-bottom: 32px;
  font-size: 18px;
}

.horizontal-line {
  background-color: var(--light-grey);
  opacity: .4;
  width: 100%;
  height: 1px;
  margin-top: 16px;
  margin-bottom: 16px;
}

.horizontal-line.design-system {
  position: relative;
  bottom: -80px;
}

.rich-text {
  text-align: left;
}

.rich-text h4, .rich-text h3, .rich-text h2 {
  margin-top: 24px;
}

.nav-logo {
  transition: opacity .2s;
  position: relative;
}

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

.footer-logo {
  margin-bottom: 24px;
}

.footer-link {
  color: var(--white);
  cursor: pointer;
  padding-top: 5px;
  padding-bottom: 5px;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.3em;
  text-decoration: none;
  transition: color .2s, opacity .2s ease-in-out;
  display: block;
}

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

.footer-link.w--current {
  opacity: 1;
}

.footer-links-container {
  flex-direction: column;
  display: flex;
}

.footer {
  z-index: 0;
  background-color: var(--silver);
  color: var(--black);
  padding-bottom: 48px;
  position: relative;
}

.paragraph {
  letter-spacing: -.2px;
  line-height: 1.5em;
}

.paragraph.x-small {
  font-size: 14px;
  line-height: 1.4em;
}

.paragraph.large {
  color: var(--dark-grey);
  font-size: 22px;
}

.paragraph.medium {
  font-size: 20px;
  line-height: 1.4em;
}

.paragraph.grey {
  color: var(--grey);
}

.paragraph.x-large {
  font-size: 28px;
  line-height: 1.4em;
}

.paragraph._2x-large {
  font-size: 3.2vw;
  font-weight: 600;
  line-height: 1.25em;
}

.paragraph.small {
  font-size: 15px;
  line-height: 1.4em;
}

.no-margin {
  margin-top: 0;
  margin-bottom: 0;
}

.ds-menu-brand {
  width: 150px;
  margin-bottom: 50px;
  margin-left: 30px;
}

.ds-menu {
  width: 100%;
}

.ds-menu-link {
  color: var(--white);
  border-left: 4px solid #0000;
  width: 100%;
  padding-top: 7px;
  padding-bottom: 7px;
  padding-left: 27px;
  transition: background-color .2s, opacity .2s, color .2s;
}

.ds-menu-link:hover {
  opacity: .7;
}

.ds-menu-link.w--current {
  background-color: var(--dark-orange);
  color: var(--white);
  padding-right: 0;
  font-weight: 500;
}

.ds-menu-link.w--current:hover {
  opacity: 1;
}

.ds-nav {
  background-color: var(--orange);
  width: 240px;
  padding-top: 40px;
  position: fixed;
  inset: 0% auto 0% 0%;
  overflow: auto;
}

.form-radio-button {
  margin-bottom: 16px;
  padding-left: 24px;
}

.radio-button {
  border: 1px solid var(--mid-grey);
  width: 20px;
  height: 20px;
  margin-top: 0;
  margin-left: -24px;
  margin-right: 10px;
}

.radio-button.w--redirected-checked {
  border-width: 6px;
  border-color: var(--orange);
}

.form-error {
  background-color: var(--silver);
  color: #444;
  padding: 16px;
}

.form {
  margin-bottom: 8px;
}

.form-checkbox {
  margin-bottom: 16px;
  padding-left: 24px;
}

.check-box {
  border: 1px solid var(--mid-grey);
  width: 20px;
  height: 20px;
  margin-top: 0;
  margin-left: -24px;
  margin-right: 10px;
}

.check-box.w--redirected-checked {
  border-color: var(--orange);
  background-color: var(--orange);
}

.ds-content {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 100%;
  margin-left: 240px;
  display: flex;
  position: relative;
}

.form-success {
  color: #444;
  background-color: #f0f0f0;
  padding: 32px;
  font-size: 16px;
  line-height: 1.4em;
}

.ds-section {
  z-index: 0;
  text-align: left;
  padding: 60px 80px 48px 60px;
  position: relative;
}

.ds-section.grey {
  background-color: var(--soft-grey);
}

.ds-title {
  color: var(--dark-grey);
  margin-bottom: 8px;
}

.ds-section-header {
  margin-bottom: 50px;
}

.text-input {
  border-style: none none solid;
  border-width: 1px;
  border-color: var(--silver) var(--silver) var(--mid-grey);
  color: var(--black);
  background-color: #0000;
  max-width: 400px;
  height: 48px;
  margin-bottom: 16px;
  padding: 8px 0;
  font-size: 15px;
  line-height: 1.4em;
  transition: border .2s;
}

.text-input:hover {
  border-bottom-color: var(--mid-grey);
}

.text-input:focus {
  border-style: none none solid;
  border-color: #184736 #184736 var(--orange);
}

.text-input::placeholder {
  color: var(--soft-grey);
}

.text-area {
  border-style: none none solid;
  border-width: 1px;
  border-color: black black var(--mid-grey);
  color: var(--black);
  background-color: #0000;
  min-height: 120px;
  margin-bottom: 16px;
  padding: 12px 0;
  font-size: 15px;
  transition: border .2s;
}

.text-area:hover {
  border-bottom-color: var(--mid-grey);
}

.text-area:focus {
  border-bottom-color: var(--orange);
}

.text-area::placeholder {
  color: var(--soft-grey);
}

.tabs-menu {
  justify-content: center;
  width: 100%;
  margin-bottom: 48px;
  display: flex;
}

.vertical-tab {
  width: 100%;
}

.tab-link {
  border-bottom: 2px solid var(--soft-grey);
  opacity: .5;
  color: var(--grey);
  text-align: center;
  background-color: #0000;
  flex: 0 auto;
  width: 140px;
  margin-left: 0;
  margin-right: 0;
  padding: 15px 20px;
  font-size: 18px;
}

.tab-link:hover {
  border-bottom-color: #184736;
}

.tab-link.w--current {
  border-bottom-color: var(--orange);
  opacity: 1;
  color: var(--orange);
  background-color: #0000;
  font-weight: 700;
}

.ds-description {
  color: var(--grey);
  max-width: 400px;
}

.error-2 {
  flex-wrap: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.form-dropdown {
  border-style: none none solid;
  border-width: 1px;
  border-color: var(--silver) var(--silver) var(--mid-grey);
  background-color: var(--silver);
  color: var(--grey);
  border-radius: 0;
  width: 100%;
  max-width: 400px;
  height: 48px;
  margin-bottom: 16px;
  padding: 8px 4px;
  font-size: 15px;
  position: relative;
}

.form-dropdown:hover {
  color: #37474e;
}

.form-dropdown:focus {
  color: var(--black);
}

.form-dropdown::placeholder {
  color: #999;
  font-size: 15px;
}

.field-block {
  z-index: 1;
  border: 1px solid #0000;
  flex-direction: column;
  flex: 1;
  align-items: stretch;
  min-width: 50px;
  min-height: 20px;
  margin-bottom: 8px;
  display: flex;
}

.work-image {
  border-radius: 16px;
  width: 100%;
  margin-bottom: 24px;
}

.error {
  flex-wrap: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: center;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.footer-container {
  flex-direction: column;
  justify-content: center;
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
  display: block;
}

.ds-colour-block {
  width: 12.5%;
  padding-right: 16px;
  display: inline-block;
}

.ds-colour-grid {
  flex-wrap: wrap;
  margin-top: 24px;
  display: flex;
}

.ds-module {
  background-color: var(--soft-grey);
  flex-direction: column;
  min-width: 100px;
  min-height: 100px;
  display: flex;
  position: relative;
}

._2-column-grid {
  grid-column-gap: 64px;
  grid-row-gap: 40px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: start;
  width: 100%;
  display: grid;
  position: relative;
}

._3-column-grid {
  grid-column-gap: 48px;
  grid-row-gap: 24px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  position: relative;
}

.heading {
  font-weight: 500;
}

.heading.xl {
  color: var(--orange);
  font-variation-settings: "wght" 743, "wdth" 93.7, "opsz" 10;
  letter-spacing: -1.5px;
  margin-bottom: 24px;
  font-family: Bricolage Grotesque Variable, sans-serif;
  font-size: 58px;
  font-weight: 800;
  line-height: 1em;
}

.heading.xl.blue {
  color: var(--orange);
}

.heading.xl.no-margin {
  margin-bottom: 0;
}

.heading.xl.white {
  color: var(--white);
}

.heading.m {
  font-family: Bricolage Grotesque Variable, sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.1em;
}

.heading.s {
  margin-bottom: 12px;
  font-size: 24px;
  line-height: 1.4em;
}

.heading.xs {
  margin-bottom: 12px;
  font-size: 20px;
  line-height: 1.5em;
}

.heading._2xs {
  color: var(--light-grey);
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5em;
}

.heading._2xl {
  color: var(--orange);
  letter-spacing: -1px;
  margin-bottom: 0;
  font-family: Bricolage Grotesque Variable, sans-serif;
  font-size: 14vw;
  font-weight: 800;
  line-height: .8em;
}

.heading.l {
  font-variation-settings: "wght" 725, "wdth" 84.7, "opsz" 10;
  font-family: Bricolage Grotesque Variable, sans-serif;
  font-size: 46px;
  font-weight: 700;
  line-height: 1.1em;
}

.error2 {
  flex-direction: column;
  justify-content: center;
  width: 100%;
  max-width: 1230px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
  display: block;
  position: relative;
  top: 0;
  left: 0;
  right: 0;
}

.licenses-grid {
  grid-column-gap: 96px;
  grid-row-gap: 24px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: center;
  margin-bottom: 24px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  position: relative;
}

.utility-page-wrap {
  background-color: var(--silver);
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 80vh;
  max-height: 100%;
  padding-top: 75px;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
}

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

.utility-page-form {
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 400px;
  display: flex;
}

.visible-spacer {
  background-color: var(--soft-grey);
  margin-bottom: 24px;
  display: inline-block;
}

.field-split {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.field-spacer {
  width: 24px;
  height: 10px;
}

.nav-button-animated {
  z-index: 900;
  background-color: #0000;
  width: 60px;
  height: 55px;
  margin-top: 0;
  margin-right: -10px;
  padding: 0;
  position: relative;
  top: 0;
  right: 0;
}

.nav-button-animated.w--open {
  background-color: #0000;
  position: relative;
}

.nav-bar {
  z-index: 180;
  background-color: var(--silver);
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-left: 40px;
  padding-right: 40px;
  position: sticky;
  top: 0;
}

.project-cover {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  transition: filter .2s, color .2s;
  display: flex;
}

.project-cover:hover {
  opacity: 1;
  filter: brightness(110%);
}

.project-image {
  height: 700px;
}

.project-image:hover {
  opacity: 1;
}

._4-column-grid {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  margin-bottom: 24px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.bottom-line {
  background-color: var(--white);
  width: 32px;
  height: 2px;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  top: 38px;
  left: 0;
  right: 0;
}

.top-line {
  background-color: var(--white);
  width: 32px;
  height: 2px;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  top: 18px;
  left: 0;
  right: 0;
}

.nav-container {
  border-radius: 16px;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1360px;
  padding-top: 20px;
  padding-bottom: 20px;
  display: flex;
  top: 0;
  left: 0;
  right: 0;
}

.logo-div {
  z-index: 3;
  text-align: left;
  justify-content: space-between;
  align-items: center;
  display: block;
}

.project-list {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  border-radius: 16px 0 0 16px;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: 1.2fr 1fr 1fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: row;
  place-content: stretch flex-start;
  align-items: flex-start;
  display: flex;
  overflow: auto;
}

.project-list:nth-child(2n) {
  flex-direction: row-reverse;
}

.project-item {
  flex: none;
  width: 540px;
  max-width: 100%;
  display: block;
}

.project-thumbnail {
  width: 100%;
  margin-bottom: 16px;
  transition: transform .2s, filter .2s;
  overflow: hidden;
}

.project-thumbnail:hover {
  opacity: 1;
  filter: blur(5px);
}

.project-text-div {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  flex-flow: column wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: flex-start;
  padding-right: 40px;
  display: grid;
}

.project-title {
  display: flex;
}

.project-tag-text {
  background-color: var(--soft-grey);
  color: var(--grey);
  border-radius: 30px;
  padding: 3px 12px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5em;
  transition: background-color .2s, opacity .2s, color .2s;
  display: block;
}

.project-tag-text:hover {
  background-color: var(--orange);
  color: var(--white);
}

.tag-slash {
  margin-bottom: 0;
  display: inline-block;
}

.project-tag {
  color: var(--soft-grey);
}

.project-tag:last-child {
  color: #0000;
}

.project-tags {
  grid-column-gap: 6px;
  grid-row-gap: 6px;
  flex-flow: column wrap;
  align-items: flex-start;
  display: flex;
}

.project-tags.horizontal {
  flex-direction: row;
}

.questions-section {
  border-top: 1px solid var(--soft-grey);
  text-align: left;
  padding-top: 28px;
}

.question-container {
  border-bottom: 1px solid var(--soft-grey);
  text-align: left;
  cursor: pointer;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 24px;
  padding-bottom: 15px;
  text-decoration: none;
  display: flex;
  overflow: hidden;
}

.question {
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.question-plus-icon {
  margin-top: 4px;
}

.answer {
  padding-right: 40px;
}

.inline-text {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.script-link-text {
  color: var(--grey);
  margin-bottom: 8px;
  font-weight: 700;
  display: block;
}

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

.service-tags {
  flex-flow: column wrap;
  margin-top: 4px;
  display: flex;
}

.image-grid {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  place-items: center;
  width: 100%;
  margin-bottom: 24px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  position: relative;
}

.banner-section {
  z-index: 200;
  background-color: var(--orange);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  color: var(--white);
  text-align: center;
  width: 100%;
  padding-left: 24px;
  padding-right: 24px;
  position: relative;
  top: 0;
}

.banner-container {
  color: var(--white);
  flex: 1;
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.banner {
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 10px;
  padding-bottom: 12px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4em;
  display: flex;
}

.banner-link {
  border-bottom: 1px dashed var(--light-orange);
  color: var(--light-orange);
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  line-height: 1.3em;
  text-decoration: none;
  display: inline;
}

.banner-link:hover {
  border-bottom-color: var(--white);
  color: var(--white);
}

.hero-content-box {
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  display: flex;
}

.simple-icon {
  margin-bottom: 12px;
}

.tick-list-item {
  background-image: url('../images/Orange-Tick.svg');
  background-position: 0 6px;
  background-repeat: no-repeat;
  background-size: 16px;
  margin-bottom: 6px;
  padding-left: 28px;
}

.plan-card {
  border: 3px dashed var(--light-grey);
  background-color: var(--silver);
  color: var(--dark-grey);
  text-align: left;
  border-radius: 16px;
  flex-direction: column;
  padding: 32px 32px 24px;
}

.plan-card.grey {
  border-style: solid;
  border-color: var(--soft-grey);
  background-color: var(--soft-grey);
}

.plan-card.dark-grey {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
  border-color: var(--light-grey);
  background-color: var(--light-grey);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
}

.plan-card.custom {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.grey-dollar {
  color: var(--grey);
  margin-right: 2px;
  font-size: 18px;
  display: inline;
  position: relative;
  top: -8px;
}

.tick-list {
  padding-left: 0;
  list-style-type: none;
}

.plan-grid {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: stretch;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  position: relative;
}

.price-text {
  margin-bottom: 0;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2em;
}

.footer-main-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  border-bottom: 1px solid var(--orange);
  grid-template-rows: auto;
  grid-template-columns: 1fr 180px 180px 120px;
  grid-auto-columns: 1fr;
  padding-bottom: 48px;
  display: grid;
}

.footer-logo-box {
  flex-direction: column;
  align-items: flex-start;
  max-width: 260px;
  display: flex;
}

.footer-bottom-grid {
  justify-content: space-between;
  padding-top: 32px;
  display: flex;
}

.underline-link {
  border-bottom: 1px solid var(--soft-grey);
  transition: border .2s, opacity .2s, color .2s;
}

.underline-link:hover {
  border-bottom-color: var(--orange);
  color: var(--orange);
}

.hero-title-box {
  text-align: right;
  margin-left: auto;
  position: relative;
}

.hero-intro-text-box {
  max-width: 440px;
  margin-right: auto;
}

.icon-grid {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  place-items: center;
  width: 100%;
  margin-bottom: 24px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  position: relative;
}

._2-project-grid {
  grid-column-gap: 128px;
  grid-row-gap: 40px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: start;
  width: 100%;
  margin-bottom: 24px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  position: relative;
}

._2-project-tag-grid {
  grid-column-gap: 64px;
  grid-row-gap: 40px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: start;
  width: 100%;
  margin-bottom: 24px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  position: relative;
}

.showreel-wrapper {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  justify-content: flex-end;
  align-items: center;
  margin-top: -16px;
  margin-bottom: -16px;
  margin-left: 4px;
  display: flex;
}

.showreel-wrapper:hover {
  color: var(--orange);
}

.showreel-text {
  font-size: 18px;
  font-weight: 500;
}

.showreel-link {
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.showreel-play-button {
  z-index: 2;
  border-radius: 400px;
  width: 54px;
  height: 54px;
  padding: 12px;
  transition: transform .2s;
  position: relative;
}

.showreel-play-button:hover {
  transform: scale(1.1);
}

.showreel-button-outline {
  z-index: 0;
  border: 2.5px dashed var(--light-grey);
  border-radius: 400px;
  width: 44px;
  height: 44px;
  position: absolute;
}

.sticker {
  max-width: 12%;
  position: absolute;
}

.sticker.hero-1 {
  top: -75px;
  right: 39%;
}

.sticker.hero-2 {
  bottom: -60px;
  right: 74%;
}

.sticker.hero-3 {
  top: 28%;
  right: 5%;
}

.sticker.about-1 {
  top: -40px;
  left: 48px;
}

.sticker.about-2 {
  bottom: 10%;
  right: -3%;
}

.sticker.custom-service {
  max-width: 24%;
  bottom: 20px;
  left: 88%;
}

.fixed-progress-nav {
  z-index: 5;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: var(--soft-grey);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  height: 48px;
  margin-left: auto;
  margin-right: auto;
  font-family: Inter, sans-serif;
  display: grid;
  position: fixed;
  inset: auto 0% 0%;
  overflow: hidden;
}

.fixed-progress-item {
  z-index: 4;
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  justify-content: center;
  align-items: center;
  transition: background-color .2s;
  display: flex;
  position: relative;
}

.fixed-progress-item:hover {
  background-color: #8663050d;
}

.progress-nav-number {
  border: 1px solid var(--mid-grey);
  border-radius: 40px;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.progress-nav-number.w--current {
  border-color: var(--orange);
  background-color: var(--orange);
  color: var(--soft-grey);
}

.progress-nav-text {
  opacity: .8;
  font-weight: 500;
}

.progress-nav-text.w--current {
  opacity: 1;
  color: var(--orange);
}

.card-wrapper {
  background-color: var(--soft-grey);
  border-radius: 16px;
  padding: 80px 80px 64px;
  position: relative;
}

.sticker-icon {
  width: 64px;
  height: 64px;
  margin-bottom: 16px;
}

.work-tabs-menu {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 16px;
  display: flex;
}

.work-tab {
  border: 1px solid var(--soft-grey);
  color: var(--dark-grey);
  letter-spacing: -.4px;
  background-color: #f8f0d500;
  border-radius: 32px;
  padding-left: 20px;
  padding-right: 20px;
  font-weight: 500;
  transition: background-color .2s, opacity .2s, color .2s;
}

.work-tab:hover, .work-tab.w--current {
  background-color: var(--soft-grey);
  color: var(--black);
}

.project-wrapper {
  padding-right: 40px;
}

.orange-service-card {
  z-index: 2;
  background-color: var(--orange);
  color: var(--white);
  border-radius: 16px;
  max-width: 320px;
  padding: 32px 32px 16px;
  position: relative;
}

.absolute-service-list-wrapper {
  width: 55%;
  position: absolute;
  top: -80px;
  bottom: -80px;
  right: 40px;
  overflow: hidden;
}

.absolute-service-list {
  color: var(--orange);
  text-align: right;
  letter-spacing: -.03em;
  font-size: 9vw;
  font-weight: 800;
  line-height: 1em;
}

.service-list-top-border {
  background-image: linear-gradient(#f9f0d5 12%, #f9f0d594 61%, #f9f0d500);
  width: 100%;
  height: 150px;
  position: absolute;
  top: 0;
}

.service-list-bottom-border {
  background-image: linear-gradient(to top, #f9f0d5 12%, #f9f0d594 72%, #f9f0d500);
  width: 100%;
  height: 150px;
  position: absolute;
  bottom: 0;
}

.services-sticker-text {
  color: #ed572400;
  background-image: url('../images/Group-644.svg');
  background-position: -4px 0;
  background-repeat: no-repeat;
  background-size: 80px;
  width: 80px;
  height: 80px;
  display: inline-block;
  position: absolute;
  transform: translate(-47px, 38px);
}

.absolute-nav-link-back {
  z-index: -2;
  background-color: #eee1c100;
  transition: background-color .2s, opacity .2s, color .2s;
  position: absolute;
  inset: 0%;
}

.absolute-nav-link-back.w--current {
  background-color: #8663050d;
}

.footer-content-card {
  background-color: var(--orange);
  color: var(--white);
  border-radius: 16px;
  padding: 36px 36px 16px;
}

.footer-underline-link {
  opacity: .7;
  color: var(--white);
  border-bottom: 1px solid #ffffff4d;
  transition: border .2s, opacity .2s, color .2s;
}

.footer-underline-link:hover {
  opacity: 1;
}

._2-column-text-grid {
  grid-column-gap: 64px;
  grid-row-gap: 40px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: start;
  width: 100%;
  display: grid;
  position: relative;
}

.work-tabs {
  margin-right: -40px;
}

.curve-top-left {
  background-color: #0000;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 100%;
  left: 0;
  overflow: hidden;
}

.curve-top-left-insert {
  box-shadow: 1px 1px 3px 3000px var(--orange);
  background-color: #0000;
  border-radius: 40px;
  width: 40px;
  height: 40px;
  position: absolute;
  top: 0;
  left: 0;
}

.curve-top-right {
  background-color: #0000;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 100%;
  right: 0;
  overflow: hidden;
}

.curve-top-right-insert {
  box-shadow: 1px 1px 3px 3000px var(--orange);
  background-color: #0000;
  border-radius: 40px;
  width: 40px;
  height: 40px;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
}

.nav-content {
  flex-direction: row;
  flex: 1;
  justify-content: space-between;
  align-items: center;
  margin-left: 24px;
  display: flex;
  position: relative;
}

.nav-menu {
  text-align: right;
  flex: 1;
  margin-right: 6px;
}

.nav-link {
  color: var(--dark-grey);
  cursor: pointer;
  margin-left: 4px;
  margin-right: 4px;
  padding: 6px 8px;
  font-size: 18px;
  font-weight: 500;
  line-height: 24px;
  transition: background-color .2s, transform .2s, color .2s;
}

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

.nav-link:active {
  color: var(--dark-orange);
}

.nav-link.w--current {
  color: var(--orange);
}

.nav-link.primary {
  background-color: var(--orange);
  color: #fff;
  border-radius: 50px;
  margin-left: 12px;
  margin-right: 0;
  padding: 8px 20px;
  transition: box-shadow .2s, background-color .2s, transform .2s, color .2s;
}

.nav-link.primary:hover {
  background-color: var(--dark-orange);
}

.nav-link.primary:active {
  background-color: #1f4b97;
  transform: translate(0, 1px);
  box-shadow: 0 0 #e7ecf0;
}

.nav-cta-button-container {
  align-items: center;
  display: flex;
}

.post-info-box {
  align-items: flex-start;
  margin-bottom: 12px;
  display: flex;
}

.container-2 {
  flex-direction: column;
  justify-content: center;
  width: 100%;
  max-width: 1230px;
  min-height: 30px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 50px;
  padding-right: 50px;
  display: block;
  position: relative;
}

.blog-cover {
  border-radius: 4px;
  height: 400px;
  margin-top: 32px;
  overflow: hidden;
}

.read-time-text {
  color: var(--dark-grey);
  text-align: center;
  letter-spacing: .4px;
  font-size: 14px;
  line-height: 16px;
  display: inline-block;
}

.tag-text {
  color: var(--dark-grey);
  text-align: center;
  letter-spacing: .4px;
  font-size: 15px;
  line-height: 16px;
  display: inline-block;
}

.dot-space {
  color: var(--mid-grey);
  font-size: 14px;
  font-weight: 400;
  line-height: 16px;
}

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

.featured-post-grid {
  grid-column-gap: 80px;
  grid-row-gap: 32px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-content: center;
  align-items: center;
  width: 100%;
  display: grid;
}

.card-thumbnail {
  border-radius: 4px;
  margin-bottom: 16px;
  overflow: hidden;
}

.card-text-link {
  color: var(--black);
  text-align: left;
  border-radius: 4px;
  flex-direction: column;
  width: 100%;
  max-width: 450px;
  transition: transform .2s, opacity .2s;
  overflow: hidden;
}

.card-text-link:hover {
  color: #33383f;
}

.text-arrow-link {
  color: #33383f;
  cursor: pointer;
  background-image: url('../images/Group-685.svg');
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 16px;
  padding-right: 24px;
  transition: padding .2s cubic-bezier(.269, .159, .55, .95);
  display: inline-block;
}

.text-arrow-link:hover {
  padding-right: 28px;
}

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

.card {
  color: #202020;
  text-align: left;
  border-radius: 4px;
  flex-direction: column;
  width: 100%;
  height: 100%;
  transition: transform .2s, opacity .2s;
  overflow: hidden;
}

.card:hover {
  transform: translate(0, -3px);
}

.big-font {
  font-size: 120px;
  font-weight: 700;
  line-height: 1.2em;
}

.big-font.inter {
  font-family: Inter, sans-serif;
}

@media screen and (min-width: 1280px) {
  .section.hero {
    padding-bottom: 65px;
  }

  .paragraph._2x-large {
    font-size: 43px;
  }

  .heading._2xl {
    font-size: 184px;
  }

  .banner-container {
    max-width: 1140px;
  }

  .hero-title-box {
    font-size: 170px;
  }

  .absolute-service-list {
    font-size: 120px;
  }
}

@media screen and (max-width: 991px) {
  .button {
    position: relative;
  }

  .spacer._128 {
    width: 96px;
    height: 96px;
  }

  .text-box._550px.tablet-500px {
    max-width: 500px;
  }

  ._12-columns {
    flex-flow: wrap;
  }

  ._12-columns.tablet-switch {
    flex-direction: column-reverse;
  }

  .container {
    padding-left: 30px;
    padding-right: 30px;
  }

  .column {
    width: 50%;
  }

  .column.desktop-4-column.tablet-12-column {
    width: 100%;
  }

  .column.desktop-3-column {
    flex-wrap: nowrap;
  }

  .column.desktop-7-column.tablet-12-column {
    width: 100%;
  }

  .ds-block {
    margin-bottom: 40px;
  }

  .nav-logo {
    flex: 1;
  }

  .footer-links-container {
    flex-direction: column;
    align-items: flex-start;
    display: flex;
  }

  .footer {
    padding-top: 48px;
  }

  .paragraph.large {
    font-size: 20px;
  }

  .paragraph._2x-large {
    font-size: 32px;
  }

  .ds-menu-brand {
    width: 160px;
    margin-bottom: 20px;
    padding-left: 0;
  }

  .ds-menu {
    z-index: 500;
    border-bottom: 1px solid var(--silver);
    background-color: var(--orange);
    padding-top: 17px;
    padding-bottom: 17px;
    display: block;
    position: absolute;
    inset: 74px auto auto 0%;
  }

  .ds-nav {
    z-index: 10;
    width: 100%;
    padding-top: 20px;
    position: sticky;
    bottom: auto;
    left: auto;
    overflow: visible;
  }

  .ds-content {
    margin-left: 0;
    position: static;
  }

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

  ._3-column-grid {
    margin-left: 0;
  }

  .heading.xl {
    font-size: 64px;
  }

  .heading._2xl {
    font-size: 14.3vw;
  }

  .error2 {
    padding-left: 30px;
    padding-right: 30px;
  }

  .licenses-grid {
    grid-column-gap: 40px;
    margin-left: 0;
  }

  .ds-body {
    flex-direction: column;
    display: flex;
  }

  .ds-menu-button {
    color: var(--black);
    margin-right: 12px;
    padding: 14px;
    top: -10px;
  }

  .ds-menu-button.w--open {
    color: var(--black);
    background-color: #c9dd77;
    border-radius: 40px;
  }

  .project-image {
    height: 55vw;
  }

  .logo-div {
    flex: 0 auto;
  }

  .questions-section {
    margin-right: 160px;
  }

  .image-grid {
    margin-left: 0;
  }

  .banner-container {
    text-align: center;
  }

  .plan-grid {
    grid-template-columns: 1fr 1fr;
    margin-left: 0;
  }

  .footer-main-grid {
    grid-template-columns: 1fr 1fr .7fr;
  }

  .footer-logo-box {
    max-width: 340px;
  }

  .hero-title-box {
    margin-top: 6%;
  }

  .icon-grid {
    margin-left: 0;
  }

  ._2-project-grid {
    grid-column-gap: 64px;
    margin-left: 0;
  }

  .showreel-text {
    font-size: 16px;
  }

  .sticker.custom-service {
    display: none;
  }

  .progress-nav-number {
    width: 22px;
    height: 22px;
    font-size: 10px;
  }

  .progress-nav-text {
    font-size: 14px;
  }

  .card-wrapper {
    padding: 48px 48px 32px;
  }

  .orange-service-card {
    max-width: 280px;
  }

  .services-sticker-text {
    transform: translate(-47px, 16px);
  }

  .nav-content {
    margin-left: 16px;
  }

  .nav-link {
    margin-left: 0;
    margin-right: 0;
    font-size: 16px;
  }

  .nav-link.primary {
    padding-left: 16px;
    padding-right: 16px;
  }

  .container-2 {
    padding-left: 30px;
    padding-right: 30px;
  }

  .featured-post-grid {
    grid-column-gap: 48px;
  }

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

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

  h2 {
    font-size: 32px;
  }

  h3 {
    font-size: 22px;
  }

  p {
    font-size: 15px;
  }

  .wrapper.no-margin {
    margin-top: 0;
  }

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

  .section.hero {
    padding-bottom: 80px;
  }

  .section.large {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  .button {
    padding: 7px 28px;
    font-size: 18px;
  }

  .spacer {
    height: 32px;
  }

  .spacer._64 {
    width: 32px;
    height: 32px;
  }

  .spacer._32 {
    width: 24px;
    height: 24px;
  }

  .spacer._128 {
    width: 96px;
    height: 96px;
  }

  .spacer._80 {
    width: 64px;
    height: 64px;
  }

  ._12-columns {
    flex-wrap: wrap;
  }

  ._12-columns.flex-horizontal {
    flex-flow: wrap;
    margin-bottom: 0;
  }

  .column.desktop-5-column, .column.desktop-4-column, .column.desktop-9-column, .column.desktop-3-column, .column.desktop-8-column {
    width: 100%;
  }

  .footer-logo {
    margin-bottom: 12px;
    padding-left: 0;
  }

  .footer-links-container {
    flex-direction: column;
    align-items: flex-start;
    display: flex;
  }

  .paragraph {
    font-size: 15px;
  }

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

  .paragraph.x-large {
    font-size: 24px;
  }

  .paragraph._2x-large {
    font-size: 28px;
  }

  .ds-menu-brand.w--current {
    margin-top: 14px;
  }

  .ds-menu {
    padding-top: 16px;
    padding-bottom: 24px;
  }

  .ds-content {
    margin-left: 0;
  }

  .ds-section {
    padding-left: 30px;
    padding-right: 30px;
  }

  .tabs-menu {
    flex-wrap: wrap;
  }

  .tab-link {
    border-bottom-width: 0;
    border-radius: 10px;
    width: auto;
  }

  .tab-link.w--current {
    background-color: var(--silver);
  }

  .field-block {
    min-height: auto;
  }

  .footer-container {
    flex-direction: column;
  }

  .ds-colour-block {
    width: 25%;
  }

  ._2-column-grid {
    grid-template-columns: 1fr;
  }

  ._3-column-grid {
    grid-template-columns: 1fr 1fr;
    margin-left: 0;
  }

  .heading.xl {
    font-size: 48px;
  }

  .heading.m {
    font-size: 24px;
  }

  .heading.s {
    font-size: 18px;
  }

  .heading._2xl {
    font-size: 18vw;
  }

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

  .licenses-grid {
    grid-template-columns: 1fr;
    margin-left: 0;
  }

  .nav-button-animated {
    height: 45px;
    top: -6px;
  }

  .nav-bar {
    padding-left: 30px;
    padding-right: 30px;
  }

  ._4-column-grid {
    grid-template-columns: 1fr 1fr;
  }

  .bottom-line, .top-line {
    background-color: var(--orange);
  }

  .nav-container {
    border-radius: 16px;
    align-items: center;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .logo-div {
    width: 150px;
    margin-right: auto;
  }

  .project-list {
    column-count: 1;
    grid-template-columns: 1fr;
  }

  .project-item {
    width: 440px;
  }

  .project-tag-text {
    font-size: 13px;
  }

  .questions-section {
    margin-right: 0;
  }

  .image-grid {
    grid-template-columns: 1fr;
    margin-left: 0;
  }

  .banner-section {
    justify-content: flex-start;
  }

  .simple-icon {
    display: none;
  }

  .plan-card.custom {
    display: block;
  }

  .plan-grid {
    grid-template-columns: 1fr;
    margin-left: 0;
  }

  .footer-bottom-grid {
    flex-direction: column-reverse;
  }

  .hero-title-box {
    margin-top: 12%;
  }

  .hero-intro-text-box {
    max-width: 360px;
  }

  .icon-grid, ._2-project-grid {
    grid-template-columns: 1fr;
    margin-left: 0;
  }

  .showreel-wrapper {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
    order: 1;
    justify-content: center;
    align-items: center;
    margin: 0;
    position: absolute;
    top: 259px;
    right: 24px;
  }

  .showreel-text {
    font-size: 16px;
  }

  .showreel-play-button, .showreel-button-outline {
    width: 60px;
    height: 60px;
  }

  .sticker.hero-1 {
    top: -42px;
  }

  .sticker.hero-2 {
    bottom: -40px;
    right: 47%;
  }

  .sticker.hero-3 {
    top: 24%;
  }

  .sticker.about-1 {
    top: -25px;
  }

  .progress-nav-number {
    display: none;
  }

  .project-wrapper {
    padding-right: 30px;
  }

  .orange-service-card {
    max-width: 210px;
    padding: 24px 24px 8px;
  }

  .absolute-service-list-wrapper {
    width: 80%;
    top: 80px;
    bottom: -60px;
    right: 30px;
  }

  .absolute-service-list {
    font-size: 10vw;
  }

  .services-sticker-text {
    display: none;
  }

  ._2-column-text-grid {
    grid-row-gap: 0px;
    grid-template-columns: 1fr;
  }

  .work-tabs {
    margin-right: -30px;
  }

  .nav-content {
    border-top: 1px solid var(--light-grey);
    background-color: var(--silver);
    flex-flow: column;
    max-width: 100vw;
    height: 100vh;
    margin-left: 0;
    padding: 20px 24px 100px;
    position: absolute;
    overflow: hidden;
  }

  .nav-menu {
    text-align: center;
    padding-right: 0;
  }

  .nav-link {
    border-bottom: 1px solid var(--light-grey);
    text-align: left;
    padding: 12px 0;
    font-size: 18px;
  }

  .nav-link:hover {
    transform: none;
  }

  .nav-link.primary {
    text-align: center;
    margin-left: 0;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .nav-cta-button-container {
    flex-direction: column;
    align-items: stretch;
    margin-top: 16px;
  }

  .blog-cover {
    height: auto;
  }

  .featured-post-grid {
    grid-row-gap: 0px;
    grid-template-columns: 1fr;
  }

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

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

  .section {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .section.hero {
    padding-top: 20px;
    padding-bottom: 110px;
  }

  .spacer._24 {
    width: 16px;
    height: 16px;
  }

  ._12-columns.flex-horizontal {
    flex-direction: row;
  }

  .container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .color-block {
    margin-bottom: 20px;
  }

  .column {
    margin-bottom: 0;
  }

  .column.desktop-6-column {
    align-items: flex-start;
    width: 100%;
  }

  .column.desktop-5-column, .column.desktop-3-column {
    width: 100%;
  }

  .footer {
    padding-bottom: 64px;
  }

  .paragraph.x-large {
    font-size: 20px;
  }

  .paragraph._2x-large {
    font-size: 21px;
    line-height: 1.3em;
  }

  .ds-menu-brand {
    margin-left: 16px;
  }

  .ds-section {
    padding-left: 16px;
    padding-right: 16px;
  }

  .text-input, .text-area {
    width: 100%;
  }

  .logo {
    width: 180px;
  }

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

  ._3-column-grid {
    grid-row-gap: 16px;
    grid-template-columns: 1fr;
  }

  .heading.xl {
    font-size: 40px;
  }

  .heading._2xl {
    font-size: 24vw;
  }

  .error2 {
    padding-left: 20px;
    padding-right: 20px;
  }

  .ds-menu-button {
    margin-right: 4px;
  }

  .field-split {
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
  }

  .field-spacer {
    display: none;
  }

  .nav-button-animated {
    margin-right: -16px;
  }

  .nav-bar {
    padding-left: 20px;
    padding-right: 20px;
  }

  .bottom-line, .top-line {
    width: 28px;
  }

  .project-list {
    grid-row-gap: 48px;
  }

  .project-item {
    width: 280px;
  }

  .project-text-div {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    grid-template-columns: 1fr;
    display: block;
  }

  .question-plus-icon {
    margin-left: 16px;
  }

  .answer {
    padding-left: 0;
  }

  .script-link-text {
    margin-bottom: 4px;
  }

  .banner-section {
    padding-left: 16px;
    padding-right: 16px;
  }

  .banner {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 13px;
  }

  .banner-text {
    font-size: 12px;
    line-height: 1.2em;
  }

  .banner-link {
    flex: 0 auto;
    width: 100%;
  }

  .plan-card {
    padding: 24px 24px 16px;
  }

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

  .footer-main-grid {
    grid-row-gap: 32px;
    grid-template-columns: 1fr 1fr;
    padding-bottom: 32px;
  }

  .hero-title-box {
    margin-top: auto;
  }

  .hero-intro-text-box {
    max-width: 240px;
  }

  .showreel-button-outline {
    width: 55px;
    height: 55px;
  }

  .hero-intro-arrow {
    width: 16px;
  }

  .sticker {
    max-width: 20%;
  }

  .sticker.hero-1 {
    right: 26%;
  }

  .sticker.hero-2 {
    bottom: -35px;
    right: 40%;
  }

  .sticker.hero-3 {
    top: 40%;
  }

  .fixed-progress-nav {
    width: 180%;
    height: 40px;
  }

  .card-wrapper {
    padding: 32px 32px 16px;
  }

  .work-tabs-menu {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
  }

  .work-tab {
    padding: 5px 16px;
  }

  .project-wrapper {
    padding-right: 20px;
  }

  .orange-service-card {
    max-width: 170px;
    padding: 16px 16px 1px;
  }

  .absolute-service-list-wrapper {
    right: 20px;
  }

  .footer-content-card {
    padding: 24px 24px 8px;
  }

  .work-tabs {
    margin-right: -20px;
  }

  .container-2 {
    padding-left: 20px;
    padding-right: 20px;
  }
}

#w-node-_0cfa1965-2bbf-86ea-05ae-d3c26afa49c3-d9bb1667, #w-node-_62138301-e7af-bfaf-ecc4-b4646fb951ae-d9bb1667, #w-node-_6bc5cf24-53e2-b3e8-3725-3c33b94361df-d9bb1667, #w-node-adcf532b-96f1-39e2-8e53-bc3d970057f1-d9bb1667, #w-node-c31ec746-d61a-9822-27c1-33eee0139568-d9bb1667 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_8afebf38-ecff-dbe3-a7f9-34d8237cb33c-d9bb1667 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-a75f22c3-d751-b33d-bd4e-299ac99f4406-d9bb1667, #w-node-c1dacc35-1eb9-7f56-5624-c82948bed975-d9bb1667, #w-node-_0700446e-5d0a-5981-8762-33e3b170719b-cf3fcb86, #w-node-_65a84c24-de35-2757-3905-5f48881a26e2-881a26e1, #w-node-_65a84c24-de35-2757-3905-5f48881a26e8-881a26e1, #w-node-_65a84c24-de35-2757-3905-5f48881a26ee-881a26e1, #w-node-_65a84c24-de35-2757-3905-5f48881a26f4-881a26e1, #w-node-_65a84c24-de35-2757-3905-5f48881a26fa-881a26e1, #w-node-_65a84c24-de35-2757-3905-5f48881a2700-881a26e1, #w-node-_44fe6d9f-6251-9b8e-99cb-80df29c045c8-d9bb166d, #w-node-e4610bae-ba7b-3484-a86a-fde5fe41e002-d9bb1670, #w-node-_7f159d4e-82ee-0f48-e280-b829e5589cf8-d9bb1670, #w-node-_6003010e-8e18-fe89-c1de-e402585e67ab-d9bb1671 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

@media screen and (max-width: 991px) {
  #w-node-ef070126-d73b-2f25-2a0f-09fffab17faf-cf3fcb86 {
    grid-area: span 1 / span 3 / span 1 / span 3;
  }
}

@media screen and (max-width: 767px) {
  #w-node-_8afebf38-ecff-dbe3-a7f9-34d8237cb33c-d9bb1667 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}

@media screen and (max-width: 479px) {
  #w-node-ef070126-d73b-2f25-2a0f-09fffab17faf-cf3fcb86 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }
}


@font-face {
  font-family: 'Bricolage Grotesque Variable';
  src: url('../images/') format('truetype');
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}