/* stylelint-disable */
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

button {
  border: 0;
  margin: 0;
  padding: 0;
  width: auto;
  overflow: visible;
  background: transparent;
  /* inherit font & color from ancestor */
  color: inherit;
  font: inherit;
  text-align: inherit;
  /* Normalize `line-height`. Cannot be changed from `normal` in Firefox 4+. */
  line-height: normal;
  line-height: inherit;
}

:root {
  --container-width: calc(100% - var(--gutter) * 2);
  --wide-container-width: clamp(0px, calc((1250 / 1140) * var(--container-width)), calc(100vw - var(--gutter) * 2));
  --gutter: 25px;
  --header-height: 88px;
  --td-s: 0.2s;
  --td-m: 0.6s;
  --td-l: 1s;
  --td-xl: 1.4s;
  --neutral-10: #ffffff;
  --neutral-9: #030101;
  --neutral-8: #e6e6e6;
  --neutral-7: #d9d9d9;
  --neutral-6: #cccccc;
  --neutral-5: #b2b2b2;
  --neutral-4: #999999;
  --neutral-3: #666666;
  --neutral-2: #4d4d4d;
  --neutral-1: #333333;
  --neutral-0: #000000;
  --grey: #cbd3cb;
  --dark-green: #2c3a33;
  --green: #12cf1a;
  --red: #ff6e6e;
  --light-grey: #f0f0f0;
  --black: var(--neutral-0);
  --white: var(--neutral-10);
  --text-receding: var(--neutral-3);
  --text-light: var(--neutral-8);
  --green-50: #83e187;
  --red-50: #fab1b1;
  --darkgreen-50: #909793;
  --grey-70: #dbe0db;
  --text-size-5xl: 63px;
  --text-size-4xl: 50px;
  --text-size-3xl: 40px;
  --text-size-2xl: 36px;
  --text-size-xxl: 28px;
  --text-size-xl: 24px;
  --text-size-ll: 20px;
  --text-size-l: 16px;
  --text-size-m: 15px;
  --text-size-s: 12px;
  --text-size-xs: 10px;
  --spacing-5xl: 150px;
  --spacing-4xl: 100px;
  --spacing-3xl: 80px;
  --spacing-2xl: 50px;
  --spacing-xl: 25px;
  --spacing-l: 20px;
  --spacing-m: 15px;
  --spacing-s: 10px;
  --spacing-xs: 5px;
  --spacing-2xs: 2px;
  --border-radius-round: 50%;
  --border-radius-l: 20px;
  --border-radius-m: 10px;
  --border-radius-s: 5px;
  --border-radius-xs: 3px;
}
:root:has(.page-template-page-home, .page-template-page-place, .page-template-page-contact) {
  --header-bg-colour: var(--dark-green);
}
:root:has(.page-template-page-people) {
  --header-bg-colour: var(--red);
  --header-current-colour: var(--dark-green);
}
:root:has(.page-template-page-planet) {
  --header-bg-colour: var(--grey-70);
  --header-bg-text-colour: var(--black);
  --header-hover-colour: color-mix(in srgb, var(--header-bg-text-colour) 60%, transparent);
}
:root:has(.page-template-page-prologis, .page-template-page-generic) {
  --header-bg-colour: var(--white);
  --header-bg-text-colour: var(--black);
  --header-hover-colour: color-mix(in srgb, var(--header-bg-text-colour) 60%, transparent);
}
:root:has(.page-template-page-prologis, .page-template-page-generic) header {
  --header-text-colour: var(--black);
}
:root:has(.page-template-page-generic) header a:hover {
  color: var(--header-hover-colour) !important;
}
:root:has(.page-template-page-home, .page-template-page-place, .page-template-page-contact, .error404) {
  --page-theme-colour: var(--header-bg-colour);
  --page-text-colour: var(--white);
  --page-theme-accent: var(--red);
  --page-grid-colour: var(--white);
}
:root:has(.page-template-page-people) {
  --page-theme-colour: var(--header-bg-colour);
  --page-text-colour: var(--white);
  --page-theme-accent: var(--white);
  --page-theme-accent-2: var(--dark-green);
  --page-grid-colour: var(--black);
}
:root:has(.page-template-page-planet) {
  --page-theme-colour: var(--header-bg-colour);
  --page-text-colour: var(--black);
  --page-theme-accent: var(--red);
  --page-grid-colour: var(--black);
}
:root:has(.page-template-page-planet) body::before {
  background-color: var(--white);
}
:root:has(.page-template-page-prologis) {
  --page-theme-colour: var(--header-bg-colour);
  --page-text-colour: var(--black);
  --page-theme-accent: var(--red);
  --page-grid-colour: var(--black);
}
@media (min-width: 768px) {
  :root {
    --container-width: calc(720px - var(--gutter) * 2);
    --header-height: clamp(88px, calc((100 / 1140) * var(--container-width)), 100px);
    --spacing-5xl: clamp(150px, calc((250 / 1140) * var(--container-width)), 250px);
    --spacing-4xl: clamp(100px, calc((150 / 1140) * var(--container-width)), 150px);
    --spacing-3xl: clamp(80px, calc((100 / 1140) * var(--container-width)), 100px);
    --spacing-2xl: clamp(50px, calc((70 / 1140) * var(--container-width)), 70px);
    --spacing-xl: clamp(25px, calc((50 / 1140) * var(--container-width)), 50px);
    --spacing-l: clamp(20px, calc((30 / 1140) * var(--container-width)), 30px);
    --spacing-m: clamp(15px, calc((20 / 1140) * var(--container-width)), 20px);
    --text-size-5xl: clamp(63px, calc((105 / 1140) * var(--container-width)), 105px);
    --text-size-4xl: clamp(50px, calc((96 / 1140) * var(--container-width)), 96px);
    --text-size-3xl: clamp(40px, calc((65 / 1140) * var(--container-width)), 65px);
    --text-size-2xl: clamp(36px, calc((48 / 1140) * var(--container-width)), 48px);
    --text-size-xxl: clamp(28px, calc((35 / 1140) * var(--container-width)), 35px);
    --text-size-xl: clamp(24px, calc((27 / 1140) * var(--container-width)), 27px);
    --text-size-ll: clamp(20px, calc((22 / 1140) * var(--container-width)), 22px);
    --text-size-l: clamp(16px, calc((18 / 1140) * var(--container-width)), 18px);
    --text-size-m: clamp(15px, calc((15 / 1140) * var(--container-width)), 15px);
    --text-size-s: clamp(12px, calc((12 / 1140) * var(--container-width)), 12px);
    --text-size-xs: clamp(10px, calc((10 / 1140) * var(--container-width)), 10px);
  }
}
@media (min-width: 992px) {
  :root {
    --container-width: calc(960px - var(--gutter) * 2);
  }
}
@media (min-width: 1300px) {
  :root {
    --container-width: calc(1190px - var(--gutter) * 2);
  }
}

