/* #Site Styles
================================================== */

html {
  scroll-padding-top: 6.275rem; /* 102px */
}

.anchor {
  position: relative;
  top: -100px;
} /* This offsets the height of the sticky header */

body {
  font-family: aw-conqueror-sans, sans-serif;
  font-style: normal;
  font-weight: 300;
  margin: 0px;
  -moz-animation: fadein 2s; /* Firefox */
  -webkit-animation: fadein 2s; /* Safari and Chrome */
  -o-animation: fadein 2s; /* Opera */
  animation: fadein 2s;
  /*overflow: hidden;*/
  font-size: 18px;
  line-height: 1.2;
}

/* ----- Start: Fancy page fade ----- */

@keyframes fadein {
  0% {
    opacity: 0.01;
  }
  1% {
    opacity: 0;
  }
  50% {
    opacity: 50;
  }
  100% {
    opacity: 1;
  }
}

@-moz-keyframes fadein {
  /* Firefox */
  0% {
    opacity: 0.01;
  }
  1% {
    opacity: 0;
  }
  50% {
    opacity: 50;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadein {
  /* Safari and Chrome */
  0% {
    opacity: 0.01;
  }
  1% {
    opacity: 0;
  }
  50% {
    opacity: 50;
  }
  100% {
    opacity: 1;
  }
}

@-o-keyframes fadein {
  /* Opera */
  0% {
    opacity: 0.01;
  }
  1% {
    opacity: 0;
  }
  50% {
    opacity: 50;
  }
  100% {
    opacity: 1;
  }
}

/* ----- End: Fancy page fade ----- */

h1.visually-hidden,
.visually-hidden {
  font-size: 0;
  width: 1px;
  height: 1px;
  display: inline-block;
  overflow: hidden;
  position: absolute !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  clip: rect(1px, 1px, 1px, 1px);
}

h2 {
  font-size: 36px;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: 20px;
}

h3 {
  font-weight: normal;
  font-size: 34px;
  line-height: 1.2;
}

h4 {
  font-size: 32px;
  line-height: 1.2;
}

p,
li,
span,
label {
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

h1,
h2,
h3 {
  margin: 0 0 0.5em 0;
}

p {
  margin: 0 0 1em 0;
}

/* Wordpress Admin Bar Fix */
#wpadminbar span.display-name {
  color: #fff;
}
#wpadminbar .ab-top-menu > li.hover > .ab-item span,
#wpadminbar.nojq .quicklinks .ab-top-menu > li > .ab-item:focus span,
#wpadminbar:not(.mobile) .ab-top-menu > li:hover > .ab-item span,
#wpadminbar:not(.mobile) .ab-top-menu > li > .ab-item:focus span {
  color: #00b9eb;
}

strong {
  font-family: "FSAlbertWeb-Bold", sans-serif;
  font-weight: normal;
  line-height: inherit;
  color: inherit;
}

a {
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  text-decoration: none;
  padding-bottom: 1px;
  border-bottom: 2px transparent solid;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
}


.caveat{
	text-align: right;
	padding-block: 2rem;
	font-size: 16px;
}
/*a:hover { border-bottom: 2px #999 solid; }*/

/*

REPLACE WITH SCALING VALUES AS NECESSARY

https://royalfig.github.io/fluid-typography-calculator/

*/

.font-size-1 {
  /* 14px */
  font-size: 0.875rem;
  line-height: 1.3;
}

.font-size-2 {
  /* 16px */
  font-size: 1rem;
  line-height: 1.3;
}

.font-size-3 {
  /* 20px */
  font-size: 1.25rem;
  line-height: 1.3;
}

.font-size-4 {
  /* 25px */
  font-size: 1.5625rem;
  line-height: 1.2;
}

.font-size-5 {
  /* 32px to 40px */
  font-size: 2rem;
  font-size: clamp(2rem, 1.875rem + 0.625vw, 2.5rem);
}

.font-size-6 {
  /* 36px to 50px */
  font-size: 2.25rem;
  font-size: clamp(2.25rem, 2.03125rem + 1.09375vw, 3.125rem);
  line-height: 1.1;
}

.font-size-7 {
  /* 70px */
  font-size: 4.375rem;
}

/* Background Colour */

.bg-black,
.bg-black-hov:focus,
.bg-black-hov:hover {
  background-color: black;
}
.bg-teal,
.bg-teal-hov:focus,
.bg-teal-hov:hover {
  background-color: #0c84a0;
}
.bg-teal-dark,
.bg-teal-dark-hov:focus,
.bg-teal-dark-hov:hover {
  background-color: #054b64;
}
.bg-orange,
.bg-orange-hov:focus,
.bg-orange-hov:hover {
  background-color: #f3a32f;
}
.bg-orange-dark,
.bg-orange-dark-hov:focus,
.bg-orange-dark-hov:hover {
  background-color: #ea5439;
}
.bg-pink,
.bg-pink-hov:focus,
.bg-pink-hov:hover {
  background-color: #fbdbd4;
}
.bg-yellow,
.bg-yellow-hov:focus,
.bg-yellow-hov:hover {
  background-color: #f6d82a;
}
.bg-white,
.bg-white-hov:focus,
.bg-white-hov:hover {
  background-color: white;
}

/* Border Colour */

.bd-black {
  border: 1px solid black;
}
.bd-teal {
  border: 1px solid #0c84a0;
}
.bd-teal-dark {
  border: 1px solid #054b64;
}
.bd-orange {
  border: 1px solid #f3a32f;
}
.bd-orange-dark {
  border: 1px solid #ea5439;
}
.bd-pink {
  border: 1px solid #fbdbd4;
}
.bd-yellow {
  border: 1px solid #f6d82a;
}
.bd-white {
  border: 1px solid white;
}

/* Text Colour */

.txt-black,
.txt-black-hov:focus,
.txt-black-hov:hover {
  color: black;
}
.txt-teal,
.txt-teal-hov:focus,
.txt-teal-hov:hover {
  color: #0c84a0;
}
.txt-teal-dark,
.txt-teal-dark-hov:focus,
.txt-teal-dark-hov:hover {
  color: #054b64;
}
.txt-orange,
.txt-orange-hov:focus,
.txt-orange-hov:hover {
  color: #f3a32f;
}
.txt-orange-dark,
.txt-orange-dark-hov:focus,
.txt-orange-dark-hov:hover {
  color: #ea5439;
}
.txt-pink,
.txt-pink-hov:focus,
.txt-pink-hov:hover {
  color: #fbdbd4;
}
.txt-yellow,
.txt-yellow-hov:focus,
.txt-yellow-hov:hover {
  color: #f6d82a;
}
.txt-white,
.txt-white-hov:focus,
.txt-white-hov:hover {
  color: white;
}

img,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

.hide-desktop {
  display: none !important;
}

.wrap {
  position: relative;
  display: block;
}

a.box-link {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  border: none;
  height: 100%;
  width: 100%;
  z-index: 1000;
  background: transparent url("../assets/box-link.png");
}

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.video-wrapper iframe,
.video-wrapper object,
.video-wrapper embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.fade-2 {
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.fade-3 {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

/* Begins Flex */

.flex,
.container .column.flex,
.container .columns.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  -ms-flex-direction: row;
}

/* Breaks Content To Multiple Line */

.flex-wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

/* Vertical Alignments */

.flex-align-c {
  /* Centred  */
  -ms-flex-align: center;
  align-items: center;
}

.flex-align-s {
  /* Top (Default)  */
  align-items: flex-start;
  -ms-flex-align: start;
}

.flex-align-e {
  /* Bottom  */
  align-items: flex-end;
  -ms-flex-align: end;
}

/* Horizontal Alignments */

.flex-justify-c {
  /* Centred  */
  justify-content: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
}

.flex-justify-sb {
  /* Justified  */
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.flex-justify-se {
  /* Centred Evenly (Not Supported in IE) */
  justify-content: space-evenly;
  -webkit-justify-content: space-evenly;
}

.flex-justify-fs {
  /* Left (Default) */
  -ms-flex-align: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
}

.flex-justify-fe {
  /* Right */
  -ms-flex-align: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-justify-content: flex-end;
}

/* Margin */
/*
.margin-top {
  margin-top: 50px;
}
.margin-bottom {
  margin-bottom: 50px;
}
*/

/* Padding */
/*
.padding-top {
  padding-top: 50px;
}
.padding-bottom {
  padding-bottom: 50px;
}
*/

/* Background Shapes */
.shape {
  position: absolute;
  pointer-events: none;
}
.shape img {
  max-width: none;
  width: 100%;
}

/* Position */
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.static {
  position: static !important;
}
.inline-block {
  display: inline-block;
}

.mid {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}

.full {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.fixed.full {
  height: 100vh;
}

/* Z-Index */
.z1 {
  z-index: 1;
}
.z2 {
  z-index: 2;
}
.z3 {
  z-index: 3;
}
.z4 {
  z-index: 4;
}
.z5 {
  z-index: 5;
}
.z6 {
  z-index: 6;
}
.z7 {
  z-index: 7;
}

/* Overflow */
.band.overflow-v,
.overflow-v {
  overflow: visible !important;
}
.band.overflow-h,
.overflow-h {
  overflow: hidden !important;
}

/* Background */
.bg-white {
  background: #fff;
}
.bg-black {
  background: #000;
}

.bg-white-hov:hover {
  background: #fff;
}
.bg-black-hov:hover {
  background: #000;
}

.bg-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* Font Weight */

.weight-bold {
  font-weight: normal;
}

.weight-extrabold {
  font-weight: normal;
}

.weight-regular {
  font-weight: normal;
}

/* Text Align */
.txt-center {
  text-align: center;
}
.txt-right {
  text-align: right;
}
.txt-uppercase {
  text-transform: uppercase;
}

/* Transitions */
.trans {
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

/* Forms */

input[type="text"],
input[type="email"],
select,
textarea {
  /* Add your global form field styles here */
}

select::-ms-expand {
  display: none;
}

/* Read More Buttons */

/*
.read-more {
  border-radius: 1.5em;
  display: inline-block;
  min-width: 10rem;
  padding: 0.5em 1.5em;
  
	font-family: 'FONT_NAME', sans-serif;
	text-transform: uppercase;
	font-size: 14px !important;
	line-height: 18px !important;
	outline: none !important;
	box-shadow: none !important;
	text-shadow: none !important;
	border: 1.2px solid;
	border-radius: 30px;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
	display: inline-block;
	text-align: center;
	min-width: 140px;
	padding: 12px 20px;
}
*/

/*.buttons-wrap.txt-center .read-more {margin: 0px 7px;}*/

/* Popups */

/*
.popup-overlay {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: rgba(0,0,0,0.7);
    z-index: 10000000;
}

.popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    width: 80%;
    max-height: 80%;
    z-index: 10000001;
    display: none;
	max-width: 1400px;
}

.popup.popup-video .popup-close {
    position: absolute;
    top: -50px;
    right: -50px;
    transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
    z-index: 100;
    cursor: pointer;
    pointer-events: auto;
    width: 25px;
    height: 25px;
}

.popup:not(.popup-video) .popup-close {
	position: absolute;
    top: 20px;
    right: 20px;
    z-index: 100;
    cursor: pointer;
    pointer-events: auto;
    width: 25px;
    height: 25px;
}
.popup:not(.popup-video) {
	padding: 70px;
	overflow-y: scroll;
}
*/

/* Accordion */

/*
.accordion-wrap {padding-top: 30px;}
.accordion-item {border-top: 2px solid rgba(30, 26, 52, 0.2);}
.accordion-head {padding: 40px 100px; cursor: pointer;}

.accordion-head:hover {background: rgba(0,0,0,0.1);}

.accordion-head:hover .arrow {
	transform: scale(1.1);
	-ms-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
}
.accordion-head .arrow {width: 50px; margin-left: auto;}

.accordion-head h3 {margin: 0px;}

.open .accordion-head .arrow {
	transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
}
.accordion-content {padding: 20px 100px 40px 100px; display: none;}

.first .accordion-content {display: block;}
*/

/* #Page Styles
================================================== */

/* #Main CSS
================================================== */

/* Custom properties */

:root {
  /* 'T-shirt sizing' scale */
  --gap_XL: 9.375rem; /* 200px */
  --gap_L: 9.375rem; /* 150px */
  --gap_M: 6.25rem; /* 100px */
  --gap_S: 3.125rem; /* 50px */
  --gap_XS: 2rem; /* 32px */
}

/* Skeleton container width for calculations */

/* Full size  */
@media only screen and (min-width: 1641px) {
  :root {
    --containerWidth: 1600px;
  }
}

/* Large Desktop */
@media only screen and (min-width: 1300px) and (max-width: 1640px) {
  :root {
    --containerWidth: 1280px;
  }
}

/* Base 960 Grid */
@media only screen and (max-width: 1299px) {
  :root {
    --containerWidth: 960px;
  }
}

/* Tablet (Portrait) */
@media only screen and (min-width: 768px) and (max-width: 959px) {
  :root {
    --containerWidth: 768px;
  }
}

/*  Mobile (Portrait) */
@media only screen and (max-width: 767px) {
  :root {
    --containerWidth: 300px;
  }
}

/* Mobile (Landscape) */
@media only screen and (min-width: 480px) and (max-width: 767px) {
  :root {
    --containerWidth: 420px;
  }
}

/* Skeleton container width for calculations */

.button {
  border-radius: 2em;
  display: inline-block;
  letter-spacing: 0.1em;
  margin: 0;
  padding: 1em 2em;
}

.icon-link {
  background: none;
  border: none;
  display: inline-block;
  margin: 0;
  padding: 0;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
}

.icon-link div,
.icon-link > span {
  align-items: center;
  display: flex;
  gap: 0.75rem;
}

.icon-link > * > span {
  font-family: aw-conqueror-sans, sans-serif;
  font-size: 1rem; /* 16px */
  font-weight: normal;
  line-height: 1;
}

.icon-link > * > span:first-child {
  width: 1.5rem; /* 24px */
}

.icon-link-medium div,
.icon-link-medium > span {
  gap: 1.25rem;
}

.icon-link-medium > * > span {
  font-size: 1.25rem; /* 20px */
}

.icon-link-medium > * > span:first-child {
  width: 2.5rem; /* 40px */
}

.icon-link-large div,
.icon-link-large > span {
  gap: 1.25rem;
}

.icon-link-large > * > span {
  font-size: 1.5rem; /* 20px */
}

.icon-link-large > * > span:first-child {
  width: 2.5rem; /* 40px */
}

.img-round {
  border-radius: 50%;
}

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

.pad-bottom-xl {
  padding-bottom: var(--gap_XL);
}

.pad-bottom-l {
  padding-bottom: var(--gap_L);
}

.pad-bottom-m {
  padding-bottom: var(--gap_M);
}

.pad-bottom-s {
  padding-bottom: var(--gap_S);
}

.pad-top-xl {
  padding-top: var(--gap_XL);
}

.pad-top-l {
  padding-top: var(--gap_L);
}

.pad-top-m {
  padding-top: var(--gap_M);
}

.pad-top-s {
  padding-top: var(--gap_S);
}

.svg-color svg path {
  fill: currentColor;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
}

.cky-revisit-bottom-right {
  bottom: 10px !important;
  right: 10px !important;
}

/* Header */

.header-skip {
  display: block;
  left: 0;
  padding: 0.25em 1em;
  text-decoration: none;
  top: -10rem;
  width: 100%;
  z-index: 10000;
}

.header-skip:focus {
  outline: none;
  top: 0;
}

header {
}

.header-contact,
.header-navigation-primary-container {
  display: none;
}

.header-navigation {
  padding-top: 1.25rem; /* 20px; */
  position: fixed;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
  width: 100%;
  z-index: 120;
}

.header-navigation.sticky:not(.header-navigation-fixed) {
  background: white;
  -webkit-box-shadow: 4px 4px 5px 0px rgb(0 0 0 / 25%);
  box-shadow: 4px 4px 5px 0px rgb(0 0 0 / 25%);
  padding-bottom: 1.25rem; /* 20px; */
}

.header-navigation-items {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.header-navigation-logo {
  position: relative;
  width: 11rem; /* 176px */
}

.header-navigation-logo svg {
  width: 100%;
}

.header-navigation-mobile {
  display: none;
}

.header-navigation-mobile-active {
  -moz-animation: fadein 1s; /* Firefox */
  -webkit-animation: fadein 1s; /* Safari and Chrome */
  -o-animation: fadein 1s; /* Opera */
  animation: fadein 1s;
  background: white;
  bottom: 0;
  display: block;
  left: 0;
  right: 0;
  top: 0;
  padding-top: 8rem; /* 128px */
  position: fixed;
  z-index: 110;
}

.header-navigation-mobile-container {
  padding-bottom: 2rem; /* 32px */
}

.header-navigation-mobile-toggle {
  position: absolute;
  right: 0;
}

.header-navigation-mobile-toggle button {
  background: none;
  border: none;
  border-radius: 0;
  display: block;
  height: 2rem;
  margin: 0;
  padding: 0;
  position: relative;
  width: 2rem;
}

.header-navigation-mobile-toggle
  button:focus
  .header-navigation-mobile-toggle-line,
.header-navigation-mobile-toggle
  button:hover
  .header-navigation-mobile-toggle-line {
  background: #ea5439;
}

.header-navigation-mobile-toggle-line {
  background: #054b64;
  display: block;
  height: 4px;
  position: absolute;
  transition: all 0.3s ease-in-out;
  width: 2rem;
}

.header-navigation-mobile-toggle-line:first-child {
  top: 0;
}

.header-navigation-mobile-toggle-line:last-child {
  bottom: 0;
}

.header-navigation-mobile-toggle-line:nth-child(2),
.header-navigation-mobile-toggle-line:nth-child(3) {
  top: calc(50% - 2px);
}

.header-navigation-mobile-toggle-active
  button
  .header-navigation-mobile-toggle-line {
  background: #ea5439 !important;
}

.header-navigation-mobile-toggle-active
  .header-navigation-mobile-toggle-line:first-child,
.header-navigation-mobile-toggle-active
  .header-navigation-mobile-toggle-line:last-child {
  opacity: 0;
  transform: scale(0);
}

.header-navigation-mobile-toggle-active
  .header-navigation-mobile-toggle-line:nth-child(2) {
  transform: rotate(-45deg);
}

.header-navigation-mobile-toggle-active
  .header-navigation-mobile-toggle-line:nth-child(3) {
  transform: rotate(45deg);
}

/* Menu (footer) */

.menu-footer .menu,
.menu-footer .menu li {
  margin: 0;
}

.menu-footer a {
  color: #054b64;
}

.menu-footer a:focus,
.menu-footer a:hover {
  color: #ea5439;
}

/* Menu (mobile) */

.menu-mobile .menu,
.menu-mobile .menu-item {
  margin: 0;
}

.menu-mobile .menu {
  display: flex;
  gap: 1.25rem;
  flex-direction: column;
}

.menu-mobile .menu > .menu-item > a {
  border: none;
  color: #054b64;
  display: inline-block;
  font-size: 1.25rem; /* 20px */
  line-height: 1;
  padding: 4px 0;
  text-transform: uppercase;
}

.menu-mobile .menu-item > a {
  position: relative;
}

.menu-mobile .menu > .menu-item a::before {
  background: #0c84a0;
  bottom: 0;
  content: "";
  display: block;
  height: 2px;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  position: absolute;
  transition: all 0.3s ease-in-out !important;
  width: 0%;
}

.menu-mobile .menu-item-has-children {
  position: relative;
}

.menu-mobile .menu > .menu-item-has-children > a::after {
  background: url("../images/icon-sub-menu.svg");
  background-repeat: no-repeat;
  background-size: 1.25rem; /* 20px */
  border-left: 1.25rem solid transparent;
  bottom: 0;
  content: "";
  display: inline-block;
  height: 1.25rem; /* 20px */
  position: absolute;
  top: 2px;
  width: 1.25rem; /* 20px */
}

.menu-mobile .menu-item-has-children-active .sub-menu {
  display: block;
}

.menu-mobile .sub-menu {
  -moz-animation: fadein 0.75s; /* Firefox */
  -webkit-animation: fadein 0.75s; /* Safari and Chrome */
  -o-animation: fadein 0.75s; /* Opera */
  animation: fadein 0.75s;
  background: #ebf2f3;
  border-bottom: 2px solid #0c84a0;
  border-top: 1rem solid white;
  display: none;
  margin: 0;
  min-width: 15rem; /* 240px */
  padding: 1.25rem; /* 20px */
}

.menu-mobile .sub-menu .menu-item:not(:last-child) {
  margin-bottom: 0.5rem; /* 8px */
}

.menu-mobile .sub-menu a {
  color: #054b64;
  display: inline-block;
  font-size: 1rem; /* 16px */
  line-height: 1;
  padding: 4px 0;
}

/* Menu (mobile) - highlights */

.error404 .menu-mobile .menu > .menu-item.current_page_parent > a::before,
.search-results .menu-mobile .menu > .menu-item.current_page_parent > a::before,
.single-case-study
  .menu-mobile
  .menu
  > .menu-item.current_page_parent
  > a::before {
  width: 0;
}

.menu-mobile .menu > .menu-item > a:focus::before,
.menu-mobile .menu > .menu-item > a:hover::before,
.menu-mobile .sub-menu > .menu-item > a:focus::before,
.menu-mobile .sub-menu > .menu-item > a:hover::before,
.menu-mobile .menu .current-menu-ancestor > a::before,
.menu-mobile .menu .current-menu-item > a::before,
.menu-mobile .menu .current-page-ancestor > a::before,
.menu-mobile .menu .current_page_parent > a::before,
.single-case-study
  .menu-mobile
  .menu
  > .menu-item
  > a[href*="/case-studies/"]::before {
  width: 100%;
}

.menu-mobile .menu > .menu-item-has-children > a:focus::before,
.menu-mobile .menu > .menu-item-has-children > a:hover::before,
.menu-mobile .menu > .menu-item-has-children-active > a::before,
.menu-mobile .menu > .menu-item-has-children.current-menu-ancestor > a::before,
.menu-mobile .menu > .menu-item-has-children.current-menu-item > a::before,
.menu-mobile .menu > .menu-item-has-children.current-page-ancestor > a::before,
.menu-mobile .menu > .menu-item-has-children.current_page_parent > a::before {
  width: calc(100% + 2.5rem);
}

/* Menu (primary) */

.menu-primary {
  display: inline-block;
}

.menu-primary .menu,
.menu-primary .menu-item {
  margin: 0;
}

.menu-primary .menu {
  display: flex;
}

.menu-primary .menu > .menu-item > a {
  border: none;
  color: #054b64;
  display: inline-block;
  font-size: 1.25rem; /* 20px */
  line-height: 1;
  padding: 4px 0;
  text-transform: uppercase;
}

.menu-primary .menu > .menu-item {
  margin-right: var(--gap_XS);
}

.menu-primary .menu-item > a {
  position: relative;
}

.menu-primary .menu > .menu-item a::before {
  background: #0c84a0;
  bottom: 0;
  content: "";
  display: block;
  height: 2px;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  position: absolute;
  transition: all 0.3s ease-in-out !important;
  width: 0%;
}

.menu-primary .menu > .menu-item-has-children {
  margin-right: calc(var(--gap_S) * 1.25);
  position: relative;
}

.menu-primary .menu > .menu-item-has-children > a::after {
  background: url("../images/icon-sub-menu.svg");
  background-repeat: no-repeat;
  background-size: 1.25rem; /* 20px */
  border-left: 0.75rem solid transparent;
  bottom: 0;
  content: "";
  display: inline-block;
  height: 1.25rem; /* 20px */
  position: absolute;
  top: 2px;
  width: 1.25rem; /* 20px */
}

.menu-primary .menu-item-has-children-active .sub-menu {
  display: block;
}

.menu-primary .sub-menu {
  -moz-animation: fadein 0.75s; /* Firefox */
  -webkit-animation: fadein 0.75s; /* Safari and Chrome */
  -o-animation: fadein 0.75s; /* Opera */
  animation: fadein 0.75s;
  background: #ebf2f3;
  border-bottom: 2px solid #0c84a0;
  border-top: 1rem solid white;
  display: none;
  margin: 0;
  min-width: 15rem; /* 240px */
  padding: 1.25rem; /* 20px */
  position: absolute;
}

.menu-primary .sub-menu .menu-item:not(:last-child) {
  margin-bottom: 0.5rem; /* 8px */
}

.menu-primary .sub-menu a {
  color: #054b64;
  display: inline-block;
  font-size: 1rem; /* 16px */
  line-height: 1;
  padding: 4px 0;
}

/* Menu (primary) - highlights */

.error404 .menu-primary .menu > .menu-item.current_page_parent > a::before,
.search-results
  .menu-primary
  .menu
  > .menu-item.current_page_parent
  > a::before,
.single-case-study
  .menu-primary
  .menu
  > .menu-item.current_page_parent
  > a::before {
  width: 0;
}

.menu-primary .menu > .menu-item > a:focus::before,
.menu-primary .menu > .menu-item > a:hover::before,
.menu-primary .sub-menu > .menu-item > a:focus::before,
.menu-primary .sub-menu > .menu-item > a:hover::before,
.menu-primary .menu .current-menu-ancestor > a::before,
.menu-primary .menu .current-menu-item > a::before,
.menu-primary .menu .current-page-ancestor > a::before,
.menu-primary .menu .current_page_parent > a::before,
.single-case-study
  .menu-primary
  .menu
  > .menu-item
  > a[href*="/case-studies/"]::before {
  width: 100%;
}

.menu-primary .menu > .menu-item-has-children > a:focus::before,
.menu-primary .menu > .menu-item-has-children > a:hover::before,
.menu-primary .menu > .menu-item-has-children-active > a::before,
.menu-primary .menu > .menu-item-has-children.current-menu-ancestor > a::before,
.menu-primary .menu > .menu-item-has-children.current-menu-item > a::before,
.menu-primary .menu > .menu-item-has-children.current-page-ancestor > a::before,
.menu-primary .menu > .menu-item-has-children.current_page_parent > a::before {
  width: calc(100% + 2rem);
}

/* Hero breadcrumbs */

.hero-breadcrumbs a,
.hero-breadcrumbs span {
  color: #054b64;
}

.hero-breadcrumbs {
  font-size: 1rem; /* 16px */
  margin-bottom: var(--gap_S);
  text-transform: uppercase;
}

.hero-breadcrumbs a {
  border: none;
  line-height: 1;
  padding: 0;
}

.hero-breadcrumbs a:focus,
.hero-breadcrumbs a:hover {
  color: #ea5439;
}

.hero-breadcrumbs-links {
  margin: 0;
}

.hero-breadcrumbs-links span {
  margin-right: 0.25rem; /* 4px */
  vertical-align: middle;
}

.hero-breadcrumbs-separator {
  background-image: url("../images/breadcrumb-separator.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 0.5rem; /* 8px */
  display: inline-block;
  height: 0.75rem; /* 12px */
  margin-top: -1px;
  width: 0.75rem; /* 12px */
}

/* Hero (front page) */

.hero-front-page {
  padding-top: var(--gap_M);
  position: relative;
}

.hero-front-page-column-visual {
  margin-bottom: var(--gap_S);
}

.hero-front-page-pattern {
  background-image: url("../images/tile-squares-blue-light.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  height: 12.5rem; /* 200px */
  position: absolute;
  top: 25%;
  width: 22vw;
}

.hero-front-page-visual {
  aspect-ratio: 6.2 / 9;
  margin-left: 5%;
  width: 90%;
}

@supports not (aspect-ratio: 6.2 / 9) {
  .hero-front-page-visual::before {
      float: left;
      padding-top: 145.1586824095661%;
      content: "";
      
  }
  .hero-front-page-visual::after {
    display: block;
    content: "";
    clear: both;
  }
}

.hero-front-page-visual-item {
  position: absolute;
}

.hero-front-page-visual-item-1 {
  height: 31%;
  left: 17%;
  top: 0%;
  width: 50%;
}

.hero-front-page-visual-item-2 {
  height: 50%;
  right: 0;
  top: 27%;
  width: 48%;
}

.hero-front-page-visual-item-3 {
  height: 20%;
  right: 7%;
  bottom: 0%;
  width: 50%;
}

.hero-front-page-visual-item-4 {
  height: 34%;
  left: 9%;
  bottom: 1%;
  width: 49%;
}

.hero-front-page-visual-item-5 {
  height: 35%;
  left: 0px;
  top: 34%;
  width: 26%;
}

.hero-front-page-visual-item-6 {
  height: 17%;
  left: 33%;
  top: 43%;
  width: 25%;
}

.hero-front-page-cta {
  margin-top: 2rem; /* 32px */
}

/* Hero (generic) */

.hero-generic {
  padding-top: var(--gap_XL);
}

.hero-generic .container {
  position: relative;
}

.hero-generic-column {
  padding-bottom: var(--gap_M);
}

.hero-generic-column p:last-child {
  margin: 0;
}

.hero-generic-column-images {
  padding-bottom: var(--gap_L);
}

.hero-generic-columns-image {
  position: absolute;
  width: 25%;
  z-index: 1;
}

.hero-generic-columns-image-wide {
  width: 33.333%;
}

.hero-generic-columns-image-bottom,
.hero-generic-columns-image-top {
  bottom: 0; /* 32px */
}

.hero-generic-columns-image-left {
  left: 0;
}

.hero-generic-columns-image-right {
  right: 0;
}

.hero-generic-cta {
  margin-top: 2rem;
}

/* Hero (priority) */

.hero-priority {
  padding: var(--gap_XL) 0 var(--gap_M) 0;
  position: relative;
}

.hero-priority-column-info {
  margin-bottom: var(--gap_M);
}

.hero-priority-pattern-1 {
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  height: 8rem; /* 288px */
  left: 20%;
  position: absolute;
  top: -15%;
  transform: rotate(8deg) !important;
  width: 8rem; /* 128px */
  z-index: 3;
}



.hero-priority-pattern-1-brownfield-regeneration {
  background-color: #f3a32f;
}

.hero-priority-pattern-1-green-retrofit {
  background-color: #f6d82a;
}

.hero-priority-pattern-1-homeless-reduction {
  background-color: #0c84a0;
}

.hero-priority-pattern-2 {
  bottom: -3rem;
  clip-path: polygon(70% 0, 100% 60%, 70% 100%, 0 90%);
  height: 9.25rem; /* 148px */
  right: 1rem;
  position: absolute;
  transform: rotate(8deg) !important;
  width: 12.5rem; /* 200px */
  z-index: 3;
}

.hero-priority-pattern-2-brownfield-regeneration {
  background-color: #fbdbd4;
}

.hero-priority-pattern-2-green-retrofit {
  background-color: #0c84a0;
}

.hero-priority-pattern-2-homeless-reduction {
  background-color: #f3a32f;
}

.hero-priority-column-visual,
.hero-priority-column-visual img {
  position: relative;
}

.hero-priority-column-visual img {
  z-index: 2;
}

.hero-priority .hero-priority-column-info a.button-pill {
  display: inline-block!important;
  }

/* Hero (single) */

.hero-single {
  padding: var(--gap_XL) 0 var(--gap_S) 0;
}

.hero-single-column {
  text-align: center;
}

.hero-single .container {
  position: relative;
}

.hero-single-terms a:not(:last-child)::after {
  content: ",";
  display: inline-block;
  margin-right: 0.25rem; /* 4px */
}

/* FacetWP */

.facetwp-facet.facetwp-facet-load_more {
  display: flex;
  justify-content: center;
  margin: 0;
}

.facetwp-facet.facetwp-facet-categories_case_studies,
.facetwp-facet.facetwp-facet-categories_case_studies select,
.facetwp-facet.facetwp-facet-categories_posts,
.facetwp-facet.facetwp-facet-categories_posts select,
.facetwp-facet.facetwp-facet-search {
  margin: 0;
  -webkit-appearance: none;
}

.facetwp-facet.facetwp-facet-search input,
.facetwp-facet.facetwp-facet-categories_case_studies select,
.facetwp-facet.facetwp-facet-categories_posts select {
  border: 2px solid #054b64;
  border-radius: 2em;
  cursor: pointer;
  display: block;
  font-family: aw-conqueror-sans, sans-serif;
  font-size: 1rem;
  font-weight: normal;
  height: 3.375rem; /* 54px */
  margin: 0;
  padding: 0 1em;
  text-transform: uppercase;
  width: 100% !important;
}

.facetwp-facet.facetwp-facet-search input {
}

.facetwp-facet.facetwp-facet-search input,
.facetwp-facet.facetwp-facet-search input::placeholder {
  color: #054b64;
}

.facetwp-facet.facetwp-facet-categories_case_studies select,
.facetwp-facet.facetwp-facet-categories_posts select {
  appearance: none;
  background: #054b64;
  color: white;
}

.facetwp-icon {
  display: none;
}

.facetwp-input-wrap {
  display: block !important;
}

.facetwp-load-more {
  background: #0c84a0;
  border: 0;
  border-radius: 2em;
  color: white;
  display: inline-block;
  font-family: aw-conqueror-sans, sans-serif;
  font-size: 1rem;
  font-weight: normal;
  letter-spacing: 0.1em;
  margin: var(--gap_S) 0;
  padding: 1em 2em;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
}

.facetwp-load-more:focus,
.facetwp-load-more:hover {
  background: #ea5439;
}

/* Flexible */

.flexible {
}

/* Flexible (case studies) */

.flexible-case-studies {
  position: relative;
}

.flexible-case-studies h2 {
}

.flexible-case-studies-column {
  margin-bottom: var(--gap_M);
  position: relative;
}

.flexible-case-studies-cta {
  bottom: -3rem; /* -48px */
  left: 1.25rem; /* 20px */
  position: absolute;
}

.flexible-case-studies-cta li,
.flexible-case-studies-cta ul {
  margin: 0;
}

.flexible-case-studies-cta ul {
  display: flex;
  gap: 1.25rem; /* 20px */
}

.flexible-case-studies-info {
  margin-bottom: var(--gap_S);
}

.flexible-case-studies-info h3 {
  line-height: 1;
}

.flexible-case-studies-item,
.flexible-case-studies-item-content {
  height: 100%;
  position: relative;
}

.flexible-case-studies-item-content {
  overflow: hidden;
  padding-bottom: 66.666%;
}

.flexible-case-studies-item-category {
  margin-bottom: 0.5rem; /* 8px */
}

.flexible-case-studies-item-category li {
  margin-bottom: 0;
}

.flexible-case-studies-item-info {
  padding: 1.25rem; /* 20px */
}

.flexible-case-studies-item-visual {
  background: white;
  bottom: 0;
  clip-path: polygon(0 2rem, 100% 0, 100% 100%, 0% 100%);
  overflow: hidden;
  position: absolute;
  width: 100%;
  z-index: 1;
}

.flexible-case-studies-item-visual-image {
  border: 0;
  position: relative;
}

.flexible-case-studies-item-visual a:focus img,
.flexible-case-studies-item-visual a:hover img {
  transform: scale(1.15);
}

.flexible-case-studies-item-visual-image img {
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.5s ease-in-out !important;
  -o-transition: all 0.5s ease-in-out !important;
  transition: all 0.5s ease-in-out !important;
  width: 100%;
}

.flexible-case-studies-pattern-1 {
  background-image: url("../images/tile-squares-blue-light.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  top: 0;
  height: 20rem; /* 320px */
  position: absolute;
  width: 100%;
}

/* Flexible (columns) */

.flexible-columns {
}

.flexible-columns ol:last-child,
.flexible-columns p:last-child,
.flexible-columns ul:last-child {
  margin-bottom: 0;
}

.flexible-columns ol,
.flexible-columns ul {
  margin-left: 0;
  padding-left: 2rem;
}

.flexible-columns ul {
  list-style-type: disc;
}

/* Flexible (copy and image) */

.flexible-copy-image-image img {
  clip-path: polygon(100% 0, 100% 75%, 30% 100%, 0 85%, 0 0);
  height: 100vw;
  left: calc(0px - ((100vw - var(--containerWidth)) / 2));
  max-width: none;
  object-fit: cover;
  position: relative;
  width: 100vw;
}

.flexible-copy-image-pattern {
  background-image: url("../images/tile-squares-white.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  height: 10rem; /* 160px */
  opacity: 0.25;
  position: absolute;
  right: calc(0px - ((100vw - var(--containerWidth)) / 2));
  top: calc(100vw - 10rem);
  width: 60vw;
}

/* Flexible (gallery) */

.flexible-gallery-slider li {
  margin: 0;
}

.flexible-gallery-slider .glide__slide {
  opacity: 0.3;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
}

.flexible-gallery-slider .glide__slide img {
  width: 100%;
}

.flexible-gallery-slider .glide_slide-is-active {
  opacity: 1;
}

.flexible-gallery-slider .glide__arrow {
  background: #054b64;
  border: none;
  border-radius: 0;
  display: block;
  height: var(--gap_XS);
  margin: 0;
  padding: 0;
  width: var(--gap_XS);
}

.flexible-gallery-slider .glide__arrow--left {
  left: 0;
}

.flexible-gallery-slider .glide__arrow--left img {
  transform: rotate(180deg);
}

.flexible-gallery-slider .glide__arrow--right {
  right: 0;
}

/* Flexible (KPIs) */

.flexible-kpis {
  position: relative;
}

.flexible-kpis-info h2,
.flexible-kpis-info h3 {
  line-height: 1;
}

.flexible-kpis-info h2 {
  margin: 0 0 1.5rem 0; /* 24px */
}

.flexible-kpis-info h3 {
  margin: 0;
}

.flexible-kpis-pattern {
  background-image: url("../images/tile-squares-white.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  height: 12.5rem; /* 200px */
  opacity: 0.2;
  position: absolute;
  top: 20rem;
  width: calc(3.125rem + ((100vw - var(--containerWidth)) / 2));
}

.flexible-kpis-slider {
  padding: var(--gap_S) 0;
}

.flexible-kpis-slider h4 {
  margin: 0 0 0.75em 0;
}

.flexible-kpis-slider .glide__bullet {
  height: 0.875rem; /* 14px */
  margin: 0 0.5em;
  width: 0.875rem; /* 14px */
}

.flexible-kpis-slider .glide__bullets {
  bottom: 3rem; /* 48px */
  left: unset;
  right: 0;
  transform: none;
}

.flexible-kpis-slider .glide__bullets-hidden {
  display: none;
}

.flexible-kpis-visual img {
  clip-path: polygon(20% 0, 100% 0, 100% 100%, 0% 100%);
  height: 10rem; /* 160ox */
  left: calc(0px - ((100vw - var(--containerWidth)) / 2));
  max-width: none;
  object-fit: cover;
  position: relative;
  top: -2rem; /* 32px */
  width: 100vw;
}

/* Flexible (logos) */

.flexible-logos-info {
  margin-bottom: var(--gap_S);
}

.flexible-logos-item {
  display: flex;
  flex: 1 0 var(--logoSize);
  justify-content: center;
  margin: 0;
}

.flexible-logos-item a {
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
}

.flexible-logos-item a:focus,
.flexible-logos-item a:hover {
  transform: scale(1.2);
}

.flexible-logos-item img {
  display: block;
  height: auto;
  max-height: var(--logoSize);
  max-width: var(--logoSize);
  width: 100%;
}

.flexible-logos-items {
  /* https://royalfig.github.io/fluid-typography-calculator/ */

  /*
	Min: 1.5rem (24px) @ 15rem (240px) viewport
	Max: 8rem (128px) @ 70rem (1600px) viewport
	*/
  --logoGap: clamp(1.5rem, -0.125rem + 8.125vw, 8rem);

  /*
	Min: 4.6875rem (75px) @ 15rem (240px) viewport
	Max: 12.5rem (200px) @ 100rem (1600px) viewport
	*/
  --logoSize: clamp(4.6875rem, 3.359375rem + 6.640625vw, 10rem);

  align-items: center;
  column-gap: var(--logoGap);
  display: flex;
  flex-flow: row wrap;
  margin: 0 auto;
  max-width: 100rem; /* (1600px) */
  row-gap: calc(var(--logoGap) / 3);
}

/* Flexible (news) */

.flexible-news {
  position: relative;
}

.flexible-news h2 {
}

.flexible-news-column {
  margin-bottom: var(--gap_M);
  position: relative;
}

.flexible-news-cta {
  bottom: -3rem; /* -48px */
  left: 1.25rem; /* 20px */
  position: absolute;
}

.flexible-news-cta li,
.flexible-news-cta ul {
  margin: 0;
}

.flexible-news-cta ul {
  display: flex;
  gap: 1.25rem; /* 20px */
}

.flexible-news-info, .flexible-signposts-info {
  margin-bottom: var(--gap_S);
}

.flexible-news-item,
.flexible-news-item-content {
  height: 100%;
  position: relative;
}

.flexible-news-item {
}

.flexible-news-item-content {
  overflow: hidden;
  padding-bottom: 66.666%;
}

.flexible-news-item-category {
  margin-bottom: 0.5rem; /* 8px */
}

.flexible-news-item-category li {
  margin-bottom: 0;
}

.flexible-news-item-info {
  padding: 1.25rem; /* 20px */
}

.flexible-news-item-info h3 {
  line-height: 1;
}

.flexible-news-item-visual {
  background: white;
  bottom: 0;
  clip-path: polygon(0 2rem, 100% 0, 100% 100%, 0% 100%);
  overflow: hidden;
  position: absolute;
  width: 100%;
  z-index: 1;
}

.flexible-news-item-visual-image {
  border: 0;
  position: relative;
}

.flexible-news-item-visual a:focus img,
.flexible-news-item-visual a:hover img {
  transform: scale(1.15);
}

.flexible-news-item-visual-image img {
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.5s ease-in-out !important;
  -o-transition: all 0.5s ease-in-out !important;
  transition: all 0.5s ease-in-out !important;
  width: 100%;
}

.flexible-news-pattern-1 {
  background-image: url("../images/tile-squares-blue-light.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  bottom: 0;
  height: 20rem; /* 320px */
  position: absolute;
  width: 100%;
}

.flexible-news-pattern-2 {
  background-image: url("../images/tile-pattern-orange.svg");
  background-repeat: repeat;
  background-size: 10rem; /* 160px */
  clip-path: polygon(30% 0%, 100% 0%, 70% 100%, 0% 100%);
  height: 15rem; /* 240px */
  left: -5rem; /* -80px */
  position: absolute;
  top: 0;
  width: 15rem; /* 240px */
}

/* Flexible (pattern) */

.flexible-pattern-tile {
  background-repeat: repeat;
  background-size: 5rem; /* 80px */
  height: 5rem; /* 80px */
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
}

/* Flexible (signposts) */

.flexible-signposts {
  position: relative;
}

.flexible-signposts-column {
  margin-bottom: var(--gap_XS);
}

.flexible-signposts-column:last-child {
  margin-bottom: 0;
}

.flexible-signposts-column p {
}

.flexible-signposts-pattern-1 {
  background-image: url("../images/tile-squares-blue-light.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  height: 30rem; /* 160px */
  position: absolute;
  right: 0;
  top: 0;
  width: 25vw;
}

.flexible-signposts-pattern-2 {
  background-image: url("../images/tile-arrows-down-orange.svg");
  background-position: top right;
  background-repeat: repeat;
  background-size: 5rem; /* 80px */
  height: 5rem; /* 80px */
  position: absolute;
  left: 0;
  bottom: 0;
  width: 2.5rem; /* 40px */
}

.flexible-signposts-visual {
  margin-bottom: 1.5rem; /* 24px */
}

/* Flexible (video) */

.flexible-video {
}

/* LCRHA map */

.lcrha-map {
  position: relative;
}

.lcrha-map-column-buttons form {
  margin-bottom: var(--gap_S);
}

.lcrha-map-column-buttons ul {
  display: none;
}

.lcrha-map-columns {
  padding: 1.25rem 1.25rem 0 1.25rem; /* 20px */
}

.lcrha-map-pattern-1 {
  background-image: url("../images/tile-squares-blue-light.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  height: 60%; /* 160px */
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}

#lcrha_map path {
  transform-origin: 50% 50%;
}

#lcrha_map_highlights path {
  display: none;
}

#lcrha_map_highlights path.active {
  -moz-animation: fadein 2s; /* Firefox */
  -webkit-animation: fadein 2s; /* Safari and Chrome */
  -o-animation: fadein 2s; /* Opera */
  animation: fadein 2s;
  display: block;
}

#lcr-map-region {
  background: #054b64;
  border: 2px solid #054b64;
  border-radius: 2em;
  color: white;
  cursor: pointer;
  display: block;
  font-family: aw-conqueror-sans, sans-serif;
  font-size: 1rem;
  font-weight: normal;
  height: 3.375rem; /* 54px */
  margin: 0;
  padding: 0 1em;
  text-transform: uppercase;
  width: 100% !important;
  -webkit-appearance: none;
}

/* Footer (links) */

.footer-links-columns {
  display: flex;
  flex-direction: column;
  gap: var(--gap_XS);
}

/* Listing */

.listing {
  position: relative;
}

.listing-content {
  position: relative;
  z-index: 1;
}

.listing-filters {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.25rem; /* 20px */
  padding: var(--gap_S) 0;
}

.listing-filters > div {
  width: 100%;
}

.listing-pattern-1 {
  background-image: url("../images/tile-squares-blue-light.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  bottom: 0;
  height: 40rem; /* 640px */
  position: absolute;
  top: 0;
  width: 100%;
}

.listing-empty .listing-pattern-1 {
  height: 5.5rem; /* 88px */
}

/* Contact */

.contact {
  padding-bottom: var(--gap_M);
  position: relative;
}

.contact-column {
  position: relative;
  z-index: 2;
}

.contact-pattern-1 {
  background-image: url("../images/tile-squares-blue-light.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  bottom: 0;
  height: 20rem; /* 320px */
  position: absolute;
  width: 100%;
}

.contact .gfield:last-child,
.contact .gfield_label,
.contact .ginput_complex label,
.contact .gform_ajax_spinner,
.contact .gform_required_legend,
.contact .hide_summary,
.contact .validation_message {
  display: none;
}

.contact .gfield {
  margin-bottom: 0.75rem; /* 12px */
}

.contact .gform_body {
  margin-bottom: 1.5rem; /* 24px */
}

.contact .gform_button {
  background: #054b64;
  border: none;
  border-radius: 2em;
  color: white;
  display: block;
  font-size: 1rem; /* 16px */
  font-weight: normal;
  height: 3.375rem;
  letter-spacing: 0.1em;
  line-height: 3.375rem;
  margin: 0;
  padding: 0 2em;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
  -webkit-appearance: none;
}

.contact .gform_button:focus,
.contact .gform_button:hover {
  background: #ea5439;
}

.contact .gform_confirmation_message {
  padding: 1.5rem; /* 24px */
  text-align: center;
}

.contact .gform_confirmation_message p:last-child {
  margin: 0;
}

.contact .gform_description {
  display: block;
  font-size: 1.25rem; /* 20px */
  padding: 1.5rem 1.5rem 0 1.5rem; /* 24px */
}

.contact .gform_footer {
  display: flex;
  justify-content: center;
}

.contact .gform_title {
  color: #054b64;
  flex-shrink: 0;
  font-size: 2.5rem; /* 40px */
  line-height: 1;
  margin: 0;
  text-transform: uppercase;
}

.contact .gform_wrapper form {
  margin: 0;
  padding: 1.5rem; /* 24px */
}

.contact .ginput_complex {
  display: flex;
  flex-direction: column;
  gap: 0.75rem; /* 12px */
}

.contact .ginput_complex span {
  flex-grow: 1;
}

.contact form fieldset,
.contact form input[type="text"],
.contact form input[type="email"],
.contact form textarea {
  margin: 0;
}

.contact form input[type="email"],
.contact form input[type="text"],
.contact form textarea {
  background: white;
  border: 2px solid white;
  color: #054b64;
  font-family: aw-conqueror-sans, sans-serif;
  font-size: 1rem;
  font-style: normal;
  padding: 1rem;
  text-transform: uppercase;
  width: 100%;
}

.contact .gfield_error input[type="email"],
.contact .gfield_error input[type="text"],
.contact .gfield_error textarea {
  border-color: red;
}

.contact form input::placeholder,
.contact form textarea::placeholder {
  color: #054b64;
}

/* Post */

.post-column-info {
  margin-bottom: var(--gap_M);
}

.post-column-info ol:last-child,
.post-column-info p:last-child,
.post-column-info ul:last-child {
  margin-bottom: 0;
}

.post-column-info ul {
  list-style-type: disc;
  padding-left: 1.25rem; /* 20px */
}

.post-column-share {
  border-top: 1px solid #054b64;
  padding: var(--gap_S) 0 var(--gap_M) 0;
}

.post-column-visual {
  margin-bottom: var(--gap_S);
  position: relative;
}

.post-column-visual img {
  width: 100%;
}

.post-columns {
  padding-top: var(--gap_S);
}

.post-content {
  position: relative;
}

.post-featured figcaption {
  padding-top: 0.5rem; /* 8px */
}

.post-pattern {
  background-image: url("../images/tile-pattern-orange-dark.svg");
  background-repeat: repeat;
  background-size: 8rem; /* 128px */
  height: 12rem; /* 192px */
  position: absolute;
  top: 0;
  width: 100%;
}

.post-image-large {
  padding-bottom: var(--gap_S);
  position: relative;
}

.post-image-large img {
  height: 50vw;
  object-fit: cover;
  position: relative;
  width: 100%;
}

.post-image-large-pattern-1 {
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  height: 20vw;
  right: 20%;
  position: absolute;
  top: -25%;
  transform: rotate(200deg) !important;
  width: 20vw;
}

.post-image-large-pattern-2 {
  background-image: url("../images/tile-squares-white.svg");
  background-repeat: repeat;
  background-size: 1.25rem; /* 20px */
  bottom: 0;
  height: 80%;
  left: calc(0px - ((100vw - var(--containerWidth)) / 2));
  opacity: 0.4;
  position: absolute;
  width: 40vw;
}

.post-share-links {
  gap: var(--gap_XS);
}

.post-share-link {
  flex: 0 0 var(--gap_XS);
}

/* Share */

.share {
  bottom: 0;
  clip-path: polygon(0 2rem, 100% 0, 100% 100%, 0% 100%);
  height: 7.5rem; /* 120px */
  padding: 3.5rem 1.25rem 1.25rem 1.25rem; /* 56px 20px 20px 20px */
  position: absolute;
  transform: translateY(100%);
  width: 100%;
  z-index: 10;
}

.share a,
.share button {
  border: none;
  display: none;
  margin: 0;
}

.share-active {
  -moz-animation: fadein 0.75s; /* Firefox */
  -webkit-animation: fadein 0.75s; /* Safari and Chrome */
  -o-animation: fadein 0.75s; /* Opera */
  animation: fadein 0.75s;
  transform: translateY(0);
}

.share-active a,
.share-active button {
  display: block;
}

.share-link,
.share-links {
  margin: 0;
}

.share-link {
  gap: 1.25rem; /* 20px */
  height: 2rem; /* 32px */
  width: 2rem; /* 32px */
}

.share-link-copy {
  background: none;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 0;
}

.share-links {
  display: flex;
  gap: 1.25rem; /* 20px */
  height: 2rem; /* 32px */
}

.share-toggle-icon {
  transform: rotate(-90deg);
}

/* Terms */

.term-panel-case-study,
.term-panel-news {
  color: white;
}

.term-panel-case-study:focus,
.term-panel-case-study:hover,
.term-panel-news:focus,
.term-panel-news:hover {
  color: #f3a32f;
}

.term-panel-brownfield-regeneration {
  color: #a3d0db;
}

.term-panel-green-retrofit {
  color: #f6d82a;
}

.term-panel-homeless-reduction {
  color: #fbdbd4;
}

/* Footer (contact) */

.footer-contact_wrapper form {
  margin: 0;
}

.footer-contact_wrapper form fieldset,
.footer-contact_wrapper form input[type="email"],
.footer-contact_wrapper form input[type="text"] {
  margin: 0;
}

.footer-contact_wrapper form input[type="email"],
.footer-contact_wrapper form input[type="text"] {
  background: white;
  border: 2px solid white;
  color: #054b64;
  font-family: aw-conqueror-sans, sans-serif;
  font-size: 1rem;
  font-style: normal;
  padding: 1rem;
  text-transform: uppercase;
  width: 100%;
}

.footer-contact_wrapper .gfield_error input[type="email"],
.footer-contact_wrapper .gfield_error input[type="text"] {
  border-color: red;
}

.footer-contact_wrapper form input::placeholder {
  color: #054b64;
}

.footer-contact_wrapper .gfield:last-child,
.footer-contact_wrapper .gfield_label,
.footer-contact_wrapper .ginput_complex label,
.footer-contact_wrapper .gform_ajax_spinner,
.footer-contact_wrapper .gform_required_legend,
.footer-contact_wrapper .hide_summary,
.footer-contact_wrapper .validation_message {
  display: none;
}

.footer-contact_wrapper .gfield {
  margin-bottom: 0.75rem; /* 12px */
}

.footer-contact_wrapper .gform_body {
  margin-bottom: 1.5rem; /* 24px */
}

.footer-contact_wrapper .gform_button {
  background: #054b64;
  border: none;
  border-radius: 2em;
  color: white;
  display: block;
  font-size: 1rem; /* 16px */
  font-weight: normal;
  height: 3.375rem;
  letter-spacing: 0.1em;
  line-height: 3.375rem;
  margin: 0;
  padding: 0 2em;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease-in-out !important;
  -moz-transition: all 0.3s ease-in-out !important;
  -o-transition: all 0.3s ease-in-out !important;
  transition: all 0.3s ease-in-out !important;
  -webkit-appearance: none;
}

.footer-contact_wrapper .gform_button:focus,
.footer-contact_wrapper .gform_button:hover {
  background: #ea5439;
}

.footer-contact_wrapper .gform_description {
  font-size: 1.25rem; /* 20px */
}

.footer-contact_wrapper .gform_footer {
  display: flex;
  justify-content: flex-end;
}

.footer-contact_wrapper .gform_heading {
  margin-bottom: 2rem; /* 32px */
}

.footer-contact_wrapper .gform_title {
  color: #054b64;
  flex-shrink: 0;
  font-size: 2.5rem; /* 40px */
  line-height: 1;
  margin: 0 0 1rem 0; /* 16px */
  text-transform: uppercase;
}

.footer-contact_wrapper .ginput_complex {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.footer-contact_wrapper .ginput_complex span {
  flex-grow: 1;
}

/* Footer (links) */

.footer-links {
  padding: var(--gap_S) 0;
}

.footer-links-column p {
  margin: 0;
}

/* Footer (social) */

.footer-social {
  background-image: url("../images/tile-pattern-teal-dark.svg");
  background-repeat: repeat;
  background-size: 8rem; /* 128px */
  padding: var(--gap_S) 0;
}

.footer-social h2 {
  margin: 0 0 1em 0;
}

.footer-social-links,
.footer-social-links li {
  margin: 0;
}

.footer-social-links {
  gap: var(--gap_XS);
}

.footer-social-link {
  flex: 0 0 var(--gap_XS);
}

/* #Media Queries
================================================== */

@media all and (max-width: 30rem) {
  .container-wide-mobile,
  .container-wide-mobile > .columns {
    width: 100% !important;
  }
}

@media all and (min-width: 22.5rem) {
  /* 360px */

  /* Hero (front page) */

  .hero-front-page-visual {
    margin-left: 0;
    width: 100%;
  }
}

@media all and (min-width: 30rem) {
}

@media all and (min-width: 40rem) {
}

@media all and (max-width: 767px) {
}

@media all and (min-width: 48rem) {
  /* 768px */

  /* Facet WP */

  .facetwp-facet.facetwp-facet-search input,
  .facetwp-facet.facetwp-facet-categories_case_studies select,
  .facetwp-facet.facetwp-facet-categories_posts select {
    width: 18.75rem !important; /* 300px */
  }

  /*
	Flexible (case studies)
	Flexible (news)
	*/

  .flexible-case-studies-columns-container,
  .flexible-news-columns-container {
    column-gap: 1rem; /* 16px */
    display: grid;
    grid-template-columns: repeat(16, 1fr);
    row-gap: var(--gap_S);
  }

  .flexible-case-studies-column,
  .flexible-news-column {
    margin-bottom: var(--gap_M);
    position: relative;
    width: calc(50% - 0.5rem);
  }

  .flexible-case-studies-columns,
  .flexible-news-columns {
    display: flex;
    flex-flow: row wrap;
    gap: 1rem;
    grid-column: span 16;
  }

  .flexible-news-pattern-2 {
    background-image: url("../images/tile-pattern-orange.svg");
    background-repeat: repeat;
    background-size: 10rem; /* 160px */
    clip-path: polygon(30% 0%, 100% 0%, 70% 100%, 0% 100%);
    height: 30rem; /* 480px */
    left: -5rem; /* -80px */
    position: absolute;
    top: 0;
    width: 30rem; /* 480px */
  }

  /* Flexible (columns) */

  .flexible-columns-1 {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(16, 1fr);
  }

  .flexible-columns-1-column {
    grid-column: 4 / 14;
  }

  /* Flexible (copy and image) */

  .flexible-copy-image-content {
    align-items: center;
    display: flex;
    min-height: 31.25rem; /* 500px */
  }

  .flexible-copy-image-copy {
    right: 0;
    padding-right: var(--gap_S);
    position: relative;
    width: calc(1rem + (var(--containerWidth) / 16) * 8);
  }

  .flexible-copy-image-copy {
    width: calc(1rem + (var(--containerWidth) / 16) * 10);
  }

  .flexible-copy-image-image {
    height: 100%;
    right: calc(0px - ((100vw - var(--containerWidth)) / 2));
    position: absolute;
    /* ( Half of space around page + 6/16 columns ) - half column gap */
    width: calc(
      (
          ((100vw - var(--containerWidth)) / 2) +
            ((var(--containerWidth) / 16) * 6)
        ) - 10px
    );
  }

  .flexible-copy-image-image img {
    clip-path: polygon(20% 0, 0 65%, 40% 100%, 100% 100%, 100% 0);
    height: 100%;
    left: 0;
    min-height: 31.25rem; /* 500px */
    width: 100%;
  }

  .flexible-copy-image-pattern {
    background-image: url("../images/tile-squares-white.svg");
    background-repeat: repeat;
    background-size: 1.25rem; /* 20px */
    bottom: 0;
    height: 10rem; /* 160px */
    opacity: 0.25;
    position: absolute;
    right: calc(0px - ((100vw - var(--containerWidth)) / 2));
    top: unset;
    width: 60vw;
  }

  .flexible-copy-image-content-flipped {
    justify-content: flex-end;
  }

  .flexible-copy-image-content-flipped .flexible-copy-image-copy {
    padding-left: var(--gap_S);
    padding-right: 0;
  }

  .flexible-copy-image-content-flipped .flexible-copy-image-image {
    left: calc(0px - ((100vw - var(--containerWidth)) / 2));
    right: unset;
  }

  .flexible-copy-image-content-flipped .flexible-copy-image-image img {
    clip-path: polygon(0 0, 0 100%, 75% 100%, 100% 60%, 90% 0);
  }

  .flexible-copy-image-content-flipped .flexible-copy-image-pattern {
    left: calc(0px - ((100vw - var(--containerWidth)) / 2));
    right: unset;
  }

  /* Flexible (KPIs) */

  .flexible-kpis-visual img {
    height: 15rem; /* 240px */
  }

  /* Flexible (pattern) */

  .flexible-pattern-tile {
    background-size: 8rem; /* 128px */
    height: 8rem; /* 128px */
  }

  /* Flexible (signposts) */

  .flexible-signposts-columns-container {
    column-gap: 1rem; /* 16px */
    display: grid;
    grid-template-columns: repeat(16, 1fr);
  }

  .flexible-signposts-column {
    grid-column: span 4;
    padding-bottom: var(--gap_S);
    position: relative;
  }

  .flexible-signposts-column {
    margin: 0;
  }

  .flexible-signposts-columns {
    column-gap: 1rem; /* 16px */
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-column: 2 / 16;
  }

  .flexible-signposts-cta {
    bottom: 0;
    position: absolute;
  }

  .flexible-signposts-info {
    margin-bottom: var(--gap_S);
  }

  /* LCRHA map */

  .lcrha-map-column-buttons {
    grid-column: span 6;
  }

  .lcrha-map-column-buttons li {
    margin-bottom: 0.5rem; /* 8px */
  }

  .lcrha-map-column-buttons ul {
    display: block;
  }

  .lcrha-map-column-visual {
    grid-column: 7 / 16;
  }

  .lcrha-map-columns {
    display: grid;
    grid-template-columns: repeat(16, 1fr);
  }

  #lcr-map-region {
    display: none;
  }

  /* Hero (front page) */

  .hero-front-page {
    padding-top: var(--gap_L);
  }

  .hero-front-page-column-info {
    grid-column: span 8;
    grid-row: 1;
  }

  .hero-front-page-column-visual {
    grid-column: 9 / 17;
    margin-bottom: 0;
  }

  .hero-front-page-columns {
    align-items: center;
    display: grid;
    gap: var(--gap_S);
    grid-template-columns: repeat(16, 1fr);
  }

  /* Hero (generic) */

  .hero-generic-column {
    grid-column: 5 / 13;
    text-align: center;
  }

  .hero-generic-column-images {
    min-height: 25rem; /* 400px */
    padding-bottom: var(--gap_M);
  }

  .hero-generic-columns {
    align-items: center;
    display: grid;
    gap: 1rem; /* 16px */
    grid-template-columns: repeat(16, 1fr);
  }

  .hero-generic-columns-image-wide {
    width: 25%;
  }

  .hero-generic-columns-image-bottom {
    bottom: -2rem; /* 32px */
  }

  .hero-generic-columns-image-top {
    bottom: unset;
    top: -2rem; /* 32px */
  }

  /* Hero (priority) */

  .hero-priority-column {
    grid-column: span 8;
  }

  .hero-priority-column-info {
    margin: 0;
  }

  .hero-priority-column-visual {
    grid-column: span 7;
  }

  .hero-priority-columns {
    align-items: center;
    display: grid;
    gap: var(--gap_S);
    grid-template-columns: repeat(16, 1fr);
  }

  .hero-priority-pattern-1 {
    height: 8rem; /* 288px */
    left: 50%;
    top: -25%;
    width: 8rem; /* 128px */
  }

  .hero-priority-pattern-2 {
    bottom: unset;
    height: 9.25rem; /* 148px */
    left: 60%;
    right: unset;
    top: 75%;
    width: 12.5rem; /* 200px */
  }

  /* Hero (single) */

  .hero-single-column {
    grid-column: 5 / 13;
  }

  .hero-single-columns {
    align-items: center;
    display: grid;
    gap: 1rem; /* 16px */
    grid-template-columns: repeat(16, 1fr);
  }

  /* Contact */

  .contact .ginput_complex {
    flex-direction: row;
  }

  /* Listing */

  .listing-filters {
    flex-direction: row;
  }

  .listing-filters > div {
    width: auto;
  }

  /* Post */

  .post-column-info {
    grid-column: 4 / 14;
  }

  .post-column-share {
    border-top: 1px solid #054b64;
    grid-column: 2 / 16;
    padding: var(--gap_S) 0 var(--gap_M) 0;
  }

  .post-column-visual {
    grid-column: 3 / 15;
  }

  .post-columns {
    display: grid;
    grid-template-columns: repeat(16, 1fr);
    padding-top: var(--gap_M);
  }

  .post-pattern {
    background-size: 11.25rem; /* 180px */
    height: 15rem; /* 240px */
  }

  .post-image-large {
    padding-bottom: var(--gap_S);
    position: relative;
  }

  .post-image-large img {
    height: 30rem; /* 480px */
  }

  .post-image-large-pattern-1 {
    height: 15rem;
    top: -45%;
    width: 15rem;
  }
}

@media all and (min-width: 60rem) {
  /* 960px */

  .icon-link-small div {
    gap: 1rem;
  }

  .icon-link-small > * > span {
    font-size: 1.125rem; /* 18px */
  }

  /* Header */

  html {
    scroll-padding-top: 8.4375rem; /* 135px */
  }

  .header-contact,
  .header-navigation-primary-container {
    display: block;
  }

  .header-navigation {
    padding-top: 2rem; /* 32px; */
  }

  .header-navigation.sticky:not(.header-navigation-fixed) {
    padding-bottom: 2rem; /* 32px; */
  }

  .header-navigation-logo {
    width: 12.5rem; /* 200px */
  }

  .header-navigation-mobile,
  .header-navigation-mobile-toggle {
    display: none;
  }

  .header-navigation-primary-container {
    flex-grow: 1;
    padding-left: var(--gap_S);
  }

  .hero-priority-pattern-1 {
    height: 8rem; /* 288px */
    left: -10%;
    top: -10%;
    width: 8rem; /* 128px */
  }

  /*
	Flexible (case studies)
	Flexible (news)
	*/

  .flexible-case-studies-column,
  .flexible-news-column {
    width: calc(33.333% - 0.75rem);
  }

  .flexible-case-studies-columns,
  .flexible-news-columns {
    gap: 1.125rem;
  }

  /* Flexible (KPIs) */

  .flexible-kpis-cols {
    align-items: flex-end;
    display: flex;
    height: 18rem; /* 288px */
  }

  .flexible-kpis-slider {
    padding: var(--gap_S) 0 var(--gap_M) var(--gap_M);
  }

  .flexible-kpis-slider .glide__bullets {
    left: unset;
    right: 0;
    transform: none;
  }

  .flexible-kpis-info {
    width: calc((var(--containerWidth) / 16) * 7);
  }

  .flexible-kpis-visual {
    position: absolute;
    right: calc(0px - ((100vw - var(--containerWidth)) / 2));
    /* ( Half of space around page + 9/16 columns ) - half column gap */
    width: calc(
      (
          ((100vw - var(--containerWidth)) / 2) +
            ((var(--containerWidth) / 16) * 9)
        ) - 10px
    );
  }

  .flexible-kpis-visual img {
    clip-path: polygon(20% 0, 100% 0, 100% 100%, 0% 100%);
    height: 20rem; /* 320px */
    left: unset;
    object-fit: cover;
    top: unset;
    width: 100%;
  }

  /* Flexible (signposts) */

  .flexible-signposts-columns {
    column-gap: var(--gap_S);
  }

  .flexible-signposts-pattern-2 {
    background-size: 10rem; /* 160px */
    height: 10rem; /* 160px */
    bottom: 6.25rem; /* 100px */
    width: 5rem; /* 80px */
  }

  /* Hero (front page) */

  .hero-front-page-column-info {
    grid-column: span 7;
  }

  .hero-front-page-column-visual {
    grid-column: 10 / 17;
  }

  /* Contact */

  .contact-column {
    grid-column: 2 / 16;
  }

  .contact-columns {
    display: grid;
    gap: 1rem; /* 16px */
    grid-template-columns: repeat(16, 1fr);
  }

  .contact .gform_confirmation_message,
  .contact .gform_wrapper form {
    padding: var(--gap_S);
  }

  .contact .gform_description {
    padding: var(--gap_S) var(--gap_S) 0 var(--gap_S);
  }

  .contact-pattern-1 {
    height: 25rem; /* 400px */
  }

  /* LCRHA map */

  .lcrha-map-column-buttons li {
    margin-bottom: 1.25rem; /* 20px */
  }

  /* Footer (links) */

  .footer-links-columns {
    flex-direction: row;
  }

  .footer-links-column {
    flex: 0 1 33.333%;
  }

  .footer-links-column-credit {
    text-align: right;
  }

  .footer-links-column-menu {
    text-align: center;
  }

  /* Footer (contact) */

  .footer-contact_wrapper .ginput_complex {
    flex-direction: row;
  }

  /* Footer (social) */

  .footer-social {
    background-size: 11.25rem; /* 180px */
    padding: var(--gap_M) 0;
  }

  .footer-social-links {
    gap: var(--gap_S);
  }

  .footer-social-link {
    flex: 0 0 var(--gap_S);
  }

  /* Post */

  .post-share-links {
    gap: var(--gap_S);
  }

  .post-share-link {
    flex: 0 0 var(--gap_S);
  }
}

@media all and (min-width: 80rem) {
  /* 1280px */

  /* Flexible (gallery) */

  .flexible-gallery-slider .glide__arrow {
    height: var(--gap_S);
    width: var(--gap_S);
  }

  .flexible-gallery-slider .glide__arrow--left {
    left: 21.375rem; /* 342px */
  }

  .flexible-gallery-slider .glide__arrow--right {
    right: 21.375rem; /* 342px */
  }

  /* Flexible (pattern) */

  .flexible-pattern-tile {
    background-size: 11.25rem; /* 180px */
    height: 11.25rem; /* 180px */
  }

  /* Hero (priority) */

  .hero-priority-column-visual {
    grid-column: span 6;
  }

  /* LCRHA map */

  .lcrha-map-column-buttons {
    grid-column: span 7;
  }

  .lcrha-map-column-visual {
    grid-column: 9 / 16;
  }

  .lcrha-map-columns {
    padding: var(--gap_S) var(--gap_S) 0 var(--gap_S);
  }
}

@media all and (min-width: 81.25rem) {
  /* 1300px */

  /* Hero (front page) */

  .hero-front-page {
    padding-top: 1.25rem; /* 20px */
  }

  .hero-priority-pattern-1 {
    height: 8rem; /* 288px */
    left: 50%;
    top: -20%;
    width: 8rem; /* 128px */
  }

  /*
	Flexible (case studies)
	Flexible (news)
	*/

  .flexible-case-studies-columns,
  .flexible-news-columns {
    grid-column: 2 / 16;
  }

  /* Footer (contact) */

  .footer-contact_wrapper .gform_heading {
    display: flex;
    gap: var(--gap_S);
  }
}

@media all and (min-width: 100rem) {
  /* 1600px */
}

@media all and (min-width: 1641px) {
  /* Hero (priority) */

  .hero-priority-pattern-2 {
    height: 18rem; /* 320px */
    left: 50%;
    top: 75%;
    width: 27rem; /* 432px */
    z-index: 1;
  }

  /* Menu (primary) */

  .menu-primary .menu > .menu-item {
    margin-right: var(--gap_S);
  }

  .menu-primary .menu > .menu-item-has-children {
    margin-right: calc(var(--gap_S) * 1.5);
  }
}

/* Retina Backgrounds */
/*@media (-webkit-min-device-pixel-ratio: 1.5) {}*/