@font-face {
  font-family: "ManropeDIRFT";
  src: url("../../fonts/ManropeDIRFT_Med.woff2") format("woff2"), url("../../fonts/ManropeDIRFT_Med.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "ManropeDIRFT";
  src: url("../../fonts/ManropeDIRFT_Reg.woff2") format("woff2"), url("../../fonts/ManropeDIRFT_Reg.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
.heading-reg, .h7, .content-area h2, .h6, .h5, .main-menu .menu > li > a, .h4, .h3, .h2, .h1 {
  line-height: 1.05;
  text-transform: uppercase;
  text-wrap: balance;
}

.h1 {
  font-size: var(--text-size-5xl);
}

.h2 {
  font-size: var(--text-size-4xl);
  line-height: 0.9;
}

.h3 {
  font-size: var(--text-size-3xl);
}

.h4 {
  font-size: var(--text-size-2xl);
}

.h5, .main-menu .menu > li > a {
  font-size: var(--text-size-xxl);
}

.h6 {
  font-size: var(--text-size-xl);
}

.h7, .content-area h2 {
  font-size: var(--text-size-ll);
}

.text-dirft, .main-menu .menu > li > a {
  font-family: "ManropeDIRFT", sans-serif;
  text-transform: uppercase;
}

.body, body, .body-large, footer .footer-nav a {
  font-weight: 500;
  font-size: var(--text-size-m);
  line-height: 1.4;
}

.body-large, footer .footer-nav a {
  font-size: var(--text-size-l);
}

.navigation, footer .footer-bottom, header .header-nav .menu > .menu-item > a {
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .navigation, footer .footer-bottom, header .header-nav .menu > .menu-item > a {
    font-size: clamp(15px, 17 / 1140 * var(--container-width), 17px);
  }
}

.container {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-inline: var(--gutter);
}
@media (min-width: 768px) {
  .container {
    width: 720px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 960px;
  }
}
@media (min-width: 1300px) {
  .container {
    width: 1190px;
  }
}

:root {
  interpolate-size: allow-keywords;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

* {
  outline: none;
}

html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

html,
body {
  height: 100%;
}

body {
  min-width: 320px;
  font-family: "Manrope", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  line-height: 1.4;
  text-wrap: pretty;
  font-weight: 500;
  color: var(--page-text-colour, var(--black));
  overflow-x: clip;
  transition: background-color 0.4s ease-in-out, color 0.4s ease-in-out;
}
body::-moz-selection {
  background-color: var(--black);
  color: var(--white);
}
body::selection {
  background-color: var(--black);
  color: var(--white);
}
body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--page-theme-colour, var(--white));
  z-index: -1;
  transition: background-color 0.4s ease-in-out;
}
body[data-bg-colour=white] {
  --page-theme-colour: var(--white);
}
body[data-bg-colour=white] [data-section-bg-colour=white] {
  opacity: 1;
}

a {
  text-decoration: none;
}

strong {
  font-weight: bold;
}

em {
  font-style: italic;
}

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

p:not(:first-child) {
  margin-top: 1em;
}

sup {
  font-size: calc(0.5em + 4px);
  vertical-align: baseline;
  position: relative;
  top: calc(-0.83em + 3.32px);
}

.media-wrapper {
  position: relative;
  overflow: hidden;
}
.media-wrapper img,
.media-wrapper video,
.media-wrapper picture {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.media-wrapper img {
  scale: 1.01;
}

[data-section-bg-colour=white] {
  opacity: 0;
  color: var(--black);
  transition: opacity 0.5s ease-in-out;
}

.styled-text .text-part--accent {
  color: var(--page-theme-accent, var(--red));
}
.styled-text b, .styled-text strong {
  font-weight: inherit;
  font-family: "ManropeDIRFT", sans-serif;
}

.text-box {
  display: flex;
  flex-direction: column;
  gap: 15px;
  max-width: 300px;
  align-items: flex-start;
}
.text-box .floating-crosshair svg {
  width: 25px;
}
.text-box .floating-crosshair svg path {
  fill: var(--page-theme-accent, var(--red));
}
.text-box .button {
  margin-top: 5px;
}

.square-border {
  --opacity: 0.6;
  --grid-colour: var(--white);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.square-border .square {
  --crosshair-line-size: 12px;
  --crosshair-size: 20px;
}
.square-border .square .border {
  --border-gap: 10px;
}

#grid-crosshair-theme path {
  fill: var(--page-grid-colour);
}

header {
  --header-colour: var(--header-bg-colour, var(--dark-green));
  --header-text-colour: var(--white);
  color: var(--header-text-colour);
  height: var(--header-height);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  transition: translate 0.3s, background-color 0.3s;
  transition-timing-function: ease-in-out;
}
header .header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  max-width: min(100% - var(--gutter) * 2, 1350px);
  margin-inline: auto;
}
header .header-logo-wrapper {
  display: block;
  color: inherit;
  transition: color 0.2s;
}
header .header-logo-wrapper svg {
  height: 38px;
  width: auto;
}
header .header-logo-wrapper svg path:not(:first-of-type) {
  fill: currentColor;
}
header .header-nav {
  --td: 0.2s;
  display: none;
}
@media (min-width: 992px) {
  header .header-nav {
    display: block;
  }
}
header .header-nav li {
  position: relative;
}
header .header-nav li svg {
  position: absolute;
  right: 100%;
  top: 50%;
  translate: 0 -50%;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--td) ease-in-out;
}
header .header-nav li svg path {
  fill: currentColor;
}
header .header-nav li a {
  transition: color var(--td) ease-in-out;
  position: relative;
  white-space: nowrap;
  text-align: center;
}
header .header-nav li a:hover > svg {
  opacity: 1;
}
header .header-nav .menu {
  display: flex;
  gap: clamp(20px, 40 / 1140 * var(--container-width), 40px);
}
header .header-nav .menu > .menu-item {
  position: relative;
}
header .header-nav .menu > .menu-item > a {
  display: block;
  padding: 10px;
}
header .header-nav .menu > .menu-item:hover > .sub-menu {
  opacity: 1;
  pointer-events: all;
}
header .header-nav .sub-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  translate: -50% 0;
  padding: 10px 30px;
  background-color: var(--header-colour);
  display: flex;
  flex-direction: column;
  gap: 10px;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--td) ease-in-out;
}
header .header-nav .sub-menu a {
  display: block;
  line-height: 1;
  text-box: trim-both cap alphabetic;
  padding: 10px;
  color: var(--header-bg-text-colour, var(--white));
}
header .header-nav .sub-menu a:hover {
  color: var(--header-hover-colour, var(--grey));
}
header .header-nav .sub-menu a[aria-current=page] {
  color: var(--header-current-colour, var(--red));
}
header .header-button {
  display: none;
  --border-colour: currentColor;
}
@media (min-width: 992px) {
  header .header-button {
    display: flex;
  }
}
header .burger-menu {
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
@media (min-width: 992px) {
  header .burger-menu {
    display: none;
  }
}
header .burger-menu .menu-inner {
  --burger-gap: 8px;
  --line-width: 2px;
  display: flex;
  flex-direction: column;
  gap: var(--burger-gap);
}
header .burger-menu span {
  width: 20px;
  height: var(--line-width);
  display: block;
  background-color: currentColor;
  transform-origin: center;
  transition: background-color var(--td);
}
header[hidden] {
  translate: 0 -100%;
}
header:not([scrolling]) .header-logo-wrapper:hover {
  color: var(--grey);
}
header:not([scrolling]) .menu > .menu-item > a {
  color: var(--header-text-colour);
}
header:not([scrolling]) .menu > .menu-item > a:hover {
  color: var(--grey);
}
header:not([scrolling]) .menu > .menu-item > a[aria-current=page] {
  color: var(--red);
}
header[scrolling] {
  background-color: color-mix(in srgb, var(--header-colour) 90%, transparent);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  color: var(--page-text-colour, var(--white));
  transition: translate 0.3s, background-color 0s 0.3s;
  transition-timing-function: ease-in-out;
}
header[scrolling] a {
  color: var(--header-bg-text-colour, var(--white));
}
header[scrolling] a[aria-current=page] {
  color: var(--header-current-colour, var(--red)) !important;
}
header[scrolling] a:hover {
  color: var(--header-hover-colour, var(--grey));
}

@media (max-width: 991px) {
  body:has(header[open]) {
    overflow: hidden;
  }
  body:has(header[open]) header {
    color: var(--header-bg-text-colour);
  }
  body:has(header[open]) .main-menu {
    opacity: 1;
    pointer-events: all;
  }
}

.main-menu {
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  background-color: var(--header-bg-colour);
  color: var(--header-text-colour);
  padding-top: var(--header-height);
  transition: opacity 0.4s ease-in-out;
}
@media (min-width: 992px) {
  .main-menu {
    display: none;
  }
}
.main-menu .container {
  overflow-y: auto;
  padding-top: 30px;
  padding-bottom: 30px;
  height: 100%;
}
.main-menu .menu {
  display: flex;
  flex-direction: column;
}
.main-menu .menu .menu-item-home {
  display: none;
}
.main-menu .menu a {
  color: inherit;
}
.main-menu .menu > li {
  position: relative;
  padding: 25px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.main-menu .menu > li:not(:nth-of-type(2)) .square-border .square .border-top {
  display: none;
}
.main-menu .menu > li:not(:nth-of-type(2)) .square-border .crosshair-top-left,
.main-menu .menu > li:not(:nth-of-type(2)) .square-border .crosshair-top-right {
  display: none;
}
.main-menu .menu > li > a {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.main-menu .menu > li > a svg {
  flex-shrink: 0;
  width: 24px;
}
.main-menu .menu > li > a svg path {
  stroke: currentColor;
}
.main-menu .sub-menu {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
}
.main-menu .sub-menu .square-border,
.main-menu .sub-menu svg {
  display: none;
}
.main-menu .sub-menu a {
  opacity: 0.7;
  transition: opacity 0.2s;
}
.main-menu .sub-menu a:hover {
  opacity: 1;
}
.main-menu .square-border {
  --grid-colour: currentColor;
}
.main-menu .square {
  --opacity: 0.2;
  aspect-ratio: unset;
  height: 100%;
}
.main-menu .square svg path {
  fill: currentColor;
}

footer {
  padding-bottom: 50px;
  padding-top: 35px;
  background-color: var(--dark-green);
  color: var(--white);
  --page-grid-colour: var(--white);
}
@media (min-width: 768px) {
  footer {
    padding-block: clamp(50px, 70 / 1140 * var(--container-width), 70px);
  }
}
footer .footer-inner {
  display: flex;
  flex-direction: column;
  gap: 50px;
  max-width: min(100% - var(--gutter) * 2, 1350px);
  margin-inline: auto;
}
footer .footer-main .grid-contents {
  min-height: 400px;
  grid-template-rows: auto;
  grid-auto-rows: 1fr;
  row-gap: 50px;
}
@media (min-width: 768px) {
  footer .footer-main .grid-contents {
    min-height: unset;
    gap: 0;
  }
}
footer .footer-heading {
  line-height: 0.87em;
  height: -moz-fit-content;
  height: fit-content;
  text-box: trim-both cap alphabetic;
}
@media (min-width: 768px) {
  footer .footer-heading {
    grid-column: 1/span 4;
  }
}
@media (min-width: 992px) {
  footer .footer-heading {
    grid-column: 1/span 6;
  }
}
@media (min-width: 992px) {
  footer .footer-heading {
    grid-column: 1/span 7;
  }
}
footer .footer-heading .inline-crosshair {
  display: inline-block;
  margin-inline: 0.05em;
}
footer .footer-heading .inline-crosshair svg {
  height: 0.74em;
  width: auto;
}
footer .footer-heading .inline-crosshair svg path {
  fill: currentColor;
}
footer .footer-button {
  --border-colour: var(--white);
  --text-colour: var(--white);
  --bg-colour: var(--dark-green);
  --hover-bg-colour: color-mix(in srgb, var(--bg-colour) 80%, black);
}
footer .footer-nav {
  grid-column: 1/span 2;
}
@media (min-width: 768px) {
  footer .footer-nav {
    --col-start: calc(var(--grid-cols) / 2 + round(down, calc(var(--grid-cols) / 5)));
    grid-column: 5/span 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }
}
@media (min-width: 992px) {
  footer .footer-nav {
    grid-column: 7/span 2;
  }
}
@media (min-width: 1300px) {
  footer .footer-nav {
    grid-column: 9/span 2;
  }
}
footer .footer-nav a {
  color: inherit;
}
@media (hover: hover) {
  footer .footer-nav a {
    opacity: 0.75;
    transition: var(--opacity) ease-in-out 0.2s;
  }
  footer .footer-nav a:hover {
    opacity: 1;
  }
  footer .footer-nav a:hover svg {
    opacity: 1;
  }
}
footer .footer-nav .menu {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
@media (min-width: 768px) {
  footer .footer-nav .menu {
    gap: 25px;
  }
}
footer .footer-nav li a {
  display: block;
  position: relative;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-box: trim-both cap alphabetic;
}
footer .footer-nav li a svg {
  position: absolute;
  right: calc(100% + 5px);
  top: 50%;
  translate: 0 -50%;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
}
footer .footer-nav .sub-menu {
  display: none;
}
footer .footer-group {
  grid-template-columns: subgrid;
  grid-column: 3/span 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 25px;
  justify-content: flex-end;
}
@media (min-width: 768px) {
  footer .footer-group {
    --col-width: round(up, calc(var(--grid-cols) / 5));
    grid-column: -3/-1;
    justify-content: flex-start;
    gap: clamp(25px, 40 / 1140 * var(--container-width), 40px);
  }
}
@media (min-width: 992px) {
  footer .footer-group {
    grid-column: -4/-1;
  }
}
footer .footer-bottom {
  font-size: var(--text-size-s);
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: center;
}
@media (min-width: 768px) {
  footer .footer-bottom {
    font-size: clamp(12px, 15 / 1140 * var(--container-width), 15px);
    flex-direction: row;
    justify-content: space-between;
  }
}
footer .footer-links-nav .menu {
  display: flex;
  align-items: center;
  gap: 6px;
}
@media (min-width: 768px) {
  footer .footer-links-nav .menu {
    gap: 10px;
  }
}
footer .footer-links-nav li {
  display: contents;
}
footer .footer-links-nav li:first-of-type span {
  display: none;
}
footer .footer-links-nav li span {
  width: 1px;
  background-color: currentColor;
  opacity: 0.2;
  height: 1em;
  display: block;
}
footer .footer-links-nav a {
  text-box: trim-both cap alphabetic;
  color: inherit;
  display: flex;
  gap: 0.1em;
  align-items: center;
}
footer .footer-links-nav a:not([target=_blank]) svg {
  display: none;
}
footer .footer-links-nav a svg {
  height: 1.2em;
  width: auto;
}
footer .footer-bottom-bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
}
@media (min-width: 768px) {
  footer .footer-bottom-bottom {
    flex-direction: row;
    align-items: center;
  }
}

.square-grid-container {
  position: relative;
  --grid-colour: var(--page-grid-colour, var(--white));
  --grid-cols: 4;
  --grid-rows: 4;
  --opacity: 0.05;
}
@media (min-width: 768px) {
  .square-grid-container {
    --grid-cols: 8;
  }
}
@media (min-width: 992px) {
  .square-grid-container {
    --grid-cols: 12;
  }
}
@media (min-width: 1300px) {
  .square-grid-container {
    --grid-cols: 14;
  }
}
@media (min-width: ) {
  .square-grid-container {
    --grid-cols: 16;
  }
}
.square-grid-container--h100 {
  height: 100%;
}
.square-grid-container--h100 .square-grid {
  top: 50%;
  translate: 0 -50%;
}
.square-grid-container--h100 .grid-contents {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
}
.square-grid-container .square-grid {
  opacity: 0;
}
.square-grid-container:not(.trigger-grid).loaded .square-grid {
  opacity: 1;
}
.square-grid-container--absolute {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.square-grid-container--absolute .grid-contents {
  width: 100%;
  height: 100%;
}

.square-grid {
  --animation-duration: 1s;
  display: grid;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  pointer-events: none;
  grid-template-columns: repeat(var(--grid-cols), 1fr);
  transition: opacity 0.5s ease-in-out;
}

#grid-crosshair path {
  fill: var(--grid-colour);
}

.square {
  width: 100%;
  aspect-ratio: 1;
  position: relative;
  opacity: var(--opacity, 0.5);
  --crosshair-line-size: 3px;
  --crosshair-gap: 2px;
  --row: round(down, var(--index) / var(--grid-cols));
}
.square--theme {
  --grid-colour: var(--page-grid-colour, inherit);
}
.square--grey {
  --grid-colour: var(--grey);
}
.square--svg svg path {
  fill: var(--grid-colour);
}
.square:nth-of-type(1) {
  --index: 1;
}
.square:nth-of-type(1) .border-top {
  --random: 0.9444042903;
}
.square:nth-of-type(1) .border-right {
  --random: 0.6934049093;
}
.square:nth-of-type(1) .border-bottom {
  --random: 0.2928244087;
}
.square:nth-of-type(1) .border-left {
  --random: 0.5649977895;
}
.square:nth-of-type(2) {
  --index: 2;
}
.square:nth-of-type(2) .border-top {
  --random: 0.0833834914;
}
.square:nth-of-type(2) .border-right {
  --random: 0.5218752562;
}
.square:nth-of-type(2) .border-bottom {
  --random: 0.6236484923;
}
.square:nth-of-type(2) .border-left {
  --random: 0.556045725;
}
.square:nth-of-type(3) {
  --index: 3;
}
.square:nth-of-type(3) .border-top {
  --random: 0.5966950886;
}
.square:nth-of-type(3) .border-right {
  --random: 0.2974165868;
}
.square:nth-of-type(3) .border-bottom {
  --random: 0.1117996729;
}
.square:nth-of-type(3) .border-left {
  --random: 0.2372793096;
}
.square:nth-of-type(4) {
  --index: 4;
}
.square:nth-of-type(4) .border-top {
  --random: 0.5638002844;
}
.square:nth-of-type(4) .border-right {
  --random: 0.7212790899;
}
.square:nth-of-type(4) .border-bottom {
  --random: 0.433831312;
}
.square:nth-of-type(4) .border-left {
  --random: 0.9791927098;
}
.square:nth-of-type(5) {
  --index: 5;
}
.square:nth-of-type(5) .border-top {
  --random: 0.0918966599;
}
.square:nth-of-type(5) .border-right {
  --random: 0.6179503295;
}
.square:nth-of-type(5) .border-bottom {
  --random: 0.2262618163;
}
.square:nth-of-type(5) .border-left {
  --random: 0.5761677616;
}
.square:nth-of-type(6) {
  --index: 6;
}
.square:nth-of-type(6) .border-top {
  --random: 0.2458321141;
}
.square:nth-of-type(6) .border-right {
  --random: 0.8147370879;
}
.square:nth-of-type(6) .border-bottom {
  --random: 0.3618847346;
}
.square:nth-of-type(6) .border-left {
  --random: 0.3234751013;
}
.square:nth-of-type(7) {
  --index: 7;
}
.square:nth-of-type(7) .border-top {
  --random: 0.7681398531;
}
.square:nth-of-type(7) .border-right {
  --random: 0.5927237044;
}
.square:nth-of-type(7) .border-bottom {
  --random: 0.0243145661;
}
.square:nth-of-type(7) .border-left {
  --random: 0.9912681874;
}
.square:nth-of-type(8) {
  --index: 8;
}
.square:nth-of-type(8) .border-top {
  --random: 0.1448833254;
}
.square:nth-of-type(8) .border-right {
  --random: 0.5076455928;
}
.square:nth-of-type(8) .border-bottom {
  --random: 0.6822237361;
}
.square:nth-of-type(8) .border-left {
  --random: 0.9644705092;
}
.square:nth-of-type(9) {
  --index: 9;
}
.square:nth-of-type(9) .border-top {
  --random: 0.0061607429;
}
.square:nth-of-type(9) .border-right {
  --random: 0.3593722023;
}
.square:nth-of-type(9) .border-bottom {
  --random: 0.846165711;
}
.square:nth-of-type(9) .border-left {
  --random: 0.1971612108;
}
.square:nth-of-type(10) {
  --index: 10;
}
.square:nth-of-type(10) .border-top {
  --random: 0.4639709853;
}
.square:nth-of-type(10) .border-right {
  --random: 0.4534767437;
}
.square:nth-of-type(10) .border-bottom {
  --random: 0.789240042;
}
.square:nth-of-type(10) .border-left {
  --random: 0.8168170017;
}
.square:nth-of-type(11) {
  --index: 11;
}
.square:nth-of-type(11) .border-top {
  --random: 0.3348153983;
}
.square:nth-of-type(11) .border-right {
  --random: 0.4119592715;
}
.square:nth-of-type(11) .border-bottom {
  --random: 0.4744256991;
}
.square:nth-of-type(11) .border-left {
  --random: 0.3069397261;
}
.square:nth-of-type(12) {
  --index: 12;
}
.square:nth-of-type(12) .border-top {
  --random: 0.1946505254;
}
.square:nth-of-type(12) .border-right {
  --random: 0.2642873938;
}
.square:nth-of-type(12) .border-bottom {
  --random: 0.3026317231;
}
.square:nth-of-type(12) .border-left {
  --random: 0.767313669;
}
.square:nth-of-type(13) {
  --index: 13;
}
.square:nth-of-type(13) .border-top {
  --random: 0.8260965533;
}
.square:nth-of-type(13) .border-right {
  --random: 0.2874953475;
}
.square:nth-of-type(13) .border-bottom {
  --random: 0.1186025948;
}
.square:nth-of-type(13) .border-left {
  --random: 0.2896414247;
}
.square:nth-of-type(14) {
  --index: 14;
}
.square:nth-of-type(14) .border-top {
  --random: 0.0380920311;
}
.square:nth-of-type(14) .border-right {
  --random: 0.8112522108;
}
.square:nth-of-type(14) .border-bottom {
  --random: 0.3023432603;
}
.square:nth-of-type(14) .border-left {
  --random: 0.386276205;
}
.square:nth-of-type(15) {
  --index: 15;
}
.square:nth-of-type(15) .border-top {
  --random: 0.5889754908;
}
.square:nth-of-type(15) .border-right {
  --random: 0.2540892748;
}
.square:nth-of-type(15) .border-bottom {
  --random: 0.5785908086;
}
.square:nth-of-type(15) .border-left {
  --random: 0.5631358502;
}
.square:nth-of-type(16) {
  --index: 16;
}
.square:nth-of-type(16) .border-top {
  --random: 0.1393153168;
}
.square:nth-of-type(16) .border-right {
  --random: 0.0495682587;
}
.square:nth-of-type(16) .border-bottom {
  --random: 0.2393267239;
}
.square:nth-of-type(16) .border-left {
  --random: 0.5552217047;
}
.square:nth-of-type(17) {
  --index: 17;
}
.square:nth-of-type(17) .border-top {
  --random: 0.9781748386;
}
.square:nth-of-type(17) .border-right {
  --random: 0.6959139893;
}
.square:nth-of-type(17) .border-bottom {
  --random: 0.1202942947;
}
.square:nth-of-type(17) .border-left {
  --random: 0.7337021792;
}
.square:nth-of-type(18) {
  --index: 18;
}
.square:nth-of-type(18) .border-top {
  --random: 0.7372623956;
}
.square:nth-of-type(18) .border-right {
  --random: 0.2807475898;
}
.square:nth-of-type(18) .border-bottom {
  --random: 0.4038843786;
}
.square:nth-of-type(18) .border-left {
  --random: 0.1305744826;
}
.square:nth-of-type(19) {
  --index: 19;
}
.square:nth-of-type(19) .border-top {
  --random: 0.7092594737;
}
.square:nth-of-type(19) .border-right {
  --random: 0.0498318681;
}
.square:nth-of-type(19) .border-bottom {
  --random: 0.9907268814;
}
.square:nth-of-type(19) .border-left {
  --random: 0.5701855759;
}
.square:nth-of-type(20) {
  --index: 20;
}
.square:nth-of-type(20) .border-top {
  --random: 0.7982323088;
}
.square:nth-of-type(20) .border-right {
  --random: 0.2096900855;
}
.square:nth-of-type(20) .border-bottom {
  --random: 0.7568213421;
}
.square:nth-of-type(20) .border-left {
  --random: 0.3729113323;
}
.square:nth-of-type(21) {
  --index: 21;
}
.square:nth-of-type(21) .border-top {
  --random: 0.7581195233;
}
.square:nth-of-type(21) .border-right {
  --random: 0.667858676;
}
.square:nth-of-type(21) .border-bottom {
  --random: 0.4479583434;
}
.square:nth-of-type(21) .border-left {
  --random: 0.1600784854;
}
.square:nth-of-type(22) {
  --index: 22;
}
.square:nth-of-type(22) .border-top {
  --random: 0.7342132243;
}
.square:nth-of-type(22) .border-right {
  --random: 0.1483161089;
}
.square:nth-of-type(22) .border-bottom {
  --random: 0.6019390318;
}
.square:nth-of-type(22) .border-left {
  --random: 0.7384063432;
}
.square:nth-of-type(23) {
  --index: 23;
}
.square:nth-of-type(23) .border-top {
  --random: 0.4892980291;
}
.square:nth-of-type(23) .border-right {
  --random: 0.333419305;
}
.square:nth-of-type(23) .border-bottom {
  --random: 0.5903138241;
}
.square:nth-of-type(23) .border-left {
  --random: 0.3985421507;
}
.square:nth-of-type(24) {
  --index: 24;
}
.square:nth-of-type(24) .border-top {
  --random: 0.3299607461;
}
.square:nth-of-type(24) .border-right {
  --random: 0.9405552773;
}
.square:nth-of-type(24) .border-bottom {
  --random: 0.974805224;
}
.square:nth-of-type(24) .border-left {
  --random: 0.4570996707;
}
.square:nth-of-type(25) {
  --index: 25;
}
.square:nth-of-type(25) .border-top {
  --random: 0.450287722;
}
.square:nth-of-type(25) .border-right {
  --random: 0.460868126;
}
.square:nth-of-type(25) .border-bottom {
  --random: 0.2306820418;
}
.square:nth-of-type(25) .border-left {
  --random: 0.5832029828;
}
.square:nth-of-type(26) {
  --index: 26;
}
.square:nth-of-type(26) .border-top {
  --random: 0.5790328193;
}
.square:nth-of-type(26) .border-right {
  --random: 0.4711733885;
}
.square:nth-of-type(26) .border-bottom {
  --random: 0.915080873;
}
.square:nth-of-type(26) .border-left {
  --random: 0.5800027788;
}
.square:nth-of-type(27) {
  --index: 27;
}
.square:nth-of-type(27) .border-top {
  --random: 0.178194552;
}
.square:nth-of-type(27) .border-right {
  --random: 0.9553415068;
}
.square:nth-of-type(27) .border-bottom {
  --random: 0.169314926;
}
.square:nth-of-type(27) .border-left {
  --random: 0.4853991544;
}
.square:nth-of-type(28) {
  --index: 28;
}
.square:nth-of-type(28) .border-top {
  --random: 0.7858086435;
}
.square:nth-of-type(28) .border-right {
  --random: 0.4805843054;
}
.square:nth-of-type(28) .border-bottom {
  --random: 0.6344945261;
}
.square:nth-of-type(28) .border-left {
  --random: 0.8037213734;
}
.square:nth-of-type(29) {
  --index: 29;
}
.square:nth-of-type(29) .border-top {
  --random: 0.6658843102;
}
.square:nth-of-type(29) .border-right {
  --random: 0.1484863367;
}
.square:nth-of-type(29) .border-bottom {
  --random: 0.8019985182;
}
.square:nth-of-type(29) .border-left {
  --random: 0.0259173682;
}
.square:nth-of-type(30) {
  --index: 30;
}
.square:nth-of-type(30) .border-top {
  --random: 0.564520638;
}
.square:nth-of-type(30) .border-right {
  --random: 0.50806214;
}
.square:nth-of-type(30) .border-bottom {
  --random: 0.2953320561;
}
.square:nth-of-type(30) .border-left {
  --random: 0.2914315162;
}
.square:nth-of-type(31) {
  --index: 31;
}
.square:nth-of-type(31) .border-top {
  --random: 0.0507743402;
}
.square:nth-of-type(31) .border-right {
  --random: 0.2046575643;
}
.square:nth-of-type(31) .border-bottom {
  --random: 0.3447295631;
}
.square:nth-of-type(31) .border-left {
  --random: 0.8024713094;
}
.square:nth-of-type(32) {
  --index: 32;
}
.square:nth-of-type(32) .border-top {
  --random: 0.7548085842;
}
.square:nth-of-type(32) .border-right {
  --random: 0.5349702638;
}
.square:nth-of-type(32) .border-bottom {
  --random: 0.2076296818;
}
.square:nth-of-type(32) .border-left {
  --random: 0.3662744883;
}
.square:nth-of-type(33) {
  --index: 33;
}
.square:nth-of-type(33) .border-top {
  --random: 0.5770068029;
}
.square:nth-of-type(33) .border-right {
  --random: 0.1539968453;
}
.square:nth-of-type(33) .border-bottom {
  --random: 0.9922959344;
}
.square:nth-of-type(33) .border-left {
  --random: 0.3357655969;
}
.square:nth-of-type(34) {
  --index: 34;
}
.square:nth-of-type(34) .border-top {
  --random: 0.9841764635;
}
.square:nth-of-type(34) .border-right {
  --random: 0.6801128957;
}
.square:nth-of-type(34) .border-bottom {
  --random: 0.1402017203;
}
.square:nth-of-type(34) .border-left {
  --random: 0.207131054;
}
.square:nth-of-type(35) {
  --index: 35;
}
.square:nth-of-type(35) .border-top {
  --random: 0.0187787726;
}
.square:nth-of-type(35) .border-right {
  --random: 0.1740600302;
}
.square:nth-of-type(35) .border-bottom {
  --random: 0.2905586454;
}
.square:nth-of-type(35) .border-left {
  --random: 0.4431312312;
}
.square:nth-of-type(36) {
  --index: 36;
}
.square:nth-of-type(36) .border-top {
  --random: 0.9955046691;
}
.square:nth-of-type(36) .border-right {
  --random: 0.0822964834;
}
.square:nth-of-type(36) .border-bottom {
  --random: 0.449886205;
}
.square:nth-of-type(36) .border-left {
  --random: 0.9602082842;
}
.square:nth-of-type(37) {
  --index: 37;
}
.square:nth-of-type(37) .border-top {
  --random: 0.5048290834;
}
.square:nth-of-type(37) .border-right {
  --random: 0.653585005;
}
.square:nth-of-type(37) .border-bottom {
  --random: 0.2933287754;
}
.square:nth-of-type(37) .border-left {
  --random: 0.4389887515;
}
.square:nth-of-type(38) {
  --index: 38;
}
.square:nth-of-type(38) .border-top {
  --random: 0.4585003758;
}
.square:nth-of-type(38) .border-right {
  --random: 0.7291792911;
}
.square:nth-of-type(38) .border-bottom {
  --random: 0.437539122;
}
.square:nth-of-type(38) .border-left {
  --random: 0.5294572031;
}
.square:nth-of-type(39) {
  --index: 39;
}
.square:nth-of-type(39) .border-top {
  --random: 0.638032239;
}
.square:nth-of-type(39) .border-right {
  --random: 0.9438960714;
}
.square:nth-of-type(39) .border-bottom {
  --random: 0.4419255294;
}
.square:nth-of-type(39) .border-left {
  --random: 0.4267440866;
}
.square:nth-of-type(40) {
  --index: 40;
}
.square:nth-of-type(40) .border-top {
  --random: 0.4208647934;
}
.square:nth-of-type(40) .border-right {
  --random: 0.7744859292;
}
.square:nth-of-type(40) .border-bottom {
  --random: 0.1393159657;
}
.square:nth-of-type(40) .border-left {
  --random: 0.1072567528;
}
.square:nth-of-type(41) {
  --index: 41;
}
.square:nth-of-type(41) .border-top {
  --random: 0.5010815247;
}
.square:nth-of-type(41) .border-right {
  --random: 0.3805539033;
}
.square:nth-of-type(41) .border-bottom {
  --random: 0.5701241605;
}
.square:nth-of-type(41) .border-left {
  --random: 0.4152213717;
}
.square:nth-of-type(42) {
  --index: 42;
}
.square:nth-of-type(42) .border-top {
  --random: 0.4757011058;
}
.square:nth-of-type(42) .border-right {
  --random: 0.2161753603;
}
.square:nth-of-type(42) .border-bottom {
  --random: 0.6815758215;
}
.square:nth-of-type(42) .border-left {
  --random: 0.8530201319;
}
.square:nth-of-type(43) {
  --index: 43;
}
.square:nth-of-type(43) .border-top {
  --random: 0.4002918402;
}
.square:nth-of-type(43) .border-right {
  --random: 0.6905751924;
}
.square:nth-of-type(43) .border-bottom {
  --random: 0.9314309026;
}
.square:nth-of-type(43) .border-left {
  --random: 0.1790368033;
}
.square:nth-of-type(44) {
  --index: 44;
}
.square:nth-of-type(44) .border-top {
  --random: 0.8159112301;
}
.square:nth-of-type(44) .border-right {
  --random: 0.3131515188;
}
.square:nth-of-type(44) .border-bottom {
  --random: 0.8396964555;
}
.square:nth-of-type(44) .border-left {
  --random: 0.6833967667;
}
.square:nth-of-type(45) {
  --index: 45;
}
.square:nth-of-type(45) .border-top {
  --random: 0.9166285616;
}
.square:nth-of-type(45) .border-right {
  --random: 0.3763838773;
}
.square:nth-of-type(45) .border-bottom {
  --random: 0.6948354507;
}
.square:nth-of-type(45) .border-left {
  --random: 0.5492427775;
}
.square:nth-of-type(46) {
  --index: 46;
}
.square:nth-of-type(46) .border-top {
  --random: 0.0243198063;
}
.square:nth-of-type(46) .border-right {
  --random: 0.5283270433;
}
.square:nth-of-type(46) .border-bottom {
  --random: 0.8667525616;
}
.square:nth-of-type(46) .border-left {
  --random: 0.7800547058;
}
.square:nth-of-type(47) {
  --index: 47;
}
.square:nth-of-type(47) .border-top {
  --random: 0.7284753938;
}
.square:nth-of-type(47) .border-right {
  --random: 0.698815689;
}
.square:nth-of-type(47) .border-bottom {
  --random: 0.3094970113;
}
.square:nth-of-type(47) .border-left {
  --random: 0.3583052642;
}
.square:nth-of-type(48) {
  --index: 48;
}
.square:nth-of-type(48) .border-top {
  --random: 0.0713120568;
}
.square:nth-of-type(48) .border-right {
  --random: 0.6337772384;
}
.square:nth-of-type(48) .border-bottom {
  --random: 0.6547290204;
}
.square:nth-of-type(48) .border-left {
  --random: 0.3340476035;
}
.square:nth-of-type(49) {
  --index: 49;
}
.square:nth-of-type(49) .border-top {
  --random: 0.7305784743;
}
.square:nth-of-type(49) .border-right {
  --random: 0.0047262864;
}
.square:nth-of-type(49) .border-bottom {
  --random: 0.1538268805;
}
.square:nth-of-type(49) .border-left {
  --random: 0.0932205619;
}
.square:nth-of-type(50) {
  --index: 50;
}
.square:nth-of-type(50) .border-top {
  --random: 0.6658957487;
}
.square:nth-of-type(50) .border-right {
  --random: 0.1716775545;
}
.square:nth-of-type(50) .border-bottom {
  --random: 0.0099698737;
}
.square:nth-of-type(50) .border-left {
  --random: 0.5591204626;
}
.square:nth-of-type(51) {
  --index: 51;
}
.square:nth-of-type(51) .border-top {
  --random: 0.2741045056;
}
.square:nth-of-type(51) .border-right {
  --random: 0.864823125;
}
.square:nth-of-type(51) .border-bottom {
  --random: 0.729319064;
}
.square:nth-of-type(51) .border-left {
  --random: 0.8095945077;
}
.square:nth-of-type(52) {
  --index: 52;
}
.square:nth-of-type(52) .border-top {
  --random: 0.0433533163;
}
.square:nth-of-type(52) .border-right {
  --random: 0.6757871282;
}
.square:nth-of-type(52) .border-bottom {
  --random: 0.7740222227;
}
.square:nth-of-type(52) .border-left {
  --random: 0.2697102204;
}
.square:nth-of-type(53) {
  --index: 53;
}
.square:nth-of-type(53) .border-top {
  --random: 0.8886133749;
}
.square:nth-of-type(53) .border-right {
  --random: 0.6557000423;
}
.square:nth-of-type(53) .border-bottom {
  --random: 0.0202275401;
}
.square:nth-of-type(53) .border-left {
  --random: 0.9601671123;
}
.square:nth-of-type(54) {
  --index: 54;
}
.square:nth-of-type(54) .border-top {
  --random: 0.1016862715;
}
.square:nth-of-type(54) .border-right {
  --random: 0.7544553673;
}
.square:nth-of-type(54) .border-bottom {
  --random: 0.6524680984;
}
.square:nth-of-type(54) .border-left {
  --random: 0.5604354331;
}
.square:nth-of-type(55) {
  --index: 55;
}
.square:nth-of-type(55) .border-top {
  --random: 0.3300835897;
}
.square:nth-of-type(55) .border-right {
  --random: 0.9651895448;
}
.square:nth-of-type(55) .border-bottom {
  --random: 0.1832361414;
}
.square:nth-of-type(55) .border-left {
  --random: 0.7300130224;
}
.square:nth-of-type(56) {
  --index: 56;
}
.square:nth-of-type(56) .border-top {
  --random: 0.2391789989;
}
.square:nth-of-type(56) .border-right {
  --random: 0.7512252692;
}
.square:nth-of-type(56) .border-bottom {
  --random: 0.3617605261;
}
.square:nth-of-type(56) .border-left {
  --random: 0.5657803807;
}
.square:nth-of-type(57) {
  --index: 57;
}
.square:nth-of-type(57) .border-top {
  --random: 0.2732720379;
}
.square:nth-of-type(57) .border-right {
  --random: 0.4517884562;
}
.square:nth-of-type(57) .border-bottom {
  --random: 0.0457011983;
}
.square:nth-of-type(57) .border-left {
  --random: 0.5568042645;
}
.square:nth-of-type(58) {
  --index: 58;
}
.square:nth-of-type(58) .border-top {
  --random: 0.4009411981;
}
.square:nth-of-type(58) .border-right {
  --random: 0.8652266116;
}
.square:nth-of-type(58) .border-bottom {
  --random: 0.0587166174;
}
.square:nth-of-type(58) .border-left {
  --random: 0.8504133234;
}
.square:nth-of-type(59) {
  --index: 59;
}
.square:nth-of-type(59) .border-top {
  --random: 0.7718875971;
}
.square:nth-of-type(59) .border-right {
  --random: 0.4385287318;
}
.square:nth-of-type(59) .border-bottom {
  --random: 0.3379134225;
}
.square:nth-of-type(59) .border-left {
  --random: 0.630924522;
}
.square:nth-of-type(60) {
  --index: 60;
}
.square:nth-of-type(60) .border-top {
  --random: 0.3403804816;
}
.square:nth-of-type(60) .border-right {
  --random: 0.0074270161;
}
.square:nth-of-type(60) .border-bottom {
  --random: 0.1102557476;
}
.square:nth-of-type(60) .border-left {
  --random: 0.7365969042;
}
.square:nth-of-type(61) {
  --index: 61;
}
.square:nth-of-type(61) .border-top {
  --random: 0.8534837371;
}
.square:nth-of-type(61) .border-right {
  --random: 0.3118936871;
}
.square:nth-of-type(61) .border-bottom {
  --random: 0.4341666261;
}
.square:nth-of-type(61) .border-left {
  --random: 0.8643018375;
}
.square:nth-of-type(62) {
  --index: 62;
}
.square:nth-of-type(62) .border-top {
  --random: 0.1599420608;
}
.square:nth-of-type(62) .border-right {
  --random: 0.896413421;
}
.square:nth-of-type(62) .border-bottom {
  --random: 0.0145166219;
}
.square:nth-of-type(62) .border-left {
  --random: 0.7307155515;
}
.square:nth-of-type(63) {
  --index: 63;
}
.square:nth-of-type(63) .border-top {
  --random: 0.7263781058;
}
.square:nth-of-type(63) .border-right {
  --random: 0.2221329747;
}
.square:nth-of-type(63) .border-bottom {
  --random: 0.976099556;
}
.square:nth-of-type(63) .border-left {
  --random: 0.3443847118;
}
.square:nth-of-type(64) {
  --index: 64;
}
.square:nth-of-type(64) .border-top {
  --random: 0.1964832691;
}
.square:nth-of-type(64) .border-right {
  --random: 0.1993192441;
}
.square:nth-of-type(64) .border-bottom {
  --random: 0.681789585;
}
.square:nth-of-type(64) .border-left {
  --random: 0.4666662207;
}
.square:nth-of-type(65) {
  --index: 65;
}
.square:nth-of-type(65) .border-top {
  --random: 0.2226710554;
}
.square:nth-of-type(65) .border-right {
  --random: 0.436439422;
}
.square:nth-of-type(65) .border-bottom {
  --random: 0.539149083;
}
.square:nth-of-type(65) .border-left {
  --random: 0.9039107404;
}
.square:nth-of-type(66) {
  --index: 66;
}
.square:nth-of-type(66) .border-top {
  --random: 0.6407952606;
}
.square:nth-of-type(66) .border-right {
  --random: 0.7307242147;
}
.square:nth-of-type(66) .border-bottom {
  --random: 0.9612978713;
}
.square:nth-of-type(66) .border-left {
  --random: 0.7659614644;
}
.square:nth-of-type(67) {
  --index: 67;
}
.square:nth-of-type(67) .border-top {
  --random: 0.5797894468;
}
.square:nth-of-type(67) .border-right {
  --random: 0.5508097195;
}
.square:nth-of-type(67) .border-bottom {
  --random: 0.0684157741;
}
.square:nth-of-type(67) .border-left {
  --random: 0.9255120517;
}
.square:nth-of-type(68) {
  --index: 68;
}
.square:nth-of-type(68) .border-top {
  --random: 0.2002579612;
}
.square:nth-of-type(68) .border-right {
  --random: 0.4382489215;
}
.square:nth-of-type(68) .border-bottom {
  --random: 0.3351146474;
}
.square:nth-of-type(68) .border-left {
  --random: 0.3686197613;
}
.square:nth-of-type(69) {
  --index: 69;
}
.square:nth-of-type(69) .border-top {
  --random: 0.5607240997;
}
.square:nth-of-type(69) .border-right {
  --random: 0.4518050932;
}
.square:nth-of-type(69) .border-bottom {
  --random: 0.1839568486;
}
.square:nth-of-type(69) .border-left {
  --random: 0.5786470635;
}
.square:nth-of-type(70) {
  --index: 70;
}
.square:nth-of-type(70) .border-top {
  --random: 0.7207404443;
}
.square:nth-of-type(70) .border-right {
  --random: 0.5117154403;
}
.square:nth-of-type(70) .border-bottom {
  --random: 0.4984591067;
}
.square:nth-of-type(70) .border-left {
  --random: 0.4015591245;
}
.square:nth-of-type(71) {
  --index: 71;
}
.square:nth-of-type(71) .border-top {
  --random: 0.9751455633;
}
.square:nth-of-type(71) .border-right {
  --random: 0.5677427964;
}
.square:nth-of-type(71) .border-bottom {
  --random: 0.406845774;
}
.square:nth-of-type(71) .border-left {
  --random: 0.8493413039;
}
.square:nth-of-type(72) {
  --index: 72;
}
.square:nth-of-type(72) .border-top {
  --random: 0.7903795974;
}
.square:nth-of-type(72) .border-right {
  --random: 0.0529151731;
}
.square:nth-of-type(72) .border-bottom {
  --random: 0.4558330115;
}
.square:nth-of-type(72) .border-left {
  --random: 0.1352997289;
}
.square:nth-of-type(73) {
  --index: 73;
}
.square:nth-of-type(73) .border-top {
  --random: 0.4220032884;
}
.square:nth-of-type(73) .border-right {
  --random: 0.5740504805;
}
.square:nth-of-type(73) .border-bottom {
  --random: 0.3143219459;
}
.square:nth-of-type(73) .border-left {
  --random: 0.4437698804;
}
.square:nth-of-type(74) {
  --index: 74;
}
.square:nth-of-type(74) .border-top {
  --random: 0.2033022743;
}
.square:nth-of-type(74) .border-right {
  --random: 0.8202709559;
}
.square:nth-of-type(74) .border-bottom {
  --random: 0.97451419;
}
.square:nth-of-type(74) .border-left {
  --random: 0.6731402856;
}
.square:nth-of-type(75) {
  --index: 75;
}
.square:nth-of-type(75) .border-top {
  --random: 0.850992793;
}
.square:nth-of-type(75) .border-right {
  --random: 0.2810031457;
}
.square:nth-of-type(75) .border-bottom {
  --random: 0.7542759874;
}
.square:nth-of-type(75) .border-left {
  --random: 0.8218970726;
}
.square:nth-of-type(76) {
  --index: 76;
}
.square:nth-of-type(76) .border-top {
  --random: 0.3659393046;
}
.square:nth-of-type(76) .border-right {
  --random: 0.2379947121;
}
.square:nth-of-type(76) .border-bottom {
  --random: 0.6092443607;
}
.square:nth-of-type(76) .border-left {
  --random: 0.6152416695;
}
.square:nth-of-type(77) {
  --index: 77;
}
.square:nth-of-type(77) .border-top {
  --random: 0.3632540823;
}
.square:nth-of-type(77) .border-right {
  --random: 0.7695364517;
}
.square:nth-of-type(77) .border-bottom {
  --random: 0.1809941781;
}
.square:nth-of-type(77) .border-left {
  --random: 0.1818502894;
}
.square:nth-of-type(78) {
  --index: 78;
}
.square:nth-of-type(78) .border-top {
  --random: 0.2553580103;
}
.square:nth-of-type(78) .border-right {
  --random: 0.9486530992;
}
.square:nth-of-type(78) .border-bottom {
  --random: 0.6981802804;
}
.square:nth-of-type(78) .border-left {
  --random: 0.4644743336;
}
.square:nth-of-type(79) {
  --index: 79;
}
.square:nth-of-type(79) .border-top {
  --random: 0.5866317461;
}
.square:nth-of-type(79) .border-right {
  --random: 0.1715238327;
}
.square:nth-of-type(79) .border-bottom {
  --random: 0.7615320686;
}
.square:nth-of-type(79) .border-left {
  --random: 0.357897474;
}
.square:nth-of-type(80) {
  --index: 80;
}
.square:nth-of-type(80) .border-top {
  --random: 0.7420118881;
}
.square:nth-of-type(80) .border-right {
  --random: 0.8213609007;
}
.square:nth-of-type(80) .border-bottom {
  --random: 0.3820038511;
}
.square:nth-of-type(80) .border-left {
  --random: 0.3259252296;
}
.square:nth-of-type(81) {
  --index: 81;
}
.square:nth-of-type(81) .border-top {
  --random: 0.241336323;
}
.square:nth-of-type(81) .border-right {
  --random: 0.3984426385;
}
.square:nth-of-type(81) .border-bottom {
  --random: 0.9355994184;
}
.square:nth-of-type(81) .border-left {
  --random: 0.8850682936;
}
.square:nth-of-type(82) {
  --index: 82;
}
.square:nth-of-type(82) .border-top {
  --random: 0.2807410753;
}
.square:nth-of-type(82) .border-right {
  --random: 0.5533076804;
}
.square:nth-of-type(82) .border-bottom {
  --random: 0.2650002671;
}
.square:nth-of-type(82) .border-left {
  --random: 0.962141522;
}
.square:nth-of-type(83) {
  --index: 83;
}
.square:nth-of-type(83) .border-top {
  --random: 0.6010009526;
}
.square:nth-of-type(83) .border-right {
  --random: 0.695323535;
}
.square:nth-of-type(83) .border-bottom {
  --random: 0.6829312025;
}
.square:nth-of-type(83) .border-left {
  --random: 0.4405228034;
}
.square:nth-of-type(84) {
  --index: 84;
}
.square:nth-of-type(84) .border-top {
  --random: 0.2244220232;
}
.square:nth-of-type(84) .border-right {
  --random: 0.7186470516;
}
.square:nth-of-type(84) .border-bottom {
  --random: 0.8112063727;
}
.square:nth-of-type(84) .border-left {
  --random: 0.9833235587;
}
.square:nth-of-type(85) {
  --index: 85;
}
.square:nth-of-type(85) .border-top {
  --random: 0.3273815512;
}
.square:nth-of-type(85) .border-right {
  --random: 0.0519996753;
}
.square:nth-of-type(85) .border-bottom {
  --random: 0.6031781788;
}
.square:nth-of-type(85) .border-left {
  --random: 0.0191317752;
}
.square:nth-of-type(86) {
  --index: 86;
}
.square:nth-of-type(86) .border-top {
  --random: 0.4487688872;
}
.square:nth-of-type(86) .border-right {
  --random: 0.2504996424;
}
.square:nth-of-type(86) .border-bottom {
  --random: 0.9196316403;
}
.square:nth-of-type(86) .border-left {
  --random: 0.4190969304;
}
.square:nth-of-type(87) {
  --index: 87;
}
.square:nth-of-type(87) .border-top {
  --random: 0.0685576023;
}
.square:nth-of-type(87) .border-right {
  --random: 0.6470938022;
}
.square:nth-of-type(87) .border-bottom {
  --random: 0.0054641602;
}
.square:nth-of-type(87) .border-left {
  --random: 0.2307453741;
}
.square:nth-of-type(88) {
  --index: 88;
}
.square:nth-of-type(88) .border-top {
  --random: 0.4746309862;
}
.square:nth-of-type(88) .border-right {
  --random: 0.7387778081;
}
.square:nth-of-type(88) .border-bottom {
  --random: 0.3451278104;
}
.square:nth-of-type(88) .border-left {
  --random: 0.9073375112;
}
.square:nth-of-type(89) {
  --index: 89;
}
.square:nth-of-type(89) .border-top {
  --random: 0.6494109185;
}
.square:nth-of-type(89) .border-right {
  --random: 0.526710589;
}
.square:nth-of-type(89) .border-bottom {
  --random: 0.1610922901;
}
.square:nth-of-type(89) .border-left {
  --random: 0.8216903657;
}
.square:nth-of-type(90) {
  --index: 90;
}
.square:nth-of-type(90) .border-top {
  --random: 0.9808923472;
}
.square:nth-of-type(90) .border-right {
  --random: 0.5270892271;
}
.square:nth-of-type(90) .border-bottom {
  --random: 0.1370963143;
}
.square:nth-of-type(90) .border-left {
  --random: 0.2666147729;
}
.square:nth-of-type(91) {
  --index: 91;
}
.square:nth-of-type(91) .border-top {
  --random: 0.6968183925;
}
.square:nth-of-type(91) .border-right {
  --random: 0.9027127353;
}
.square:nth-of-type(91) .border-bottom {
  --random: 0.5057957605;
}
.square:nth-of-type(91) .border-left {
  --random: 0.8093495928;
}
.square:nth-of-type(92) {
  --index: 92;
}
.square:nth-of-type(92) .border-top {
  --random: 0.5294395422;
}
.square:nth-of-type(92) .border-right {
  --random: 0.662845306;
}
.square:nth-of-type(92) .border-bottom {
  --random: 0.3750597359;
}
.square:nth-of-type(92) .border-left {
  --random: 0.5654126557;
}
.square:nth-of-type(93) {
  --index: 93;
}
.square:nth-of-type(93) .border-top {
  --random: 0.2514190383;
}
.square:nth-of-type(93) .border-right {
  --random: 0.9022683107;
}
.square:nth-of-type(93) .border-bottom {
  --random: 0.6009611988;
}
.square:nth-of-type(93) .border-left {
  --random: 0.5949234476;
}
.square:nth-of-type(94) {
  --index: 94;
}
.square:nth-of-type(94) .border-top {
  --random: 0.0331451913;
}
.square:nth-of-type(94) .border-right {
  --random: 0.1787619709;
}
.square:nth-of-type(94) .border-bottom {
  --random: 0.6747175826;
}
.square:nth-of-type(94) .border-left {
  --random: 0.3361931458;
}
.square:nth-of-type(95) {
  --index: 95;
}
.square:nth-of-type(95) .border-top {
  --random: 0.7657130295;
}
.square:nth-of-type(95) .border-right {
  --random: 0.9907289009;
}
.square:nth-of-type(95) .border-bottom {
  --random: 0.5380310098;
}
.square:nth-of-type(95) .border-left {
  --random: 0.5501758711;
}
.square:nth-of-type(96) {
  --index: 96;
}
.square:nth-of-type(96) .border-top {
  --random: 0.5950690734;
}
.square:nth-of-type(96) .border-right {
  --random: 0.2144356462;
}
.square:nth-of-type(96) .border-bottom {
  --random: 0.9050189476;
}
.square:nth-of-type(96) .border-left {
  --random: 0.5394659649;
}
.square:nth-of-type(97) {
  --index: 97;
}
.square:nth-of-type(97) .border-top {
  --random: 0.7976792352;
}
.square:nth-of-type(97) .border-right {
  --random: 0.5631871203;
}
.square:nth-of-type(97) .border-bottom {
  --random: 0.2032585395;
}
.square:nth-of-type(97) .border-left {
  --random: 0.3098809793;
}
.square:nth-of-type(98) {
  --index: 98;
}
.square:nth-of-type(98) .border-top {
  --random: 0.9235261243;
}
.square:nth-of-type(98) .border-right {
  --random: 0.2481094744;
}
.square:nth-of-type(98) .border-bottom {
  --random: 0.5446692397;
}
.square:nth-of-type(98) .border-left {
  --random: 0.6485462219;
}
.square:nth-of-type(99) {
  --index: 99;
}
.square:nth-of-type(99) .border-top {
  --random: 0.5638992143;
}
.square:nth-of-type(99) .border-right {
  --random: 0.4705262315;
}
.square:nth-of-type(99) .border-bottom {
  --random: 0.5613739085;
}
.square:nth-of-type(99) .border-left {
  --random: 0.4126912133;
}
.square:nth-of-type(100) {
  --index: 100;
}
.square:nth-of-type(100) .border-top {
  --random: 0.9787690952;
}
.square:nth-of-type(100) .border-right {
  --random: 0.8403150342;
}
.square:nth-of-type(100) .border-bottom {
  --random: 0.1548785219;
}
.square:nth-of-type(100) .border-left {
  --random: 0.6436821867;
}
.square:nth-of-type(101) {
  --index: 101;
}
.square:nth-of-type(101) .border-top {
  --random: 0.129270509;
}
.square:nth-of-type(101) .border-right {
  --random: 0.4997574372;
}
.square:nth-of-type(101) .border-bottom {
  --random: 0.5039019054;
}
.square:nth-of-type(101) .border-left {
  --random: 0.1877404904;
}
.square:nth-of-type(102) {
  --index: 102;
}
.square:nth-of-type(102) .border-top {
  --random: 0.969159677;
}
.square:nth-of-type(102) .border-right {
  --random: 0.4784737412;
}
.square:nth-of-type(102) .border-bottom {
  --random: 0.9189634695;
}
.square:nth-of-type(102) .border-left {
  --random: 0.9209206949;
}
.square:nth-of-type(103) {
  --index: 103;
}
.square:nth-of-type(103) .border-top {
  --random: 0.499010942;
}
.square:nth-of-type(103) .border-right {
  --random: 0.7059115402;
}
.square:nth-of-type(103) .border-bottom {
  --random: 0.4286433725;
}
.square:nth-of-type(103) .border-left {
  --random: 0.6962286867;
}
.square:nth-of-type(104) {
  --index: 104;
}
.square:nth-of-type(104) .border-top {
  --random: 0.2340810982;
}
.square:nth-of-type(104) .border-right {
  --random: 0.3315277578;
}
.square:nth-of-type(104) .border-bottom {
  --random: 0.5443521673;
}
.square:nth-of-type(104) .border-left {
  --random: 0.1294754583;
}
.square:nth-of-type(105) {
  --index: 105;
}
.square:nth-of-type(105) .border-top {
  --random: 0.000747282;
}
.square:nth-of-type(105) .border-right {
  --random: 0.7529267385;
}
.square:nth-of-type(105) .border-bottom {
  --random: 0.2053227135;
}
.square:nth-of-type(105) .border-left {
  --random: 0.1576771257;
}
.square:nth-of-type(106) {
  --index: 106;
}
.square:nth-of-type(106) .border-top {
  --random: 0.4762924493;
}
.square:nth-of-type(106) .border-right {
  --random: 0.6383913923;
}
.square:nth-of-type(106) .border-bottom {
  --random: 0.4844016018;
}
.square:nth-of-type(106) .border-left {
  --random: 0.8411942489;
}
.square:nth-of-type(107) {
  --index: 107;
}
.square:nth-of-type(107) .border-top {
  --random: 0.2083022803;
}
.square:nth-of-type(107) .border-right {
  --random: 0.9109218069;
}
.square:nth-of-type(107) .border-bottom {
  --random: 0.1189232233;
}
.square:nth-of-type(107) .border-left {
  --random: 0.1319376474;
}
.square:nth-of-type(108) {
  --index: 108;
}
.square:nth-of-type(108) .border-top {
  --random: 0.4417045526;
}
.square:nth-of-type(108) .border-right {
  --random: 0.36593529;
}
.square:nth-of-type(108) .border-bottom {
  --random: 0.2786688374;
}
.square:nth-of-type(108) .border-left {
  --random: 0.7791421934;
}
.square:nth-of-type(109) {
  --index: 109;
}
.square:nth-of-type(109) .border-top {
  --random: 0.6148045649;
}
.square:nth-of-type(109) .border-right {
  --random: 0.5095857204;
}
.square:nth-of-type(109) .border-bottom {
  --random: 0.1729720106;
}
.square:nth-of-type(109) .border-left {
  --random: 0.7097420804;
}
.square:nth-of-type(110) {
  --index: 110;
}
.square:nth-of-type(110) .border-top {
  --random: 0.7463744918;
}
.square:nth-of-type(110) .border-right {
  --random: 0.8327393698;
}
.square:nth-of-type(110) .border-bottom {
  --random: 0.5838628029;
}
.square:nth-of-type(110) .border-left {
  --random: 0.1321192066;
}
.square:nth-of-type(111) {
  --index: 111;
}
.square:nth-of-type(111) .border-top {
  --random: 0.4124599865;
}
.square:nth-of-type(111) .border-right {
  --random: 0.6377990285;
}
.square:nth-of-type(111) .border-bottom {
  --random: 0.2698016311;
}
.square:nth-of-type(111) .border-left {
  --random: 0.3152908949;
}
.square:nth-of-type(112) {
  --index: 112;
}
.square:nth-of-type(112) .border-top {
  --random: 0.2828221293;
}
.square:nth-of-type(112) .border-right {
  --random: 0.9679752899;
}
.square:nth-of-type(112) .border-bottom {
  --random: 0.3618297077;
}
.square:nth-of-type(112) .border-left {
  --random: 0.1944006428;
}
.square:nth-of-type(113) {
  --index: 113;
}
.square:nth-of-type(113) .border-top {
  --random: 0.4890303608;
}
.square:nth-of-type(113) .border-right {
  --random: 0.3421772289;
}
.square:nth-of-type(113) .border-bottom {
  --random: 0.150675402;
}
.square:nth-of-type(113) .border-left {
  --random: 0.7555327341;
}
.square:nth-of-type(114) {
  --index: 114;
}
.square:nth-of-type(114) .border-top {
  --random: 0.1234285357;
}
.square:nth-of-type(114) .border-right {
  --random: 0.2212590562;
}
.square:nth-of-type(114) .border-bottom {
  --random: 0.5529054285;
}
.square:nth-of-type(114) .border-left {
  --random: 0.004074748;
}
.square:nth-of-type(115) {
  --index: 115;
}
.square:nth-of-type(115) .border-top {
  --random: 0.1224052941;
}
.square:nth-of-type(115) .border-right {
  --random: 0.7356196739;
}
.square:nth-of-type(115) .border-bottom {
  --random: 0.4510602714;
}
.square:nth-of-type(115) .border-left {
  --random: 0.8994988666;
}
.square:nth-of-type(116) {
  --index: 116;
}
.square:nth-of-type(116) .border-top {
  --random: 0.7279285263;
}
.square:nth-of-type(116) .border-right {
  --random: 0.7883781594;
}
.square:nth-of-type(116) .border-bottom {
  --random: 0.8050415893;
}
.square:nth-of-type(116) .border-left {
  --random: 0.4090439465;
}
.square:nth-of-type(117) {
  --index: 117;
}
.square:nth-of-type(117) .border-top {
  --random: 0.8446841554;
}
.square:nth-of-type(117) .border-right {
  --random: 0.1818006295;
}
.square:nth-of-type(117) .border-bottom {
  --random: 0.1592773356;
}
.square:nth-of-type(117) .border-left {
  --random: 0.4896412615;
}
.square:nth-of-type(118) {
  --index: 118;
}
.square:nth-of-type(118) .border-top {
  --random: 0.4603475418;
}
.square:nth-of-type(118) .border-right {
  --random: 0.5540329475;
}
.square:nth-of-type(118) .border-bottom {
  --random: 0.587591684;
}
.square:nth-of-type(118) .border-left {
  --random: 0.1769479653;
}
.square:nth-of-type(119) {
  --index: 119;
}
.square:nth-of-type(119) .border-top {
  --random: 0.5998656005;
}
.square:nth-of-type(119) .border-right {
  --random: 0.9828468215;
}
.square:nth-of-type(119) .border-bottom {
  --random: 0.0617987587;
}
.square:nth-of-type(119) .border-left {
  --random: 0.0138411376;
}
.square:nth-of-type(120) {
  --index: 120;
}
.square:nth-of-type(120) .border-top {
  --random: 0.423751308;
}
.square:nth-of-type(120) .border-right {
  --random: 0.0323485049;
}
.square:nth-of-type(120) .border-bottom {
  --random: 0.4535947291;
}
.square:nth-of-type(120) .border-left {
  --random: 0.9985338399;
}
.square:nth-of-type(121) {
  --index: 121;
}
.square:nth-of-type(121) .border-top {
  --random: 0.4979493129;
}
.square:nth-of-type(121) .border-right {
  --random: 0.715960047;
}
.square:nth-of-type(121) .border-bottom {
  --random: 0.2390854326;
}
.square:nth-of-type(121) .border-left {
  --random: 0.3984284789;
}
.square:nth-of-type(122) {
  --index: 122;
}
.square:nth-of-type(122) .border-top {
  --random: 0.0924063269;
}
.square:nth-of-type(122) .border-right {
  --random: 0.3935009836;
}
.square:nth-of-type(122) .border-bottom {
  --random: 0.2814690557;
}
.square:nth-of-type(122) .border-left {
  --random: 0.9181700926;
}
.square:nth-of-type(123) {
  --index: 123;
}
.square:nth-of-type(123) .border-top {
  --random: 0.9819857061;
}
.square:nth-of-type(123) .border-right {
  --random: 0.5979836738;
}
.square:nth-of-type(123) .border-bottom {
  --random: 0.2442787242;
}
.square:nth-of-type(123) .border-left {
  --random: 0.0251349658;
}
.square:nth-of-type(124) {
  --index: 124;
}
.square:nth-of-type(124) .border-top {
  --random: 0.5142768657;
}
.square:nth-of-type(124) .border-right {
  --random: 0.0530165638;
}
.square:nth-of-type(124) .border-bottom {
  --random: 0.2083599935;
}
.square:nth-of-type(124) .border-left {
  --random: 0.981099068;
}
.square:nth-of-type(125) {
  --index: 125;
}
.square:nth-of-type(125) .border-top {
  --random: 0.7472016373;
}
.square:nth-of-type(125) .border-right {
  --random: 0.9236119335;
}
.square:nth-of-type(125) .border-bottom {
  --random: 0.0226495759;
}
.square:nth-of-type(125) .border-left {
  --random: 0.3002123614;
}
.square:nth-of-type(126) {
  --index: 126;
}
.square:nth-of-type(126) .border-top {
  --random: 0.0281585061;
}
.square:nth-of-type(126) .border-right {
  --random: 0.3248544347;
}
.square:nth-of-type(126) .border-bottom {
  --random: 0.2889356777;
}
.square:nth-of-type(126) .border-left {
  --random: 0.4710591694;
}
.square:nth-of-type(127) {
  --index: 127;
}
.square:nth-of-type(127) .border-top {
  --random: 0.4421178446;
}
.square:nth-of-type(127) .border-right {
  --random: 0.3313646535;
}
.square:nth-of-type(127) .border-bottom {
  --random: 0.912075602;
}
.square:nth-of-type(127) .border-left {
  --random: 0.3540979911;
}
.square:nth-of-type(128) {
  --index: 128;
}
.square:nth-of-type(128) .border-top {
  --random: 0.0541639678;
}
.square:nth-of-type(128) .border-right {
  --random: 0.7900339705;
}
.square:nth-of-type(128) .border-bottom {
  --random: 0.9001978631;
}
.square:nth-of-type(128) .border-left {
  --random: 0.1771832293;
}
.square:nth-of-type(129) {
  --index: 129;
}
.square:nth-of-type(129) .border-top {
  --random: 0.7580819975;
}
.square:nth-of-type(129) .border-right {
  --random: 0.7167810451;
}
.square:nth-of-type(129) .border-bottom {
  --random: 0.2882070808;
}
.square:nth-of-type(129) .border-left {
  --random: 0.0549334802;
}
.square:nth-of-type(130) {
  --index: 130;
}
.square:nth-of-type(130) .border-top {
  --random: 0.3981642418;
}
.square:nth-of-type(130) .border-right {
  --random: 0.0203625528;
}
.square:nth-of-type(130) .border-bottom {
  --random: 0.4453604521;
}
.square:nth-of-type(130) .border-left {
  --random: 0.5645005714;
}
.square:nth-of-type(131) {
  --index: 131;
}
.square:nth-of-type(131) .border-top {
  --random: 0.8261355153;
}
.square:nth-of-type(131) .border-right {
  --random: 0.0150482869;
}
.square:nth-of-type(131) .border-bottom {
  --random: 0.8073298998;
}
.square:nth-of-type(131) .border-left {
  --random: 0.0046515177;
}
.square:nth-of-type(132) {
  --index: 132;
}
.square:nth-of-type(132) .border-top {
  --random: 0.0344415266;
}
.square:nth-of-type(132) .border-right {
  --random: 0.7089581938;
}
.square:nth-of-type(132) .border-bottom {
  --random: 0.9805067194;
}
.square:nth-of-type(132) .border-left {
  --random: 0.5008296302;
}
.square:nth-of-type(133) {
  --index: 133;
}
.square:nth-of-type(133) .border-top {
  --random: 0.2639030732;
}
.square:nth-of-type(133) .border-right {
  --random: 0.5155645137;
}
.square:nth-of-type(133) .border-bottom {
  --random: 0.8697922014;
}
.square:nth-of-type(133) .border-left {
  --random: 0.6085312269;
}
.square:nth-of-type(134) {
  --index: 134;
}
.square:nth-of-type(134) .border-top {
  --random: 0.5423710718;
}
.square:nth-of-type(134) .border-right {
  --random: 0.8642575273;
}
.square:nth-of-type(134) .border-bottom {
  --random: 0.6718334129;
}
.square:nth-of-type(134) .border-left {
  --random: 0.6791539862;
}
.square:nth-of-type(135) {
  --index: 135;
}
.square:nth-of-type(135) .border-top {
  --random: 0.7103360775;
}
.square:nth-of-type(135) .border-right {
  --random: 0.9531786491;
}
.square:nth-of-type(135) .border-bottom {
  --random: 0.3784089308;
}
.square:nth-of-type(135) .border-left {
  --random: 0.8996470354;
}
.square:nth-of-type(136) {
  --index: 136;
}
.square:nth-of-type(136) .border-top {
  --random: 0.0493472057;
}
.square:nth-of-type(136) .border-right {
  --random: 0.671681386;
}
.square:nth-of-type(136) .border-bottom {
  --random: 0.1447729249;
}
.square:nth-of-type(136) .border-left {
  --random: 0.3943274711;
}
.square:nth-of-type(137) {
  --index: 137;
}
.square:nth-of-type(137) .border-top {
  --random: 0.1719516564;
}
.square:nth-of-type(137) .border-right {
  --random: 0.688945715;
}
.square:nth-of-type(137) .border-bottom {
  --random: 0.7279341333;
}
.square:nth-of-type(137) .border-left {
  --random: 0.7840417766;
}
.square:nth-of-type(138) {
  --index: 138;
}
.square:nth-of-type(138) .border-top {
  --random: 0.3289630131;
}
.square:nth-of-type(138) .border-right {
  --random: 0.8106260452;
}
.square:nth-of-type(138) .border-bottom {
  --random: 0.8780088724;
}
.square:nth-of-type(138) .border-left {
  --random: 0.5817451989;
}
.square:nth-of-type(139) {
  --index: 139;
}
.square:nth-of-type(139) .border-top {
  --random: 0.6195444423;
}
.square:nth-of-type(139) .border-right {
  --random: 0.9924768091;
}
.square:nth-of-type(139) .border-bottom {
  --random: 0.1158650745;
}
.square:nth-of-type(139) .border-left {
  --random: 0.0666760845;
}
.square:nth-of-type(140) {
  --index: 140;
}
.square:nth-of-type(140) .border-top {
  --random: 0.7688810877;
}
.square:nth-of-type(140) .border-right {
  --random: 0.8024557747;
}
.square:nth-of-type(140) .border-bottom {
  --random: 0.8755878336;
}
.square:nth-of-type(140) .border-left {
  --random: 0.3594310148;
}
.square:nth-of-type(141) {
  --index: 141;
}
.square:nth-of-type(141) .border-top {
  --random: 0.6264647974;
}
.square:nth-of-type(141) .border-right {
  --random: 0.6512851635;
}
.square:nth-of-type(141) .border-bottom {
  --random: 0.693075839;
}
.square:nth-of-type(141) .border-left {
  --random: 0.1090998138;
}
.square:nth-of-type(142) {
  --index: 142;
}
.square:nth-of-type(142) .border-top {
  --random: 0.3247730976;
}
.square:nth-of-type(142) .border-right {
  --random: 0.3443672802;
}
.square:nth-of-type(142) .border-bottom {
  --random: 0.2592948631;
}
.square:nth-of-type(142) .border-left {
  --random: 0.5912453872;
}
.square:nth-of-type(143) {
  --index: 143;
}
.square:nth-of-type(143) .border-top {
  --random: 0.1428078693;
}
.square:nth-of-type(143) .border-right {
  --random: 0.2524427715;
}
.square:nth-of-type(143) .border-bottom {
  --random: 0.6226047895;
}
.square:nth-of-type(143) .border-left {
  --random: 0.5624991228;
}
.square:nth-of-type(144) {
  --index: 144;
}
.square:nth-of-type(144) .border-top {
  --random: 0.5858562429;
}
.square:nth-of-type(144) .border-right {
  --random: 0.974244545;
}
.square:nth-of-type(144) .border-bottom {
  --random: 0.4466454641;
}
.square:nth-of-type(144) .border-left {
  --random: 0.5394898685;
}
.square:nth-of-type(145) {
  --index: 145;
}
.square:nth-of-type(145) .border-top {
  --random: 0.1395404057;
}
.square:nth-of-type(145) .border-right {
  --random: 0.0959865665;
}
.square:nth-of-type(145) .border-bottom {
  --random: 0.7777609345;
}
.square:nth-of-type(145) .border-left {
  --random: 0.5927259476;
}
.square:nth-of-type(146) {
  --index: 146;
}
.square:nth-of-type(146) .border-top {
  --random: 0.9440710607;
}
.square:nth-of-type(146) .border-right {
  --random: 0.0405920543;
}
.square:nth-of-type(146) .border-bottom {
  --random: 0.0585390508;
}
.square:nth-of-type(146) .border-left {
  --random: 0.65365581;
}
.square:nth-of-type(147) {
  --index: 147;
}
.square:nth-of-type(147) .border-top {
  --random: 0.3234508677;
}
.square:nth-of-type(147) .border-right {
  --random: 0.4518606712;
}
.square:nth-of-type(147) .border-bottom {
  --random: 0.6508238969;
}
.square:nth-of-type(147) .border-left {
  --random: 0.3310205789;
}
.square:nth-of-type(148) {
  --index: 148;
}
.square:nth-of-type(148) .border-top {
  --random: 0.9727863477;
}
.square:nth-of-type(148) .border-right {
  --random: 0.9434344618;
}
.square:nth-of-type(148) .border-bottom {
  --random: 0.460317522;
}
.square:nth-of-type(148) .border-left {
  --random: 0.0539027264;
}
.square:nth-of-type(149) {
  --index: 149;
}
.square:nth-of-type(149) .border-top {
  --random: 0.6808058623;
}
.square:nth-of-type(149) .border-right {
  --random: 0.3784337062;
}
.square:nth-of-type(149) .border-bottom {
  --random: 0.4180773393;
}
.square:nth-of-type(149) .border-left {
  --random: 0.485341247;
}
.square:nth-of-type(150) {
  --index: 150;
}
.square:nth-of-type(150) .border-top {
  --random: 0.8444670351;
}
.square:nth-of-type(150) .border-right {
  --random: 0.3212401541;
}
.square:nth-of-type(150) .border-bottom {
  --random: 0.8098140977;
}
.square:nth-of-type(150) .border-left {
  --random: 0.1860779376;
}
.square:nth-of-type(151) {
  --index: 151;
}
.square:nth-of-type(151) .border-top {
  --random: 0.0316947979;
}
.square:nth-of-type(151) .border-right {
  --random: 0.1029765787;
}
.square:nth-of-type(151) .border-bottom {
  --random: 0.2050448778;
}
.square:nth-of-type(151) .border-left {
  --random: 0.5655526966;
}
.square:nth-of-type(152) {
  --index: 152;
}
.square:nth-of-type(152) .border-top {
  --random: 0.2992040933;
}
.square:nth-of-type(152) .border-right {
  --random: 0.5999372252;
}
.square:nth-of-type(152) .border-bottom {
  --random: 0.5226209418;
}
.square:nth-of-type(152) .border-left {
  --random: 0.2884329394;
}
.square:nth-of-type(153) {
  --index: 153;
}
.square:nth-of-type(153) .border-top {
  --random: 0.7603185411;
}
.square:nth-of-type(153) .border-right {
  --random: 0.2051758728;
}
.square:nth-of-type(153) .border-bottom {
  --random: 0.811915775;
}
.square:nth-of-type(153) .border-left {
  --random: 0.8265523084;
}
.square:nth-of-type(154) {
  --index: 154;
}
.square:nth-of-type(154) .border-top {
  --random: 0.6914309399;
}
.square:nth-of-type(154) .border-right {
  --random: 0.2201452689;
}
.square:nth-of-type(154) .border-bottom {
  --random: 0.7197352354;
}
.square:nth-of-type(154) .border-left {
  --random: 0.0892153617;
}
.square:nth-of-type(155) {
  --index: 155;
}
.square:nth-of-type(155) .border-top {
  --random: 0.6492343578;
}
.square:nth-of-type(155) .border-right {
  --random: 0.8390103072;
}
.square:nth-of-type(155) .border-bottom {
  --random: 0.2871296148;
}
.square:nth-of-type(155) .border-left {
  --random: 0.9335591383;
}
.square:nth-of-type(156) {
  --index: 156;
}
.square:nth-of-type(156) .border-top {
  --random: 0.4198397144;
}
.square:nth-of-type(156) .border-right {
  --random: 0.8253519413;
}
.square:nth-of-type(156) .border-bottom {
  --random: 0.9239774969;
}
.square:nth-of-type(156) .border-left {
  --random: 0.0681425161;
}
.square:nth-of-type(157) {
  --index: 157;
}
.square:nth-of-type(157) .border-top {
  --random: 0.7504953525;
}
.square:nth-of-type(157) .border-right {
  --random: 0.6507679303;
}
.square:nth-of-type(157) .border-bottom {
  --random: 0.512709197;
}
.square:nth-of-type(157) .border-left {
  --random: 0.3691882331;
}
.square:nth-of-type(158) {
  --index: 158;
}
.square:nth-of-type(158) .border-top {
  --random: 0.3146120581;
}
.square:nth-of-type(158) .border-right {
  --random: 0.0501955282;
}
.square:nth-of-type(158) .border-bottom {
  --random: 0.3534996503;
}
.square:nth-of-type(158) .border-left {
  --random: 0.8545700427;
}
.square:nth-of-type(159) {
  --index: 159;
}
.square:nth-of-type(159) .border-top {
  --random: 0.9794802773;
}
.square:nth-of-type(159) .border-right {
  --random: 0.5566360251;
}
.square:nth-of-type(159) .border-bottom {
  --random: 0.2938160597;
}
.square:nth-of-type(159) .border-left {
  --random: 0.9988280073;
}
.square:nth-of-type(160) {
  --index: 160;
}
.square:nth-of-type(160) .border-top {
  --random: 0.8041963769;
}
.square:nth-of-type(160) .border-right {
  --random: 0.2695064202;
}
.square:nth-of-type(160) .border-bottom {
  --random: 0.7651915353;
}
.square:nth-of-type(160) .border-left {
  --random: 0.2624168076;
}
.square:nth-of-type(161) {
  --index: 161;
}
.square:nth-of-type(161) .border-top {
  --random: 0.4703622178;
}
.square:nth-of-type(161) .border-right {
  --random: 0.2427423554;
}
.square:nth-of-type(161) .border-bottom {
  --random: 0.9292403111;
}
.square:nth-of-type(161) .border-left {
  --random: 0.0533571748;
}
.square:nth-of-type(162) {
  --index: 162;
}
.square:nth-of-type(162) .border-top {
  --random: 0.3961717074;
}
.square:nth-of-type(162) .border-right {
  --random: 0.587848123;
}
.square:nth-of-type(162) .border-bottom {
  --random: 0.8541263713;
}
.square:nth-of-type(162) .border-left {
  --random: 0.220896824;
}
.square:nth-of-type(163) {
  --index: 163;
}
.square:nth-of-type(163) .border-top {
  --random: 0.723749027;
}
.square:nth-of-type(163) .border-right {
  --random: 0.391307872;
}
.square:nth-of-type(163) .border-bottom {
  --random: 0.7456933064;
}
.square:nth-of-type(163) .border-left {
  --random: 0.1156073655;
}
.square:nth-of-type(164) {
  --index: 164;
}
.square:nth-of-type(164) .border-top {
  --random: 0.525289826;
}
.square:nth-of-type(164) .border-right {
  --random: 0.6633039847;
}
.square:nth-of-type(164) .border-bottom {
  --random: 0.5070999145;
}
.square:nth-of-type(164) .border-left {
  --random: 0.4228150084;
}
.square:nth-of-type(165) {
  --index: 165;
}
.square:nth-of-type(165) .border-top {
  --random: 0.3279965599;
}
.square:nth-of-type(165) .border-right {
  --random: 0.6000680805;
}
.square:nth-of-type(165) .border-bottom {
  --random: 0.9227709136;
}
.square:nth-of-type(165) .border-left {
  --random: 0.6580150765;
}
.square:nth-of-type(166) {
  --index: 166;
}
.square:nth-of-type(166) .border-top {
  --random: 0.2234073348;
}
.square:nth-of-type(166) .border-right {
  --random: 0.22620183;
}
.square:nth-of-type(166) .border-bottom {
  --random: 0.4369199975;
}
.square:nth-of-type(166) .border-left {
  --random: 0.3957316496;
}
.square:nth-of-type(167) {
  --index: 167;
}
.square:nth-of-type(167) .border-top {
  --random: 0.0493095288;
}
.square:nth-of-type(167) .border-right {
  --random: 0.7124337843;
}
.square:nth-of-type(167) .border-bottom {
  --random: 0.3618130776;
}
.square:nth-of-type(167) .border-left {
  --random: 0.658986574;
}
.square:nth-of-type(168) {
  --index: 168;
}
.square:nth-of-type(168) .border-top {
  --random: 0.3526203227;
}
.square:nth-of-type(168) .border-right {
  --random: 0.2367159984;
}
.square:nth-of-type(168) .border-bottom {
  --random: 0.9317319143;
}
.square:nth-of-type(168) .border-left {
  --random: 0.1485652396;
}
.square:nth-of-type(169) {
  --index: 169;
}
.square:nth-of-type(169) .border-top {
  --random: 0.2935845494;
}
.square:nth-of-type(169) .border-right {
  --random: 0.1594031217;
}
.square:nth-of-type(169) .border-bottom {
  --random: 0.9080693982;
}
.square:nth-of-type(169) .border-left {
  --random: 0.0562556214;
}
.square:nth-of-type(170) {
  --index: 170;
}
.square:nth-of-type(170) .border-top {
  --random: 0.4874392361;
}
.square:nth-of-type(170) .border-right {
  --random: 0.8931410578;
}
.square:nth-of-type(170) .border-bottom {
  --random: 0.5184714275;
}
.square:nth-of-type(170) .border-left {
  --random: 0.9818993571;
}
.square:nth-of-type(171) {
  --index: 171;
}
.square:nth-of-type(171) .border-top {
  --random: 0.6077514192;
}
.square:nth-of-type(171) .border-right {
  --random: 0.577091902;
}
.square:nth-of-type(171) .border-bottom {
  --random: 0.2731687082;
}
.square:nth-of-type(171) .border-left {
  --random: 0.0266295628;
}
.square:nth-of-type(172) {
  --index: 172;
}
.square:nth-of-type(172) .border-top {
  --random: 0.1547932601;
}
.square:nth-of-type(172) .border-right {
  --random: 0.1244405862;
}
.square:nth-of-type(172) .border-bottom {
  --random: 0.7317893965;
}
.square:nth-of-type(172) .border-left {
  --random: 0.6901716476;
}
.square:nth-of-type(173) {
  --index: 173;
}
.square:nth-of-type(173) .border-top {
  --random: 0.0004700424;
}
.square:nth-of-type(173) .border-right {
  --random: 0.413265691;
}
.square:nth-of-type(173) .border-bottom {
  --random: 0.8327044434;
}
.square:nth-of-type(173) .border-left {
  --random: 0.721205798;
}
.square:nth-of-type(174) {
  --index: 174;
}
.square:nth-of-type(174) .border-top {
  --random: 0.3119349383;
}
.square:nth-of-type(174) .border-right {
  --random: 0.9104668156;
}
.square:nth-of-type(174) .border-bottom {
  --random: 0.5210859594;
}
.square:nth-of-type(174) .border-left {
  --random: 0.9088470446;
}
.square:nth-of-type(175) {
  --index: 175;
}
.square:nth-of-type(175) .border-top {
  --random: 0.8246974655;
}
.square:nth-of-type(175) .border-right {
  --random: 0.2982133925;
}
.square:nth-of-type(175) .border-bottom {
  --random: 0.6021868282;
}
.square:nth-of-type(175) .border-left {
  --random: 0.975947108;
}
.square:nth-of-type(176) {
  --index: 176;
}
.square:nth-of-type(176) .border-top {
  --random: 0.5190205243;
}
.square:nth-of-type(176) .border-right {
  --random: 0.6839025791;
}
.square:nth-of-type(176) .border-bottom {
  --random: 0.6260190026;
}
.square:nth-of-type(176) .border-left {
  --random: 0.7454064385;
}
.square:nth-of-type(177) {
  --index: 177;
}
.square:nth-of-type(177) .border-top {
  --random: 0.1695100034;
}
.square:nth-of-type(177) .border-right {
  --random: 0.7091488873;
}
.square:nth-of-type(177) .border-bottom {
  --random: 0.6701279541;
}
.square:nth-of-type(177) .border-left {
  --random: 0.6802519102;
}
.square:nth-of-type(178) {
  --index: 178;
}
.square:nth-of-type(178) .border-top {
  --random: 0.5021580466;
}
.square:nth-of-type(178) .border-right {
  --random: 0.0753666668;
}
.square:nth-of-type(178) .border-bottom {
  --random: 0.1359361435;
}
.square:nth-of-type(178) .border-left {
  --random: 0.3179251698;
}
.square:nth-of-type(179) {
  --index: 179;
}
.square:nth-of-type(179) .border-top {
  --random: 0.1301349752;
}
.square:nth-of-type(179) .border-right {
  --random: 0.0801038563;
}
.square:nth-of-type(179) .border-bottom {
  --random: 0.4734184136;
}
.square:nth-of-type(179) .border-left {
  --random: 0.5367658779;
}
.square:nth-of-type(180) {
  --index: 180;
}
.square:nth-of-type(180) .border-top {
  --random: 0.7410939972;
}
.square:nth-of-type(180) .border-right {
  --random: 0.1758333308;
}
.square:nth-of-type(180) .border-bottom {
  --random: 0.3319510889;
}
.square:nth-of-type(180) .border-left {
  --random: 0.0486609042;
}
.square:nth-of-type(181) {
  --index: 181;
}
.square:nth-of-type(181) .border-top {
  --random: 0.6710717416;
}
.square:nth-of-type(181) .border-right {
  --random: 0.2050580107;
}
.square:nth-of-type(181) .border-bottom {
  --random: 0.3340709271;
}
.square:nth-of-type(181) .border-left {
  --random: 0.9539009661;
}
.square:nth-of-type(182) {
  --index: 182;
}
.square:nth-of-type(182) .border-top {
  --random: 0.5760383486;
}
.square:nth-of-type(182) .border-right {
  --random: 0.7517936482;
}
.square:nth-of-type(182) .border-bottom {
  --random: 0.8746070339;
}
.square:nth-of-type(182) .border-left {
  --random: 0.0080364559;
}
.square:nth-of-type(183) {
  --index: 183;
}
.square:nth-of-type(183) .border-top {
  --random: 0.6142323423;
}
.square:nth-of-type(183) .border-right {
  --random: 0.2480279868;
}
.square:nth-of-type(183) .border-bottom {
  --random: 0.3470038996;
}
.square:nth-of-type(183) .border-left {
  --random: 0.1097313412;
}
.square:nth-of-type(184) {
  --index: 184;
}
.square:nth-of-type(184) .border-top {
  --random: 0.8413161275;
}
.square:nth-of-type(184) .border-right {
  --random: 0.5792756046;
}
.square:nth-of-type(184) .border-bottom {
  --random: 0.6529054766;
}
.square:nth-of-type(184) .border-left {
  --random: 0.0908345863;
}
.square:nth-of-type(185) {
  --index: 185;
}
.square:nth-of-type(185) .border-top {
  --random: 0.0029246276;
}
.square:nth-of-type(185) .border-right {
  --random: 0.5756782887;
}
.square:nth-of-type(185) .border-bottom {
  --random: 0.4318209761;
}
.square:nth-of-type(185) .border-left {
  --random: 0.4020692387;
}
.square:nth-of-type(186) {
  --index: 186;
}
.square:nth-of-type(186) .border-top {
  --random: 0.2533544547;
}
.square:nth-of-type(186) .border-right {
  --random: 0.242670806;
}
.square:nth-of-type(186) .border-bottom {
  --random: 0.9853717735;
}
.square:nth-of-type(186) .border-left {
  --random: 0.098832562;
}
.square:nth-of-type(187) {
  --index: 187;
}
.square:nth-of-type(187) .border-top {
  --random: 0.6890481573;
}
.square:nth-of-type(187) .border-right {
  --random: 0.6856753927;
}
.square:nth-of-type(187) .border-bottom {
  --random: 0.6325507706;
}
.square:nth-of-type(187) .border-left {
  --random: 0.1953492393;
}
.square:nth-of-type(188) {
  --index: 188;
}
.square:nth-of-type(188) .border-top {
  --random: 0.9618709407;
}
.square:nth-of-type(188) .border-right {
  --random: 0.8811189352;
}
.square:nth-of-type(188) .border-bottom {
  --random: 0.6131669881;
}
.square:nth-of-type(188) .border-left {
  --random: 0.1255707893;
}
.square:nth-of-type(189) {
  --index: 189;
}
.square:nth-of-type(189) .border-top {
  --random: 0.8164560857;
}
.square:nth-of-type(189) .border-right {
  --random: 0.6299712482;
}
.square:nth-of-type(189) .border-bottom {
  --random: 0.1044191294;
}
.square:nth-of-type(189) .border-left {
  --random: 0.5746280698;
}
.square:nth-of-type(190) {
  --index: 190;
}
.square:nth-of-type(190) .border-top {
  --random: 0.135977013;
}
.square:nth-of-type(190) .border-right {
  --random: 0.622853216;
}
.square:nth-of-type(190) .border-bottom {
  --random: 0.6308723432;
}
.square:nth-of-type(190) .border-left {
  --random: 0.3317969461;
}
.square:nth-of-type(191) {
  --index: 191;
}
.square:nth-of-type(191) .border-top {
  --random: 0.5931315525;
}
.square:nth-of-type(191) .border-right {
  --random: 0.484830054;
}
.square:nth-of-type(191) .border-bottom {
  --random: 0.9242583165;
}
.square:nth-of-type(191) .border-left {
  --random: 0.1746629938;
}
.square:nth-of-type(192) {
  --index: 192;
}
.square:nth-of-type(192) .border-top {
  --random: 0.2821953228;
}
.square:nth-of-type(192) .border-right {
  --random: 0.8535951659;
}
.square:nth-of-type(192) .border-bottom {
  --random: 0.672839919;
}
.square:nth-of-type(192) .border-left {
  --random: 0.2160668121;
}
.square:nth-of-type(193) {
  --index: 193;
}
.square:nth-of-type(193) .border-top {
  --random: 0.9083700679;
}
.square:nth-of-type(193) .border-right {
  --random: 0.3383389309;
}
.square:nth-of-type(193) .border-bottom {
  --random: 0.2821280888;
}
.square:nth-of-type(193) .border-left {
  --random: 0.1959370828;
}
.square:nth-of-type(194) {
  --index: 194;
}
.square:nth-of-type(194) .border-top {
  --random: 0.7301034494;
}
.square:nth-of-type(194) .border-right {
  --random: 0.2669759015;
}
.square:nth-of-type(194) .border-bottom {
  --random: 0.4580415471;
}
.square:nth-of-type(194) .border-left {
  --random: 0.9549978951;
}
.square:nth-of-type(195) {
  --index: 195;
}
.square:nth-of-type(195) .border-top {
  --random: 0.9079405774;
}
.square:nth-of-type(195) .border-right {
  --random: 0.8658944758;
}
.square:nth-of-type(195) .border-bottom {
  --random: 0.555986855;
}
.square:nth-of-type(195) .border-left {
  --random: 0.5286447718;
}
.square:nth-of-type(196) {
  --index: 196;
}
.square:nth-of-type(196) .border-top {
  --random: 0.4761875495;
}
.square:nth-of-type(196) .border-right {
  --random: 0.8030490417;
}
.square:nth-of-type(196) .border-bottom {
  --random: 0.0531175722;
}
.square:nth-of-type(196) .border-left {
  --random: 0.69066141;
}
.square:nth-of-type(197) {
  --index: 197;
}
.square:nth-of-type(197) .border-top {
  --random: 0.2230837973;
}
.square:nth-of-type(197) .border-right {
  --random: 0.2063597924;
}
.square:nth-of-type(197) .border-bottom {
  --random: 0.6445344158;
}
.square:nth-of-type(197) .border-left {
  --random: 0.4398425114;
}
.square:nth-of-type(198) {
  --index: 198;
}
.square:nth-of-type(198) .border-top {
  --random: 0.07175351;
}
.square:nth-of-type(198) .border-right {
  --random: 0.8514289071;
}
.square:nth-of-type(198) .border-bottom {
  --random: 0.2731120533;
}
.square:nth-of-type(198) .border-left {
  --random: 0.9638263482;
}
.square:nth-of-type(199) {
  --index: 199;
}
.square:nth-of-type(199) .border-top {
  --random: 0.1646422444;
}
.square:nth-of-type(199) .border-right {
  --random: 0.3873266004;
}
.square:nth-of-type(199) .border-bottom {
  --random: 0.0692780943;
}
.square:nth-of-type(199) .border-left {
  --random: 0.886196682;
}
.square:nth-of-type(200) {
  --index: 200;
}
.square:nth-of-type(200) .border-top {
  --random: 0.214455905;
}
.square:nth-of-type(200) .border-right {
  --random: 0.0633007282;
}
.square:nth-of-type(200) .border-bottom {
  --random: 0.346380206;
}
.square:nth-of-type(200) .border-left {
  --random: 0.9003448863;
}
.square:nth-of-type(201) {
  --index: 201;
}
.square:nth-of-type(201) .border-top {
  --random: 0.9429579478;
}
.square:nth-of-type(201) .border-right {
  --random: 0.8719774887;
}
.square:nth-of-type(201) .border-bottom {
  --random: 0.3527351461;
}
.square:nth-of-type(201) .border-left {
  --random: 0.8300237616;
}
.square:nth-of-type(202) {
  --index: 202;
}
.square:nth-of-type(202) .border-top {
  --random: 0.1091987326;
}
.square:nth-of-type(202) .border-right {
  --random: 0.4790659034;
}
.square:nth-of-type(202) .border-bottom {
  --random: 0.8254759454;
}
.square:nth-of-type(202) .border-left {
  --random: 0.380076148;
}
.square:nth-of-type(203) {
  --index: 203;
}
.square:nth-of-type(203) .border-top {
  --random: 0.0417830363;
}
.square:nth-of-type(203) .border-right {
  --random: 0.8813696354;
}
.square:nth-of-type(203) .border-bottom {
  --random: 0.204331417;
}
.square:nth-of-type(203) .border-left {
  --random: 0.7448960105;
}
.square:nth-of-type(204) {
  --index: 204;
}
.square:nth-of-type(204) .border-top {
  --random: 0.300619481;
}
.square:nth-of-type(204) .border-right {
  --random: 0.1410504386;
}
.square:nth-of-type(204) .border-bottom {
  --random: 0.2159860564;
}
.square:nth-of-type(204) .border-left {
  --random: 0.4257282637;
}
.square:nth-of-type(205) {
  --index: 205;
}
.square:nth-of-type(205) .border-top {
  --random: 0.5190666423;
}
.square:nth-of-type(205) .border-right {
  --random: 0.1587024085;
}
.square:nth-of-type(205) .border-bottom {
  --random: 0.050756308;
}
.square:nth-of-type(205) .border-left {
  --random: 0.9441045499;
}
.square:nth-of-type(206) {
  --index: 206;
}
.square:nth-of-type(206) .border-top {
  --random: 0.908789138;
}
.square:nth-of-type(206) .border-right {
  --random: 0.623848515;
}
.square:nth-of-type(206) .border-bottom {
  --random: 0.6159856241;
}
.square:nth-of-type(206) .border-left {
  --random: 0.4978533646;
}
.square:nth-of-type(207) {
  --index: 207;
}
.square:nth-of-type(207) .border-top {
  --random: 0.6200901584;
}
.square:nth-of-type(207) .border-right {
  --random: 0.6557127893;
}
.square:nth-of-type(207) .border-bottom {
  --random: 0.7177398731;
}
.square:nth-of-type(207) .border-left {
  --random: 0.4789310989;
}
.square:nth-of-type(208) {
  --index: 208;
}
.square:nth-of-type(208) .border-top {
  --random: 0.7446466803;
}
.square:nth-of-type(208) .border-right {
  --random: 0.5714197775;
}
.square:nth-of-type(208) .border-bottom {
  --random: 0.0809398708;
}
.square:nth-of-type(208) .border-left {
  --random: 0.1468513597;
}
.square:nth-of-type(209) {
  --index: 209;
}
.square:nth-of-type(209) .border-top {
  --random: 0.6812574031;
}
.square:nth-of-type(209) .border-right {
  --random: 0.2195785798;
}
.square:nth-of-type(209) .border-bottom {
  --random: 0.3671422555;
}
.square:nth-of-type(209) .border-left {
  --random: 0.4585203459;
}
.square:nth-of-type(210) {
  --index: 210;
}
.square:nth-of-type(210) .border-top {
  --random: 0.0424859173;
}
.square:nth-of-type(210) .border-right {
  --random: 0.8141306757;
}
.square:nth-of-type(210) .border-bottom {
  --random: 0.4442438313;
}
.square:nth-of-type(210) .border-left {
  --random: 0.9856445188;
}
.square:nth-of-type(211) {
  --index: 211;
}
.square:nth-of-type(211) .border-top {
  --random: 0.8334571629;
}
.square:nth-of-type(211) .border-right {
  --random: 0.7611464144;
}
.square:nth-of-type(211) .border-bottom {
  --random: 0.4795954899;
}
.square:nth-of-type(211) .border-left {
  --random: 0.3463428281;
}
.square:nth-of-type(212) {
  --index: 212;
}
.square:nth-of-type(212) .border-top {
  --random: 0.8465771821;
}
.square:nth-of-type(212) .border-right {
  --random: 0.7722712798;
}
.square:nth-of-type(212) .border-bottom {
  --random: 0.7201115966;
}
.square:nth-of-type(212) .border-left {
  --random: 0.1209534159;
}
.square:nth-of-type(213) {
  --index: 213;
}
.square:nth-of-type(213) .border-top {
  --random: 0.2205452623;
}
.square:nth-of-type(213) .border-right {
  --random: 0.7961326325;
}
.square:nth-of-type(213) .border-bottom {
  --random: 0.8865087648;
}
.square:nth-of-type(213) .border-left {
  --random: 0.2279004222;
}
.square:nth-of-type(214) {
  --index: 214;
}
.square:nth-of-type(214) .border-top {
  --random: 0.6921223722;
}
.square:nth-of-type(214) .border-right {
  --random: 0.0393436395;
}
.square:nth-of-type(214) .border-bottom {
  --random: 0.1211674311;
}
.square:nth-of-type(214) .border-left {
  --random: 0.4183848696;
}
.square:nth-of-type(215) {
  --index: 215;
}
.square:nth-of-type(215) .border-top {
  --random: 0.248236488;
}
.square:nth-of-type(215) .border-right {
  --random: 0.2336980986;
}
.square:nth-of-type(215) .border-bottom {
  --random: 0.9648906108;
}
.square:nth-of-type(215) .border-left {
  --random: 0.5135350888;
}
.square:nth-of-type(216) {
  --index: 216;
}
.square:nth-of-type(216) .border-top {
  --random: 0.5862794551;
}
.square:nth-of-type(216) .border-right {
  --random: 0.049973114;
}
.square:nth-of-type(216) .border-bottom {
  --random: 0.1906989819;
}
.square:nth-of-type(216) .border-left {
  --random: 0.5738216867;
}
.square:nth-of-type(217) {
  --index: 217;
}
.square:nth-of-type(217) .border-top {
  --random: 0.6600494543;
}
.square:nth-of-type(217) .border-right {
  --random: 0.8674276446;
}
.square:nth-of-type(217) .border-bottom {
  --random: 0.2559718741;
}
.square:nth-of-type(217) .border-left {
  --random: 0.8035488523;
}
.square:nth-of-type(218) {
  --index: 218;
}
.square:nth-of-type(218) .border-top {
  --random: 0.3902410916;
}
.square:nth-of-type(218) .border-right {
  --random: 0.2510408164;
}
.square:nth-of-type(218) .border-bottom {
  --random: 0.3197731849;
}
.square:nth-of-type(218) .border-left {
  --random: 0.1166766337;
}
.square:nth-of-type(219) {
  --index: 219;
}
.square:nth-of-type(219) .border-top {
  --random: 0.4665221454;
}
.square:nth-of-type(219) .border-right {
  --random: 0.0521102674;
}
.square:nth-of-type(219) .border-bottom {
  --random: 0.2021079253;
}
.square:nth-of-type(219) .border-left {
  --random: 0.0288544183;
}
.square:nth-of-type(220) {
  --index: 220;
}
.square:nth-of-type(220) .border-top {
  --random: 0.0586151444;
}
.square:nth-of-type(220) .border-right {
  --random: 0.155205572;
}
.square:nth-of-type(220) .border-bottom {
  --random: 0.5835427099;
}
.square:nth-of-type(220) .border-left {
  --random: 0.1188870851;
}
.square:nth-of-type(221) {
  --index: 221;
}
.square:nth-of-type(221) .border-top {
  --random: 0.8476182399;
}
.square:nth-of-type(221) .border-right {
  --random: 0.0780249748;
}
.square:nth-of-type(221) .border-bottom {
  --random: 0.0762712528;
}
.square:nth-of-type(221) .border-left {
  --random: 0.7661820352;
}
.square:nth-of-type(222) {
  --index: 222;
}
.square:nth-of-type(222) .border-top {
  --random: 0.0683468723;
}
.square:nth-of-type(222) .border-right {
  --random: 0.9664072447;
}
.square:nth-of-type(222) .border-bottom {
  --random: 0.2400139121;
}
.square:nth-of-type(222) .border-left {
  --random: 0.4661929874;
}
.square:nth-of-type(223) {
  --index: 223;
}
.square:nth-of-type(223) .border-top {
  --random: 0.5134453014;
}
.square:nth-of-type(223) .border-right {
  --random: 0.2399259064;
}
.square:nth-of-type(223) .border-bottom {
  --random: 0.6899456109;
}
.square:nth-of-type(223) .border-left {
  --random: 0.0962740092;
}
.square:nth-of-type(224) {
  --index: 224;
}
.square:nth-of-type(224) .border-top {
  --random: 0.2948914353;
}
.square:nth-of-type(224) .border-right {
  --random: 0.9406081366;
}
.square:nth-of-type(224) .border-bottom {
  --random: 0.6801888575;
}
.square:nth-of-type(224) .border-left {
  --random: 0.8215880123;
}
.square:nth-of-type(225) {
  --index: 225;
}
.square:nth-of-type(225) .border-top {
  --random: 0.2294728723;
}
.square:nth-of-type(225) .border-right {
  --random: 0.7140280602;
}
.square:nth-of-type(225) .border-bottom {
  --random: 0.3651273584;
}
.square:nth-of-type(225) .border-left {
  --random: 0.1365833888;
}
.square:nth-of-type(226) {
  --index: 226;
}
.square:nth-of-type(226) .border-top {
  --random: 0.20625994;
}
.square:nth-of-type(226) .border-right {
  --random: 0.073050146;
}
.square:nth-of-type(226) .border-bottom {
  --random: 0.5443793325;
}
.square:nth-of-type(226) .border-left {
  --random: 0.4558969533;
}
.square:nth-of-type(227) {
  --index: 227;
}
.square:nth-of-type(227) .border-top {
  --random: 0.2646362185;
}
.square:nth-of-type(227) .border-right {
  --random: 0.151850418;
}
.square:nth-of-type(227) .border-bottom {
  --random: 0.6448788911;
}
.square:nth-of-type(227) .border-left {
  --random: 0.043009205;
}
.square:nth-of-type(228) {
  --index: 228;
}
.square:nth-of-type(228) .border-top {
  --random: 0.0383853554;
}
.square:nth-of-type(228) .border-right {
  --random: 0.5381669209;
}
.square:nth-of-type(228) .border-bottom {
  --random: 0.3708484559;
}
.square:nth-of-type(228) .border-left {
  --random: 0.3563747908;
}
.square:nth-of-type(229) {
  --index: 229;
}
.square:nth-of-type(229) .border-top {
  --random: 0.4125806978;
}
.square:nth-of-type(229) .border-right {
  --random: 0.9747779718;
}
.square:nth-of-type(229) .border-bottom {
  --random: 0.7626464906;
}
.square:nth-of-type(229) .border-left {
  --random: 0.2960738027;
}
.square:nth-of-type(230) {
  --index: 230;
}
.square:nth-of-type(230) .border-top {
  --random: 0.9117996875;
}
.square:nth-of-type(230) .border-right {
  --random: 0.7919867944;
}
.square:nth-of-type(230) .border-bottom {
  --random: 0.0554880765;
}
.square:nth-of-type(230) .border-left {
  --random: 0.7693735768;
}
.square:nth-of-type(231) {
  --index: 231;
}
.square:nth-of-type(231) .border-top {
  --random: 0.2178348328;
}
.square:nth-of-type(231) .border-right {
  --random: 0.2340855633;
}
.square:nth-of-type(231) .border-bottom {
  --random: 0.8995238954;
}
.square:nth-of-type(231) .border-left {
  --random: 0.6419212232;
}
.square:nth-of-type(232) {
  --index: 232;
}
.square:nth-of-type(232) .border-top {
  --random: 0.1930586472;
}
.square:nth-of-type(232) .border-right {
  --random: 0.580847424;
}
.square:nth-of-type(232) .border-bottom {
  --random: 0.6515285016;
}
.square:nth-of-type(232) .border-left {
  --random: 0.9208170807;
}
.square:nth-of-type(233) {
  --index: 233;
}
.square:nth-of-type(233) .border-top {
  --random: 0.6637455616;
}
.square:nth-of-type(233) .border-right {
  --random: 0.9534855895;
}
.square:nth-of-type(233) .border-bottom {
  --random: 0.9603880989;
}
.square:nth-of-type(233) .border-left {
  --random: 0.790989775;
}
.square:nth-of-type(234) {
  --index: 234;
}
.square:nth-of-type(234) .border-top {
  --random: 0.4529638058;
}
.square:nth-of-type(234) .border-right {
  --random: 0.5364124374;
}
.square:nth-of-type(234) .border-bottom {
  --random: 0.0686768462;
}
.square:nth-of-type(234) .border-left {
  --random: 0.6891968835;
}
.square:nth-of-type(235) {
  --index: 235;
}
.square:nth-of-type(235) .border-top {
  --random: 0.0670146945;
}
.square:nth-of-type(235) .border-right {
  --random: 0.0387119952;
}
.square:nth-of-type(235) .border-bottom {
  --random: 0.5555291263;
}
.square:nth-of-type(235) .border-left {
  --random: 0.9531396969;
}
.square:nth-of-type(236) {
  --index: 236;
}
.square:nth-of-type(236) .border-top {
  --random: 0.8788710002;
}
.square:nth-of-type(236) .border-right {
  --random: 0.7823484224;
}
.square:nth-of-type(236) .border-bottom {
  --random: 0.231377828;
}
.square:nth-of-type(236) .border-left {
  --random: 0.3756035487;
}
.square:nth-of-type(237) {
  --index: 237;
}
.square:nth-of-type(237) .border-top {
  --random: 0.7008936165;
}
.square:nth-of-type(237) .border-right {
  --random: 0.9809808139;
}
.square:nth-of-type(237) .border-bottom {
  --random: 0.1915617409;
}
.square:nth-of-type(237) .border-left {
  --random: 0.9280279166;
}
.square:nth-of-type(238) {
  --index: 238;
}
.square:nth-of-type(238) .border-top {
  --random: 0.2531123004;
}
.square:nth-of-type(238) .border-right {
  --random: 0.6390880002;
}
.square:nth-of-type(238) .border-bottom {
  --random: 0.2059611711;
}
.square:nth-of-type(238) .border-left {
  --random: 0.7199160409;
}
.square:nth-of-type(239) {
  --index: 239;
}
.square:nth-of-type(239) .border-top {
  --random: 0.3740454347;
}
.square:nth-of-type(239) .border-right {
  --random: 0.8302346372;
}
.square:nth-of-type(239) .border-bottom {
  --random: 0.5447792516;
}
.square:nth-of-type(239) .border-left {
  --random: 0.8628926328;
}
.square:nth-of-type(240) {
  --index: 240;
}
.square:nth-of-type(240) .border-top {
  --random: 0.8619775738;
}
.square:nth-of-type(240) .border-right {
  --random: 0.6776305118;
}
.square:nth-of-type(240) .border-bottom {
  --random: 0.1680673343;
}
.square:nth-of-type(240) .border-left {
  --random: 0.8477847668;
}
.square:nth-of-type(241) {
  --index: 241;
}
.square:nth-of-type(241) .border-top {
  --random: 0.7401841072;
}
.square:nth-of-type(241) .border-right {
  --random: 0.4168063644;
}
.square:nth-of-type(241) .border-bottom {
  --random: 0.4530209909;
}
.square:nth-of-type(241) .border-left {
  --random: 0.4006291934;
}
.square:nth-of-type(242) {
  --index: 242;
}
.square:nth-of-type(242) .border-top {
  --random: 0.9087479502;
}
.square:nth-of-type(242) .border-right {
  --random: 0.7077095743;
}
.square:nth-of-type(242) .border-bottom {
  --random: 0.1455456833;
}
.square:nth-of-type(242) .border-left {
  --random: 0.9260191651;
}
.square:nth-of-type(243) {
  --index: 243;
}
.square:nth-of-type(243) .border-top {
  --random: 0.4274952424;
}
.square:nth-of-type(243) .border-right {
  --random: 0.0826937838;
}
.square:nth-of-type(243) .border-bottom {
  --random: 0.9990840459;
}
.square:nth-of-type(243) .border-left {
  --random: 0.174127982;
}
.square:nth-of-type(244) {
  --index: 244;
}
.square:nth-of-type(244) .border-top {
  --random: 0.0226639063;
}
.square:nth-of-type(244) .border-right {
  --random: 0.9550953177;
}
.square:nth-of-type(244) .border-bottom {
  --random: 0.7948968128;
}
.square:nth-of-type(244) .border-left {
  --random: 0.477972384;
}
.square:nth-of-type(245) {
  --index: 245;
}
.square:nth-of-type(245) .border-top {
  --random: 0.6044083425;
}
.square:nth-of-type(245) .border-right {
  --random: 0.4688972289;
}
.square:nth-of-type(245) .border-bottom {
  --random: 0.1183200758;
}
.square:nth-of-type(245) .border-left {
  --random: 0.8195919233;
}
.square:nth-of-type(246) {
  --index: 246;
}
.square:nth-of-type(246) .border-top {
  --random: 0.7466047109;
}
.square:nth-of-type(246) .border-right {
  --random: 0.475648798;
}
.square:nth-of-type(246) .border-bottom {
  --random: 0.2249590932;
}
.square:nth-of-type(246) .border-left {
  --random: 0.1845299977;
}
.square:nth-of-type(247) {
  --index: 247;
}
.square:nth-of-type(247) .border-top {
  --random: 0.9347898363;
}
.square:nth-of-type(247) .border-right {
  --random: 0.1515515172;
}
.square:nth-of-type(247) .border-bottom {
  --random: 0.1078320544;
}
.square:nth-of-type(247) .border-left {
  --random: 0.9715018626;
}
.square:nth-of-type(248) {
  --index: 248;
}
.square:nth-of-type(248) .border-top {
  --random: 0.5033609122;
}
.square:nth-of-type(248) .border-right {
  --random: 0.5626444279;
}
.square:nth-of-type(248) .border-bottom {
  --random: 0.9544728742;
}
.square:nth-of-type(248) .border-left {
  --random: 0.0660891638;
}
.square:nth-of-type(249) {
  --index: 249;
}
.square:nth-of-type(249) .border-top {
  --random: 0.9441380569;
}
.square:nth-of-type(249) .border-right {
  --random: 0.1422864936;
}
.square:nth-of-type(249) .border-bottom {
  --random: 0.7555396586;
}
.square:nth-of-type(249) .border-left {
  --random: 0.0960239896;
}
.square:nth-of-type(250) {
  --index: 250;
}
.square:nth-of-type(250) .border-top {
  --random: 0.0387579229;
}
.square:nth-of-type(250) .border-right {
  --random: 0.4760357027;
}
.square:nth-of-type(250) .border-bottom {
  --random: 0.1548414776;
}
.square:nth-of-type(250) .border-left {
  --random: 0.2012683275;
}
.square:nth-of-type(251) {
  --index: 251;
}
.square:nth-of-type(251) .border-top {
  --random: 0.4107685589;
}
.square:nth-of-type(251) .border-right {
  --random: 0.0322675126;
}
.square:nth-of-type(251) .border-bottom {
  --random: 0.3014983423;
}
.square:nth-of-type(251) .border-left {
  --random: 0.249562878;
}
.square:nth-of-type(252) {
  --index: 252;
}
.square:nth-of-type(252) .border-top {
  --random: 0.9229653628;
}
.square:nth-of-type(252) .border-right {
  --random: 0.5567214392;
}
.square:nth-of-type(252) .border-bottom {
  --random: 0.6080864837;
}
.square:nth-of-type(252) .border-left {
  --random: 0.2855000245;
}
.square:nth-of-type(253) {
  --index: 253;
}
.square:nth-of-type(253) .border-top {
  --random: 0.5499346217;
}
.square:nth-of-type(253) .border-right {
  --random: 0.1873328453;
}
.square:nth-of-type(253) .border-bottom {
  --random: 0.1936624252;
}
.square:nth-of-type(253) .border-left {
  --random: 0.7160324122;
}
.square:nth-of-type(254) {
  --index: 254;
}
.square:nth-of-type(254) .border-top {
  --random: 0.8143770144;
}
.square:nth-of-type(254) .border-right {
  --random: 0.7348715448;
}
.square:nth-of-type(254) .border-bottom {
  --random: 0.6794232848;
}
.square:nth-of-type(254) .border-left {
  --random: 0.9340694131;
}
.square:nth-of-type(255) {
  --index: 255;
}
.square:nth-of-type(255) .border-top {
  --random: 0.3891670198;
}
.square:nth-of-type(255) .border-right {
  --random: 0.3410264123;
}
.square:nth-of-type(255) .border-bottom {
  --random: 0.4612833843;
}
.square:nth-of-type(255) .border-left {
  --random: 0.2336430758;
}
.square:nth-of-type(256) {
  --index: 256;
}
.square:nth-of-type(256) .border-top {
  --random: 0.8956378112;
}
.square:nth-of-type(256) .border-right {
  --random: 0.4669367926;
}
.square:nth-of-type(256) .border-bottom {
  --random: 0.3094027147;
}
.square:nth-of-type(256) .border-left {
  --random: 0.4738964222;
}
.square:nth-of-type(257) {
  --index: 257;
}
.square:nth-of-type(257) .border-top {
  --random: 0.863908967;
}
.square:nth-of-type(257) .border-right {
  --random: 0.5865519896;
}
.square:nth-of-type(257) .border-bottom {
  --random: 0.221116293;
}
.square:nth-of-type(257) .border-left {
  --random: 0.1876105494;
}
.square:nth-of-type(258) {
  --index: 258;
}
.square:nth-of-type(258) .border-top {
  --random: 0.2407081701;
}
.square:nth-of-type(258) .border-right {
  --random: 0.3905255687;
}
.square:nth-of-type(258) .border-bottom {
  --random: 0.8623003738;
}
.square:nth-of-type(258) .border-left {
  --random: 0.3657384367;
}
.square:nth-of-type(259) {
  --index: 259;
}
.square:nth-of-type(259) .border-top {
  --random: 0.7611102352;
}
.square:nth-of-type(259) .border-right {
  --random: 0.2634855721;
}
.square:nth-of-type(259) .border-bottom {
  --random: 0.0554219531;
}
.square:nth-of-type(259) .border-left {
  --random: 0.1309266331;
}
.square:nth-of-type(260) {
  --index: 260;
}
.square:nth-of-type(260) .border-top {
  --random: 0.8449798881;
}
.square:nth-of-type(260) .border-right {
  --random: 0.8794946645;
}
.square:nth-of-type(260) .border-bottom {
  --random: 0.4398875015;
}
.square:nth-of-type(260) .border-left {
  --random: 0.1960239325;
}
.square:nth-of-type(261) {
  --index: 261;
}
.square:nth-of-type(261) .border-top {
  --random: 0.29769108;
}
.square:nth-of-type(261) .border-right {
  --random: 0.7239638593;
}
.square:nth-of-type(261) .border-bottom {
  --random: 0.5876416175;
}
.square:nth-of-type(261) .border-left {
  --random: 0.2257888826;
}
.square:nth-of-type(262) {
  --index: 262;
}
.square:nth-of-type(262) .border-top {
  --random: 0.865530408;
}
.square:nth-of-type(262) .border-right {
  --random: 0.2125408619;
}
.square:nth-of-type(262) .border-bottom {
  --random: 0.7727227967;
}
.square:nth-of-type(262) .border-left {
  --random: 0.0009018651;
}
.square:nth-of-type(263) {
  --index: 263;
}
.square:nth-of-type(263) .border-top {
  --random: 0.4659926774;
}
.square:nth-of-type(263) .border-right {
  --random: 0.9381611135;
}
.square:nth-of-type(263) .border-bottom {
  --random: 0.9752473895;
}
.square:nth-of-type(263) .border-left {
  --random: 0.9201688468;
}
.square:nth-of-type(264) {
  --index: 264;
}
.square:nth-of-type(264) .border-top {
  --random: 0.0248809117;
}
.square:nth-of-type(264) .border-right {
  --random: 0.313658142;
}
.square:nth-of-type(264) .border-bottom {
  --random: 0.9350803526;
}
.square:nth-of-type(264) .border-left {
  --random: 0.7991321422;
}
.square:nth-of-type(265) {
  --index: 265;
}
.square:nth-of-type(265) .border-top {
  --random: 0.2124349763;
}
.square:nth-of-type(265) .border-right {
  --random: 0.9321833453;
}
.square:nth-of-type(265) .border-bottom {
  --random: 0.2868385362;
}
.square:nth-of-type(265) .border-left {
  --random: 0.1004532774;
}
.square:nth-of-type(266) {
  --index: 266;
}
.square:nth-of-type(266) .border-top {
  --random: 0.5681122;
}
.square:nth-of-type(266) .border-right {
  --random: 0.2823509377;
}
.square:nth-of-type(266) .border-bottom {
  --random: 0.5063619145;
}
.square:nth-of-type(266) .border-left {
  --random: 0.8394746358;
}
.square:nth-of-type(267) {
  --index: 267;
}
.square:nth-of-type(267) .border-top {
  --random: 0.099465014;
}
.square:nth-of-type(267) .border-right {
  --random: 0.2291532724;
}
.square:nth-of-type(267) .border-bottom {
  --random: 0.7481179617;
}
.square:nth-of-type(267) .border-left {
  --random: 0.972495766;
}
.square:nth-of-type(268) {
  --index: 268;
}
.square:nth-of-type(268) .border-top {
  --random: 0.5067356122;
}
.square:nth-of-type(268) .border-right {
  --random: 0.972796004;
}
.square:nth-of-type(268) .border-bottom {
  --random: 0.0542409389;
}
.square:nth-of-type(268) .border-left {
  --random: 0.0380008408;
}
.square:nth-of-type(269) {
  --index: 269;
}
.square:nth-of-type(269) .border-top {
  --random: 0.8087103839;
}
.square:nth-of-type(269) .border-right {
  --random: 0.3044001036;
}
.square:nth-of-type(269) .border-bottom {
  --random: 0.6774480867;
}
.square:nth-of-type(269) .border-left {
  --random: 0.5499500985;
}
.square:nth-of-type(270) {
  --index: 270;
}
.square:nth-of-type(270) .border-top {
  --random: 0.0051824752;
}
.square:nth-of-type(270) .border-right {
  --random: 0.5453118901;
}
.square:nth-of-type(270) .border-bottom {
  --random: 0.5476099353;
}
.square:nth-of-type(270) .border-left {
  --random: 0.472166089;
}
.square:nth-of-type(271) {
  --index: 271;
}
.square:nth-of-type(271) .border-top {
  --random: 0.5303869035;
}
.square:nth-of-type(271) .border-right {
  --random: 0.7968570344;
}
.square:nth-of-type(271) .border-bottom {
  --random: 0.4770235294;
}
.square:nth-of-type(271) .border-left {
  --random: 0.1712320379;
}
.square:nth-of-type(272) {
  --index: 272;
}
.square:nth-of-type(272) .border-top {
  --random: 0.4941617115;
}
.square:nth-of-type(272) .border-right {
  --random: 0.4084274053;
}
.square:nth-of-type(272) .border-bottom {
  --random: 0.5530970255;
}
.square:nth-of-type(272) .border-left {
  --random: 0.2936476117;
}
.square:nth-of-type(273) {
  --index: 273;
}
.square:nth-of-type(273) .border-top {
  --random: 0.4632483544;
}
.square:nth-of-type(273) .border-right {
  --random: 0.2742771339;
}
.square:nth-of-type(273) .border-bottom {
  --random: 0.8220073139;
}
.square:nth-of-type(273) .border-left {
  --random: 0.5806527852;
}
.square:nth-of-type(274) {
  --index: 274;
}
.square:nth-of-type(274) .border-top {
  --random: 0.666077199;
}
.square:nth-of-type(274) .border-right {
  --random: 0.4328087189;
}
.square:nth-of-type(274) .border-bottom {
  --random: 0.2804076575;
}
.square:nth-of-type(274) .border-left {
  --random: 0.9741189021;
}
.square:nth-of-type(275) {
  --index: 275;
}
.square:nth-of-type(275) .border-top {
  --random: 0.2398200578;
}
.square:nth-of-type(275) .border-right {
  --random: 0.3583326059;
}
.square:nth-of-type(275) .border-bottom {
  --random: 0.6329033543;
}
.square:nth-of-type(275) .border-left {
  --random: 0.4212576192;
}
.square:nth-of-type(276) {
  --index: 276;
}
.square:nth-of-type(276) .border-top {
  --random: 0.5715233938;
}
.square:nth-of-type(276) .border-right {
  --random: 0.2286080595;
}
.square:nth-of-type(276) .border-bottom {
  --random: 0.2983638466;
}
.square:nth-of-type(276) .border-left {
  --random: 0.7804312211;
}
.square:nth-of-type(277) {
  --index: 277;
}
.square:nth-of-type(277) .border-top {
  --random: 0.616294994;
}
.square:nth-of-type(277) .border-right {
  --random: 0.3153718282;
}
.square:nth-of-type(277) .border-bottom {
  --random: 0.7214436796;
}
.square:nth-of-type(277) .border-left {
  --random: 0.8707408304;
}
.square:nth-of-type(278) {
  --index: 278;
}
.square:nth-of-type(278) .border-top {
  --random: 0.5990513871;
}
.square:nth-of-type(278) .border-right {
  --random: 0.7848933158;
}
.square:nth-of-type(278) .border-bottom {
  --random: 0.2256937161;
}
.square:nth-of-type(278) .border-left {
  --random: 0.295974168;
}
.square:nth-of-type(279) {
  --index: 279;
}
.square:nth-of-type(279) .border-top {
  --random: 0.8780638828;
}
.square:nth-of-type(279) .border-right {
  --random: 0.6295444558;
}
.square:nth-of-type(279) .border-bottom {
  --random: 0.7253336297;
}
.square:nth-of-type(279) .border-left {
  --random: 0.8833126329;
}
.square:nth-of-type(280) {
  --index: 280;
}
.square:nth-of-type(280) .border-top {
  --random: 0.2570488532;
}
.square:nth-of-type(280) .border-right {
  --random: 0.6527763389;
}
.square:nth-of-type(280) .border-bottom {
  --random: 0.1199631704;
}
.square:nth-of-type(280) .border-left {
  --random: 0.5875898402;
}
.square:nth-of-type(281) {
  --index: 281;
}
.square:nth-of-type(281) .border-top {
  --random: 0.6890959591;
}
.square:nth-of-type(281) .border-right {
  --random: 0.8594741234;
}
.square:nth-of-type(281) .border-bottom {
  --random: 0.5809892252;
}
.square:nth-of-type(281) .border-left {
  --random: 0.9149707053;
}
.square:nth-of-type(282) {
  --index: 282;
}
.square:nth-of-type(282) .border-top {
  --random: 0.7283795499;
}
.square:nth-of-type(282) .border-right {
  --random: 0.1243676349;
}
.square:nth-of-type(282) .border-bottom {
  --random: 0.4944087901;
}
.square:nth-of-type(282) .border-left {
  --random: 0.9913710312;
}
.square:nth-of-type(283) {
  --index: 283;
}
.square:nth-of-type(283) .border-top {
  --random: 0.1131875991;
}
.square:nth-of-type(283) .border-right {
  --random: 0.6220216491;
}
.square:nth-of-type(283) .border-bottom {
  --random: 0.1992798212;
}
.square:nth-of-type(283) .border-left {
  --random: 0.6026758715;
}
.square:nth-of-type(284) {
  --index: 284;
}
.square:nth-of-type(284) .border-top {
  --random: 0.1836341669;
}
.square:nth-of-type(284) .border-right {
  --random: 0.0834440227;
}
.square:nth-of-type(284) .border-bottom {
  --random: 0.8967606434;
}
.square:nth-of-type(284) .border-left {
  --random: 0.6854287636;
}
.square:nth-of-type(285) {
  --index: 285;
}
.square:nth-of-type(285) .border-top {
  --random: 0.3520344436;
}
.square:nth-of-type(285) .border-right {
  --random: 0.390741592;
}
.square:nth-of-type(285) .border-bottom {
  --random: 0.5564202313;
}
.square:nth-of-type(285) .border-left {
  --random: 0.4388574734;
}
.square:nth-of-type(286) {
  --index: 286;
}
.square:nth-of-type(286) .border-top {
  --random: 0.2957901087;
}
.square:nth-of-type(286) .border-right {
  --random: 0.2184663214;
}
.square:nth-of-type(286) .border-bottom {
  --random: 0.0198766392;
}
.square:nth-of-type(286) .border-left {
  --random: 0.4053038642;
}
.square:nth-of-type(287) {
  --index: 287;
}
.square:nth-of-type(287) .border-top {
  --random: 0.796746275;
}
.square:nth-of-type(287) .border-right {
  --random: 0.8948018353;
}
.square:nth-of-type(287) .border-bottom {
  --random: 0.7977369915;
}
.square:nth-of-type(287) .border-left {
  --random: 0.3959704861;
}
.square:nth-of-type(288) {
  --index: 288;
}
.square:nth-of-type(288) .border-top {
  --random: 0.281551931;
}
.square:nth-of-type(288) .border-right {
  --random: 0.909478894;
}
.square:nth-of-type(288) .border-bottom {
  --random: 0.3165000407;
}
.square:nth-of-type(288) .border-left {
  --random: 0.7752585805;
}
.square:nth-of-type(289) {
  --index: 289;
}
.square:nth-of-type(289) .border-top {
  --random: 0.6004584479;
}
.square:nth-of-type(289) .border-right {
  --random: 0.7156583738;
}
.square:nth-of-type(289) .border-bottom {
  --random: 0.6766661906;
}
.square:nth-of-type(289) .border-left {
  --random: 0.1078172632;
}
.square:nth-of-type(290) {
  --index: 290;
}
.square:nth-of-type(290) .border-top {
  --random: 0.8287365265;
}
.square:nth-of-type(290) .border-right {
  --random: 0.2876522149;
}
.square:nth-of-type(290) .border-bottom {
  --random: 0.4287823798;
}
.square:nth-of-type(290) .border-left {
  --random: 0.8805659518;
}
.square:nth-of-type(291) {
  --index: 291;
}
.square:nth-of-type(291) .border-top {
  --random: 0.9317946673;
}
.square:nth-of-type(291) .border-right {
  --random: 0.4917454277;
}
.square:nth-of-type(291) .border-bottom {
  --random: 0.9216197614;
}
.square:nth-of-type(291) .border-left {
  --random: 0.6113118819;
}
.square:nth-of-type(292) {
  --index: 292;
}
.square:nth-of-type(292) .border-top {
  --random: 0.05358112;
}
.square:nth-of-type(292) .border-right {
  --random: 0.5361016842;
}
.square:nth-of-type(292) .border-bottom {
  --random: 0.9007368721;
}
.square:nth-of-type(292) .border-left {
  --random: 0.6137868638;
}
.square:nth-of-type(293) {
  --index: 293;
}
.square:nth-of-type(293) .border-top {
  --random: 0.9840970423;
}
.square:nth-of-type(293) .border-right {
  --random: 0.4882111002;
}
.square:nth-of-type(293) .border-bottom {
  --random: 0.9441872686;
}
.square:nth-of-type(293) .border-left {
  --random: 0.9103422503;
}
.square:nth-of-type(294) {
  --index: 294;
}
.square:nth-of-type(294) .border-top {
  --random: 0.3079592919;
}
.square:nth-of-type(294) .border-right {
  --random: 0.9765808536;
}
.square:nth-of-type(294) .border-bottom {
  --random: 0.903073487;
}
.square:nth-of-type(294) .border-left {
  --random: 0.5913641672;
}
.square:nth-of-type(295) {
  --index: 295;
}
.square:nth-of-type(295) .border-top {
  --random: 0.6308448971;
}
.square:nth-of-type(295) .border-right {
  --random: 0.4304126299;
}
.square:nth-of-type(295) .border-bottom {
  --random: 0.7234682422;
}
.square:nth-of-type(295) .border-left {
  --random: 0.5410594561;
}
.square:nth-of-type(296) {
  --index: 296;
}
.square:nth-of-type(296) .border-top {
  --random: 0.8937771126;
}
.square:nth-of-type(296) .border-right {
  --random: 0.2638496101;
}
.square:nth-of-type(296) .border-bottom {
  --random: 0.5459709211;
}
.square:nth-of-type(296) .border-left {
  --random: 0.4946672096;
}
.square:nth-of-type(297) {
  --index: 297;
}
.square:nth-of-type(297) .border-top {
  --random: 0.3549016531;
}
.square:nth-of-type(297) .border-right {
  --random: 0.8363592981;
}
.square:nth-of-type(297) .border-bottom {
  --random: 0.7174494944;
}
.square:nth-of-type(297) .border-left {
  --random: 0.5642133838;
}
.square:nth-of-type(298) {
  --index: 298;
}
.square:nth-of-type(298) .border-top {
  --random: 0.994735749;
}
.square:nth-of-type(298) .border-right {
  --random: 0.3027749156;
}
.square:nth-of-type(298) .border-bottom {
  --random: 0.9852301394;
}
.square:nth-of-type(298) .border-left {
  --random: 0.4643558573;
}
.square:nth-of-type(299) {
  --index: 299;
}
.square:nth-of-type(299) .border-top {
  --random: 0.1686321374;
}
.square:nth-of-type(299) .border-right {
  --random: 0.4962911579;
}
.square:nth-of-type(299) .border-bottom {
  --random: 0.2307723525;
}
.square:nth-of-type(299) .border-left {
  --random: 0.1931838496;
}
.square:nth-of-type(300) {
  --index: 300;
}
.square:nth-of-type(300) .border-top {
  --random: 0.3433307865;
}
.square:nth-of-type(300) .border-right {
  --random: 0.4873406588;
}
.square:nth-of-type(300) .border-bottom {
  --random: 0.1450501913;
}
.square:nth-of-type(300) .border-left {
  --random: 0.6887975885;
}
.square:first-child .crosshair-top-left {
  opacity: 1;
}
.square .crosshair {
  position: absolute;
  --crosshair-size-final: var(--crosshair-size, 12px);
  height: var(--crosshair-size-final);
  width: var(--crosshair-size-final);
}
.square .crosshair svg {
  width: 100%;
  height: 100%;
  overflow: visible;
  shape-rendering: crispEdges;
}
.square .crosshair svg path {
  transition: fill var(--td) var(--ttf);
}
.square .crosshair-default {
  top: 100%;
  left: 100%;
  translate: -50% -50%;
}
.square .crosshair-top-right {
  top: 0;
  left: 100%;
  --test: calc(((var(--index)) / var(--grid-cols) * -1) + 2);
  --test-2: round(down, var(--test));
  opacity: var(--test-2);
  translate: -50% calc(-50% + 1px);
}
.square .crosshair-bottom-left {
  top: 100%;
  left: 0;
  --test: calc(1 - (mod(var(--index) - 1, var(--grid-cols)) / var(--grid-cols)));
  --test-2: round(down, var(--test));
  opacity: var(--test-2);
  translate: calc(-50% + 1px) -50%;
}
.square .crosshair-top-left {
  top: 0;
  left: 0;
  opacity: 0;
  translate: calc(-50% + 1px) calc(-50% + 1px);
}
.square .crosshair .crosshair-line {
  position: absolute;
  background-color: var(--grid-colour);
}
.square .crosshair .crosshair-line-top {
  bottom: var(--crosshair-gap);
  left: 0;
  width: 1px;
  height: var(--crosshair-line-size);
}
.square .crosshair .crosshair-line-right {
  left: var(--crosshair-gap);
  top: 0;
  width: var(--crosshair-line-size);
  height: 1px;
}
.square .crosshair .crosshair-line-bottom {
  top: var(--crosshair-gap);
  left: 0;
  width: 1px;
  height: var(--crosshair-line-size);
}
.square .crosshair .crosshair-line-left {
  right: var(--crosshair-gap);
  top: 0;
  width: var(--crosshair-line-size);
  height: 1px;
}
.square .border {
  display: block;
  background-color: var(--grid-colour);
  position: absolute;
  --border-gap: 5px;
  --border-size: calc(100% - var(--crosshair-line-size) * 2 - var(--crosshair-gap) * 2 - var(--border-gap) * 2);
  transition: scale 3s 0s, background-color var(--td, 0.2s) var(--ttf, 0.2s);
  transform: translate3d(0, 0, 0);
  transition-delay: calc(var(--random) * var(--animation-duration)) !important;
}
.square .border-top {
  top: 0;
  left: 50%;
  width: var(--border-size);
  height: 1px;
  translate: -50% 0;
  opacity: 0;
  --test: calc(((var(--index)) / var(--grid-cols) * -1) + 2);
  --test-2: round(down, var(--test));
  opacity: var(--test-2);
  transform-origin: left;
}
.square .border-right {
  top: 50%;
  right: 0;
  width: 1px;
  height: var(--border-size);
  translate: 0 -50%;
  transform-origin: top;
}
.square .border-bottom {
  bottom: 0;
  left: 50%;
  width: var(--border-size);
  height: 1px;
  translate: -50% 0;
  transform-origin: right;
}
.square .border-left {
  top: 50%;
  left: 0;
  width: 1px;
  height: var(--border-size);
  translate: 0 -50%;
  --test: calc(1 - (mod(var(--index) - 1, var(--grid-cols)) / var(--grid-cols)));
  --test-2: round(down, var(--test));
  opacity: var(--test-2);
  transform-origin: bottom;
}

.grid-contents {
  display: grid;
  grid-template-columns: repeat(var(--grid-cols), minmax(0, 1fr));
  position: relative;
  transition: opacity 0.5s 0.5s ease-out;
}
.grid-contents > * {
  grid-column: 1/-1;
}
.button {
  --border-colour: currentColor;
  --text-colour: currentColor;
  --bg-colour: transparent;
  --hover-bg-colour: color-mix(in srgb, var(--grey-70) 75%, transparent);
  display: inline-flex;
  gap: 5px;
  align-items: center;
  color: var(--text-colour);
  outline: 1px solid var(--border-colour);
  outline-offset: -1px;
  padding: 10px 20px;
  cursor: pointer;
  line-height: 1;
  text-box: trim-both cap alphabetic;
  letter-spacing: 0.03em;
  font-weight: 500;
  background-color: var(--bg-colour);
  text-align: center;
  min-width: 140px;
  text-align: center;
  justify-content: center;
  transition-duration: 0.2s;
  transition-property: background-color;
}
.button:hover {
  background-color: var(--hover-bg-colour);
  border-color: var(--hover-border-colour, var(--border-colour));
}
.button:has(svg) {
  padding-right: 15px;
}
.button .label {
  text-box: trim-both cap alphabetic;
}
.button svg,
.button img {
  display: block;
  height: 20px;
  width: auto;
}
.button svg path,
.button img path {
  stroke: currentColor;
}
.button--caps {
  text-transform: uppercase;
}
.button--dark-green {
  --bg-colour: color-mix(in srgb, var(--dark-green) 80%, transparent);
  --hover-bg-colour: var(--dark-green);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}
.button--red, body[data-bg-colour=white] .double-image-blocks-section[data-section-bg-colour=white] .button {
  --bg-colour: var(--red);
  --border-colour: var(--red);
  --text-colour: var(--white);
  --hover-bg-colour: color-mix(in srgb, var(--red) 80%, black);
  --hover-border-colour: var(--hover-bg-colour);
}

.cards-section {
  margin-block: var(--spacing-4xl);
}
.cards-section--set-colours .page-cards .page-card:nth-of-type(odd) {
  --card-colour: var(--red);
}
.cards-section.trigger .card {
  opacity: 0;
  translate: 0 20px;
  transition: opacity var(--td-xl), translate var(--td-xl);
}
.cards-section.trigger .card:nth-of-type(1) {
  transition-delay: 0s;
}
.cards-section.trigger .card:nth-of-type(2) {
  transition-delay: 0.2s;
}
.cards-section.trigger .card:nth-of-type(3) {
  transition-delay: 0.4s;
}
.cards-section.trigger .card:nth-of-type(4) {
  transition-delay: 0.6s;
}
.cards-section.trigger .card:nth-of-type(5) {
  transition-delay: 0.8s;
}
.cards-section.trigger .card:nth-of-type(6) {
  transition-delay: 1s;
}
.cards-section.trigger .card:nth-of-type(7) {
  transition-delay: 1.2s;
}
.cards-section.trigger .card:nth-of-type(8) {
  transition-delay: 1.4s;
}
.cards-section.trigger .card:nth-of-type(9) {
  transition-delay: 1.6s;
}
.cards-section.trigger .card:nth-of-type(10) {
  transition-delay: 1.8s;
}
.cards-section.in-view .card {
  opacity: 1;
  translate: 0;
}

.page-cards {
  display: grid;
  gap: var(--gutter);
  width: 100%;
}
@media (min-width: 768px) {
  .page-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media (min-width: 992px) {
  .page-cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
.page-cards .page-card {
  background-color: var(--card-colour, white);
}
.page-cards .page-card--dark-green {
  --card-colour: var(--dark-green);
  color: var(--white);
}
.page-cards .page-card--grey-70 {
  --card-colour: var(--grey-70);
  color: var(--black);
}
.page-cards .page-card--red {
  --card-colour: var(--red);
  --crosshair-colour: var(--white);
}
.page-cards .page-card--light-grey {
  --card-colour: var(--light-grey);
  color: var(--black);
}
.page-cards .page-card--white {
  --card-colour: var(--white);
  color: var(--black);
}
.page-cards .img-block {
  width: 100%;
  aspect-ratio: 1.7;
}
@media (min-width: 768px) {
  .page-cards .img-block {
    aspect-ratio: 2;
  }
}
.page-cards .content-block {
  padding: 35px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 30px;
}
@media (min-width: 768px) {
  .page-cards .content-block {
    padding: var(--spacing-xl);
  }
}
.page-cards .content-top {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-m);
}
.page-cards .card-heading {
  display: flex;
  align-items: center;
  gap: var(--spacing-s);
}
.page-cards .card-heading svg {
  width: 25px;
}
.page-cards .card-heading svg path {
  fill: var(--crosshair-colour, var(--red));
}
.page-cards .card-snippet {
  text-transform: none;
}
.page-cards .button {
  --hover-bg-colour: color-mix(in srgb, var(--card-colour) 90%, black);
}

.banner-video {
  height: 100svh;
  position: relative;
}
.banner-video .video-wrapper {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: var(--black);
}
.banner-video .video-wrapper::after {
  content: "";
  display: block;
  width: 100%;
  height: calc(var(--header-height) * 2);
  background: linear-gradient(to bottom, var(--dark-green) 0%, transparent 100%);
  mix-blend-mode: multiply;
  position: relative;
}
.banner-video .video-button {
  --border-colour: var(--grey);
  --text-colour: var(--white);
  position: absolute;
  right: var(--gutter);
  bottom: 40px;
  display: grid;
}
@media (min-width: 768px) {
  .banner-video .video-button {
    right: clamp(30px, 65 / 1140 * var(--container-width), 65px);
    bottom: clamp(30px, 65 / 1140 * var(--container-width), 65px);
  }
}
.banner-video .video-button span {
  grid-area: 1/1/1/1;
}
.banner-video[data-playing=true] .video-button .play {
  visibility: hidden;
}
.banner-video[data-playing=false] .video-button .pause {
  visibility: hidden;
}

.home-intro {
  margin-bottom: var(--spacing-4xl);
  overflow-x: clip;
}
.home-intro .home-intro-top {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, transparent 100%);
  position: relative;
}
.home-intro .home-intro-top::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, transparent 100%);
}
.home-intro .home-intro-top-inner {
  padding-top: var(--spacing-5xl);
  padding-bottom: var(--spacing-4xl);
  text-align: center;
  position: relative;
}
.home-intro .square-grid-container {
  top: var(--gutter);
  height: 120%;
  z-index: -1;
  width: 90%;
  left: 50%;
  translate: -50% 0;
}
@media (min-width: 768px) {
  .home-intro .square-grid-container {
    width: var(--wide-container-width);
  }
}
.home-intro .square-grid-container .square-grid {
  --opacity: 0.1;
}
.home-intro .square-grid-container .grid-contents {
  height: 100%;
}
.home-intro .home-intro-cards-section {
  max-width: var(--container-width);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xl);
  align-items: center;
}
@media (min-width: 768px) {
  .home-intro .home-intro-cards-section {
    max-width: var(--wide-container-width);
  }
}
.home-intro .cards-heading {
  text-align: center;
}
.home-intro.trigger .home-intro-heading .text-part {
  opacity: 0;
  transition: opacity var(--td-l);
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(1) {
  transition-delay: 1s;
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(2) {
  transition-delay: 1.5s;
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(3) {
  transition-delay: 2s;
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(4) {
  transition-delay: 2.5s;
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(5) {
  transition-delay: 3s;
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(6) {
  transition-delay: 3.5s;
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(7) {
  transition-delay: 4s;
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(8) {
  transition-delay: 4.5s;
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(9) {
  transition-delay: 5s;
}
.home-intro.trigger .home-intro-heading .text-part:nth-of-type(10) {
  transition-delay: 5.5s;
}
.home-intro.trigger .cards-heading {
  opacity: 0;
  transition: opacity var(--td-l);
  transition-delay: 2.4s;
}
.home-intro.trigger .page-card {
  opacity: 0;
  translate: 0 50px;
  transition: opacity var(--td-l), translate var(--td-l);
}
.home-intro.trigger .page-card:nth-child(1) {
  transition-delay: 3s;
}
.home-intro.trigger .page-card:nth-child(2) {
  transition-delay: 3.2s;
}
.home-intro.trigger .page-card:nth-child(3) {
  transition-delay: 3.4s;
}
.home-intro.trigger .page-card:nth-child(4) {
  transition-delay: 3.6s;
}
.home-intro.trigger .page-card:nth-child(5) {
  transition-delay: 3.8s;
}
.home-intro.trigger .page-card:nth-child(6) {
  transition-delay: 4s;
}
.home-intro.trigger .page-card:nth-child(7) {
  transition-delay: 4.2s;
}
.home-intro.trigger .page-card:nth-child(8) {
  transition-delay: 4.4s;
}
.home-intro.trigger .page-card:nth-child(9) {
  transition-delay: 4.6s;
}
.home-intro.trigger .page-card:nth-child(10) {
  transition-delay: 4.8s;
}
.home-intro.in-view .square-grid {
  opacity: 1;
}
.home-intro.in-view .home-intro-heading .text-part {
  opacity: 1;
}
.home-intro.in-view .cards-heading {
  opacity: 1;
}
.home-intro.in-view .page-card {
  opacity: 1;
  translate: 0 0;
}

.double-image-blocks-section {
  margin-block: var(--spacing-4xl);
}
.double-image-blocks-section .double-image-blocks-section-inner {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .double-image-blocks-section .double-image-blocks-section-inner {
    gap: clamp(40px, 100 / 1140 * var(--container-width), 100px);
  }
}
@media (min-width: 768px) {
  .double-image-blocks-section--left .double-image-block:nth-of-type(even) {
    flex-direction: row-reverse;
  }
}
@media (min-width: 768px) {
  .double-image-blocks-section--right .double-image-block:nth-of-type(odd) {
    flex-direction: row-reverse;
  }
}
.double-image-blocks-section .square-border {
  --grid-colour: var(--grey);
}

body[data-bg-colour=white] .double-image-blocks-section[data-section-bg-colour=white] .floating-crosshair svg path {
  fill: var(--red);
}
.double-image-block {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .double-image-block {
    flex-direction: row;
    gap: 60px;
    align-items: center;
  }
}
@media (min-width: 992px) {
  .double-image-block {
    gap: clamp(60px, 150 / 1140 * var(--container-width), 150px);
  }
}
.double-image-block .images-block {
  aspect-ratio: 1.23;
  width: calc(100% - 20px);
  position: relative;
}
@media (min-width: 768px) {
  .double-image-block .images-block {
    flex: 0 0 45%;
    width: unset;
  }
}
@media (min-width: 992px) {
  .double-image-block .images-block {
    flex-basis: 49%;
  }
}
.double-image-block .image-large {
  width: 80%;
  aspect-ratio: 1.45;
  position: absolute;
  top: 0;
  left: 0;
}
.double-image-block .image-large-inner {
  width: 100%;
  height: 100%;
}
.double-image-block .image-large-inner:not(:has(img)) {
  background-color: var(--neutral-7);
}
.double-image-block .image-small {
  width: 44%;
  aspect-ratio: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.double-image-block .image-smaller-inner {
  width: min(100% - 20px, 85%);
  aspect-ratio: 1;
}
.double-image-block .image-smaller-inner:not(:has(img)) {
  background-color: var(--neutral-7);
}
.double-image-block .floating-crosshair {
  position: absolute;
  width: 22%;
  top: 100%;
  left: 30%;
  translate: -50% -30%;
}
.double-image-block .floating-crosshair svg {
  width: 100%;
}
.double-image-block .floating-crosshair svg path {
  fill: var(--page-theme-accent, var(--red));
  transition: fill 0.5s ease-in-out;
}
.double-image-block .content-block {
  display: flex;
}
.double-image-block .content-block-inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: flex-start;
}
.double-image-block .content-block-top {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.double-image-block .buttons {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--spacing-s);
}
.double-image-block .square .crosshair {
  --crosshair-size: 20px;
}
.double-image-block--square-top-right .image-large {
  top: unset;
  bottom: 0;
}
.double-image-block--square-top-right .image-small {
  bottom: unset;
  top: 0;
}
.double-image-block--square-top-right .floating-crosshair {
  top: unset;
  left: 40%;
  bottom: 100%;
  translate: -50% 20%;
}

.text-exploding-images {
  margin-block: var(--spacing-4xl);
  overflow: hidden;
}
.text-exploding-images .text-exploding-images-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 65px;
}
@media (min-width: 768px) {
  .text-exploding-images .text-exploding-images-inner {
    position: relative;
    max-width: 1500px;
    margin-inline: auto;
    padding-block: 9%;
  }
}
.text-exploding-images .content-block {
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  gap: 35px;
  text-align: center;
  max-width: 300px;
}
@media (min-width: 768px) {
  .text-exploding-images .content-block {
    max-width: clamp(300px, 520 / 1140 * var(--container-width), 520px);
    gap: clamp(35px, 40 / 1140 * var(--container-width), 40px);
  }
}
@media (min-width: 768px) {
  .text-exploding-images .content-block .text {
    max-width: 20em;
    font-size: var(--text-size-l);
  }
}
@media (min-width: 768px) {
  .text-exploding-images .styled-text {
    font-size: var(--text-size-3xl);
  }
}
.text-exploding-images .images-block {
  width: 100%;
  aspect-ratio: 1.44;
  position: relative;
  max-width: var(--container-width);
}
@media (min-width: 768px) {
  .text-exploding-images .images-block {
    aspect-ratio: unset;
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    max-width: unset;
    pointer-events: none;
  }
}
.text-exploding-images .image-item {
  position: absolute;
}
.text-exploding-images .image-item .floating-crosshair {
  display: none;
  position: absolute;
}
.text-exploding-images .image-item:nth-of-type(1) {
  width: 56%;
  aspect-ratio: 1.25;
  top: 0;
  right: 0;
  z-index: 3;
}
@media (min-width: 768px) {
  .text-exploding-images .image-item:nth-of-type(1) {
    width: 27%;
    z-index: 1;
    translate: 10% 0;
  }
}
.text-exploding-images .image-item:nth-of-type(2) {
  width: 46%;
  aspect-ratio: 1.14;
  bottom: 15%;
  left: 0;
  z-index: 2;
}
@media (min-width: 768px) {
  .text-exploding-images .image-item:nth-of-type(2) {
    width: 27%;
    bottom: 12%;
    translate: -15% 0;
  }
}
.text-exploding-images .image-item:nth-of-type(2) .floating-crosshair {
  width: 24%;
  display: block;
  bottom: 100%;
  left: 60%;
  translate: -50% 20%;
}
@media (min-width: 768px) {
  .text-exploding-images .image-item:nth-of-type(2) .floating-crosshair {
    width: 15%;
    left: 80%;
  }
}
.text-exploding-images .image-item:nth-of-type(2) .floating-crosshair svg {
  width: 100%;
}
.text-exploding-images .image-item:nth-of-type(2) .floating-crosshair svg path {
  fill: var(--red);
}
.text-exploding-images .image-item:nth-of-type(3) {
  width: 38%;
  aspect-ratio: 1.26;
  bottom: 0;
  right: 9%;
  z-index: 1;
}
@media (min-width: 768px) {
  .text-exploding-images .image-item:nth-of-type(3) {
    width: 19%;
    bottom: unset;
    top: 33%;
    right: 2.5%;
    z-index: 3;
  }
}

body.page-template-page-people .grid-backed-text-panel .styled-text .text-part--default {
  color: var(--white);
}
body.page-template-page-people .grid-backed-text-panel .styled-text .text-part--accent {
  color: var(--dark-green);
}

.grid-backed-text-panel {
  margin-top: var(--spacing-4xl);
  margin-bottom: 100px;
  overflow-x: clip;
}
.grid-backed-text-panel .grid-backed-text-panel-inner {
  max-width: var(--wide-container-width);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .grid-backed-text-panel .grid-backed-text-panel-inner {
    --grid-cols: 8;
  }
}
@media (min-width: 992px) {
  .grid-backed-text-panel .grid-backed-text-panel-inner {
    --grid-cols: 12;
  }
}
@media (min-width: 1300px) {
  .grid-backed-text-panel .grid-backed-text-panel-inner {
    --grid-cols: 12;
  }
}
.grid-backed-text-panel .grid-contents {
  gap: 50px;
}
@media (min-width: 768px) {
  .grid-backed-text-panel .grid-contents {
    display: grid;
    gap: unset;
    padding-block: clamp(50px, 80 / 1140 * var(--container-width), 80px);
    align-content: center;
  }
}
.grid-backed-text-panel .styled-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .grid-backed-text-panel .styled-text .text-part--default {
    margin-left: var(--square-size, calc(100% / var(--grid-cols)));
  }
}
.grid-backed-text-panel .contents-intro {
  display: flex;
  flex-direction: column;
  gap: 25px;
  max-width: 300px;
}
@media (min-width: 768px) {
  .grid-backed-text-panel .contents-intro {
    --col-span: calc(var(--grid-cols) / 2);
    grid-column: 1/span var(--col-span);
    max-width: unset;
    gap: clamp(25px, 60 / 1140 * var(--container-width), 60px);
    justify-content: center;
  }
}
@media (min-width: 992px) {
  .grid-backed-text-panel .contents-intro {
    grid-column: 2/span var(--col-span);
  }
}
.grid-backed-text-panel .intro-block {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 768px) {
  .grid-backed-text-panel .intro-block {
    max-width: min(26em, 85%);
  }
}
.grid-backed-text-panel .floating-crosshair svg {
  width: 25px;
}
.grid-backed-text-panel .floating-crosshair svg path {
  fill: var(--red);
}
.grid-backed-text-panel .text-blocks {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .grid-backed-text-panel .text-blocks {
    --col-span: calc(var(--grid-cols) / 3);
    grid-column: calc(-1 - var(--col-span))/span var(--col-span);
    gap: clamp(40px, 50 / 1140 * var(--container-width), 50px);
    justify-content: center;
  }
}
.grid-backed-text-panel .text-block {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
@media (min-width: 768px) {
  .grid-backed-text-panel .text-block {
    max-width: calc(var(--square-size) * 3);
    gap: clamp(15px, 20 / 1140 * var(--container-width), 20px);
  }
}
@media (min-width: 768px) {
  .grid-backed-text-panel .text-block:nth-of-type(even) {
    margin-left: calc(var(--square-size) / 2);
  }
}
.grid-backed-text-panel.trigger .text-panel-heading {
  --delay: 0.5s;
}
.grid-backed-text-panel.trigger .text-panel-heading .text-part {
  opacity: 0;
  transition: opacity var(--td-xl), translate var(--td-xl);
  transition-delay: var(--delay);
}
.grid-backed-text-panel.trigger .text-panel-heading .text-part--accent {
  translate: 20px 0;
}
.grid-backed-text-panel.trigger .text-panel-heading .text-part--default {
  translate: -20px 0;
  transition-delay: calc(var(--delay) + 0.3s);
}
.grid-backed-text-panel.trigger .text-block {
  --delay: 1.2s;
  opacity: 0;
  transition: opacity var(--td-xl), translate var(--td-xl);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(odd) {
  translate: 20px 0;
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(even) {
  translate: -20px 0;
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(1) {
  transition-delay: calc(var(--delay) + 0s);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(2) {
  transition-delay: calc(var(--delay) + 0.2s);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(3) {
  transition-delay: calc(var(--delay) + 0.4s);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(4) {
  transition-delay: calc(var(--delay) + 0.6s);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(5) {
  transition-delay: calc(var(--delay) + 0.8s);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(6) {
  transition-delay: calc(var(--delay) + 1s);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(7) {
  transition-delay: calc(var(--delay) + 1.2s);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(8) {
  transition-delay: calc(var(--delay) + 1.4s);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(9) {
  transition-delay: calc(var(--delay) + 1.6s);
}
.grid-backed-text-panel.trigger .text-block:nth-of-type(10) {
  transition-delay: calc(var(--delay) + 1.8s);
}
.grid-backed-text-panel.in-view:has(.loaded) .square-grid {
  opacity: 1;
}
.grid-backed-text-panel.in-view:has(.loaded) .text-panel-heading .text-part {
  opacity: 1;
  translate: 0;
}
.grid-backed-text-panel.in-view:has(.loaded) .text-block {
  opacity: 1;
  translate: 0;
}

.cards {
  display: grid;
  gap: var(--gutter);
  width: 100%;
  max-width: var(--wide-container-width);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media (min-width: 992px) {
  .cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
.cards .img-block {
  width: 100%;
  aspect-ratio: 1.7;
}
@media (min-width: 768px) {
  .cards .img-block {
    aspect-ratio: 2;
  }
}
.cards .card {
  background-color: var(--card-colour, white);
  color: var(--text-colour, var(--black));
  display: flex;
  flex-direction: column;
}
.cards .card:nth-of-type(odd) {
  --card-colour: var(--red);
  --text-colour: var(--white);
}
.cards .card:nth-of-type(even) {
  --card-colour: var(--grey-70);
}
@media (min-width: 768px) and (max-width: 991px) {
  .cards .card:nth-of-type(4n + 3) {
    --card-colour: var(--grey-70);
    --text-colour: var(--black);
  }
  .cards .card:nth-of-type(4n + 4) {
    --card-colour: var(--red);
    --text-colour: var(--white);
  }
}
.cards .content-block {
  padding: 35px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 30px;
  flex: 1;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .cards .content-block {
    padding: var(--spacing-xl);
  }
}
.cards .content-top {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-m);
}
.cards .button {
  --hover-bg-colour: color-mix(in srgb, var(--card-colour) 90%, black);
}

.grid-backed-image-content .grid-backed-image-content-inner {
  max-width: var(--wide-container-width);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .grid-backed-image-content .grid-backed-image-content-inner {
    --grid-cols: 8;
  }
}
@media (min-width: 992px) {
  .grid-backed-image-content .grid-backed-image-content-inner {
    --grid-cols: 10;
  }
}
@media (min-width: 1300px) {
  .grid-backed-image-content .grid-backed-image-content-inner {
    --grid-cols: 12;
  }
}
.grid-backed-image-content .grid-contents {
  grid-auto-rows: max-content;
  row-gap: 35px;
}
@media (min-width: 768px) {
  .grid-backed-image-content .grid-contents {
    grid-auto-rows: unset;
    place-content: center;
  }
}
@media (min-width: 768px) {
  .grid-backed-image-content .image-block {
    grid-column: 1/span calc(var(--grid-cols) / 2);
    padding: clamp(30px, 55 / 1140 * var(--container-width), 55px);
  }
}
@media (min-width: 992px) {
  .grid-backed-image-content .image-block {
    padding-right: 0;
  }
}
.grid-backed-image-content .image-block .media-wrapper {
  width: 100%;
  aspect-ratio: 1.3;
}
@media (min-width: 768px) {
  .grid-backed-image-content .image-block .media-wrapper {
    aspect-ratio: 1.2;
  }
}
.grid-backed-image-content .content-block {
  display: grid;
}
@media (min-width: 768px) {
  .grid-backed-image-content .content-block {
    --grid-half: calc(var(--grid-cols) / 2);
    grid-column: calc(var(--grid-half) + 1)/-1;
    grid-template-columns: subgrid;
    row-gap: clamp(30px, 65 / 1140 * var(--container-width), 65px);
    grid-auto-rows: max-content;
    place-content: center;
  }
}
@media (min-width: 992px) {
  .grid-backed-image-content .content-block {
    grid-column: calc(var(--grid-half) + 2)/-1;
  }
}
.grid-backed-image-content .styled-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .grid-backed-image-content .styled-text {
    grid-column: 1/-1;
    font-size: var(--text-size-3xl);
  }
}
.grid-backed-image-content .styled-text .text-part--accent {
  margin-left: var(--square-size, calc(100% / var(--grid-cols)));
}
@media (min-width: 992px) {
  .grid-backed-image-content .styled-text .text-part--accent {
    margin-left: calc(var(--square-size, calc(100% / var(--grid-cols))) * 1.5);
  }
}
.grid-backed-image-content .button-block {
  display: flex;
  flex-direction: column;
  gap: 25px;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .grid-backed-image-content .button-block {
    grid-column: -4/-1;
    max-width: 240px;
  }
}
.grid-backed-image-content.trigger .image-block {
  opacity: 0;
  transition: opacity var(--td-xl);
  transition-delay: 0.5s;
}
.grid-backed-image-content.trigger .content-heading {
  --delay: 0.8s;
}
.grid-backed-image-content.trigger .content-heading .text-part {
  opacity: 0;
  transition: opacity var(--td-xl), translate var(--td-xl);
  transition-delay: var(--delay);
}
.grid-backed-image-content.trigger .content-heading .text-part--accent {
  translate: 20px 0;
}
.grid-backed-image-content.trigger .content-heading .text-part--default {
  translate: -20px 0;
  transition-delay: calc(var(--delay) + 0.3s);
}
.grid-backed-image-content.trigger .button-block {
  --delay: 1.4s;
}
.grid-backed-image-content.trigger .button-block > * {
  opacity: 0;
  translate: -20px 0;
  transition: opacity var(--td-xl), translate var(--td-xl);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(1) {
  transition-delay: calc(var(--delay) + 0s);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(2) {
  transition-delay: calc(var(--delay) + 0.3s);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(3) {
  transition-delay: calc(var(--delay) + 0.6s);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(4) {
  transition-delay: calc(var(--delay) + 0.9s);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(5) {
  transition-delay: calc(var(--delay) + 1.2s);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(6) {
  transition-delay: calc(var(--delay) + 1.5s);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(7) {
  transition-delay: calc(var(--delay) + 1.8s);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(8) {
  transition-delay: calc(var(--delay) + 2.1s);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(9) {
  transition-delay: calc(var(--delay) + 2.4s);
}
.grid-backed-image-content.trigger .button-block > *:nth-child(10) {
  transition-delay: calc(var(--delay) + 2.7s);
}
.grid-backed-image-content.in-view:has(.loaded) .square-grid {
  opacity: 1;
}
.grid-backed-image-content.in-view:has(.loaded) .image-block {
  opacity: 1;
}
.grid-backed-image-content.in-view:has(.loaded) .content-heading .text-part {
  opacity: 1;
  translate: 0;
}
.grid-backed-image-content.in-view:has(.loaded) .button-block > * {
  opacity: 1;
  translate: 0;
}

.text-stats {
  margin-block: var(--spacing-4xl);
}
.text-stats .text-stats-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
}
@media (min-width: 992px) {
  .text-stats .text-stats-inner {
    gap: clamp(50px, 100 / 1140 * var(--container-width), 100px);
  }
}
.text-stats .text-stats-top {
  display: flex;
  flex-direction: column;
  gap: 35px;
  width: 100%;
}
@media (min-width: 992px) {
  .text-stats .text-stats-top {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: clamp(35px, 60 / 1140 * var(--container-width), 60px);
  }
}
.text-stats .styled-text {
  flex: 1 0 60%;
}
.text-stats .text-box {
  max-width: 400px;
}
.text-stats .text-stats-stats {
  display: flex;
  flex-direction: column;
  gap: 30px;
  width: 100%;
}
@media (min-width: 992px) {
  .text-stats .text-stats-stats {
    flex-direction: row;
    gap: clamp(30px, 50 / 1140 * var(--container-width), 50px);
  }
  .text-stats .text-stats-stats > * {
    flex: 1 1 auto;
  }
}
.text-stats .stat-block {
  display: flex;
  gap: 15px;
  align-items: center;
}
.text-stats .stat-block .stat-data {
  color: var(--page-theme-accent);
}
.text-stats .stat-block .stat-label {
  max-width: 200px;
  text-wrap: balance;
}

.map-section {
  margin-block: 80px;
}
@media (min-width: 768px) {
  .map-section {
    margin-block: var(--spacing-3xl);
  }
}
.map-section .map-section-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
.map-section .styled-text {
  text-align: center;
}
@media (min-width: 768px) {
  .map-section .styled-text {
    display: flex;
    gap: 0.3em;
    justify-content: center;
  }
}
@media (min-width: 768px) {
  .map-section .styled-text .text-part p {
    display: inline-block;
  }
}
.map-section .map {
  width: 100%;
  aspect-ratio: 1;
}
@media (min-width: 768px) {
  .map-section .map {
    aspect-ratio: 1.8;
  }
}

.map-section-v2 {
  margin-block: var(--spacing-4xl);
}
@media (min-width: 768px) {
  .map-section-v2 .map-section-inner {
    max-width: var(--wide-container-width);
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .map-section-v2 .map-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-block: var(--spacing-xl);
  }
}
.map-section-v2 .map {
  aspect-ratio: 0.75;
  max-height: 100svh;
}
@media (min-width: 768px) {
  .map-section-v2 .map {
    width: 90%;
    aspect-ratio: 2.15;
  }
}

.content-image-square {
  margin-block: var(--spacing-4xl);
  overflow: hidden;
}
.content-image-square:has(.larger-text) {
  margin-block: var(--spacing-3xl);
}
.content-image-square .content-image-square-inner {
  display: flex;
  flex-direction: column;
  gap: 80px;
}
.content-image-square .intro-block {
  display: flex;
  flex-direction: column;
  gap: 35px;
  max-width: var(--container-width);
  width: 100%;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .content-image-square .intro-block {
    flex-direction: row;
    justify-content: space-between;
    gap: clamp(30px, 100 / 1140 * var(--container-width), 100px);
  }
}
.content-image-square .intro-block .floating-crosshair {
  display: none;
}
@media (min-width: 768px) {
  .content-image-square .intro-block .floating-crosshair {
    display: block;
  }
}
.content-image-square .intro-block .styled-text {
  display: flex;
  flex-direction: column;
  max-width: 400px;
}
@media (min-width: 768px) {
  .content-image-square .intro-block .styled-text {
    max-width: unset;
  }
}
@media (min-width: 992px) {
  .content-image-square .intro-block .styled-text {
    font-size: var(--text-size-4xl);
  }
}
.content-image-square .intro-block .styled-text .text-part--default {
  align-self: flex-end;
}
@media (min-width: 768px) {
  .content-image-square .intro-block .styled-text .text-part--default {
    align-items: unset;
    margin-left: 0.5em;
  }
}
@media (min-width: 768px) {
  .content-image-square .intro-block .text-box {
    margin-top: clamp(30px, 90 / 1140 * var(--container-width), 90px);
    max-width: unset;
  }
}
@media (min-width: 1300px) {
  .content-image-square .intro-block .text-box {
    flex-direction: row;
  }
}
@media (min-width: 768px) {
  .content-image-square .intro-block .text {
    max-width: 300px;
  }
}
.content-image-square .larger-text {
  font-size: var(--text-size-l);
  text-align: center;
}
@media (min-width: 768px) {
  .content-image-square .larger-text {
    font-size: var(--text-size-ll);
    max-width: 810px;
    margin-inline: auto;
  }
}

.quick-links-section {
  margin-top: 80px;
  margin-bottom: 100px;
}
.quick-links-section .quick-links-section-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
  align-items: center;
}
@media (min-width: 768px) {
  .quick-links-section .quick-links-section-inner {
    gap: clamp(35px, 50 / 1140 * var(--container-width), 50px);
    margin-block: var(--spacing-4xl);
  }
}
.quick-links-section .quick-links-heading {
  text-align: center;
}
.quick-links-section .quick-links {
  display: grid;
  gap: 30px;
  max-width: 300px;
  width: 100%;
}
@media (min-width: 768px) {
  .quick-links-section .quick-links {
    grid-template-columns: repeat(2, 1fr);
    max-width: 650px;
    gap: clamp(25px, 35 / 1140 * var(--container-width), 35px);
  }
}
@media (min-width: 992px) {
  .quick-links-section .quick-links {
    max-width: unset;
    grid-template-columns: repeat(4, 1fr);
  }
}
.quick-links-section .quick-link {
  --td: 0.25s;
  --ttf: ease-in-out;
  width: 100%;
  position: relative;
  padding: 10px;
  display: block;
  color: var(--white);
}
@media (min-width: 768px) {
  .quick-links-section .quick-link {
    padding: clamp(10px, 15 / 1140 * var(--container-width), 15px);
  }
}
.quick-links-section .quick-link:hover .link-bg::after {
  opacity: 0.5;
}
.quick-links-section .quick-link:hover .link-bg img {
  scale: 1.1;
}
.quick-links-section .quick-link:hover .link-content svg path {
  stroke: var(--red);
}
.quick-links-section .quick-link:hover .square-border {
  --grid-colour: var(--red);
}
.quick-links-section .framed-content {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
}
.quick-links-section .square-border {
  --grid-colour: var(--grey);
  --opacity: 1;
}
.quick-links-section .link-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.quick-links-section .link-bg::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--black);
  opacity: 0.2;
  transition: opacity var(--td) var(--ttf);
}
.quick-links-section .link-bg img {
  transition: scale var(--td) var(--ttf);
}
.quick-links-section .link-content {
  position: relative;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
}
.quick-links-section .link-content svg {
  width: 34px;
}
.quick-links-section .link-content svg path {
  transition: stroke var(--td) var(--ttf);
}

.grid-backed-content-button {
  background-color: var(--dark-green);
  color: var(--white);
  --page-grid-colour: var(--white);
  overflow: hidden;
}
.grid-backed-content-button .square-grid {
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  width: 110%;
}
.grid-backed-content-button .grid-contents {
  max-width: 300px;
  margin-inline: auto;
  padding-block: 60px;
  row-gap: 30px;
  place-items: center;
  grid-auto-rows: min-content;
  height: auto !important;
}
@media (min-width: 768px) {
  .grid-backed-content-button .grid-contents {
    max-width: 630px;
    padding-block: var(--spacing-3xl);
  }
}
.grid-backed-content-button .contents-intro {
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  text-align: center;
}

.spec-section {
  margin-block: var(--spacing-4xl);
}
.spec-section .spec-section-inner {
  display: flex;
  flex-direction: column;
  gap: 50px;
  align-items: center;
  text-align: center;
}
@media (min-width: 768px) {
  .spec-section .spec-section-inner {
    gap: clamp(50px, 100 / 1140 * var(--container-width), 100px);
  }
}
.spec-section .spec-items {
  display: grid;
  gap: 50px;
  width: 100%;
  max-width: 400px;
}
@media (min-width: 768px) {
  .spec-section .spec-items {
    grid-template-columns: repeat(2, 1fr);
    max-width: 800px;
    gap: clamp(50px, 60 / 1140 * var(--container-width), 60px);
  }
}
@media (min-width: 1300px) {
  .spec-section .spec-items {
    display: flex;
    max-width: unset;
  }
}
.spec-section .spec-item {
  display: flex;
  flex-direction: column;
  gap: 25px;
  align-items: center;
}
@media (min-width: 1300px) {
  .spec-section .spec-item {
    flex: 1 1 auto;
  }
}
.spec-section .spec-icon svg {
  width: 116px;
}

.image-section {
  overflow-x: clip;
}

.image-with-square {
  --square-height: 40cqh;
  --square-centre-x: 75%;
  --square-centre-y: 55%;
  width: 100%;
  container-type: size;
  aspect-ratio: 1.55;
  position: relative;
}
@media (min-width: 768px) {
  .image-with-square {
    aspect-ratio: 2.1;
    max-height: 100svh;
  }
}
.image-with-square .image-inner {
  --td: 0.8s;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.image-with-square .image-inner.triggered .square-crosshair {
  translate: -50% -50%;
}
.image-with-square .image-inner.triggered .square-outer,
.image-with-square .image-inner.triggered .square-overlay {
  scale: 1;
}
.image-with-square:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--black);
  opacity: 0.1;
}
.image-with-square .square-outer,
.image-with-square .square-overlay {
  position: absolute;
  left: var(--square-centre-x);
  top: var(--square-centre-y);
  translate: -50% -50%;
  height: var(--square-height);
  aspect-ratio: 1;
  z-index: 2;
  transform-origin: bottom right;
  scale: 0;
  transition: scale var(--td);
}
@keyframes square-grow {
  from {
    scale: 0;
  }
  to {
    scale: 1;
  }
}
.image-with-square .square-overlay {
  mix-blend-mode: soft-light;
  background-color: var(--white);
}
.image-with-square .square-outer {
  border: 1px solid var(--white);
}
.image-with-square .square-crosshair {
  position: absolute;
  left: calc(var(--square-centre-x) - var(--square-height) / 2);
  top: calc(var(--square-centre-y) - var(--square-height) / 2);
  translate: calc(var(--square-height) - 50%) calc(var(--square-height) - 50%);
  z-index: 4;
  transition: translate var(--td);
}
.image-with-square .square-crosshair svg {
  width: 35px;
}
@media (min-width: 768px) {
  .image-with-square .square-crosshair svg {
    width: 4.2vw;
  }
}
.image-with-square .square-crosshair svg path {
  fill: var(--white);
}
@keyframes crosshair-move {
  from {
    translate: calc(var(--square-height) - 50%) calc(var(--square-height) - 50%);
  }
  to {
    translate: -50% -50%;
  }
}

.content-stats-and-image-section {
  margin-block: var(--spacing-4xl);
}
@media (min-width: 992px) {
  .content-stats-and-image-section {
    padding-block: var(--spacing-xl);
  }
}
.content-stats-and-image-section .content-stats-and-images {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-3xl);
}
@media (min-width: 768px) {
  .content-stats-and-image-section .content-stats-and-images {
    gap: var(--spacing-4xl);
  }
}
.content-stats-and-image-section .content-stats-and-images--single .image-block .media-wrapper {
  aspect-ratio: 1.4;
}
@media (min-width: 992px) {
  .content-stats-and-image-section .content-stats-and-images--single .image-block .media-wrapper {
    aspect-ratio: 1.3;
  }
}
.content-stats-and-image-section .item {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media (min-width: 992px) {
  .content-stats-and-image-section .item {
    flex-direction: row-reverse;
    gap: unset;
    align-items: center;
  }
}
@media (min-width: 992px) {
  .content-stats-and-image-section .item:nth-of-type(even) {
    flex-direction: row;
  }
}
@media (min-width: 992px) {
  .content-stats-and-image-section .item:nth-of-type(even) .content-block {
    padding-right: 0;
    padding-left: var(--spacing-3xl);
  }
}
.content-stats-and-image-section .item:nth-of-type(even) .floating-crosshair {
  right: unset;
  left: 20%;
  translate: -50% -50%;
}
.content-stats-and-image-section .image-block {
  width: 100%;
  position: relative;
}
@media (min-width: 992px) {
  .content-stats-and-image-section .image-block {
    flex: 0 0 49%;
  }
}
.content-stats-and-image-section .image-block .media-wrapper {
  width: 100%;
  aspect-ratio: 1.4;
}
@media (min-width: 992px) {
  .content-stats-and-image-section .image-block .media-wrapper {
    aspect-ratio: 1.5;
  }
}
.content-stats-and-image-section .floating-crosshair {
  position: absolute;
  top: 0;
  right: 20%;
  translate: 50% -50%;
}
@media (min-width: 992px) {
  .content-stats-and-image-section .floating-crosshair {
    top: 100%;
    right: 0%;
  }
}
@media (min-width: 992px) {
  .content-stats-and-image-section .floating-crosshair--left-top {
    right: unset;
    left: 0;
    top: 35%;
    translate: -70% -50% !important;
  }
}
@media (min-width: 992px) {
  .content-stats-and-image-section .floating-crosshair--top-left {
    right: unset;
    left: 20%;
    top: 0;
    translate: -50% -70% !important;
  }
}
@media (min-width: 992px) {
  .content-stats-and-image-section .floating-crosshair--bottom-right {
    right: 12%;
    left: unset;
    top: unset;
    bottom: 0;
    translate: 50% 50% !important;
  }
}
.content-stats-and-image-section .floating-crosshair svg {
  width: 70px;
}
.content-stats-and-image-section .floating-crosshair svg path {
  fill: var(--page-theme-accent, var(--red));
}
.content-stats-and-image-section .content-block {
  width: 100%;
}
@media (min-width: 992px) {
  .content-stats-and-image-section .content-block {
    flex: 1;
    padding-right: var(--spacing-3xl);
  }
}
.content-stats-and-image-section .content-block-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media (min-width: 768px) {
  .content-stats-and-image-section .content-block-inner {
    gap: clamp(35px, 45 / 1140 * var(--container-width), 45px);
  }
}
.content-stats-and-image-section .content-top {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 992px) {
  .content-stats-and-image-section .content-top {
    gap: clamp(20px, 25 / 1140 * var(--container-width), 25px);
  }
}
.content-stats-and-image-section .top-top {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.content-stats-and-image-section .top-top .logo img {
  width: 120px;
}
@media (min-width: 768px) {
  .content-stats-and-image-section .top-top .logo img {
    width: clamp(120px, 140 / 1140 * var(--container-width), 140px);
  }
}
@media (min-width: 992px) {
  .content-stats-and-image-section .text {
    max-width: 420px;
  }
}
.content-stats-and-image-section .buttons {
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .content-stats-and-image-section .buttons {
    flex-direction: row;
    gap: 10px;
  }
}
.content-stats-and-image-section .content-stats {
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 35px;
  flex-wrap: wrap;
}
@media (min-width: 992px) {
  .content-stats-and-image-section .content-stats {
    flex-wrap: nowrap;
    -moz-column-gap: 25px;
         column-gap: 25px;
  }
}
.content-stats-and-image-section .stat-block {
  max-width: 130px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (min-width: 992px) {
  .content-stats-and-image-section .stat-block {
    flex: 1 1 auto;
    max-width: 140px;
  }
}
.content-stats-and-image-section .stat-heading {
  color: var(--page-theme-accent, var(--red));
}
@media (max-width: 991px) {
  .content-stats-and-image-section--grid-backed .square-grid {
    visibility: hidden;
  }
  .content-stats-and-image-section--grid-backed .grid-contents {
    height: auto !important;
  }
}
@media (min-width: 992px) {
  .content-stats-and-image-section--grid-backed .image-block {
    flex: 0 0 45%;
  }
  .content-stats-and-image-section--grid-backed .square-grid-container {
    --grid-cols: 6;
  }
  .content-stats-and-image-section--grid-backed .square-grid {
    --opacity: 0.5;
  }
  .content-stats-and-image-section--grid-backed .grid-contents {
    align-items: center;
    padding: clamp(30px, 50 / 1140 * var(--container-width), 50px);
  }
  .content-stats-and-image-section--grid-backed .image-container {
    position: relative;
  }
  .content-stats-and-image-section--grid-backed .content-block {
    padding-right: var(--spacing-xl);
  }
}
@media (min-width: 1300px) {
  .content-stats-and-image-section--grid-backed .image-block {
    flex: 0 0 60%;
  }
}

.imploding-stats-section {
  margin-block: var(--spacing-4xl);
}
@media (min-width: 768px) {
  .imploding-stats-section {
    margin-block: var(--spacing-5xl);
  }
}
.imploding-stats-section .imploding-stats-center {
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  text-align: center;
}
.imploding-stats-section .imploding-stats-center .styled-text .text-part {
  display: block;
}
.imploding-stats-section .imploding-stats-center .styled-text .text-part:nth-of-type(1) {
  translate: -20% 0;
}
.imploding-stats-section .imploding-stats-center .styled-text .text-part:nth-of-type(2) {
  translate: 20% 0;
}
.imploding-stats-section .imploding-stats-center .text {
  max-width: 300px;
}
.imploding-stats-section .square-border {
  --grid-colour: var(--grey);
  --opacity: 1;
}
.imploding-stats-section .stat-block {
  position: relative;
}
.imploding-stats-section .stat-block-stat {
  color: var(--dark-green);
}
.imploding-stats-section .stat-block-stat .block-inner {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-align: center;
  background-color: var(--page-theme-colour);
}
.imploding-stats-section .stat-block-stat .description {
  font-size: 10px;
  text-wrap: balance;
  max-width: 80%;
}
@media (min-width: 768px) {
  .imploding-stats-section .stat-block-stat .description {
    font-size: clamp(10px, 13 / 1140 * var(--container-width), 13px);
  }
}
.imploding-stats-section .stat-block-image .block-inner {
  width: 100%;
  height: 100%;
}
.imploding-stats-section .stat-block-image .media-wrapper {
  width: 100%;
  height: 100%;
}
.imploding-stats-section .stat-block--small {
  width: 140px;
  height: 120px;
  padding: 10px;
}
@media (min-width: 768px) {
  .imploding-stats-section .stat-block--small {
    width: clamp(140px, 200 / 1140 * var(--container-width), 200px);
    height: clamp(120px, 170 / 1140 * var(--container-width), 170px);
  }
}
.imploding-stats-section .stat-block--small .styled-text {
  font-size: var(--text-size-ll);
}
@media (min-width: 768px) {
  .imploding-stats-section .stat-block--small .styled-text {
    font-size: clamp(16px, 27 / 1140 * var(--container-width), 27px);
  }
}
.imploding-stats-section .stat-block--large {
  width: 220px;
  height: 190px;
  padding: 15px;
}
@media (min-width: 768px) {
  .imploding-stats-section .stat-block--large {
    width: clamp(220px, 310 / 1140 * var(--container-width), 310px);
    height: clamp(190px, 270 / 1140 * var(--container-width), 270px);
  }
}
@media (min-width: 768px) {
  .imploding-stats-section .stat-block--large .styled-text {
    font-size: var(--text-size-2xl);
  }
}
.imploding-stats-section .stat-block--green .block-inner {
  background-color: var(--dark-green);
  color: var(--white);
}
.imploding-stats-section .stat-block .square {
  aspect-ratio: unset;
  height: 100%;
}

.imploding-stats-section-desktop {
  display: none;
}
@media (min-width: 768px) {
  .imploding-stats-section-desktop {
    display: block;
    height: 200vh;
    position: relative;
  }
}
.imploding-stats-section-desktop .imploding-stats-section-desktop-inner {
  display: flex;
  height: 100vh;
  position: sticky;
  top: 0;
  overflow-x: clip;
}
.imploding-stats-section-desktop .imploding-stats-section-bg {
  position: absolute;
}
.imploding-stats-section-desktop .imploding-stats-section-bg svg {
  width: 100%;
  height: 100%;
}
.imploding-stats-section-desktop .imploding-stats-section-inner {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  margin-inline: auto;
  max-width: 870px;
}
.imploding-stats-section-desktop .square-grid-container {
  width: 100%;
  --opacity: 0.2;
  --grid-cols: 8;
}
@media (min-width: 1300px) {
  .imploding-stats-section-desktop .square-grid-container {
    --grid-cols: 10;
  }
}
.imploding-stats-section-desktop .grid-contents {
  align-items: center;
  grid-auto-rows: auto;
  width: 100%;
}
.imploding-stats-section-desktop .imploding-stats-center {
  width: 100%;
  aspect-ratio: 1.4;
  justify-content: center;
  max-height: 85svh;
}
.imploding-stats-section-desktop .floating-blocks {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.imploding-stats-section-desktop .stat-block {
  position: absolute;
  left: var(--x-pos);
  top: var(--y-pos);
}
.imploding-stats-section-desktop .stat-block--small {
  z-index: 2;
}
.imploding-stats-section-desktop .stat-block-bottom-stat-large {
  z-index: 10;
}

@media (min-width: 768px) {
  .imploding-stats-section-mobile {
    display: none;
  }
}
.imploding-stats-section-mobile .imploding-stats-section-inner {
  display: flex;
  flex-direction: column;
  gap: 55px;
  max-width: 340px;
  margin-inline: auto;
}
.imploding-stats-section-mobile .imploding-stats-top,
.imploding-stats-section-mobile .imploding-stats-bottom {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.imploding-stats-section-mobile .stat-block-top-stat-large {
  margin-left: 10%;
}
.imploding-stats-section-mobile .stat-block-top-stat-small {
  margin-top: -30px;
  align-self: flex-end;
}
.imploding-stats-section-mobile .stat-block-top-image-small {
  margin-top: -70px;
}
.imploding-stats-section-mobile .stat-block-bottom-stat-large {
  z-index: 2;
}
.imploding-stats-section-mobile .stat-block-bottom-image-large {
  margin-top: -60px;
  align-self: flex-end;
}
.imploding-stats-section-mobile .stat-block-bottom-stat-small {
  margin-top: -50px;
  margin-left: 10%;
  width: 140px;
  height: 120px;
  padding: 10px;
}
.imploding-stats-section-mobile .stat-block-bottom-stat-small .styled-text {
  font-size: var(--text-size-ll);
}

.image-text-section {
  margin-block: var(--spacing-3xl);
}
@media (max-width: 767px) {
  .image-text-section .square-grid {
    visibility: hidden;
  }
  .image-text-section .grid-contents {
    height: unset !important;
  }
}
.image-text-section .image-text-section-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media (min-width: 768px) {
  .image-text-section .image-text-section-inner {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}
@media (min-width: 768px) {
  .image-text-section .image-block {
    flex: 0 0 50%;
  }
}
@media (min-width: 992px) {
  .image-text-section .image-block {
    flex: 0 0 60%;
  }
}
.image-text-section .square-grid-container {
  --grid-cols: 6;
  --opacity: 0.4;
}
@media (min-width: 768px) {
  .image-text-section .grid-contents {
    padding: clamp(20px, 50 / 1140 * var(--container-width), 50px);
    grid-auto-rows: max-content;
    place-content: center;
  }
}
.image-text-section .image-container {
  position: relative;
}
.image-text-section .floating-crosshair {
  position: absolute;
  left: 80%;
  top: 0;
  translate: -50% -50%;
}
@media (min-width: 768px) {
  .image-text-section .floating-crosshair {
    left: 0;
  }
}
.image-text-section .floating-crosshair svg {
  width: 70px;
}
@media (min-width: 768px) {
  .image-text-section .floating-crosshair svg {
    width: clamp(70px, 110 / 1140 * var(--container-width), 110px);
  }
}
.image-text-section .floating-crosshair svg path {
  fill: var(--page-theme-accent);
}
.image-text-section .media-wrapper {
  width: 100%;
  aspect-ratio: 1.4;
}
@media (min-width: 768px) {
  .image-text-section .media-wrapper {
    aspect-ratio: 1.65;
  }
}
@media (min-width: 768px) {
  .image-text-section .content-block {
    max-width: clamp(300px, 340 / 1140 * var(--container-width), 340px);
  }
}
.image-text-section .content-block-inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .image-text-section .content-block-inner {
    gap: clamp(30px, 45 / 1140 * var(--container-width), 45px);
  }
}
@media (min-width: 768px) {
  .image-text-section .styled-text {
    font-size: var(--text-size-xxl);
  }
}
.image-text-section .content-top {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.heading-text-section {
  margin-block: var(--spacing-3xl);
}
@media (min-width: 768px) {
  .heading-text-section {
    margin-block: var(--spacing-4xl);
  }
}
.heading-text-section .heading-text-section-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media (min-width: 992px) {
  .heading-text-section .heading-text-section-inner {
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
  }
}
@media (min-width: 992px) {
  .heading-text-section .right-block {
    flex: 0 0 48%;
  }
}
.heading-text-section .styled-text {
  display: flex;
  flex-direction: column;
  max-width: 320px;
}
@media (min-width: 992px) {
  .heading-text-section .styled-text {
    max-width: unset;
  }
}
@media (min-width: 992px) {
  .heading-text-section .styled-text {
    font-size: var(--text-size-3xl);
  }
}
.heading-text-section .styled-text .text-part {
  display: block;
}
.heading-text-section .styled-text .text-part:last-of-type {
  align-self: flex-end;
}
@media (min-width: 768px) {
  .heading-text-section .styled-text .text-part:last-of-type {
    align-items: flex-start;
    margin-left: 2em;
  }
}

.track-record {
  margin-block: var(--spacing-4xl);
}
.track-record .track-record-inner {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
.track-record .track-record-top {
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: center;
  align-items: center;
}
.track-record .expandable-image-container-desktop {
  display: none;
}
@media (min-width: 768px) {
  .track-record .expandable-image-container-desktop {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: clamp(30px, 50 / 1140 * var(--container-width), 50px);
  }
}
.track-record .expandable-image-container-desktop .image-visible {
  width: 100%;
  overflow: hidden;
  height: clamp(200px, 460 / 1140 * var(--container-width), 460px);
  transition: height 0.3s;
}
.track-record .expandable-image-container-desktop .expand-button svg {
  transition: scale 0.3s;
}
.track-record .expandable-image-container-desktop.expanded .image-visible {
  height: auto;
}
.track-record .expandable-image-container-desktop.expanded .expand-button svg {
  scale: 1 -1;
}
@media (min-width: 768px) {
  .track-record .expandable-image-container-mobile {
    display: none;
  }
}

.team-section {
  margin-block: var(--spacing-3xl);
}
@media (min-width: 768px) {
  .team-section {
    margin-block: var(--spacing-4xl);
  }
}
.team-section .team-section-inner {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
@media (min-width: 768px) {
  .team-section .team-section-inner {
    gap: clamp(50px, 100 / 1140 * var(--container-width), 100px);
  }
}
.team-section .team-intro {
  display: flex;
  flex-direction: column;
  text-align: center;
  gap: 20px;
  align-items: center;
}
@media (min-width: 768px) {
  .team-section .team-intro {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }
}
.team-section .team-intro .text-part {
  display: block;
}
@media (min-width: 768px) {
  .team-section .team-intro .text-part:last-of-type {
    margin-left: 1em;
  }
}
@media (min-width: 992px) {
  .team-section .team-intro .text-part:last-of-type {
    margin-left: 2em;
  }
}
.team-section .team-intro .floating-crosshair {
  display: none;
}
@media (min-width: 768px) {
  .team-section .team-intro .floating-crosshair {
    display: block;
  }
}
.team-section .team-members {
  display: grid;
  gap: 30px;
  max-width: 250px;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .team-section .team-members {
    max-width: unset;
    grid-template-columns: repeat(2, 1fr);
    gap: clamp(40px, 60 / 1140 * var(--container-width), 60px);
  }
}
@media (min-width: 992px) {
  .team-section .team-members {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1300px) {
  .team-section .team-members {
    grid-template-columns: repeat(4, 1fr);
  }
}
.team-section .team-member {
  --crosshair-size: 20px;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.team-section .team-member .square-border {
  --grid-colour: var(--darkgreen-50);
  --opacity: 1;
}
.team-section .team-member .team-member-image-wrapper {
  position: relative;
  width: 100%;
  padding: 20px;
}
.team-section .team-member .team-member-image-wrapper .media-wrapper {
  width: 100%;
  aspect-ratio: 1;
}
.team-section .team-member .no-image {
  width: 100%;
  height: 100%;
}
.team-section .team-member .no-image svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.team-section .team-member .team-member-details {
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-weight: 400;
}
.team-section .team-member .team-member-details a {
  color: inherit;
}
.team-section .team-member .name {
  font-weight: 700;
}
.team-section .team-member .bio-button {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  gap: 5px;
  color: var(--white);
  background-color: var(--red);
  padding: 5px 8px;
  line-height: 1;
}
.team-section .team-member .bio-button svg {
  width: 1em;
}
.team-section .team-member .bio-button svg path {
  fill: currentColor;
}
.team-section .team-member .team-member-overlay {
  position: absolute;
  left: calc(-1 * var(--crosshair-size) / 2);
  top: calc(-1 * var(--crosshair-size) / 2);
  width: calc(100% + var(--crosshair-size));
  height: calc(100% + var(--crosshair-size) / 2);
  background-color: var(--grey-70);
  overflow: auto;
  padding: 30px;
  padding-top: 40px;
  color: var(--black);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease-out;
}
.team-section .team-member .team-member-overlay .close-button {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
}
.team-section .team-member .team-member-overlay .close-button svg {
  width: 22px;
}
.team-section .team-member[open] .team-member-overlay {
  pointer-events: all;
  opacity: 1;
}

.coloured-boxes {
  background-color: var(--light-grey);
  padding-block: var(--spacing-3xl);
  overflow: hidden;
}
.coloured-boxes .coloured-boxes-inner {
  display: flex;
  flex-direction: column;
  gap: 70px;
}
.coloured-boxes .coloured-boxes-top {
  text-align: center;
}
.coloured-boxes .boxes {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
@media (min-width: 768px) {
  .coloured-boxes .boxes {
    flex-direction: row;
    gap: clamp(25px, 30 / 1140 * var(--container-width), 30px);
    width: -moz-max-content;
    width: max-content;
  }
}
.coloured-boxes .box {
  width: 100%;
  padding: 60px 35px;
  font-size: var(--text-size-ll);
  line-height: 1.1;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .coloured-boxes .box {
    flex-shrink: 0;
    max-width: clamp(300px, 400 / 1140 * var(--container-width), 400px);
    line-height: 1.2;
    padding-inline: clamp(35px, 50 / 1140 * var(--container-width), 50px);
  }
}
.coloured-boxes .box--white {
  background-color: var(--white);
}
.coloured-boxes .box--red {
  background-color: var(--red);
  color: var(--white);
}
.coloured-boxes .box--dark-green {
  background-color: var(--dark-green);
  color: var(--white);
}
.coloured-boxes .box--light-green {
  background-color: var(--grey-70);
}

.contact-intro-section {
  --margin-top: 25px;
  margin-top: calc(var(--header-height) + var(--margin-top));
  margin-bottom: var(--spacing-4xl);
}
@media (min-width: 768px) {
  .contact-intro-section {
    --margin-top: clamp(25px, calc((160 / 1140) * var(--container-width)), 160px);
    margin-bottom: var(--margin-top);
  }
}
.contact-intro-section .contact-intro-section-inner {
  display: flex;
  flex-direction: column;
  gap: 50px;
  max-width: var(--wide-container-width);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .contact-intro-section .contact-intro-section-inner {
    display: grid;
    gap: 0;
    grid-template-columns: repeat(2, 1fr);
  }
}
.contact-intro-section .address-block {
  margin-top: 30px;
}
@media (min-width: 768px) {
  .contact-intro-section .address-block {
    margin: 0;
    display: flex;
    align-items: flex-end;
  }
}
.contact-intro-section .address-block .address-inner {
  display: flex;
  gap: 30px;
  align-items: center;
}

@media (min-width: 768px) {
  .form-wrapper {
    grid-column: 2/-1;
    grid-row: 1/span 2;
  }
}
.form-wrapper form.submitting button[type=submit] {
  visibility: hidden;
}
.form-wrapper form.submitting .loader {
  visibility: visible;
}
.form-wrapper form.submitting .loader::before, .form-wrapper form.submitting .loader::after {
  animation-play-state: running;
}
.form-wrapper .wpcf7-not-valid-tip {
  display: none;
}
.form-wrapper .wpcf7-response-output {
  display: none;
}
.form-wrapper .form-fields {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.form-wrapper .form-fields a {
  color: inherit;
  text-decoration: underline;
}
.form-wrapper .form-main {
  --row-gap: 20px;
  display: flex;
  flex-direction: column;
  width: 100%;
  row-gap: var(--row-gap);
}
.form-wrapper .form-row {
  display: flex;
  flex-direction: column;
  gap: var(--row-gap);
}
@media (min-width: 992px) {
  .form-wrapper .form-row {
    flex-direction: row;
    gap: 20px;
  }
  .form-wrapper .form-row > * {
    flex: 1;
  }
}
.form-wrapper .recaptcha-text {
  font-size: 10px;
}
.form-wrapper .form-bottom {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: flex-start;
}
.form-wrapper .wpcf7-list-item {
  margin: 0;
}
.form-wrapper .wpcf7-list-item label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 11px;
}
.form-wrapper .wpcf7-list-item input {
  accent-color: var(--red);
  margin: 0;
  width: 14px;
}
.form-wrapper .wpcf7-list-item:has([aria-invalid=true]) {
  color: var(--orange);
}
.form-wrapper .wpcf7-form-control-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
}
.form-wrapper .wpcf7-form-control-wrap:not(:has(.wpcf7-acceptance))::before {
  content: "";
  background-image: url("../../img/icons/crosshair-red.svg");
  display: block;
  height: 14px;
  width: 14px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  flex: 0 0 auto;
}
.form-wrapper .wpcf7-form-control-wrap:has(textarea)::before {
  align-self: flex-start;
}
.form-wrapper input[type=text],
.form-wrapper input[type=email],
.form-wrapper input[type=tel],
.form-wrapper textarea {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid var(--white);
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  padding-block: 7px;
  padding-inline: 5px;
  color: inherit;
  display: block;
  line-height: 1;
  overflow: visible;
}
.form-wrapper input[type=text][aria-invalid=true],
.form-wrapper input[type=email][aria-invalid=true],
.form-wrapper input[type=tel][aria-invalid=true],
.form-wrapper textarea[aria-invalid=true] {
  border-color: var(--red);
}
.form-wrapper input[type=text]::-moz-placeholder, .form-wrapper input[type=email]::-moz-placeholder, .form-wrapper input[type=tel]::-moz-placeholder, .form-wrapper textarea::-moz-placeholder {
  color: var(--white);
}
.form-wrapper input[type=text]::placeholder,
.form-wrapper input[type=email]::placeholder,
.form-wrapper input[type=tel]::placeholder,
.form-wrapper textarea::placeholder {
  color: var(--white);
}
.form-wrapper .textarea-wrapper {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 10px;
}
.form-wrapper textarea {
  resize: none;
  height: 150px;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: 1.4;
  border: 1px solid currentColor;
  padding: 10px 15px;
}
.form-wrapper .select-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}
.form-wrapper .select-wrapper::before {
  content: "";
  background-image: url("../../img/icons/crosshair-red.svg");
  display: block;
  height: 14px;
  width: 14px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.form-wrapper .select-wrapper .wpcf7-form-control-wrap {
  flex: 1;
  position: relative;
}
.form-wrapper .select-wrapper .wpcf7-form-control-wrap::before {
  position: absolute;
  right: 10px;
  top: 50%;
  translate: 0 -50%;
  background-image: url("../../img/icons/expand-arrow-black.svg");
  height: 20px;
  aspect-ratio: 1;
  width: auto;
  filter: invert(1);
}
@supports ((-webkit-appearance: base-select) or (-moz-appearance: base-select) or (appearance: base-select)) {
  .form-wrapper .select-wrapper .wpcf7-form-control-wrap::before {
    content: unset;
  }
}
@supports ((-webkit-appearance: base-select) or (-moz-appearance: base-select) or (appearance: base-select)) {
  .form-wrapper .select-wrapper select,
  .form-wrapper .select-wrapper ::picker(select) {
    -webkit-appearance: base-select;
       -moz-appearance: base-select;
            appearance: base-select;
  }
}
.form-wrapper .select-wrapper select {
  width: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--dark-green);
  border: 1px solid currentColor;
  border-radius: 0;
  padding: 10px 15px;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: 1;
  display: flex;
  align-items: center;
}
@supports ((-webkit-appearance: base-select) or (-moz-appearance: base-select) or (appearance: base-select)) {
  .form-wrapper .select-wrapper select {
    -webkit-appearance: base-select;
       -moz-appearance: base-select;
            appearance: base-select;
    padding-right: 10px;
  }
  .form-wrapper .select-wrapper select::picker-icon {
    content: "";
    background-image: url("../../img/icons/expand-arrow-black.svg");
    height: 20px;
    aspect-ratio: 1;
    width: auto;
    filter: invert(1);
  }
  .form-wrapper .select-wrapper select option {
    background-color: var(--white);
    font-size: inherit;
    padding-block: 0.2em;
  }
  .form-wrapper .select-wrapper select option:hover {
    background-color: var(--grey-70);
  }
  .form-wrapper .select-wrapper select option::checkmark {
    content: unset;
  }
}
.form-wrapper .select-wrapper select[aria-invalid=true] {
  border-color: var(--red);
}
.form-wrapper .wpcf7-spinner {
  display: none;
}
.form-wrapper .button-wrapper {
  flex-shrink: 0;
  display: grid;
}
.form-wrapper .button {
  --border-colour: transparent;
  --text-colour: var(--white);
  --bg-colour: var(--red);
  --hover-bg-colour: color-mix(in srgb, var(--red) 90%, black);
  height: 40px;
  grid-area: 1/1/1/1;
  font-size: inherit;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.loader {
  width: 40px;
  aspect-ratio: 1;
  display: flex;
  grid-area: 1/1/1/1;
  justify-self: center;
  align-self: center;
  scale: 0.8;
  visibility: hidden;
}

.loader:before,
.loader:after {
  content: "";
  flex: 1;
  margin: 0 0 0 -1px;
  --c: no-repeat linear-gradient(currentColor 0 0);
  background: var(--c) 0 0, var(--c) 100% 0, var(--c) 100% 100%, var(--c) 0 100%, var(--c) 0 50%;
  animation: l17 1s infinite alternate;
  animation-play-state: paused;
}

.loader:before {
  transform: scale(-1);
  margin: 0 -1px 0 0;
}

@keyframes l17 {
  0%, 5% {
    background-size: 0 2px, 2px 0, 0 2px, 2px 0, 0 2px;
  }
  20% {
    background-size: 100% 2px, 2px 0, 0 2px, 2px 0, 0 2px;
  }
  40% {
    background-size: 100% 2px, 2px 100%, 0 2px, 2px 0, 0 2px;
  }
  60% {
    background-size: 100% 2px, 2px 100%, 100% 2px, 2px 0, 0 2px;
  }
  80% {
    background-size: 100% 2px, 2px 100%, 100% 2px, 2px 50%, 0 2px;
  }
  95%, 100% {
    background-size: 100% 2px, 2px 100%, 100% 2px, 2px 50%, 100% 2px;
  }
}
:root:has(.banner-subpage--green) {
  --header-bg-colour: var(--dark-green);
  --header-text-colour: var(--white);
  --page-grid-colour: var(--white);
}

:root:has(.banner-subpage--red) {
  --header-bg-colour: var(--red);
  --header-text-colour: var(--white);
  --header-current-colour: var(--dark-green);
  --page-grid-colour: var(--black);
}
:root:has(.banner-subpage--red) .banner-subpage {
  --link-colour: var(--white);
  --crosshair-colour: var(--white);
}
:root:has(.banner-subpage--red) .banner-subpage .square-grid {
  --opacity: 0.05;
}
:root:has(.banner-subpage--red) .banner-subpage .breadcrumbs {
  opacity: 0.8;
}

.banner-subpage {
  --background-colour: var(--dark-green);
  --padding-top: 30px;
  padding-top: calc(var(--padding-top) + var(--header-height));
  padding-bottom: var(--padding-top);
  background-color: var(--header-bg-colour);
  color: var(--white);
}
@media (min-width: 768px) {
  .banner-subpage {
    --padding-top: clamp(30px, calc((40 / 1140) * var(--container-width)), 40px);
  }
}
.banner-subpage .banner-subpage-inner {
  max-width: min(100% - var(--gutter) * 2, 1350px);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .banner-subpage .square-grid-container {
    --grid-cols: 8;
  }
}
@media (min-width: 992px) {
  .banner-subpage .square-grid-container {
    --grid-cols: 10;
  }
}
@media (min-width: 1300px) {
  .banner-subpage .square-grid-container {
    --grid-cols: 12;
  }
}
.banner-subpage .grid-contents {
  grid-auto-rows: min-content;
  row-gap: 30px;
  padding-block: 30px;
  height: calc(--square-height * var(--grid-cols));
}
@media (min-width: 768px) {
  .banner-subpage .grid-contents {
    row-gap: 0;
    grid-auto-rows: unset;
    min-height: calc(var(--wide-container-width) / var(--grid-cols) * 3);
  }
}
.banner-subpage .heading-group {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 768px) {
  .banner-subpage .heading-group {
    --col-width: round(down, calc(var(--grid-cols) / 2));
    grid-column: 1/span 4;
    align-self: flex-end;
  }
}
@media (min-width: 992px) {
  .banner-subpage .heading-group {
    grid-column: 1/span 5;
  }
}
@media (min-width: 1300px) {
  .banner-subpage .heading-group {
    grid-column: 1/span 6;
  }
}
.banner-subpage .breadcrumbs {
  font-size: var(--text-size-l);
  text-transform: uppercase;
  color: var(--link-colour, var(--darkgreen-50));
}
.banner-subpage .breadcrumbs a {
  color: inherit;
}
.banner-subpage .logo img {
  max-width: 130px;
  max-height: 50px;
}
@media (min-width: 768px) {
  .banner-subpage .text-box {
    --col-width: round(up, calc(var(--grid-cols) / 3));
    grid-column: 6/-1;
    margin-top: clamp(10px, 40 / 1140 * var(--container-width), 40px);
  }
}
@media (min-width: 992px) {
  .banner-subpage .text-box {
    grid-column: 7/-1;
  }
}
@media (min-width: 992px) {
  .banner-subpage .text-box {
    grid-column: 9/-1;
  }
}
.banner-subpage .text-box svg path {
  fill: var(--crosshair-colour, var(--red));
}
.banner-subpage .button {
  --bg-colour: var(--background-colour);
}
.banner-subpage.trigger .heading-group {
  --delay: 0.5s;
}
.banner-subpage.trigger .heading-group > * {
  opacity: 0;
  translate: -20px 0;
  transition: opacity var(--td-xl), translate var(--td-xl);
}
.banner-subpage.trigger .heading-group > *:nth-child(1) {
  transition-delay: calc(var(--delay) + 0s);
}
.banner-subpage.trigger .heading-group > *:nth-child(2) {
  transition-delay: calc(var(--delay) + 0.3s);
}
.banner-subpage.trigger .heading-group > *:nth-child(3) {
  transition-delay: calc(var(--delay) + 0.6s);
}
.banner-subpage.trigger .heading-group > *:nth-child(4) {
  transition-delay: calc(var(--delay) + 0.9s);
}
.banner-subpage.trigger .heading-group > *:nth-child(5) {
  transition-delay: calc(var(--delay) + 1.2s);
}
.banner-subpage.trigger .heading-group > *:nth-child(6) {
  transition-delay: calc(var(--delay) + 1.5s);
}
.banner-subpage.trigger .heading-group > *:nth-child(7) {
  transition-delay: calc(var(--delay) + 1.8s);
}
.banner-subpage.trigger .heading-group > *:nth-child(8) {
  transition-delay: calc(var(--delay) + 2.1s);
}
.banner-subpage.trigger .heading-group > *:nth-child(9) {
  transition-delay: calc(var(--delay) + 2.4s);
}
.banner-subpage.trigger .heading-group > *:nth-child(10) {
  transition-delay: calc(var(--delay) + 2.7s);
}
.banner-subpage.trigger .text-box {
  --delay: 0.9s;
}
.banner-subpage.trigger .text-box > * {
  opacity: 0;
  translate: -20px 0;
  transition: opacity var(--td-xl), translate var(--td-xl), scale var(--td-xl);
}
.banner-subpage.trigger .text-box > *.floating-crosshair {
  scale: 0.8;
}
.banner-subpage.trigger .text-box > *:nth-child(1) {
  transition-delay: calc(var(--delay) + 0s);
}
.banner-subpage.trigger .text-box > *:nth-child(2) {
  transition-delay: calc(var(--delay) + 0.2s);
}
.banner-subpage.trigger .text-box > *:nth-child(3) {
  transition-delay: calc(var(--delay) + 0.4s);
}
.banner-subpage.trigger .text-box > *:nth-child(4) {
  transition-delay: calc(var(--delay) + 0.6s);
}
.banner-subpage.trigger .text-box > *:nth-child(5) {
  transition-delay: calc(var(--delay) + 0.8s);
}
.banner-subpage.trigger .text-box > *:nth-child(6) {
  transition-delay: calc(var(--delay) + 1s);
}
.banner-subpage.trigger .text-box > *:nth-child(7) {
  transition-delay: calc(var(--delay) + 1.2s);
}
.banner-subpage.trigger .text-box > *:nth-child(8) {
  transition-delay: calc(var(--delay) + 1.4s);
}
.banner-subpage.trigger .text-box > *:nth-child(9) {
  transition-delay: calc(var(--delay) + 1.6s);
}
.banner-subpage.trigger .text-box > *:nth-child(10) {
  transition-delay: calc(var(--delay) + 1.8s);
}
.banner-subpage.in-view .square-grid {
  opacity: 1;
}
.banner-subpage.in-view .heading-group > * {
  opacity: 1;
  translate: 0;
}
.banner-subpage.in-view .text-box > * {
  opacity: 1;
  scale: 1 !important;
  translate: 0 !important;
}

.tabbed-images-section {
  margin-block: var(--spacing-3xl);
}
@media (min-width: 768px) {
  .tabbed-images-section {
    margin-bottom: var(--spacing-4xl);
  }
}
.tabbed-images-section .tabbed-images-section-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
}
@media (min-width: 768px) {
  .tabbed-images-section .tabbed-images-section-inner {
    gap: clamp(50px, 70 / 1140 * var(--container-width), 70px);
  }
}
.tabbed-images-section .intro-block {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 15px;
  max-width: var(--container-width);
}
.tabbed-images-section .tabbed-images-block {
  display: flex;
  flex-direction: column;
  gap: 25px;
  overflow: hidden;
  align-items: center;
  width: 100%;
}
@media (min-width: 768px) {
  .tabbed-images-section .tabbed-images-block {
    flex-direction: row;
    gap: clamp(20px, 30 / 1140 * var(--container-width), 30px);
    max-width: var(--container-width);
    position: relative;
    overflow: unset;
  }
}
.tabbed-images-section .tabs-nav {
  overflow-x: auto;
  scrollbar-width: none;
  align-self: flex-start;
  width: 100%;
}
@media (min-width: 768px) {
  .tabbed-images-section .tabs-nav {
    overflow: unset;
    flex: 0 0 auto;
    position: sticky;
    top: 30px;
    width: auto;
  }
}
.tabbed-images-section .tabs {
  display: flex;
  padding-inline: var(--gutter);
  width: -moz-max-content;
  width: max-content;
}
@media (min-width: 768px) {
  .tabbed-images-section .tabs {
    flex-direction: column;
    padding: 0;
  }
}
.tabbed-images-section .tab {
  --bg-colour: var(--white);
  flex-shrink: 0;
  padding: 15px 20px;
  text-box: trim-both cap alphabetic;
  border: 1px solid var(--neutral-6);
  text-align: center;
  cursor: pointer;
  background-color: var(--bg-colour);
  transition: background-color 0.2s;
}
@media (min-width: 768px) {
  .tabbed-images-section .tab {
    min-width: clamp(150px, 200 / 1140 * var(--container-width), 200px);
  }
}
.tabbed-images-section .tab:not(:first-of-type) {
  border-left: unset;
}
@media (min-width: 768px) {
  .tabbed-images-section .tab:not(:first-of-type) {
    border: 1px solid var(--neutral-6);
    border-top: unset;
  }
}
.tabbed-images-section .tab:hover {
  background-color: color-mix(in srgb, var(--bg-colour), var(--black) 10%);
}
.tabbed-images-section .tab[data-active=true] {
  --bg-colour: var(--red);
  color: var(--white);
}
.tabbed-images-section .image-block {
  max-width: var(--container-width);
}
@media (min-width: 768px) {
  .tabbed-images-section .image-block {
    max-width: unset;
    flex: 1;
  }
}
.tabbed-images-section .zoomable-container {
  position: relative;
  width: 100%;
  aspect-ratio: 0.6;
  max-height: 80vh;
  display: none;
}
.tabbed-images-section .zoomable-container[data-active=true] {
  display: block;
}
@media (min-width: 768px) {
  .tabbed-images-section .zoomable-container {
    aspect-ratio: unset;
    height: clamp(300px, 1000 / 1140 * var(--container-width), 1000px);
    max-height: 90vh;
  }
}
.tabbed-images-section .map-controls {
  position: absolute;
  left: 12px;
  top: 12px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
@media (min-width: 768px) {
  .tabbed-images-section .map-controls {
    left: unset;
    top: clamp(12px, 30 / 1140 * var(--container-width), 30px);
    right: clamp(12px, 20 / 1140 * var(--container-width), 20px);
  }
}
.tabbed-images-section .zoom {
  cursor: pointer;
}
.tabbed-images-section .zoom svg {
  width: 40px;
  fill: var(--light-grey);
}

@media (min-width: 768px) {
  body.page-template-page-transport .tabbed-images-section .zoomable-container {
    height: clamp(300px, 560 / 1140 * var(--container-width), 560px);
    max-height: 90vh;
  }
}

.page-template-page-availability .icon-grid-section {
  margin-bottom: var(--spacing-2xl);
}

.icon-grid-section {
  margin-block: var(--spacing-3xl);
}
@media (min-width: 768px) {
  .icon-grid-section {
    margin-block: var(--spacing-4xl);
  }
}
.icon-grid-section .icon-grid-section-inner {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-3xl);
  align-items: center;
}
.icon-grid-section .icon-grid-intro {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
  text-align: center;
}
.icon-grid-section .icon-grid-intro .text {
  max-width: 56ch;
}
.icon-grid-section.trigger .icon-grid-item {
  opacity: 0;
  translate: 0 20px;
  transition: opacity var(--td-xl), translate var(--td-xl);
}
.icon-grid-section.trigger .icon-grid-item:nth-child(1) {
  transition-delay: 0s;
}
.icon-grid-section.trigger .icon-grid-item:nth-child(2) {
  transition-delay: 0.2s;
}
.icon-grid-section.trigger .icon-grid-item:nth-child(3) {
  transition-delay: 0.4s;
}
.icon-grid-section.trigger .icon-grid-item:nth-child(4) {
  transition-delay: 0.6s;
}
.icon-grid-section.trigger .icon-grid-item:nth-child(5) {
  transition-delay: 0.8s;
}
.icon-grid-section.trigger .icon-grid-item:nth-child(6) {
  transition-delay: 1s;
}
.icon-grid-section.trigger .icon-grid-item:nth-child(7) {
  transition-delay: 1.2s;
}
.icon-grid-section.trigger .icon-grid-item:nth-child(8) {
  transition-delay: 1.4s;
}
.icon-grid-section.trigger .icon-grid-item:nth-child(9) {
  transition-delay: 1.6s;
}
.icon-grid-section.trigger .icon-grid-item:nth-child(10) {
  transition-delay: 1.8s;
}
.icon-grid-section.in-view .icon-grid-item {
  opacity: 1;
  translate: 0;
}

.icon-grid {
  display: grid;
  width: 100%;
  max-width: 300px;
  margin-inline: auto;
  gap: 70px;
}
@media (min-width: 768px) {
  .icon-grid {
    grid-template-columns: repeat(2, 1fr);
    max-width: unset;
    row-gap: clamp(70px, 80 / 1140 * var(--container-width), 80px);
    -moz-column-gap: clamp(70px, 100 / 1140 * var(--container-width), 100px);
         column-gap: clamp(70px, 100 / 1140 * var(--container-width), 100px);
  }
}
@media (min-width: 992px) {
  .icon-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.icon-grid-item {
  --item-bg: var(--grey-70);
  --item-text: var(--black);
  display: flex;
  flex-direction: column;
  gap: 35px;
  align-items: center;
  width: 100%;
}
@media (min-width: 768px) {
  .icon-grid-item {
    gap: clamp(35px, 45 / 1140 * var(--container-width), 45px);
  }
}
@media (max-width: 767px) {
  .icon-grid-item:nth-of-type(odd) {
    --item-bg: var(--grey-70);
    --item-text: var(--black);
  }
  .icon-grid-item:nth-of-type(even) {
    --item-bg: var(--dark-green);
    --item-text: var(--white);
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .icon-grid-item:nth-of-type(4n + 2) {
    --item-bg: var(--dark-green);
    --item-text: var(--white);
  }
  .icon-grid-item:nth-of-type(4n + 3) {
    --item-bg: var(--dark-green);
    --item-text: var(--white);
  }
}
@media (min-width: 992px) {
  .icon-grid-item:nth-of-type(odd) {
    --item-bg: var(--grey-70);
    --item-text: var(--black);
  }
  .icon-grid-item:nth-of-type(even) {
    --item-bg: var(--dark-green);
    --item-text: var(--white);
  }
}
.icon-grid-item .item-top {
  position: relative;
  padding: 20px;
  width: 100%;
}
.icon-grid-item .square-border .square {
  aspect-ratio: unset;
  height: 100%;
}
.icon-grid-item .item-top-inner {
  background-color: var(--item-bg);
  color: var(--item-text);
  width: 100%;
  aspect-ratio: 1.16;
  display: flex;
  align-items: center;
  justify-content: center;
}
.icon-grid-item .icon-wrapper img {
  height: 104px;
  width: auto;
}
.icon-grid-item .styled-text:not(:has(.text-part--default)) .text-part--accent {
  font-size: clamp(60px, 70 / 1140 * var(--container-width), 70px);
}
.icon-grid-item .item-bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
  text-align: center;
}
.icon-grid-item .item-bottom .text {
  text-wrap: balance;
  font-size: 18px;
  max-width: 90%;
}
@media (min-width: 992px) {
  .icon-grid-item .item-bottom .text {
    max-width: unset;
  }
}
.icon-grid-item .icon-text {
  text-align: center;
}
.icon-grid-item .icon-text .text-part--accent {
  font-size: var(--text-size-2xl);
}

.logo-wall-section {
  margin-block: var(--spacing-3xl);
}
@media (min-width: 768px) {
  .logo-wall-section {
    margin-block: var(--spacing-4xl);
  }
}
.logo-wall-section .logo-wall-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media (min-width: 768px) {
  .logo-wall-section .logo-wall-inner {
    gap: clamp(35px, 100 / 1140 * var(--container-width), 100px);
  }
}
.logo-wall-section .logo-wall-intro {
  max-width: var(--container-width);
  margin-inline: auto;
  text-align: center;
}
@media (min-width: 992px) {
  .logo-wall-section .logo-marquee {
    display: none;
  }
}
.logo-wall-section .logo-marquee .marquee {
  --gap: 25px;
  --duration: 25s;
  --scroll-start: 0;
  --scroll-end: calc(-100% - var(--gap));
  display: flex;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  gap: var(--gap);
}
@media (min-width: 768px) {
  .logo-wall-section .logo-marquee .marquee {
    --gap: clamp(25px, calc((60 / 1140) * var(--container-width)), 60px);
  }
}
.logo-wall-section .logo-marquee .marquee--reverse .marquee__group {
  animation-direction: reverse;
}
@keyframes scroll-x {
  from {
    transform: translateX(var(--scroll-start));
  }
  to {
    transform: translateX(var(--scroll-end));
  }
}
.logo-wall-section .logo-marquee .marquee__group {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  gap: var(--gap);
  min-width: 100%;
  animation: scroll-x var(--duration) linear infinite;
}
.logo-wall-section .logo {
  --height-base: 80px;
}
@media (min-width: 768px) {
  .logo-wall-section .logo {
    --height-base: clamp(80px, calc((105 / 1140) * var(--container-width)), 105px);
  }
}
.logo-wall-section .logo img {
  height: calc(var(--height-base) * var(--height-scale, 1));
  width: auto;
}
.logo-wall-section .logo-wall {
  display: none;
}
@media (min-width: 992px) {
  .logo-wall-section .logo-wall {
    display: flex;
    max-width: var(--container-width);
    width: 100%;
    margin-inline: auto;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: clamp(25px, 60 / 1140 * var(--container-width), 60px);
  }
}
.logo-wall-section .logo-wall .logo {
  flex: 0 0 auto;
}
.logo-wall-section.trigger .logo {
  opacity: 0;
  scale: 0.9;
  transition: opacity var(--td-l), scale var(--td-l);
}
.logo-wall-section.trigger .logo:nth-child(1) {
  transition-delay: 0.19s;
}
.logo-wall-section.trigger .logo:nth-child(2) {
  transition-delay: 0.71s;
}
.logo-wall-section.trigger .logo:nth-child(3) {
  transition-delay: 0.26s;
}
.logo-wall-section.trigger .logo:nth-child(4) {
  transition-delay: 0.27s;
}
.logo-wall-section.trigger .logo:nth-child(5) {
  transition-delay: 0.05s;
}
.logo-wall-section.trigger .logo:nth-child(6) {
  transition-delay: 0.99s;
}
.logo-wall-section.trigger .logo:nth-child(7) {
  transition-delay: 0.98s;
}
.logo-wall-section.trigger .logo:nth-child(8) {
  transition-delay: 0.28s;
}
.logo-wall-section.trigger .logo:nth-child(9) {
  transition-delay: 1s;
}
.logo-wall-section.trigger .logo:nth-child(10) {
  transition-delay: 0.81s;
}
.logo-wall-section.trigger .logo:nth-child(11) {
  transition-delay: 0.18s;
}
.logo-wall-section.trigger .logo:nth-child(12) {
  transition-delay: 0.09s;
}
.logo-wall-section.trigger .logo:nth-child(13) {
  transition-delay: 0.14s;
}
.logo-wall-section.trigger .logo:nth-child(14) {
  transition-delay: 0.92s;
}
.logo-wall-section.trigger .logo:nth-child(15) {
  transition-delay: 0.08s;
}
.logo-wall-section.trigger .logo:nth-child(16) {
  transition-delay: 0.9s;
}
.logo-wall-section.trigger .logo:nth-child(17) {
  transition-delay: 1s;
}
.logo-wall-section.trigger .logo:nth-child(18) {
  transition-delay: 0.46s;
}
.logo-wall-section.trigger .logo:nth-child(19) {
  transition-delay: 0.81s;
}
.logo-wall-section.trigger .logo:nth-child(20) {
  transition-delay: 0.2s;
}
.logo-wall-section.trigger .logo:nth-child(21) {
  transition-delay: 0.28s;
}
.logo-wall-section.trigger .logo:nth-child(22) {
  transition-delay: 0.67s;
}
.logo-wall-section.trigger .logo:nth-child(23) {
  transition-delay: 0.7s;
}
.logo-wall-section.trigger .logo:nth-child(24) {
  transition-delay: 0.52s;
}
.logo-wall-section.trigger .logo:nth-child(25) {
  transition-delay: 0.26s;
}
.logo-wall-section.trigger .logo:nth-child(26) {
  transition-delay: 0.22s;
}
.logo-wall-section.trigger .logo:nth-child(27) {
  transition-delay: 0.89s;
}
.logo-wall-section.trigger .logo:nth-child(28) {
  transition-delay: 0.13s;
}
.logo-wall-section.trigger .logo:nth-child(29) {
  transition-delay: 0.97s;
}
.logo-wall-section.trigger .logo:nth-child(30) {
  transition-delay: 0.69s;
}
.logo-wall-section.trigger .logo:nth-child(31) {
  transition-delay: 0.1s;
}
.logo-wall-section.trigger .logo:nth-child(32) {
  transition-delay: 0.19s;
}
.logo-wall-section.trigger .logo:nth-child(33) {
  transition-delay: 0.93s;
}
.logo-wall-section.trigger .logo:nth-child(34) {
  transition-delay: 0.24s;
}
.logo-wall-section.trigger .logo:nth-child(35) {
  transition-delay: 0.34s;
}
.logo-wall-section.trigger .logo:nth-child(36) {
  transition-delay: 0.98s;
}
.logo-wall-section.trigger .logo:nth-child(37) {
  transition-delay: 0.65s;
}
.logo-wall-section.trigger .logo:nth-child(38) {
  transition-delay: 0.55s;
}
.logo-wall-section.trigger .logo:nth-child(39) {
  transition-delay: 0.19s;
}
.logo-wall-section.trigger .logo:nth-child(40) {
  transition-delay: 0.07s;
}
.logo-wall-section.trigger .logo:nth-child(41) {
  transition-delay: 0.5s;
}
.logo-wall-section.trigger .logo:nth-child(42) {
  transition-delay: 0.08s;
}
.logo-wall-section.trigger .logo:nth-child(43) {
  transition-delay: 0.72s;
}
.logo-wall-section.trigger .logo:nth-child(44) {
  transition-delay: 0.42s;
}
.logo-wall-section.trigger .logo:nth-child(45) {
  transition-delay: 0.09s;
}
.logo-wall-section.trigger .logo:nth-child(46) {
  transition-delay: 0.51s;
}
.logo-wall-section.trigger .logo:nth-child(47) {
  transition-delay: 0.95s;
}
.logo-wall-section.trigger .logo:nth-child(48) {
  transition-delay: 0.05s;
}
.logo-wall-section.trigger .logo:nth-child(49) {
  transition-delay: 0.91s;
}
.logo-wall-section.trigger .logo:nth-child(50) {
  transition-delay: 0.21s;
}
.logo-wall-section.in-view .logo {
  opacity: 1;
  scale: 1;
}

.contained-image-section {
  margin-block: var(--spacing-3xl);
}
@media (min-width: 768px) {
  .contained-image-section {
    margin-block: var(--spacing-4xl);
  }
}
.contained-image-section .contained-image-section-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
  align-items: center;
  text-align: center;
}
@media (min-width: 768px) {
  .contained-image-section .contained-image-section-inner {
    gap: var(--spacing-3xl);
  }
}
.contained-image-section.trigger img {
  opacity: 0;
  transition: opacity var(--td-xl);
}
.contained-image-section.in-view img {
  opacity: 1;
}

.grid-backed-quote {
  margin-block: var(--spacing-4xl);
}
.grid-backed-quote--grey-70 {
  background-color: var(--grey-70);
  padding-block: var(--spacing-3xl);
  position: relative;
}
@media (min-width: 992px) {
  .grid-backed-quote--grey-70::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../../img/patterns/grid-12-black.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0.1;
  }
}
.grid-backed-quote--grey-70 .square-grid {
  display: none !important;
}
.grid-backed-quote .grid-backed-quote-inner {
  --grid-colour: var(--neutral-5);
  --opacity: 0.3;
  max-width: var(--wide-container-width);
  margin-inline: auto;
}
.grid-backed-quote .square-grid {
  display: none;
}
@media (min-width: 768px) {
  .grid-backed-quote .square-grid {
    display: grid;
  }
}
@media (max-width: 767px) {
  .grid-backed-quote .grid-contents {
    height: auto !important;
  }
}
@media (min-width: 768px) {
  .grid-backed-quote .grid-contents {
    place-items: center;
    grid-auto-rows: auto;
    padding-block: var(--spacing-2xl);
  }
}
.grid-backed-quote .quote-box {
  --padding-top: 100px;
  background-color: var(--dark-green);
  color: var(--white);
  padding: 55px 50px;
  padding-top: calc(var(--padding-top) + 50px);
  display: flex;
  flex-direction: column;
  gap: 30px;
  position: relative;
}
@media (min-width: 768px) {
  .grid-backed-quote .quote-box {
    max-width: min(90%, 870px);
    padding-top: clamp(40px, 50 / 1140 * var(--container-width), 50px);
    padding-bottom: clamp(50px, 70 / 1140 * var(--container-width), 70px);
    padding-left: clamp(70px, 130 / 1140 * var(--container-width), 130px);
    padding-right: clamp(50px, 60 / 1140 * var(--container-width), 60px);
  }
}
@media (min-width: 768px) {
  .grid-backed-quote .quote-box-top {
    display: flex;
    justify-content: flex-end;
  }
}
.grid-backed-quote .quote {
  font-size: 18px;
}
.grid-backed-quote .quotation-marks {
  position: absolute;
  top: 0;
  left: 50px;
  translate: 0 -35%;
}
@media (min-width: 768px) {
  .grid-backed-quote .quotation-marks {
    left: 0;
    translate: -30% -30%;
  }
}
.grid-backed-quote .quotation-marks svg {
  width: 140px;
}
@media (min-width: 768px) {
  .grid-backed-quote .quotation-marks svg {
    width: clamp(50px, 140 / 1140 * var(--container-width), 140px);
  }
}
.grid-backed-quote .company {
  display: flex;
  align-items: center;
  gap: 10px;
}
.grid-backed-quote .company svg {
  width: 25px;
}
.grid-backed-quote .company svg path {
  fill: var(--red);
}
.grid-backed-quote .quote-box-main {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media (min-width: 768px) {
  .grid-backed-quote .quote-box-main {
    gap: clamp(35px, 40 / 1140 * var(--container-width), 40px);
  }
}
@media (min-width: 768px) {
  .grid-backed-quote .quote-author {
    display: flex;
  }
}
@media (min-width: 768px) {
  .grid-backed-quote .quote-author > :not(:first-child) {
    margin-left: 10px;
    position: relative;
    display: flex;
    gap: 10px;
  }
  .grid-backed-quote .quote-author > :not(:first-child)::before {
    content: "I";
  }
}

.stats-section {
  margin-block: var(--spacing-3xl);
}
@media (min-width: 768px) {
  .stats-section {
    margin-block: var(--spacing-4xl);
  }
}
.stats-section .stat-items {
  display: grid;
  align-items: center;
  gap: 35px;
  width: 100%;
  text-align: center;
}
@media (min-width: 768px) {
  .stats-section .stat-items {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .stats-section .stat-items {
    grid-template-columns: repeat(4, 1fr);
  }
}
.stats-section .stat-item {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.stats-section .stat-item .stat-value {
  color: var(--red);
}
.stats-section .stat-item .stat-label {
  font-size: 18px;
}

.contained-video-section {
  margin-block-start: var(--spacing-3xl);
}
.contained-video-section .video-wrapper {
  aspect-ratio: 16/9;
  width: 100%;
}

.card-scroller-section {
  padding-block: var(--spacing-3xl);
  background-color: var(--light-grey);
  overflow: hidden;
}
.card-scroller-section .card-scroller-section-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
}
.card-scroller-section .card-scroller-heading {
  text-align: center;
}
.card-scroller-section .swiper-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media (min-width: 768px) {
  .card-scroller-section .swiper-container {
    gap: clamp(30px, 50 / 1140 * var(--container-width), 50px);
  }
}
.card-scroller-section .swiper-slide {
  box-sizing: border-box;
  width: min(95%, 340px);
  height: auto;
}
@media (min-width: 992px) {
  .card-scroller-section .swiper-slide {
    width: clamp(700px, 810 / 1140 * var(--container-width), 810px);
  }
}
.card-scroller-section .swiper-slide:nth-of-type(4n + 1) {
  --card-bg: var(--red);
  --card-text: var(--white);
  --card-accent: var(--white);
}
.card-scroller-section .swiper-slide:nth-of-type(4n + 2), .card-scroller-section .swiper-slide:nth-of-type(4n + 4) {
  --card-bg: var(--dark-green);
  --card-text: var(--white);
  --card-accent: var(--red);
}
.card-scroller-section .swiper-slide:nth-of-type(4n + 3) {
  --card-bg: var(--grey-70);
  --card-text: var(--black);
  --card-accent: var(--red);
}
@media (min-width: 992px) {
  .card-scroller-section .swiper-slide--text {
    width: clamp(600px, 760 / 1140 * var(--container-width), 760px);
  }
}
@media (min-width: 992px) {
  .card-scroller-section .swiper-slide--text .image-block {
    flex: 0 0 55%;
  }
}
@media (min-width: 992px) {
  .card-scroller-section .swiper-slide--text .content-block {
    flex: 0 0 45%;
  }
}
.card-scroller-section .swiper-nav {
  display: flex;
  justify-content: center;
  gap: 10px;
}
.card-scroller-section .swiper-nav .swiper-button {
  width: 30px;
  cursor: pointer;
}
@media (min-width: 768px) {
  .card-scroller-section .swiper-nav .swiper-button {
    width: clamp(30px, 36 / 1140 * var(--container-width), 36px);
  }
}
.card-scroller-section .swiper-nav .swiper-button:hover rect {
  fill: var(--grey-70);
}
.card-scroller-section .swiper-nav .swiper-button-prev {
  scale: -1 1;
}
.card-scroller-section .swiper-nav .swiper-button rect {
  fill: transparent;
  transition: fill 0.2s;
}
.card-scroller-section .scroller-card {
  display: flex;
  flex-direction: column;
  color: var(--card-text);
  height: 100%;
}
@media (min-width: 992px) {
  .card-scroller-section .scroller-card {
    flex-direction: row;
  }
  .card-scroller-section .scroller-card > * {
    flex: 0 0 50%;
  }
}
.card-scroller-section .scroller-card .image-block {
  width: 100%;
  aspect-ratio: 1.55;
}
.card-scroller-section .scroller-card .image-block:not(:has(img)) {
  background-color: var(--neutral-6);
}
.card-scroller-section .scroller-card .content-block {
  padding: 35px;
  display: flex;
  flex-direction: column;
  gap: 35px;
  justify-content: space-between;
  align-items: flex-start;
  background-color: var(--card-bg);
  flex: 1;
}
@media (min-width: 992px) {
  .card-scroller-section .scroller-card .content-block {
    padding: clamp(35px, 50 / 1140 * var(--container-width), 50px);
  }
  .card-scroller-section .scroller-card .content-block:has(.content-text-only) {
    justify-content: center;
  }
}
.card-scroller-section .scroller-card .content-main {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
@media (min-width: 992px) {
  .card-scroller-section .scroller-card .content-main {
    gap: clamp(25px, 30 / 1140 * var(--container-width), 30px);
  }
}
.card-scroller-section .scroller-card .content-headers {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
@media (min-width: 992px) {
  .card-scroller-section .scroller-card .content-headers {
    gap: clamp(15px, 20 / 1140 * var(--container-width), 20px);
  }
}
.card-scroller-section .scroller-card .title {
  display: flex;
  align-items: center;
  gap: 10px;
}
.card-scroller-section .scroller-card .floating-crosshair svg {
  width: 25px;
}
.card-scroller-section .scroller-card .floating-crosshair svg path {
  fill: var(--card-accent);
}
.card-scroller-section .scroller-card .button {
  --hover-bg-colour: color-mix(in srgb, var(--card-bg) 90%, black);
}
.card-scroller-section .scroller-card .content-text-only {
  font-size: var(--text-size-ll);
  line-height: 1.2;
}

.gallery-scroller-section {
  margin-block: var(--spacing-3xl);
  overflow: hidden;
}
@media (min-width: 768px) {
  .gallery-scroller-section {
    margin-block: var(--spacing-4xl);
  }
}
.gallery-scroller-section .swiper-slide {
  box-sizing: border-box;
  width: 270px;
}
@media (min-width: 768px) {
  .gallery-scroller-section .swiper-slide {
    width: clamp(300px, 450 / 1140 * var(--container-width), 450px);
  }
}
.gallery-scroller-section .scroller-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.gallery-scroller-section .image-block {
  width: 100%;
  aspect-ratio: 1.125;
}
@media (min-width: 768px) {
  .gallery-scroller-section .image-block {
    aspect-ratio: 1.4;
  }
}
.gallery-scroller-section .image-block:not(:has(img)) {
  background-color: var(--light-grey);
}

.interactive-image-maps-section {
  display: none;
}
@media (min-width: 992px) {
  .interactive-image-maps-section {
    display: block;
  }
}
.interactive-image-maps-section .interactive-image-maps-inner-outer {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media (min-width: 768px) {
  .interactive-image-maps-section .interactive-image-maps-inner-outer {
    gap: clamp(30px, 50 / 1140 * var(--container-width), 50px);
  }
}
.interactive-image-maps-section .interactive-image-maps-intro {
  text-align: center;
}
.interactive-image-maps-section .interactive-image-maps-section-inner {
  display: flex;
  flex-direction: column;
  gap: clamp(40px, 50 / 1140 * var(--container-width), 50px);
}
.interactive-image-maps-section .tabs-block {
  border-top: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  display: flex;
  justify-content: center;
  color: color-mix(in srgb, var(--grey) 60%, white);
}
.interactive-image-maps-section .tabs-inner {
  display: flex;
}
.interactive-image-maps-section .tabs-arrow {
  cursor: pointer;
  width: 60px;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  outline: 1px solid currentColor;
}
.interactive-image-maps-section .tabs-arrow--prev {
  scale: -1;
}
.interactive-image-maps-section .tabs-arrow:hover svg path {
  stroke: var(--black);
}
.interactive-image-maps-section .tabs-arrow svg path {
  stroke: currentColor;
  transition: stroke 0.2s;
}
.interactive-image-maps-section .tabs {
  padding-inline: 30px;
  display: flex;
  gap: 10px;
}
.interactive-image-maps-section .tab {
  height: 100%;
  padding-inline: 20px;
  cursor: pointer;
  font-weight: 18px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  transition: color 0.2s;
}
.interactive-image-maps-section .tab[data-active=true] {
  color: var(--red);
}
.interactive-image-maps-section .tab[data-active=false]:hover {
  color: var(--black);
}
.interactive-image-maps-section .image-block {
  max-width: var(--container-width);
  width: 100%;
  margin-inline: auto;
  aspect-ratio: 1.845;
  position: relative;
  overflow: hidden;
}
.interactive-image-maps-section .image-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: opacity 0.2s;
}
.interactive-image-maps-section .image-item[data-active=true] {
  opacity: 1;
  pointer-events: all;
}
.interactive-image-maps-section .image-item[data-active=false] {
  opacity: 0;
  pointer-events: none;
}
.interactive-image-maps-section .overlay-info {
  position: absolute;
  left: 0;
  top: 0;
  background-color: color-mix(in srgb, var(--dark-green), transparent 10%);
  padding: 20px;
  gap: 20px;
  display: flex;
  align-items: center;
  color: var(--white);
}
.interactive-image-maps-section .overlay-info .text {
  max-width: 27ch;
  text-wrap: balance;
}
.interactive-image-maps-section .content-overlay {
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: color-mix(in srgb, var(--dark-green), transparent 10%);
  -webkit-backdrop-filter: blur(6px);
          backdrop-filter: blur(6px);
  color: var(--white);
  padding: 30px 50px;
  display: flex;
  gap: 50px;
  max-width: min(90%, 700px);
  align-items: center;
  transition: opacity 0.2s;
}
.interactive-image-maps-section .content-overlay[data-active=true] {
  opacity: 1;
  pointer-events: all;
}
.interactive-image-maps-section .content-overlay[data-active=false] {
  opacity: 0;
  pointer-events: none;
}
.interactive-image-maps-section .content-overlay .title {
  flex: 1;
}
.interactive-image-maps-section .overlay-right {
  display: flex;
  gap: 50px;
  flex: 3;
}
.interactive-image-maps-section .overlay-block {
  flex: 2;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.interactive-image-maps-section .point {
  position: absolute;
  translate: -50% -50%;
  cursor: pointer;
}
.interactive-image-maps-section .point svg {
  width: clamp(20px, 25 / 1140 * var(--container-width), 25px);
}

.generic-wrapper {
  --header-margin: 35px;
  margin-top: calc(var(--header-margin) + var(--header-height));
  padding-bottom: var(--spacing-4xl);
}
@media (min-width: 768px) {
  .generic-wrapper {
    --header-margin: clamp(35px, calc((150 / 1140) * var(--container-width)), 150px);
  }
}
.generic-wrapper .generic-wrapper-inner {
  display: flex;
  flex-direction: column;
  gap: 80px;
}
@media (min-width: 992px) {
  .generic-wrapper .generic-wrapper-inner {
    flex-direction: row;
    gap: var(--spacing-2xl);
  }
}

.generic-intro {
  display: flex;
  flex-direction: column;
  gap: 35px;
  align-items: flex-start;
}
@media (min-width: 992px) {
  .generic-intro {
    flex: 1 1 auto;
    gap: clamp(35px, 60 / 1140 * var(--container-width), 60px);
  }
}
.generic-intro .intro-top {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
@media (min-width: 992px) {
  .generic-intro .intro-top {
    flex-direction: row;
    align-items: center;
  }
}
.generic-intro .floating-crosshair svg {
  width: 25px;
}
.generic-intro .floating-crosshair svg path {
  fill: var(--red);
}
.generic-intro .intro-buttons {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (min-width: 768px) {
  .generic-intro .intro-buttons {
    flex-direction: row;
  }
}
.generic-intro .intro-buttons .button {
  min-width: 200px;
}
.generic-intro .intro-buttons .button:first-of-type {
  --border-colour: var(--dark-green);
  --text-colour: var(--white);
  --bg-colour: var(--dark-green);
  --hover-bg-colour: var(--black);
}

@media (min-width: 992px) {
  .generic-content {
    flex: 1 1 50%;
  }
}
@media (min-width: 992px) {
  .generic-content .generic-content-inner {
    max-width: 500px;
  }
}

.content-area h2,
.content-area h3 {
  margin-bottom: 10px;
}
.content-area h2:not(:first-child),
.content-area h3:not(:first-child) {
  margin-top: 50px;
}

.page-404 {
  background-color: var(--dark-green);
  padding-top: var(--header-height);
  color: var(--white);
  min-height: 100svh;
  display: flex;
}
.page-404 .page-404-inner {
  padding-top: 20px;
  padding-bottom: 40px;
  width: 100%;
  max-width: var(--wide-container-width);
  margin-inline: auto;
  align-items: center;
  display: flex;
}
.page-404 .square-grid-container {
  height: 100%;
  display: flex;
  align-items: center;
  width: 100%;
}
@media (min-width: 1300px) {
  .page-404 .square-grid-container {
    --grid-cols: 12;
  }
}
.page-404 .grid-contents {
  grid-auto-rows: auto;
  align-content: center;
  row-gap: 30px;
  width: 100%;
}
@media (min-width: 768px) {
  .page-404 .contents-intro {
    --col-count: round(down, calc(var(--grid-cols) / 2));
    grid-column: 2/span var(--col-count);
  }
}
.page-404 .square-grid {
  top: 50%;
  translate: 0 -50%;
}
.page-404 .styled-text {
  text-box: trim-both cap alphabetic;
}
@media (min-width: 768px) {
  .page-404 .styled-text {
    font-size: clamp(63px, 140 / 1140 * var(--container-width), 140px);
  }
}
.page-404 .styled-text .text-part {
  display: block;
}
@media (min-width: 768px) {
  .page-404 .button-block {
    --col-count: round(up, calc(var(--grid-cols) / 4));
    grid-column: calc(-1 - var(--col-count))/-1;
    display: flex;
    align-items: flex-end;
  }
}
.page-404 .button {
  --border-colour: var(--white);
  --text-colour: var(--black);
  --bg-colour: var(--white);
  --hover-bg-colour: color-mix(in srgb, var(--grey-70) 75%, white);
  --hover-border-colour: var(--hover-bg-colour);
  min-width: 170px;
}

.double-image-block-grid-section {
  background-color: var(--dark-green);
}
.double-image-block-grid-section .square-grid {
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  width: 110%;
}
.double-image-block-grid-section .grid-contents {
  padding-block: var(--spacing-4xl);
  height: auto !important;
}
.double-image-block-grid-section .content-block .button {
  --border-colour: transparent;
  --text-colour: var(--white);
  --bg-colour: var(--red);
  --hover-bg-colour: color-mix(in srgb, var(--red) 75%, var(--black));
}
