:root {
  --colour-primary: #247a96;
  --colour-primary-dark: #1E6982;
  --colour-primary-light: #EAF1F4;
  --colour-secondary: #54426b;
  --colour-tertiary: #dbd5b2;
  --colour-gradient: radial-gradient(circle at 100% 100%,
      rgba(150, 48, 169, 0.45) 0%,
      rgba(150, 48, 169, 0) 45%),

    radial-gradient(circle at 100% 0%,
      rgba(107, 33, 134, 0.25) 0%,
      rgba(107, 33, 134, 0) 50%),

    linear-gradient(135deg,
      #050225 0%,
      #1d0a43 35%,
      #4a1b73 70%,
      #9630a9 100%);
  --colour-white: #fff;
  --colour-white-hover: #dbdad9;
  --colour-black: #00171f;
  --colour-grey-gradient: linear-gradient(180deg, rgba(30, 30, 30, 1) 0%, rgba(40, 40, 40, 1) 100%);
  --colour-bg: rgb(255, 255, 255);
  --colour-bg-grey: #F7FCFD;
  --colour-bg-grey-dark: #D7DBDC;
  --colour-bg-transparent-dark: rgba(0, 0, 0, .7);
  --text-colour: rgba(20, 20, 20, 1);
  --text-colour-muted: rgba(20, 20, 20, .5);
  --text-shadow: 0 4px 3px rgba(0, 0, 0, 0.4);
  --link-colour: var(--colour-primary);
  --colour-font-dark: rgba(20, 20, 20, 1);
  --colour-font-dark-muted: rgba(20, 20, 20, .5);
  --colour-font-light: rgb(255, 255, 255);
  --colour-font-light-muted: rgba(0, 0, 0, .5);
  --colour-font-light-transparent: rgba(255, 255, 255, .9);
  --colour-border-grey: #b1b4b6;
  --colour-border-grey-dark: #505a5f;
  --colour-focus: #fecc2f;
  --colour-error: rgba(219, 56, 56, 1);
  --colour-success: rgba(178, 194, 37, 1);
  --colour-link: rgb(206, 0, 88);
  --colour-link-visited: #840883;
  --colour-link-hover: #15495a;
  --component-box-shadow: 0 3px 8px 0 rgba(0, 0, 0, .25);
  --component-box-shadow-light: 0 2px 0 #929191;
  --component-border-radius: 5px;
  --component-border-grey: rgb(225, 225, 225);
  --font-primary: "Source Sans 3", sans-serif;
  --font-secondary: "Bebas Neue", sans-serif;
  /* Logo */
  --logo-url: url("/images/logos/ep_logo.svg");
  /* Icons */
  --icon-calendar: url("/images/icons/calendar.svg");
  --icon-location: url("/images/icons/location.svg");
  --icon-time: url("/images/icons/time.svg");
  --icon-size-s: 0.875rem;
  --icon-size-m: 1rem;
  --icon-size-l: 1.25rem;
  --icon-gap: var(--space-2xs);
  --icon-color-default: currentColor;
  --icon-color-muted: var(--color-text-muted);
  --icon-color-success: var(--color-success);
  /* base values */
  --text-base-size: 16pt;
  --text-scale-ratio: 1.3;
  /* text scale */
  --text-xs: calc(1em / (var(--text-scale-ratio) * var(--text-scale-ratio)));
  --text-s: calc(1em / var(--text-scale-ratio));
  --text-m: calc(1em * var(--text-scale-ratio));
  --text-l: calc(1em * (var(--text-scale-ratio) * var(--text-scale-ratio)));
  --text-xl: calc(1em * (var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio)));
  --text-2xl: calc(1em * (var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio)));
  --text-3xl: calc(1em * (var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio)));
  --text-hero: calc(1em * (var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio) * var(--text-scale-ratio)));
  /* line height */
  --body-line-height: 1.4;
  --heading-line-height: 1.1;
  /* spacing */
  --space-unit: 1em;
  --space-4xs: calc(0.125 * var(--space-unit));
  /* 2px */
  --space-3xs: calc(0.25 * var(--space-unit));
  /* 4px */
  --space-2xs: calc(0.375 * var(--space-unit));
  /* 6px */
  --space-xs: calc(0.5 * var(--space-unit));
  /* 8px */
  --space-s: calc(0.75 * var(--space-unit));
  /* 12px */
  --space-m: calc(1.25 * var(--space-unit));
  /* 20px */
  --space-l: calc(2 * var(--space-unit));
  /* 32px */
  --space-xl: calc(3.25 * var(--space-unit));
  /* 52px */
  --space-2xl: calc(5.25 * var(--space-unit));
  /* 84px */
  --space-3xl: calc(8.5 * var(--space-unit));
  /* 136px */
  --space-4xl: calc(13.75 * var(--space-unit));
  /* 220px */
  /* base multipliers */
  --line-height-multiplier: 1;
  --text-vspace-multiplier: 1;
  /* surfaces */
  --surface: #fff;
  --surface-weak: #fefbff;
  --surface-strong: #f0f3f5;
  /* elevation (maps to your shadows) */
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.08);
  --shadow-s: 0 2px 6px rgba(0, 0, 0, 0.12);
  --shadow-m: 0 2px 6px rgba(0, 0, 0, 0.15);
  --shadow-l: 0 8px 24px rgba(0, 0, 0, 0.18);
  /* borders (semantic alias layer) */
  --border: rgb(225, 225, 225);
  --border-strong: rgb(195, 195, 195);
  /* radius system (replace hard-coded 5px usage later) */
  --radius-s: 3px;
  --radius-m: var(--component-border-radius);
  --radius-l: 20px;
  --radius-round: 999px;
  --mobile-menu-breakpoint: 900px;
}
/* responsive breakpoints */
@media (max-width: 900px) {
  :root {
    --text-base-size: 14pt;
    --text-scale-ratio: 1.15
  ;
  }
}
/*
** Page break points
*/
/*
** Spacing tokens
*/
/*
** Media size tokens
*/
/*
** Flex column media tokens 
*/
/* Lists */
/* Image containers */
/*
** Responsive break points
*/
/*
** Colour schemes
*/
/* Background image */
/*
** Spacing utilities
*/
.m-3xl {
  margin: var(--space-3xl);
}
.mt-3xl {
  margin-top: var(--space-3xl);
}
.mr-3xl {
  margin-right: var(--space-3xl);
}
.mb-3xl {
  margin-bottom: var(--space-3xl);
}
.ml-3xl {
  margin-left: var(--space-3xl);
}
.mx-3xl {
  margin-left: var(--space-3xl);
}
.my-3xl {
  margin-top: var(--space-3xl);
}
.p-3xl {
  margin: var(--space-3xl);
}
.pt-3xl {
  padding-top: var(--space-3xl);
}
.pr-3xl {
  padding-right: var(--space-3xl);
}
.pb-3xl {
  padding-bottom: var(--space-3xl);
}
.pl-3xl {
  padding-left: var(--space-3xl);
}
.px-3xl {
  padding-left: var(--space-3xl);
}
.py-3xl {
  padding-top: var(--space-3xl);
}
.m-2xl {
  margin: var(--space-2xl);
}
.mt-2xl {
  margin-top: var(--space-2xl);
}
.mr-2xl {
  margin-right: var(--space-2xl);
}
.mb-2xl {
  margin-bottom: var(--space-2xl);
}
.ml-2xl {
  margin-left: var(--space-2xl);
}
.mx-2xl {
  margin-left: var(--space-2xl);
}
.my-2xl {
  margin-top: var(--space-2xl);
}
.p-2xl {
  margin: var(--space-2xl);
}
.pt-2xl {
  padding-top: var(--space-2xl);
}
.pr-2xl {
  padding-right: var(--space-2xl);
}
.pb-2xl {
  padding-bottom: var(--space-2xl);
}
.pl-2xl {
  padding-left: var(--space-2xl);
}
.px-2xl {
  padding-left: var(--space-2xl);
}
.py-2xl {
  padding-top: var(--space-2xl);
}
.m-xl {
  margin: var(--space-xl);
}
.mt-xl {
  margin-top: var(--space-xl);
}
.mr-xl {
  margin-right: var(--space-xl);
}
.mb-xl {
  margin-bottom: var(--space-xl);
}
.ml-xl {
  margin-left: var(--space-xl);
}
.mx-xl {
  margin-left: var(--space-xl);
}
.my-xl {
  margin-top: var(--space-xl);
}
.p-xl {
  margin: var(--space-xl);
}
.pt-xl {
  padding-top: var(--space-xl);
}
.pr-xl {
  padding-right: var(--space-xl);
}
.pb-xl {
  padding-bottom: var(--space-xl);
}
.pl-xl {
  padding-left: var(--space-xl);
}
.px-xl {
  padding-left: var(--space-xl);
}
.py-xl {
  padding-top: var(--space-xl);
}
.m-l {
  margin: var(--space-l);
}
.mt-l {
  margin-top: var(--space-l);
}
.mr-l {
  margin-right: var(--space-l);
}
.mb-l {
  margin-bottom: var(--space-l);
}
.ml-l {
  margin-left: var(--space-l);
}
.mx-l {
  margin-left: var(--space-l);
}
.my-l {
  margin-top: var(--space-l);
}
.p-l {
  margin: var(--space-l);
}
.pt-l {
  padding-top: var(--space-l);
}
.pr-l {
  padding-right: var(--space-l);
}
.pb-l {
  padding-bottom: var(--space-l);
}
.pl-l {
  padding-left: var(--space-l);
}
.px-l {
  padding-left: var(--space-l);
}
.py-l {
  padding-top: var(--space-l);
}
.m-m {
  margin: var(--space-m);
}
.mt-m {
  margin-top: var(--space-m);
}
.mr-m {
  margin-right: var(--space-m);
}
.mb-m {
  margin-bottom: var(--space-m);
}
.ml-m {
  margin-left: var(--space-m);
}
.mx-m {
  margin-left: var(--space-m);
}
.my-m {
  margin-top: var(--space-m);
}
.p-m {
  margin: var(--space-m);
}
.pt-m {
  padding-top: var(--space-m);
}
.pr-m {
  padding-right: var(--space-m);
}
.pb-m {
  padding-bottom: var(--space-m);
}
.pl-m {
  padding-left: var(--space-m);
}
.px-m {
  padding-left: var(--space-m);
}
.py-m {
  padding-top: var(--space-m);
}
.m-s {
  margin: var(--space-s);
}
.mt-s {
  margin-top: var(--space-s);
}
.mr-s {
  margin-right: var(--space-s);
}
.mb-s {
  margin-bottom: var(--space-s);
}
.ml-s {
  margin-left: var(--space-s);
}
.mx-s {
  margin-left: var(--space-s);
}
.my-s {
  margin-top: var(--space-s);
}
.p-s {
  margin: var(--space-s);
}
.pt-s {
  padding-top: var(--space-s);
}
.pr-s {
  padding-right: var(--space-s);
}
.pb-s {
  padding-bottom: var(--space-s);
}
.pl-s {
  padding-left: var(--space-s);
}
.px-s {
  padding-left: var(--space-s);
}
.py-s {
  padding-top: var(--space-s);
}
.m-xs {
  margin: var(--space-xs);
}
.mt-xs {
  margin-top: var(--space-xs);
}
.mr-xs {
  margin-right: var(--space-xs);
}
.mb-xs {
  margin-bottom: var(--space-xs);
}
.ml-xs {
  margin-left: var(--space-xs);
}
.mx-xs {
  margin-left: var(--space-xs);
}
.my-xs {
  margin-top: var(--space-xs);
}
.p-xs {
  margin: var(--space-xs);
}
.pt-xs {
  padding-top: var(--space-xs);
}
.pr-xs {
  padding-right: var(--space-xs);
}
.pb-xs {
  padding-bottom: var(--space-xs);
}
.pl-xs {
  padding-left: var(--space-xs);
}
.px-xs {
  padding-left: var(--space-xs);
}
.py-xs {
  padding-top: var(--space-xs);
}
.m-2xs {
  margin: var(--space-2xs);
}
.mt-2xs {
  margin-top: var(--space-2xs);
}
.mr-2xs {
  margin-right: var(--space-2xs);
}
.mb-2xs {
  margin-bottom: var(--space-2xs);
}
.ml-2xs {
  margin-left: var(--space-2xs);
}
.mx-2xs {
  margin-left: var(--space-2xs);
}
.my-2xs {
  margin-top: var(--space-2xs);
}
.p-2xs {
  margin: var(--space-2xs);
}
.pt-2xs {
  padding-top: var(--space-2xs);
}
.pr-2xs {
  padding-right: var(--space-2xs);
}
.pb-2xs {
  padding-bottom: var(--space-2xs);
}
.pl-2xs {
  padding-left: var(--space-2xs);
}
.px-2xs {
  padding-left: var(--space-2xs);
}
.py-2xs {
  padding-top: var(--space-2xs);
}
.m-3xs {
  margin: var(--space-3xs);
}
.mt-3xs {
  margin-top: var(--space-3xs);
}
.mr-3xs {
  margin-right: var(--space-3xs);
}
.mb-3xs {
  margin-bottom: var(--space-3xs);
}
.ml-3xs {
  margin-left: var(--space-3xs);
}
.mx-3xs {
  margin-left: var(--space-3xs);
}
.my-3xs {
  margin-top: var(--space-3xs);
}
.p-3xs {
  margin: var(--space-3xs);
}
.pt-3xs {
  padding-top: var(--space-3xs);
}
.pr-3xs {
  padding-right: var(--space-3xs);
}
.pb-3xs {
  padding-bottom: var(--space-3xs);
}
.pl-3xs {
  padding-left: var(--space-3xs);
}
.px-3xs {
  padding-left: var(--space-3xs);
}
.py-3xs {
  padding-top: var(--space-3xs);
}
.m-0 {
  margin: 0px;
}
.mt-0 {
  margin-top: 0px;
}
.mr-0 {
  margin-right: 0px;
}
.mb-0 {
  margin-bottom: 0px;
}
.ml-0 {
  margin-left: 0px;
}
.mx-0 {
  margin-left: 0px;
}
.my-0 {
  margin-top: 0px;
}
.p-0 {
  margin: 0px;
}
.pt-0 {
  padding-top: 0px;
}
.pr-0 {
  padding-right: 0px;
}
.pb-0 {
  padding-bottom: 0px;
}
.pl-0 {
  padding-left: 0px;
}
.px-0 {
  padding-left: 0px;
}
.py-0 {
  padding-top: 0px;
}
/* Text */
/* Headings */
/* UI colour schemes */
/* Interaction behaviours */
/* UI components */
/* Page width containers */
/* Stack layout */
/* Prose containers */
/*
** Flex layout
*/
/*
** Grid layout
*/
/* Horizontal lines */
/*
** Image sizes
*/
.cookie-banner {
  padding-top: var(--space-m);
  padding-bottom: var(--space-m);
  --surface-colour: var(--colour-bg-transparent-dark);
  background-color: var(--colour-bg-transparent-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 200;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  max-height: 100vh;
  opacity: 0;
  visibility: hidden;
  transition: opacity 200ms ease, visibility 200ms ease;
  align-items: center;
}
.cookie-banner[hidden] {
  display: none;
}
.cookie-banner.cookie-banner--visible {
  opacity: 1;
  visibility: visible;
}
@media (max-width: 500px) {
  .cookie-banner {
    align-items: end;
  }
}
.cookie-banner > div {
  display: flex;
  align-items: center;
  justify-content: center;
}
#cookie-consent-form {
  box-shadow: var(--shadow-m);
  border-radius: var(--radius-m);
  border: 1px solid transparent;
  --surface-colour: var(--colour-bg-grey);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg-grey);
  padding: var(--space-s);
  max-width: 65ch;
  transform: translateY(-10px);
  transition: transform 200ms ease;
}
.cookie-banner--visible #cookie-consent-form {
  transform: translateY(0);
}
.cookie-banner__heading {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
  margin-top: 0px;
}
.cookie-banner__message > p {
  font-size: var(--text-s);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
}
.cookie-banner__button-group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-s);
  gap: var(--space-s);
  font-size: var(--text-s);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
  flex-direction: row;
}
@media (max-width: 500px) {
  .cookie-banner__button-group {
    flex-direction: column-reverse;
  }
}
.cookie-banner__button-group .button, .cookie-banner__button-group .homepage-header__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  font-size: inherit;
  flex-grow: 1;
}
.cookie-banner__button-group .button:hover, .cookie-banner__button-group .homepage-header__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.cookie-banner__button-group .button:focus-visible, .cookie-banner__button-group .homepage-header__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.cookie-banner__button-group .button:disabled, .cookie-banner__button-group .homepage-header__button:disabled, .cookie-banner__button-group .button[aria-disabled="true"], .cookie-banner__button-group .homepage-header__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.cookie-banner__button-group .button--reject {
  --surface-colour: var(--colour-bg-grey-dark);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg-grey-dark);
}
.cookie-banner__button-group .button--reject, .cookie-banner__button-group .button--reject:link, .cookie-banner__button-group .button--reject:visited, .cookie-banner__button-group .button--reject:hover, .cookie-banner__button-group .button--reject:active, .cookie-banner__button-group .button--reject:focus, .cookie-banner__button-group .button--reject:focus-visible {
  color: var(--colour-font-dark);
}
.markdown {
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  line-height: var(--body-line-height);
  text-shadow: none;
}
.markdown p {
  line-height: inherit;
}
.markdown ul, .markdown ol {
  padding-left: var(--space-l);
}
.markdown li {
  line-height: inherit;
}
.markdown figure img {
  display: block;
}
.markdown p {
  line-height: var(--body-line-height);
}
.markdown h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
}
.markdown h2 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
}
.markdown h3 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
}
.markdown h4 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
}
.markdown h5 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
.markdown h6 {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
}
.markdown ul, .markdown ol {
  padding-left: var(--space-l);
}
.markdown table {
  overflow-x: auto;
  max-width: 100%;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.markdown th, .markdown td {
  padding-top: var(--space-xs);
  padding-right: var(--space-m);
  padding-bottom: var(--space-xs);
  padding-left: 0px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}
.markdown img {
  width: 100%;
  height: auto;
  display: block;
}
.markdown iframe {
  width: 100%;
  aspect-ratio: 1.7777777778;
}
.markdown code {
  font-family: monospace;
}
.markdown p code {
  background: rgba(0, 0, 0, 0.05);
  padding: var(--space-2xs) var(--space-xs);
  border-radius: 4px;
}
.markdown pre {
  padding: var(--space-m);
  overflow-x: auto;
  font-family: monospace;
  background: #0b0c0c;
  color: #fff;
  border-radius: 8px;
}
.markdown a:not(.button) {
  cursor: pointer;
  text-decoration: underline;
}
.markdown a:not(.button):hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.markdown a:not(.button):focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.markdown a:not(.button):link {
  color: var(--link-colour);
}
.markdown a.button, .markdown a.homepage-header__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}
.markdown a.button:hover, .markdown a.homepage-header__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.markdown a.button:focus-visible, .markdown a.homepage-header__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.markdown a.button:disabled, .markdown a.homepage-header__button:disabled, .markdown a.button[aria-disabled="true"], .markdown a.homepage-header__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
#iotalogin {
  max-width: 65ch;
  box-shadow: var(--shadow-m);
  border-radius: var(--radius-m);
  border: 1px solid transparent;
  --surface-colour: var(--colour-bg);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg);
  padding: var(--space-s);
  display: flex;
  flex-direction: column;
}
#iotalogin h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
  margin-top: 0px;
}
#iotalogin label {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
#iotalogin input {
  margin-top: var(--space-2xs);
  margin-bottom: var(--space-s);
}
#iotalogin input[type="submit"] {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}
#iotalogin input[type="submit"]:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
#iotalogin input[type="submit"]:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
#iotalogin input[type="submit"]:disabled, #iotalogin input[type="submit"][aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
h1 + div.reason {
  margin-bottom: var(--space-m);
}
.flair-container .page-width-container, .flair-container--reverse .page-width-container {
  position: relative;
  padding: var(--space-xl) var(--space-s);
}
@media (max-width: 900px) {
  .flair-container .page-width-container, .flair-container--reverse .page-width-container {
    padding: var(--space-l) var(--space-s);
  }
}
.flair-container__content-wrapper {
  display: grid;
  grid-template-columns: 65ch 1fr;
  grid-template-rows: auto;
  gap: var(--space-s) var(--space-s);
}
.flair-container__content-wrapper .tauGallery {
  grid-column: 1 / -1;
}
.flair-container__heading-container {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto;
  margin-bottom: var(--space-s);
}
.flair-container__heading {
  max-width: 65ch;
  margin: 0;
  font-family: var(--font-secondary);
  font-size: var(--text-l);
  font-weight: 400;
  line-height: var(--heading-line-height);
}
.flair-container__heading-line {
  display: block;
  height: 4px;
  margin-left: var(--space-m);
  background-color: var(--colour-font-dark);
  align-self: center;
}
.flair-container__text-container > * {
  margin: 0;
}
.flair-container__text-container > * + * {
  margin-top: var(--space-m);
}
.flair-container__text-container h1, .flair-container__text-container h2, .flair-container__text-container h3, .flair-container__text-container h4, .flair-container__text-container h5, .flair-container__text-container h6 {
  margin-top: var(--space-m);
}
@media (max-width: 900px) {
  .flair-container__text-container h1, .flair-container__text-container h2, .flair-container__text-container h3, .flair-container__text-container h4, .flair-container__text-container h5, .flair-container__text-container h6 {
    margin-top: var(--space-m);
  }
}
.flair-container__text-container h1 + *, .flair-container__text-container h2 + *, .flair-container__text-container h3 + *, .flair-container__text-container h4 + *, .flair-container__text-container h5 + *, .flair-container__text-container h6 + * {
  margin-top: var(--space-m);
}
.flair-container__text-container > :first-child {
  margin-top: 0;
}
.flair-container__text-container *:first-child {
  margin-top: 0;
}
.flair-container__image-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.flair-container__image {
  max-width: 100%;
}
.flair-container--reverse .flair-container__content-wrapper {
  grid-template-columns: 1fr 65ch;
  grid-template-rows: auto;
}
.flair-container--reverse .flair-container__heading-container {
  grid-column: 2;
}
.flair-container--reverse .flair-container__text-container {
  grid-column: 2;
  grid-row: 2;
}
.flair-container--reverse .flair-container__image-container {
  grid-column: 1;
  grid-row: 2;
  justify-self: center;
}
@media (max-width: 1100px) {
  .flair-container__image {
    width: 100%;
    max-width: 400px;
  }
  .flair-container__heading-container {
    grid-column: 1;
    grid-row: 1;
  }
  .flair-container__content-wrapper {
    grid-template-columns: auto;
    grid-template-rows: auto auto;
  }
  .flair-container--reverse .flair-container__content-wrapper {
    grid-template-columns: auto;
    grid-auto-rows: auto;
  }
  .flair-container--reverse .flair-container__content-wrapper .flair-container__heading-container {
    grid-column: auto;
    grid-row: auto;
  }
  .flair-container--reverse .flair-container__content-wrapper .flair-container__text-container {
    grid-column: auto;
    grid-row: auto;
  }
  .flair-container--reverse .flair-container__content-wrapper .flair-container__image-container {
    grid-column: auto;
    grid-row: auto;
    justify-self: center;
  }
}
/* bebas-neue-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bebas Neue";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/bebas-neue-v14-latin-regular.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* source-sans-3-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Source Sans 3";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/source-sans-3-v15-latin-regular.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* source-sans-3-900 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Source Sans 3";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/source-sans-3-v15-latin-900.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
}
.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}
.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box;
}
.mfp-container:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.mfp-align-top .mfp-container:before {
  display: none;
}
.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}
.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}
.mfp-ajax-cur {
  cursor: progress;
}
.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}
.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}
.mfp-auto-cursor .mfp-content {
  cursor: auto;
}
.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.mfp-loading.mfp-figure {
  display: none;
}
.mfp-hide {
  display: none !important;
}
.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}
.mfp-preloader a {
  color: #CCC;
}
.mfp-preloader a:hover {
  color: #FFF;
}
.mfp-s-ready .mfp-preloader {
  display: none;
}
.mfp-s-error .mfp-content {
  display: none;
}
button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation;
}
button::-moz-focus-inner {
  padding: 0;
  border: 0;
}
.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace;
}
.mfp-close:hover, .mfp-close:focus {
  opacity: 1;
}
.mfp-close:active {
  top: 1px;
}
.mfp-close-btn-in .mfp-close {
  color: #333;
}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}
.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap;
}
.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent;
}
.mfp-arrow:active {
  margin-top: -54px;
}
.mfp-arrow:hover, .mfp-arrow:focus {
  opacity: 1;
}
.mfp-arrow:before, .mfp-arrow:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}
.mfp-arrow:after {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}
.mfp-arrow:before {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7;
}
.mfp-arrow-left {
  left: 0;
}
.mfp-arrow-left:after {
  border-right: 17px solid #FFF;
  margin-left: 31px;
}
.mfp-arrow-left:before {
  margin-left: 25px;
  border-right: 27px solid #3F3F3F;
}
.mfp-arrow-right {
  right: 0;
}
.mfp-arrow-right:after {
  border-left: 17px solid #FFF;
  margin-left: 39px;
}
.mfp-arrow-right:before {
  border-left: 27px solid #3F3F3F;
}
.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}
.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}
.mfp-iframe-holder .mfp-close {
  top: -40px;
}
.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}
.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}
/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}
/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}
.mfp-figure:after {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}
.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  line-height: 14px;
}
.mfp-figure figure {
  margin: 0;
}
.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}
.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px;
}
.mfp-image-holder .mfp-content {
  max-width: 100%;
}
.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}
@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
         * Remove all paddings around the image on small screen
         */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }
  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box;
  }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}
@media (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0;
  }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%;
  }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}
.super-navigation {
  font-size: var(--text-base-size);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-secondary);
  height: auto;
  white-space: nowrap;
  background: none;
}
.super-navigation__content-container .page-width-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  padding: var(--space-s);
  height: 100%;
}
.super-navigation__svg-container {
  padding: 0px;
  display: inline-block;
}
.super-navigation__svg-container:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.super-navigation__logo {
  padding: 0px;
  margin: 0px;
  width: 130px;
  height: auto;
}
@media (max-width: 1300px) {
  .super-navigation__logo {
    width: 100px;
  }
}
@media (max-width: 900px) {
  .super-navigation__logo {
    width: 80px;
  }
}
.super-navigation__menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
}
nav {
  height: auto;
  width: 100%;
  white-space: nowrap;
}
.super-navigation__nested-list {
  padding: 0px;
  margin: 0px;
  list-style: none;
}
.super-navigation__nested-list li {
  display: inline-block;
}
.super-navigation__single-link {
  height: 100%;
}
.super-navigation__single-link a {
  display: block;
  cursor: pointer;
  text-decoration: underline;
  padding-top: var(--space-2xs);
  padding-bottom: var(--space-2xs);
  padding-left: var(--space-s);
  padding-right: var(--space-s);
  font-family: var(--font-secondary);
  text-decoration: none;
}
.super-navigation__single-link a:hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.super-navigation__single-link a:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.super-navigation__single-link a:link {
  color: var(--link-colour);
}
.super-navigation__single-link a, .super-navigation__single-link a:link, .super-navigation__single-link a:visited, .super-navigation__single-link a:hover, .super-navigation__single-link a:active, .super-navigation__single-link a:focus, .super-navigation__single-link a:focus-visible {
  color: var(--colour-font-dark);
}
.super-navigation__single-link a:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.super-navigation__single-link a:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.super-navigation__single-link--emphasis {
  --surface-colour: var(--colour-primary);
  color: var(--colour-font-light);
  background-color: var(--colour-primary);
  padding: 0px;
  margin-left: var(--space-s);
  border-radius: var(--component-border-radius);
}
.super-navigation__single-link--emphasis a, .super-navigation__single-link--emphasis a:link, .super-navigation__single-link--emphasis a:visited, .super-navigation__single-link--emphasis a:hover, .super-navigation__single-link--emphasis a:active, .super-navigation__single-link--emphasis a:focus, .super-navigation__single-link--emphasis a:focus-visible {
  color: var(--colour-font-light);
}
.super-navigation__mobile-menu {
  padding-left: var(--space-m);
  display: none;
  position: relative;
  border-left: 1px solid var(--colour-font-dark);
}
.super-navigation__mobile-menu-heading {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: no-wrap;
}
button.super-navigation__mobile-menu-button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  cursor: pointer;
  line-height: inherit;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
  border-radius: 0;
  display: inline-flex;
  gap: var(--space-xs);
  align-items: center;
  justify-content: center;
  line-height: 1;
  text-decoration: none;
}
button.super-navigation__mobile-menu-button::before {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  margin-top: calc(-0.6rem / 2);
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  display: inline-block;
  transition: transform 0.2s ease;
  transform: rotate(45deg);
  transform-origin: center;
}
button.super-navigation__mobile-menu-button[aria-expanded="true"]::before {
  transform: rotate(-135deg) translateY(calc(-0.6rem / 2)) translateX(calc(-0.6rem / 2));
}
button.super-navigation__mobile-menu-button::before {
  transform: rotate(45deg);
}
button.super-navigation__mobile-menu-button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
button.super-navigation__mobile-menu-button:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
@media (max-width: 740px) {
  .super-navigation__nested-list {
    display: flex;
    flex-direction: column;
    gap: var(--space-s);
    align-items: stretch;
    justify-content: flex-start;
    --surface-colour: var(--colour-bg-grey);
    color: var(--colour-font-dark);
    background-color: var(--colour-bg-grey);
    box-shadow: var(--shadow-m);
    border-radius: var(--radius-m);
    border: 1px solid transparent;
    position: absolute;
    top: 60px;
    right: var(--space-s);
    min-width: 300px;
    width: auto;
    border-radius: 0;
    z-index: 100;
  }
  .super-navigation__nested-list a, .super-navigation__nested-list a:link, .super-navigation__nested-list a:visited, .super-navigation__nested-list a:hover, .super-navigation__nested-list a:active, .super-navigation__nested-list a:focus, .super-navigation__nested-list a:focus-visible {
    color: var(--colour-font-dark);
  }
  .super-navigation__nested-list .super-navigation__single-link a, .super-navigation__nested-list .super-navigation__single-link a:link, .super-navigation__nested-list .super-navigation__single-link a:visited, .super-navigation__nested-list .super-navigation__single-link a:hover, .super-navigation__nested-list .super-navigation__single-link a:active, .super-navigation__nested-list .super-navigation__single-link a:focus, .super-navigation__nested-list .super-navigation__single-link a:focus-visible {
    color: var(--colour-font-dark);
  }
  .super-navigation__nested-list .super-navigation__single-link--emphasis {
    margin-left: 0px;
    border-radius: 0;
  }
  .super-navigation__nested-list .super-navigation__single-link--emphasis a, .super-navigation__nested-list .super-navigation__single-link--emphasis a:link, .super-navigation__nested-list .super-navigation__single-link--emphasis a:visited, .super-navigation__nested-list .super-navigation__single-link--emphasis a:hover, .super-navigation__nested-list .super-navigation__single-link--emphasis a:active, .super-navigation__nested-list .super-navigation__single-link--emphasis a:focus, .super-navigation__nested-list .super-navigation__single-link--emphasis a:focus-visible {
    color: var(--colour-font-light);
  }
  .super-navigation__mobile-menu {
    display: block;
  }
}
.footer {
  font-size: var(--text-s);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
  padding-bottom: var(--space-l);
  padding-top: var(--space-xl);
  background: var(--colour-grey-gradient);
  border-top: 3px solid var(--colour-border-grey);
}
.footer, .footer:link, .footer:visited, .footer:hover, .footer:active, .footer:focus, .footer:focus-visible {
  color: var(--colour-font-light);
}
@media (max-width: 900px) {
  .footer {
    padding-top: var(--space-m);
  }
}
.footer__main-content {
  display: grid;
  grid-auto-columns: 1fr 1fr;
  grid-auto-rows: auto;
  gap: var(--space-s);
  width: 100%;
}
.footer__main-content a:focus-visible, .footer__main-content a:link:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.footer__main-content a, .footer__main-content a:link, .footer__main-content a:visited, .footer__main-content a:hover, .footer__main-content a:active, .footer__main-content a:focus, .footer__main-content a:focus-visible, .footer__main-content a:link:link, .footer__main-content a:link:visited, .footer__main-content a:link:hover, .footer__main-content a:link:active, .footer__main-content a:link:focus, .footer__main-content a:link:focus-visible {
  color: var(--colour-font-light);
}
.footer__logo {
  grid-column: 1;
  width: 100%;
}
.footer__logo img {
  object-fit: contain;
  width: auto;
  margin: 0;
  height: 45px;
}
@media (max-width: 900px) {
  .footer__logo img {
    height: 35px;
  }
}
.footer__accreditation-badges {
  display: flex;
  gap: var(--space-s);
  grid-column: 2;
  grid-row: 1;
  flex-wrap: nowrap;
}
@media (max-width: 900px) {
  .footer__accreditation-badges {
    grid-column: 1;
  }
}
@media (max-width: 900px) {
  .footer__accreditation-badges {
    grid-row: unset;
  }
}
@media (max-width: 900px) {
  .footer__accreditation-badges {
    flex-wrap: wrap;
  }
}
.footer__accreditation-badges img {
  width: auto;
  flex-shrink: 0;
  object-fit: contain;
  height: 100px;
}
@media (max-width: 900px) {
  .footer__accreditation-badges img {
    height: 50px;
  }
}
.footer__contact-details {
  grid-column: 1;
}
.footer__charity-number {
  grid-column: 1;
}
.footer__copyright {
  grid-column: 1;
}
.footer__foot-links ul {
  padding-top: var(--space-s);
  padding-left: 0px;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  margin-top: var(--space-l);
  margin-bottom: var(--space-l);
}
@media (max-width: 740px) {
  .footer__foot-links ul {
    margin-top: var(--space-m);
  }
}
@media (max-width: 740px) {
  .footer__foot-links ul {
    margin-bottom: var(--space-m);
  }
}
.footer__foot-links li {
  margin-right: var(--space-s);
  display: inline-block;
}
.footer__foot-links a:focus-visible, .footer__foot-links a:link:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.footer__foot-links a, .footer__foot-links a:link, .footer__foot-links a:visited, .footer__foot-links a:hover, .footer__foot-links a:active, .footer__foot-links a:focus, .footer__foot-links a:focus-visible, .footer__foot-links a:link:link, .footer__foot-links a:link:visited, .footer__foot-links a:link:hover, .footer__foot-links a:link:active, .footer__foot-links a:link:focus, .footer__foot-links a:link:focus-visible {
  color: var(--colour-font-light);
}
.form, #iotalogin {
  width: 100%;
  max-width: 65ch;
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  --text-base-size: 14pt;
}
.form__heading {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
  display: block;
  margin-top: 0;
}
.form__label {
  display: inline;
  font-weight: 400;
}
.form__label:has(input[type="checkbox"]), .form__label:has(input[type="radio"]) {
  cursor: pointer;
}
.form__input, #iotalogin input {
  display: inline-block;
  width: 100%;
  padding: var(--space-xs);
  font-family: inherit;
  font-size: inherit;
  border: 1px solid #ccc;
  border-radius: var(--component-border-radius);
  min-height: var(--space-l);
  box-sizing: border-box;
}
.form__input[type=radio], #iotalogin input[type=radio] {
  width: var(--space-l);
  height: var(--space-l);
}
.form__input[type=checkbox], #iotalogin input[type=checkbox] {
  width: var(--space-l);
  height: var(--space-l);
}
.form__input[type=submit], #iotalogin input[type=submit] {
  margin-top: var(--space-m);
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  margin-top: 0;
  margin-bottom: var(--space-2xs);
}
.form__input[type=submit]:hover, #iotalogin input[type=submit]:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.form__input[type=submit]:focus-visible, #iotalogin input[type=submit]:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.form__input[type=submit]:disabled, #iotalogin input[type=submit]:disabled, .form__input[type=submit][aria-disabled="true"], #iotalogin input[aria-disabled="true"][type=submit] {
  opacity: 0.5;
  pointer-events: none;
}
.form__input-group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-3xs);
  margin-top: var(--space-m);
  margin-bottom: var(--space-m) !important;
}
.form__radio-group, .form__checkbox-group {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row-reverse;
  width: 100%;
  margin-top: var(--space-m);
}
.form__radio-group .form__label, .form__checkbox-group .form__label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.form__radio-group input, .form__checkbox-group input {
  margin: 0;
  cursor: pointer;
}
.form__fieldset legend {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
  margin-top: 0;
  margin-bottom: 0;
}
.form__fieldset:not(:first-of-type) {
  margin-top: var(--space-m);
}
.form__required {
  color: var(--colour-blue);
  font-weight: 600 !important;
}
.form__error-message, h1 + div.reason {
  width: 100%;
  padding: var(--space-s);
  font-weight: 600 !important;
  margin-bottom: 0;
  color: var(--colour-font-light);
  background: var(--colour-error);
}
.form__error-message:not([hidden]), h1 + div.reason:not([hidden]) {
  display: block;
}
.form__submit-page .form__heading {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
  margin-top: 0;
}
.form__success-message {
  padding: var(--space-m) var(--space-s);
  background: var(--colour-success);
}
.form__fail-message {
  padding: var(--space-m) var(--space-s);
  background: var(--colour-error);
  color: var(--colour-font-light);
}
.form__fail-message a {
  color: var(--colour-font-light) !important;
}
.form__fail-message a:focus, .form__fail-message a:focus-visible {
  color: var(--colour-font-dark) !important;
}
.form__thanks-message {
  width: 100%;
  padding: var(--space-s);
  background: var(--colour-bg-grey);
}
.form__loading-ring {
  position: relative;
  width: 80px;
  height: 80px;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: display 400ms;
  -o-transition: display 400ms;
  transition: display 400ms;
}
.form__loading-ring div {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 64px;
  height: 64px;
  margin: 8px;
  border: 8px solid var(--colour-primary);
  border-radius: 50%;
  -webkit-animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: var(--colour-primary) transparent transparent transparent;
}
.form__loading-ring div:nth-child(1) {
  -webkit-animation-delay: -0.45s;
  animation-delay: -0.45s;
}
.form__loading-ring div:nth-child(2) {
  -webkit-animation-delay: -0.3s;
  animation-delay: -0.3s;
}
.form__loading-ring div:nth-child(3) {
  -webkit-animation-delay: -0.15s;
  animation-delay: -0.15s;
}
@-webkit-keyframes lds-ring {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes lds-ring {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
*, *::before, *::after {
  box-sizing: border-box;
}
html {
  width: 100%;
  height: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: var(--colour-bg);
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
}
body {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 300px;
  min-height: 100%;
  margin: 0 auto;
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  line-height: var(--body-line-height);
  background: var(--colour-bg);
  overflow-x: auto;
}
main {
  display: block;
  flex-grow: 1;
}
.skip-link {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.skip-link:focus-visible {
  background-color: var(--colour-focus);
  outline: 3px solid var(--colour-focus);
  outline-offset: 0px;
}
.skip-link:focus-visible, .skip-link:focus-visible:link, .skip-link:focus-visible:visited, .skip-link:focus-visible:hover, .skip-link:focus-visible:active, .skip-link:focus-visible:focus, .skip-link:focus-visible:focus-visible {
  color: var(--colour-font-dark);
}
.skip-link:focus-visible, .skip-link:active {
  padding: var(--space-s);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  height: auto;
  clip-path: none;
  overflow: visible;
  white-space: normal;
}
.page-width-container {
  max-width: 1300px;
  width: 100%;
  padding-left: var(--space-s);
  padding-right: var(--space-s);
}
@media (max-width: 1300px) {
  .page-width-container {
    max-width: 1100px;
  }
}
@media (max-width: 1100px) {
  .page-width-container {
    max-width: 900px;
  }
}
@media (max-width: 900px) {
  .page-width-container {
    max-width: 740px;
  }
}
@media (min-width: 740px) {
  .page-width-container {
    margin-left: auto;
    margin-right: auto;
  }
}
p {
  font-size: var(--text-base-size);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
}
a {
  color: var(--link-colour, currentColor);
}
a:visited {
  color: var(--link-colour, var(--link-colour, currentColor));
}
a:hover {
  color: var(--link-colour, var(--link-colour, currentColor));
}
a:active {
  color: var(--link-colour, var(--link-colour, currentColor));
}
a.button, a.homepage-header__button, a:link.button, a.homepage-header__button:link {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background-color: var(--colour-primary);
}
a.button:hover, a.homepage-header__button:hover, a:link.button:hover, a.homepage-header__button:link:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
a.button:focus-visible, a.homepage-header__button:focus-visible, a:link.button:focus-visible, a.homepage-header__button:link:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
a.button:disabled, a.homepage-header__button:disabled, a.button[aria-disabled="true"], a.homepage-header__button[aria-disabled="true"], a:link.button:disabled, a.homepage-header__button:link:disabled, a:link.button[aria-disabled="true"], a.homepage-header__button[aria-disabled="true"]:link {
  opacity: 0.5;
  pointer-events: none;
}
a.button, a.homepage-header__button, a.button:link, a.homepage-header__button:link, a.button:visited, a.homepage-header__button:visited, a.button:hover, a.homepage-header__button:hover, a.button:active, a.homepage-header__button:active, a.button:focus, a.homepage-header__button:focus, a.button:focus-visible, a.homepage-header__button:focus-visible, a:link.button, a:link.button:link, a:link.button:visited, a.homepage-header__button:link:visited, a:link.button:hover, a.homepage-header__button:link:hover, a:link.button:active, a.homepage-header__button:link:active, a:link.button:focus, a.homepage-header__button:link:focus, a:link.button:focus-visible, a.homepage-header__button:link:focus-visible {
  color: var(--colour-font-light);
}
a.button, a.homepage-header__button, a.button:link, a.homepage-header__button:link, a.button:visited, a.homepage-header__button:visited, a.button:hover, a.homepage-header__button:hover, a.button:active, a.homepage-header__button:active, a.button:focus, a.homepage-header__button:focus, a.button:focus-visible, a.homepage-header__button:focus-visible, a:link.button, a:link.button:link, a:link.button:visited, a.homepage-header__button:link:visited, a:link.button:hover, a.homepage-header__button:link:hover, a:link.button:active, a.homepage-header__button:link:active, a:link.button:focus, a.homepage-header__button:link:focus, a:link.button:focus-visible, a.homepage-header__button:link:focus-visible {
  color: var(--colour-font-light);
}
a.button, a.homepage-header__button, a.button:link, a.homepage-header__button:link, a.button:visited, a.homepage-header__button:visited, a.button:hover, a.homepage-header__button:hover, a.button:active, a.homepage-header__button:active, a.button:focus, a.homepage-header__button:focus, a.button:focus-visible, a.homepage-header__button:focus-visible, a:link.button, a:link.button:link, a:link.button:visited, a.homepage-header__button:link:visited, a:link.button:hover, a.homepage-header__button:link:hover, a:link.button:active, a.homepage-header__button:link:active, a:link.button:focus, a.homepage-header__button:link:focus, a:link.button:focus-visible, a.homepage-header__button:link:focus-visible {
  color: var(--colour-font-light);
}
h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
}
h2 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
}
h3 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
}
h4 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
}
h5 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
h6 {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
}
.margin-top-3xl {
  margin-top: var(--space-3xl) !important;
}
.margin-top-2xl {
  margin-top: var(--space-2xl) !important;
}
.margin-top-xl {
  margin-top: var(--space-xl) !important;
}
.margin-top-l {
  margin-top: var(--space-l) !important;
}
.margin-top-m {
  margin-top: var(--space-m) !important;
}
.margin-top-s {
  margin-top: var(--space-s) !important;
}
.margin-top-xs {
  margin-top: var(--space-xs) !important;
}
.margin-top-2xs {
  margin-top: var(--space-2xs) !important;
}
.margin-top-3xs {
  margin-top: var(--space-3xs) !important;
}
.margin-right-3xl {
  margin-right: var(--space-3xl) !important;
}
.margin-right-2xl {
  margin-right: var(--space-2xl) !important;
}
.margin-right-xl {
  margin-right: var(--space-xl) !important;
}
.margin-right-l {
  margin-right: var(--space-l) !important;
}
.margin-right-m {
  margin-right: var(--space-m) !important;
}
.margin-right-s {
  margin-right: var(--space-s) !important;
}
.margin-right-xs {
  margin-right: var(--space-xs) !important;
}
.margin-right-2xs {
  margin-right: var(--space-2xs) !important;
}
.margin-right-3xs {
  margin-right: var(--space-3xs) !important;
}
.margin-bottom-3xl {
  margin-bottom: var(--space-3xl) !important;
}
.margin-bottom-2xl {
  margin-bottom: var(--space-2xl) !important;
}
.margin-bottom-xl {
  margin-bottom: var(--space-xl) !important;
}
.margin-bottom-l {
  margin-bottom: var(--space-l) !important;
}
.margin-bottom-m {
  margin-bottom: var(--space-m) !important;
}
.margin-bottom-s {
  margin-bottom: var(--space-s) !important;
}
.margin-bottom-xs {
  margin-bottom: var(--space-xs) !important;
}
.margin-bottom-2xs {
  margin-bottom: var(--space-2xs) !important;
}
.margin-bottom-3xs {
  margin-bottom: var(--space-3xs) !important;
}
.margin-left-3xl {
  margin-left: var(--space-3xl) !important;
}
.margin-left-2xl {
  margin-left: var(--space-2xl) !important;
}
.margin-left-xl {
  margin-left: var(--space-xl) !important;
}
.margin-left-l {
  margin-left: var(--space-l) !important;
}
.margin-left-m {
  margin-left: var(--space-m) !important;
}
.margin-left-s {
  margin-left: var(--space-s) !important;
}
.margin-left-xs {
  margin-left: var(--space-xs) !important;
}
.margin-left-2xs {
  margin-left: var(--space-2xs) !important;
}
.margin-left-3xs {
  margin-left: var(--space-3xs) !important;
}
.padding-top-3xl {
  padding-top: var(--space-3xl) !important;
}
.padding-top-2xl {
  padding-top: var(--space-2xl) !important;
}
.padding-top-xl {
  padding-top: var(--space-xl) !important;
}
.padding-top-l {
  padding-top: var(--space-l) !important;
}
.padding-top-m {
  padding-top: var(--space-m) !important;
}
.padding-top-s {
  padding-top: var(--space-s) !important;
}
.padding-top-xs {
  padding-top: var(--space-xs) !important;
}
.padding-top-2xs {
  padding-top: var(--space-2xs) !important;
}
.padding-top-3xs {
  padding-top: var(--space-3xs) !important;
}
.padding-right-3xl {
  padding-right: var(--space-3xl) !important;
}
.padding-right-2xl {
  padding-right: var(--space-2xl) !important;
}
.padding-right-xl {
  padding-right: var(--space-xl) !important;
}
.padding-right-l {
  padding-right: var(--space-l) !important;
}
.padding-right-m {
  padding-right: var(--space-m) !important;
}
.padding-right-s {
  padding-right: var(--space-s) !important;
}
.padding-right-xs {
  padding-right: var(--space-xs) !important;
}
.padding-right-2xs {
  padding-right: var(--space-2xs) !important;
}
.padding-right-3xs {
  padding-right: var(--space-3xs) !important;
}
.padding-bottom-3xl {
  padding-bottom: var(--space-3xl) !important;
}
.padding-bottom-2xl {
  padding-bottom: var(--space-2xl) !important;
}
.padding-bottom-xl {
  padding-bottom: var(--space-xl) !important;
}
.padding-bottom-l {
  padding-bottom: var(--space-l) !important;
}
.padding-bottom-m {
  padding-bottom: var(--space-m) !important;
}
.padding-bottom-s {
  padding-bottom: var(--space-s) !important;
}
.padding-bottom-xs {
  padding-bottom: var(--space-xs) !important;
}
.padding-bottom-2xs {
  padding-bottom: var(--space-2xs) !important;
}
.padding-bottom-3xs {
  padding-bottom: var(--space-3xs) !important;
}
.padding-left-3xl {
  padding-left: var(--space-3xl) !important;
}
.padding-left-2xl {
  padding-left: var(--space-2xl) !important;
}
.padding-left-xl {
  padding-left: var(--space-xl) !important;
}
.padding-left-l {
  padding-left: var(--space-l) !important;
}
.padding-left-m {
  padding-left: var(--space-m) !important;
}
.padding-left-s {
  padding-left: var(--space-s) !important;
}
.padding-left-xs {
  padding-left: var(--space-xs) !important;
}
.padding-left-2xs {
  padding-left: var(--space-2xs) !important;
}
.padding-left-3xs {
  padding-left: var(--space-3xs) !important;
}
.text-page {
  padding-top: var(--space-xl);
  padding-bottom: var(--space-xl);
}
@media (max-width: 900px) {
  .text-page {
    padding-top: var(--space-l);
  }
}
@media (max-width: 900px) {
  .text-page {
    padding-bottom: var(--space-l);
  }
}
.text-page__column-wrapper {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 400px;
  grid-template-rows: auto;
  grid-template-areas: "left right";
}
@media (max-width: 1300px) {
  .text-page__column-wrapper {
    grid-template-areas: "left" "right";
    grid-template-columns: 1fr;
  }
}
.text-page__column-wrapper--wide {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-template-areas: "left";
}
.text-page__column-wrapper--wide .text-page__left-column > div {
  max-width: 65ch;
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  line-height: var(--body-line-height);
  text-shadow: none;
  max-width: 65ch;
}
.text-page__column-wrapper--wide .text-page__left-column > div > * {
  margin: 0;
}
.text-page__column-wrapper--wide .text-page__left-column > div > * + * {
  margin-top: var(--space-m);
}
.text-page__column-wrapper--wide .text-page__left-column > div h1, .text-page__column-wrapper--wide .text-page__left-column > div h2, .text-page__column-wrapper--wide .text-page__left-column > div h3, .text-page__column-wrapper--wide .text-page__left-column > div h4, .text-page__column-wrapper--wide .text-page__left-column > div h5, .text-page__column-wrapper--wide .text-page__left-column > div h6 {
  margin-top: var(--space-m);
}
@media (max-width: 900px) {
  .text-page__column-wrapper--wide .text-page__left-column > div h1, .text-page__column-wrapper--wide .text-page__left-column > div h2, .text-page__column-wrapper--wide .text-page__left-column > div h3, .text-page__column-wrapper--wide .text-page__left-column > div h4, .text-page__column-wrapper--wide .text-page__left-column > div h5, .text-page__column-wrapper--wide .text-page__left-column > div h6 {
    margin-top: var(--space-m);
  }
}
.text-page__column-wrapper--wide .text-page__left-column > div h1 + *, .text-page__column-wrapper--wide .text-page__left-column > div h2 + *, .text-page__column-wrapper--wide .text-page__left-column > div h3 + *, .text-page__column-wrapper--wide .text-page__left-column > div h4 + *, .text-page__column-wrapper--wide .text-page__left-column > div h5 + *, .text-page__column-wrapper--wide .text-page__left-column > div h6 + * {
  margin-top: var(--space-m);
}
.text-page__column-wrapper--wide .text-page__left-column > div > :first-child {
  margin-top: 0;
}
.text-page__column-wrapper--wide .text-page__left-column > div p {
  line-height: inherit;
}
.text-page__column-wrapper--wide .text-page__left-column > div ul, .text-page__column-wrapper--wide .text-page__left-column > div ol {
  padding-left: var(--space-l);
}
.text-page__column-wrapper--wide .text-page__left-column > div li {
  line-height: inherit;
}
.text-page__column-wrapper--wide .text-page__left-column > div figure img {
  display: block;
}
.text-page__column-wrapper--wide .text-page__left-column > div p {
  line-height: var(--body-line-height);
}
.text-page__column-wrapper--wide .text-page__left-column > div h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
}
.text-page__column-wrapper--wide .text-page__left-column > div h2 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
}
.text-page__column-wrapper--wide .text-page__left-column > div h3 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
}
.text-page__column-wrapper--wide .text-page__left-column > div h4 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
}
.text-page__column-wrapper--wide .text-page__left-column > div h5 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
.text-page__column-wrapper--wide .text-page__left-column > div h6 {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
}
.text-page__column-wrapper--wide .text-page__left-column > div ul, .text-page__column-wrapper--wide .text-page__left-column > div ol {
  padding-left: var(--space-l);
}
.text-page__column-wrapper--wide .text-page__left-column > div table {
  overflow-x: auto;
  max-width: 100%;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.text-page__column-wrapper--wide .text-page__left-column > div th, .text-page__column-wrapper--wide .text-page__left-column > div td {
  padding-top: var(--space-xs);
  padding-right: var(--space-m);
  padding-bottom: var(--space-xs);
  padding-left: 0px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}
.text-page__column-wrapper--wide .text-page__left-column > div img {
  width: 100%;
  height: auto;
  display: block;
}
.text-page__column-wrapper--wide .text-page__left-column > div iframe {
  width: 100%;
  aspect-ratio: 1.7777777778;
}
.text-page__column-wrapper--wide .text-page__left-column > div code {
  font-family: monospace;
}
.text-page__column-wrapper--wide .text-page__left-column > div p code {
  background: rgba(0, 0, 0, 0.05);
  padding: var(--space-2xs) var(--space-xs);
  border-radius: 4px;
}
.text-page__column-wrapper--wide .text-page__left-column > div pre {
  padding: var(--space-m);
  overflow-x: auto;
  font-family: monospace;
  background: #0b0c0c;
  color: #fff;
  border-radius: 8px;
}
.text-page__column-wrapper--wide .text-page__left-column > div a:not(.button) {
  cursor: pointer;
  text-decoration: underline;
}
.text-page__column-wrapper--wide .text-page__left-column > div a:not(.button):hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.text-page__column-wrapper--wide .text-page__left-column > div a:not(.button):focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.text-page__column-wrapper--wide .text-page__left-column > div a:not(.button):link {
  color: var(--link-colour);
}
.text-page__column-wrapper--wide .text-page__left-column > div a.button, .text-page__column-wrapper--wide .text-page__left-column > div a.homepage-header__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}
.text-page__column-wrapper--wide .text-page__left-column > div a.button:hover, .text-page__column-wrapper--wide .text-page__left-column > div a.homepage-header__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.text-page__column-wrapper--wide .text-page__left-column > div a.button:focus-visible, .text-page__column-wrapper--wide .text-page__left-column > div a.homepage-header__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.text-page__column-wrapper--wide .text-page__left-column > div a.button:disabled, .text-page__column-wrapper--wide .text-page__left-column > div a.homepage-header__button:disabled, .text-page__column-wrapper--wide .text-page__left-column > div a.button[aria-disabled="true"], .text-page__column-wrapper--wide .text-page__left-column > div a.homepage-header__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.text-page__left-column {
  grid-area: left;
}
.text-page__left-column > div {
  max-width: 65ch;
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  line-height: var(--body-line-height);
  text-shadow: none;
}
.text-page__left-column > div > * {
  margin: 0;
}
.text-page__left-column > div > * + * {
  margin-top: var(--space-m);
}
.text-page__left-column > div h1, .text-page__left-column > div h2, .text-page__left-column > div h3, .text-page__left-column > div h4, .text-page__left-column > div h5, .text-page__left-column > div h6 {
  margin-top: var(--space-m);
}
@media (max-width: 900px) {
  .text-page__left-column > div h1, .text-page__left-column > div h2, .text-page__left-column > div h3, .text-page__left-column > div h4, .text-page__left-column > div h5, .text-page__left-column > div h6 {
    margin-top: var(--space-m);
  }
}
.text-page__left-column > div h1 + *, .text-page__left-column > div h2 + *, .text-page__left-column > div h3 + *, .text-page__left-column > div h4 + *, .text-page__left-column > div h5 + *, .text-page__left-column > div h6 + * {
  margin-top: var(--space-m);
}
.text-page__left-column > div > :first-child {
  margin-top: 0;
}
.text-page__left-column > div p {
  line-height: inherit;
}
.text-page__left-column > div ul, .text-page__left-column > div ol {
  padding-left: var(--space-l);
}
.text-page__left-column > div li {
  line-height: inherit;
}
.text-page__left-column > div figure img {
  display: block;
}
.text-page__left-column > div p {
  line-height: var(--body-line-height);
}
.text-page__left-column > div h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
}
.text-page__left-column > div h2 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
}
.text-page__left-column > div h3 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
}
.text-page__left-column > div h4 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
}
.text-page__left-column > div h5 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
.text-page__left-column > div h6 {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
}
.text-page__left-column > div ul, .text-page__left-column > div ol {
  padding-left: var(--space-l);
}
.text-page__left-column > div table {
  overflow-x: auto;
  max-width: 100%;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.text-page__left-column > div th, .text-page__left-column > div td {
  padding-top: var(--space-xs);
  padding-right: var(--space-m);
  padding-bottom: var(--space-xs);
  padding-left: 0px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}
.text-page__left-column > div img {
  width: 100%;
  height: auto;
  display: block;
}
.text-page__left-column > div iframe {
  width: 100%;
  aspect-ratio: 1.7777777778;
}
.text-page__left-column > div code {
  font-family: monospace;
}
.text-page__left-column > div p code {
  background: rgba(0, 0, 0, 0.05);
  padding: var(--space-2xs) var(--space-xs);
  border-radius: 4px;
}
.text-page__left-column > div pre {
  padding: var(--space-m);
  overflow-x: auto;
  font-family: monospace;
  background: #0b0c0c;
  color: #fff;
  border-radius: 8px;
}
.text-page__left-column > div a:not(.button) {
  cursor: pointer;
  text-decoration: underline;
}
.text-page__left-column > div a:not(.button):hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.text-page__left-column > div a:not(.button):focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.text-page__left-column > div a:not(.button):link {
  color: var(--link-colour);
}
.text-page__left-column > div a.button, .text-page__left-column > div a.homepage-header__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}
.text-page__left-column > div a.button:hover, .text-page__left-column > div a.homepage-header__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.text-page__left-column > div a.button:focus-visible, .text-page__left-column > div a.homepage-header__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.text-page__left-column > div a.button:disabled, .text-page__left-column > div a.homepage-header__button:disabled, .text-page__left-column > div a.button[aria-disabled="true"], .text-page__left-column > div a.homepage-header__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.text-page__right-column {
  grid-area: right;
}
.text-page__column-wrapper > * {
  min-width: 0;
}
.breadcrumbs {
  font-size: var(--text-base-size);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
  margin-top: var(--space-s);
  margin-bottom: 0;
}
.breadcrumbs ol.breadcrumbs__list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.breadcrumbs ol.breadcrumbs__list::after {
  content: "";
  display: block;
  clear: both;
}
.breadcrumbs__list-item {
  display: inline-block;
  position: relative;
  margin-bottom: var(--space-2xs);
  margin-left: 7px;
  padding-left: var(--space-s);
  float: left;
}
.breadcrumbs__list-item::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -3.31px;
  width: 7px;
  height: 7px;
  margin: auto 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  border: solid;
  border-width: 1px 1px 0 0;
  border-color: var(--colour-border-grey-dark);
}
.breadcrumbs__list-item:first-child {
  margin-left: 0;
  padding-left: 0;
}
.breadcrumbs__list-item:first-child::before {
  content: none;
  display: none;
}
.breadcrumbs__link {
  cursor: pointer;
  text-decoration: underline;
}
.breadcrumbs__link:hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.breadcrumbs__link:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.breadcrumbs__link:link {
  color: var(--link-colour);
}
.captioned-image {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  color: var(--text-colour-muted);
  margin: 0px;
  display: inline-flex;
}
.captioned-image--surface-white {
  --surface-colour: var(--colour-bg);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg);
  color: var(--text-colour-muted);
}
.captioned-image--surface-white .captioned-image__caption {
  padding: var(--space-xs);
}
.captioned-image--surface-elevated {
  box-shadow: var(--shadow-m);
  border-radius: var(--radius-m);
  border: 1px solid transparent;
  color: var(--text-colour-muted);
}
.captioned-image--surface-elevated .captioned-image__caption {
  padding: var(--space-xs);
}
.captioned-image--surface-outlined {
  border: 3px dotted var(--border);
  box-shadow: none;
  color: var(--text-colour-muted);
}
.captioned-image--surface-outlined .captioned-image__caption {
  padding: var(--space-xs);
}
.captioned-image--surface-primary {
  --surface-colour: var(--colour-primary);
  color: var(--colour-font-light);
  background-color: var(--colour-primary);
}
.captioned-image--surface-primary .captioned-image__caption {
  padding: var(--space-xs);
}
.captioned-image--surface-darkprimary {
  --surface-colour: var(--colour-primary-dark);
  color: var(--colour-font-light);
  background-color: var(--colour-primary-dark);
}
.captioned-image--surface-darkprimary .captioned-image__caption {
  padding: var(--space-xs);
}
.captioned-image--surface-lightprimary {
  --surface-colour: var(--colour-primary-light);
  color: var(--colour-font-dark);
  background-color: var(--colour-primary-light);
}
.captioned-image--surface-lightprimary .captioned-image__caption {
  padding: var(--space-xs);
}
.captioned-image--surface-grey {
  --surface-colour: var(--colour-bg-grey);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg-grey);
}
.captioned-image--surface-grey .captioned-image__caption {
  padding: var(--space-xs);
}
.captioned-image__image-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: auto;
}
.captioned-image__image-container--16-9 {
  aspect-ratio: 1.7777777778;
}
.captioned-image__image-container--square {
  aspect-ratio: 1;
}
.captioned-image__image-container--3xs {
  max-width: 100px;
  width: 100%;
  height: auto;
}
.captioned-image__image-container--2xs {
  max-width: 200px;
  width: 100%;
  height: auto;
}
.captioned-image__image-container--xs {
  max-width: 300px;
  width: 100%;
  height: auto;
}
.captioned-image__image-container--s {
  max-width: 400px;
  width: 100%;
  height: auto;
}
.captioned-image__image-container--m {
  max-width: 500px;
  width: 100%;
  height: auto;
}
.captioned-image__image-container--l {
  max-width: 650px;
  width: 100%;
  height: auto;
}
.captioned-image__image-container--xl {
  max-width: 750px;
  width: 100%;
  height: auto;
}
.captioned-image__image-container--2xl {
  max-width: 850px;
  width: 100%;
  height: auto;
}
.captioned-image__image-container--3xl {
  max-width: 950px;
  width: 100%;
  height: auto;
}
.captioned-image__image-container--full {
  max-width: 100%;
  width: 100%;
  height: auto;
}
.captioned-image__image-container .captioned-image__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  margin: 0;
}
.captioned-image__caption {
  font-size: var(--text-s);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
  padding-top: var(--space-xs);
}
.countdown-container {
  width: 100%;
  border-top: 5px solid var(--colour-border-grey);
  border-bottom: 5px solid var(--colour-border-grey);
}
.countdown-container--mini {
  background: var(--colour-grey-gradient);
  border-top: 5px solid var(--colour-border-grey-dark);
  border-bottom: 5px solid var(--colour-border-grey-dark);
}
.countdown-container--mini .countdown-container__background-container {
  padding-top: var(--space-xs);
  padding-bottom: var(--space-xs);
  background: var(--colour-grey-gradient);
}
.countdown-container--mini .countdown-container__heading-container {
  opacity: 0;
  margin-bottom: var(--space-3xs);
}
.countdown-container--mini .countdown-container__heading {
  font-size: var(--text-m);
  text-shadow: none;
}
@media (max-width: 900px) {
  .countdown-container--mini .countdown-container__heading {
    font-size: var(--text-base-size);
  }
}
@media (max-width: 740px) {
  .countdown-container--mini .countdown-container__heading {
    font-size: var(--text-s);
  }
}
.countdown-container--mini .countdown-container__clock {
  opacity: 0;
  grid-auto-columns: 65px;
  grid-template-rows: auto;
  gap: var(--space-2xs);
}
.countdown-container--mini .countdown-container__clock-days, .countdown-container--mini .countdown-container__clock-hours, .countdown-container--mini .countdown-container__clock-minutes, .countdown-container--mini .countdown-container__clock-seconds {
  grid-row: 1;
  padding: var(--space-3xs);
  background: none;
  outline: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: var(--component-border-radius);
}
.countdown-container--mini .countdown-container__clock-time-container {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
.countdown-container--mini .countdown-container__clock-digits {
  font-size: var(--text-m);
}
@media (max-width: 740px) {
  .countdown-container--mini .countdown-container__clock-digits {
    font-size: var(--text-s);
  }
}
.countdown-container--mini .countdown-container__clock-units {
  font-size: var(--text-base-size);
}
@media (max-width: 740px) {
  .countdown-container--mini .countdown-container__clock-units {
    font-size: var(--text-s);
  }
}
.countdown-container__background-container {
  position: relative;
  display: block;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--space-s);
  padding-right: var(--space-s);
  padding-top: var(--space-xl);
  padding-bottom: var(--space-xl);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-image: linear-gradient(180deg, rgba(243, 187, 126, 0.5) 0%, rgba(214, 71, 239, 0.5) 100%), url("/sites/eastleighpride/site/images/home/countdown/parade.webp");
}
.countdown-container__heading-container {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;
  justify-items: center;
  margin-bottom: var(--space-xs);
}
.countdown-container__heading {
  max-width: 65ch;
  margin: 0;
  font-family: var(--font-secondary);
  font-size: var(--text-l);
  font-weight: 400;
  line-height: var(--heading-line-height);
  color: var(--colour-font-light);
  text-align: center;
  text-shadow: 0 0 5px #000, 0 0 9px #000, 0 0 15px #000;
}
.countdown-container__clock {
  display: grid;
  grid-template-columns: 150px 150px 150px 150px;
  grid-auto-rows: 150px;
  justify-content: center;
  gap: var(--space-m);
}
.countdown-container__clock-days, .countdown-container__clock-hours, .countdown-container__clock-minutes, .countdown-container__clock-seconds {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--colour-grey-gradient);
  width: 100%;
}
.countdown-container__clock-time-container {
  text-align: center;
  width: 100%;
}
.countdown-container__clock-digits {
  font-family: var(--font-secondary);
  font-size: var(--text-2xl);
  font-weight: 400;
  line-height: 1;
  color: var(--colour-font-light);
}
.countdown-container__clock-digits p {
  margin: 0;
}
.countdown-container__clock-units {
  font-family: var(--font-secondary);
  font-size: var(--text-base-size);
  font-weight: 400;
  line-height: 1;
  color: var(--colour-font-light);
}
.countdown-container__clock-units p {
  margin: 0;
}
.countdown-container__end-message {
  opacity: 0;
  grid-column: 1/-1;
  padding: var(--space-m) 0;
  font-family: var(--font-secondary);
  font-size: var(--text-base-size);
  color: var(--colour-font-light);
  text-align: left;
}
.countdown-container__end-message a {
  color: var(--colour-font-light);
}
.countdown-container__end-message .page-width-container {
  padding-left: var(--space-s);
  padding-right: var(--space-s);
}
@media (max-width: 900px) {
  .countdown-container--mini .countdown-container__clock {
    grid-template-columns: 65px 65px 65px 65px;
  }
  .countdown-container__clock {
    grid-template-columns: minmax(auto, 65ch);
    grid-auto-rows: auto;
    gap: var(--space-s);
  }
  .countdown-container__clock-days, .countdown-container__clock-hours, .countdown-container__clock-minutes, .countdown-container__clock-seconds {
    display: block;
    width: 100%;
    max-width: 500px;
    height: auto;
    padding: var(--space-xs);
    margin-left: auto;
    margin-right: auto;
  }
  .countdown-container__clock-time-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    width: 100%;
    max-width: 140px;
    margin-left: auto;
    margin-right: auto;
    align-items: center;
  }
  .countdown-container__clock-digits, .countdown-container__clock-units {
    display: inline-block;
  }
  .countdown-container__clock-digits {
    justify-self: center;
  }
  .countdown-container__clock-units {
    justify-self: left;
  }
  .countdown-container--mini .countdown-container__clock-units {
    justify-self: center;
  }
}
.email-form {
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  padding: 0;
  margin-top: var(--space-l);
  background: var(--colour-bg);
}
.email-form__fieldset {
  margin-left: 0;
  margin-right: 0;
}
.email-form__fieldset legend {
  margin-top: 0;
}
.email-form__heading {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
  display: block;
}
.email-form__heading:not(:first-of-type) {
  margin-top: var(--space-m);
}
.email-form__label {
  display: inline;
  font-weight: 400;
}
.email-form__input[type=text], .email-form__input[type=email] {
  display: inline-block;
  width: 100%;
  padding: var(--space-xs);
  margin-top: var(--space-2xs);
  font-family: inherit;
  font-size: inherit;
  border-radius: var(--component-border-radius);
  min-height: var(--space-l);
}
.email-form__input[type=textarea] {
  display: inline-block;
  width: 100%;
  padding: var(--space-xs);
  font-family: inherit;
  font-size: inherit;
  border-radius: var(--component-border-radius);
  min-height: var(--space-l);
}
.email-form__input[type=radio] {
  width: var(--space-l);
  height: var(--space-l);
}
.email-form__input[type=submit] {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background-color: var(--colour-primary);
  font-size: var(--text-base-size);
  margin-top: var(--space-s);
  margin-bottom: 0;
}
.email-form__input[type=submit]:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.email-form__input[type=submit]:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.email-form__input[type=submit]:disabled, .email-form__input[type=submit][aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.email-form__input[type=submit], .email-form__input[type=submit]:link, .email-form__input[type=submit]:visited, .email-form__input[type=submit]:hover, .email-form__input[type=submit]:active, .email-form__input[type=submit]:focus, .email-form__input[type=submit]:focus-visible {
  color: var(--colour-font-light);
}
.email-form__input[type=submit], .email-form__input[type=submit]:link, .email-form__input[type=submit]:visited, .email-form__input[type=submit]:hover, .email-form__input[type=submit]:active, .email-form__input[type=submit]:focus, .email-form__input[type=submit]:focus-visible {
  color: var(--colour-font-light);
}
.email-form__input-group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-top: var(--space-m);
  margin-bottom: var(--space-m) !important;
  width: 100%;
}
.email-form__radio-group {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row-reverse;
  width: 100%;
  margin-bottom: var(--space-m);
}
.email-form__fieldset {
  display: block;
}
.email-form__fieldset legend {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
  margin-bottom: 0;
}
.email-form__fieldset:not(:first-of-type) {
  margin-top: var(--space-m);
}
.email-form__fieldset--hidden {
  display: none;
}
.email-form__error-message {
  width: 100%;
  padding: var(--space-s);
  font-weight: 900;
  margin-bottom: 0;
  color: var(--colour-font-light);
  background: var(--colour-error);
}
.email-form__success, .email-form__failure {
  border: 1px solid var(--colour-black);
  padding: var(--space-s);
}
.email-form__success h3, .email-form__failure h3 {
  margin-top: 0 !important;
  margin-bottom: var(--space-4xs);
}
.email-form__loading-ring {
  display: block;
  position: relative;
  width: 80px;
  height: 80px;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: display 400ms;
  -o-transition: display 400ms;
  transition: display 400ms;
}
.email-form__loading-ring div {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 64px;
  height: 64px;
  margin: 8px;
  border: 8px solid var(--colour-blue);
  border-radius: 50%;
  -webkit-animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: var(--colour-blue) transparent transparent transparent;
}
.email-form__loading-ring div:nth-child(1) {
  -webkit-animation-delay: -0.45s;
  animation-delay: -0.45s;
}
.email-form__loading-ring div:nth-child(2) {
  -webkit-animation-delay: -0.3s;
  animation-delay: -0.3s;
}
.email-form__loading-ring div:nth-child(3) {
  -webkit-animation-delay: -0.15s;
  animation-delay: -0.15s;
}
@-webkit-keyframes lds-ring {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes lds-ring {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.featured-container__float-wrapper {
  margin-left: calc(-1 * var(--space-s));
  margin-right: calc(-1 * var(--space-s));
  overflow: auto;
}
.featured-container__story-wrapper {
  width: 33.333%;
  float: left;
  padding-left: var(--space-s);
  padding-right: var(--space-s);
}
.featured-story {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  margin-bottom: var(--space-2xs);
}
.featured-story::after {
  content: "";
  display: block;
  clear: both;
}
.featured-story__header-and-context-wrapper {
  display: flex;
  flex-direction: column-reverse;
}
.featured-story__title {
  max-width: 65ch;
  margin: 0;
  font-family: var(--font-secondary);
  font-size: var(--text-m);
  font-weight: 500;
  line-height: var(--heading-line-height);
}
.featured-story__title-link {
  cursor: pointer;
  text-decoration: underline;
  font-family: var(--font-secondary);
  font-weight: 500;
}
.featured-story__title-link:hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.featured-story__title-link:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.featured-story__title-link:link {
  color: var(--link-colour);
}
.featured-story__title-link::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
}
.featured-story__description {
  position: relative;
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  font-weight: 400;
  padding-top: var(--space-2xs);
  line-height: 1.2;
  word-wrap: break-word;
}
.featured-story__description p {
  margin: 0;
}
.featured-story__image-wrapper {
  height: 100%;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: var(--space-2xs);
}
.featured-story__image {
  display: block;
  height: auto;
  width: 100%;
  border-top: 1px solid var(--colour-border-grey);
  border-left: none;
  border-right: none;
  border-bottom: none;
}
@media (max-width: 900px) {
  .featured-container {
    display: grid;
    grid-template-columns: auto;
    grid-auto-rows: auto;
    align-items: start;
    gap: var(--space-s);
  }
  .featured-container__story-wrapper {
    width: 100%;
    padding-left: var(--space-s);
    padding-right: var(--space-s);
  }
  .featured-container__story-wrapper:nth-of-type(1) > .featured-story, .featured-container__story-wrapper:nth-of-type(2) > .featured-story {
    border-bottom: 1px solid var(--colour-border-grey);
    padding-bottom: var(--space-m);
  }
  .featured-container__story-wrapper:first-child > .featured-story {
    padding-top: 0;
  }
  .featured-story {
    display: block;
    margin-top: 1px;
    margin-bottom: 0;
    padding-top: var(--space-m);
  }
  .featured-story__text-wrapper {
    float: right;
    padding-left: 0;
    width: 50%;
  }
  .featured-story__image-wrapper {
    width: 50%;
    float: left;
    padding-right: var(--space-s);
  }
}
.go-button-banner {
  width: 100%;
  margin-bottom: var(--space-xl);
}
@media (max-width: 900px) {
  .go-button-banner {
    margin-bottom: var(--space-l);
  }
}
.go-button-banner .page-width-container {
  width: 100%;
  max-width: 1100px;
  padding-left: var(--space-s);
  padding-right: var(--space-s);
}
.go-button-banner__text-container {
  box-shadow: var(--shadow-m);
  border-radius: var(--radius-m);
  border: 1px solid transparent;
  --surface-colour: var(--surface-weak);
  color: var(--colour-font-dark);
  background-color: var(--surface-weak);
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  grid-template-rows: auto;
  align-items: center;
  padding: var(--space-m) var(--space-s);
  gap: var(--space-xs);
}
.go-button-banner__heading {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
  max-width: 100%;
  margin: 0;
}
.go-button-banner__go-button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background-color: var(--colour-primary);
  margin: 0;
  justify-self: center;
}
.go-button-banner__go-button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.go-button-banner__go-button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.go-button-banner__go-button:disabled, .go-button-banner__go-button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.go-button-banner__go-button, .go-button-banner__go-button:link, .go-button-banner__go-button:visited, .go-button-banner__go-button:hover, .go-button-banner__go-button:active, .go-button-banner__go-button:focus, .go-button-banner__go-button:focus-visible {
  color: var(--colour-font-light);
}
.go-button-banner__go-button, .go-button-banner__go-button:link, .go-button-banner__go-button:visited, .go-button-banner__go-button:hover, .go-button-banner__go-button:active, .go-button-banner__go-button:focus, .go-button-banner__go-button:focus-visible {
  color: var(--colour-font-light);
}
@media (max-width: 1100px) {
  .go-button-banner .page-width-container {
    max-width: 900px;
  }
}
@media (max-width: 900px) {
  .go-button-banner .page-width-container {
    max-width: 740px;
  }
}
@media (max-width: 740px) {
  .go-button-banner__text-container {
    grid-template-columns: auto;
    grid-template-rows: auto;
    text-align: center;
  }
}
.grid-menu {
  margin-bottom: var(--space-xl);
}
.grid-menu__list {
  list-style: none;
  padding: 0;
  margin: 0 calc(var(--space-s) * -1);
  display: grid;
  grid-auto-flow: row;
  grid-template-rows: auto;
  grid-auto-rows: 1fr;
  grid-template-columns: 1fr 1fr 1fr;
}
.grid-card {
  margin: 0 30px;
  padding: var(--space-2xs) 0 var(--space-2xs) 0;
}
.grid-card:not(:last-of-type) {
  border-right: 1px solid var(--colour-border-grey);
}
.grid-card__item-wrapper {
  padding: var(--space-xs) 35px var(--space-xs) 0;
  position: relative;
}
.grid-card__heading {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
  margin: 0 35px var(--space-2xs) 0;
}
.grid-card__link {
  cursor: pointer;
  text-decoration: underline;
  font-family: var(--font-secondary) !important;
}
.grid-card__link:hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.grid-card__link:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.grid-card__link:link {
  color: var(--link-colour);
}
.grid-card__link:after {
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.grid-card__link:before {
  border-right: 3px solid #1d70b8;
  border-top: 3px solid #1d70b8;
  content: "";
  height: 10px;
  position: absolute;
  right: 50px;
  top: 20px;
  -webkit-transform: translateY(0) rotate(45deg) scale(1);
  -ms-transform: translateY(0) rotate(45deg) scale(1);
  transform: translateY(0) rotate(45deg) scale(1);
  width: 10px;
}
.grid-card__link:hover:before {
  border-color: #003078;
}
.grid-card__link:focus:before {
  border-color: #0b0c0c;
}
.grid-card__link-description {
  margin: 0 35px 0 0;
}
@media (max-width: 740px) {
  .grid-menu__list {
    grid-template-columns: 1fr;
  }
  .grid-card {
    border-right: none !important;
  }
}
.homepage-header {
  width: 100%;
}
.homepage-header .page-width-container {
  width: 100%;
  max-width: 100%;
}
.homepage-header--map {
  background-color: #1fa0e0;
}
.homepage-header--map .homepage-header__title-container {
  display: none;
}
.homepage-header--map .homepage-header__background-container {
  aspect-ratio: 1.414516129;
  height: auto;
  max-height: 900px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.homepage-header__background-container {
  position: relative;
  display: block;
  width: 100%;
  height: 900px;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--space-2xs);
  padding-right: var(--space-2xs);
  padding-top: var(--space-xl);
  padding-bottom: var(--space-xl);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("/sites/eastleighpride/site/images/home/homeheader/background.webp");
}
.homepage-header__title-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding-left: var(--space-2xs);
  padding-right: var(--space-2xs);
}
.homepage-header__title {
  display: block;
  max-width: 65ch;
  margin-top: 0;
  margin-bottom: var(--space-3xs);
  font-family: var(--font-secondary);
  font-size: var(--text-3xl);
  font-weight: 500;
  line-height: var(--heading-line-height);
  color: var(--colour-font-light);
  text-align: center;
  text-shadow: #000 1px 0 10px;
}
.homepage-header__strapline {
  display: block;
  max-width: 65ch;
  margin: 0;
  font-family: var(--font-secondary);
  font-size: var(--text-l);
  font-weight: 500;
  line-height: var(--heading-line-height);
  color: var(--colour-font-light);
  text-align: center;
  text-shadow: #000 1px 0 10px;
}
.homepage-header__button {
  width: auto;
  margin-top: var(--space-s);
  color: var(--colour-white);
  background: none;
  text-shadow: #000 2px 0 5px;
  outline: 3px solid var(--colour-white);
  box-shadow: 0 2px 0 var(--colour-white);
}
@media (max-width: 900px) {
  .homepage-header__background-container {
    height: 400px;
  }
  .homepage-header--map .homepage-header__title-container {
    display: none;
  }
  .homepage-header--map .homepage-header__background-container {
    height: auto;
  }
}
@media (max-width: 740px) {
  .homepage-header__background-container {
    background-image: url("/sites/eastleighpride/site/images/home/homeheader/background_mobile.webp");
  }
  .homepage-header__background-container {
    height: 300px;
  }
  .homepage-header--map .homepage-header__title-container {
    display: none;
  }
  .homepage-header--map .homepage-header__background-container {
    height: auto;
  }
}
.multilink-container {
  width: 100%;
  border-top: 5px solid var(--colour-border-grey);
  border-bottom: 5px solid var(--colour-border-grey);
}
.multilink-container .page-width-container {
  padding-left: 0px;
  padding-right: 0px;
  width: 100%;
  max-width: 100%;
}
.multilink-container__content-wrapper {
  display: grid;
  grid-template-columns: auto minmax(auto, 808px);
  grid-template-rows: auto;
}
.multilink-container__background-container {
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}
.multilink-container__text-container {
  padding-top: var(--space-xl);
  padding-bottom: var(--space-xl);
  padding-left: var(--space-2xl);
  padding-right: var(--space-2xl);
  background: var(--colour-grey-gradient);
}
.multilink-container__heading-container {
  margin-bottom: var(--space-l);
}
.multilink-container__heading {
  margin: 0;
  font-family: var(--font-secondary);
  font-size: var(--text-l);
  font-weight: 500;
  line-height: var(--heading-line-height);
  color: var(--colour-font-light);
}
.multilink-container__list-container {
  padding-left: 0;
  margin-bottom: 0;
}
.multilink-container__list-item {
  border-top: 1px solid var(--colour-border-grey);
  list-style: none;
}
.multilink-container__list-item-wrapper {
  position: relative;
  padding-top: var(--space-m);
}
.multilink-container__list-link {
  cursor: pointer;
  text-decoration: underline;
  font-weight: 700;
}
.multilink-container__list-link:hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.multilink-container__list-link:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.multilink-container__list-link:link {
  color: var(--link-colour);
}
.multilink-container__list-link, .multilink-container__list-link:link, .multilink-container__list-link:visited, .multilink-container__list-link:hover, .multilink-container__list-link:active, .multilink-container__list-link:focus, .multilink-container__list-link:focus-visible {
  color: var(--colour-font-light);
}
.multilink-container__list-link:visited {
  color: var(--colour-font-light);
}
.multilink-container__list-link::before {
  border-right: 3px solid var(--colour-font-light);
  border-top: 3px solid var(--colour-font-light);
  content: "";
  height: 7px;
  position: absolute;
  right: var(--space-xs);
  top: calc(var(--space-m) + 7px);
  -webkit-transform: translateY(0) rotate(45deg) scale(1);
  -ms-transform: translateY(0) rotate(45deg) scale(1);
  transform: translateY(0) rotate(45deg) scale(1);
  width: 7px;
}
.multilink-container__list-link::after {
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.multilink-container__description {
  font-size: var(--text-base-size);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
  margin-top: var(--space-xs);
  margin-bottom: var(--space-m);
  color: var(--colour-font-light);
  line-height: 1.2;
}
@media (max-width: 1700px) {
  .multilink-container__content-wrapper {
    grid-template-columns: auto;
    grid-template-rows: minmax(auto, 520px) auto;
  }
  .multilink-container__heading-container, .multilink-container__list-container {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--space-s);
    padding-right: var(--space-s);
  }
  .multilink-container__text-container {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 1100px) {
  .multilink-container__heading-container, .multilink-container__list-container {
    max-width: 900px;
  }
}
@media (max-width: 900px) {
  .multilink-container__content-wrapper {
    grid-template-columns: auto;
    grid-template-rows: 300px auto;
  }
  .multilink-container__heading-container, .multilink-container__list-container {
    max-width: 740px;
  }
}
.notification-banner {
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  padding: var(--space-s);
  background: var(--colour-yellow);
  color: var(--colour-font-dark);
}
.notification-banner__heading {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
  display: block;
  margin-top: 0;
  margin-bottom: var(--space-4xs);
}
.notification-banner__tagline {
  margin-top: 0;
  margin-bottom: var(--space-2xs) !important;
}
.notification-banner__link {
  cursor: pointer;
  text-decoration: underline;
  display: inline-block;
  margin: 0;
}
.notification-banner__link:hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.notification-banner__link:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.notification-banner__link:link {
  color: var(--link-colour);
}
.page-index {
  min-height: 95px;
  padding: var(--space-s);
  margin-bottom: var(--space-xl);
  background: var(--colour-bg-grey);
}
.page-index__heading {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
  display: inline-block;
  margin-top: 0;
}
.page-index__link-list {
  padding-left: 0 !important;
  margin-top: 0;
  margin-bottom: 0;
  line-height: calc(var(--body-line-height) * var(--line-height-multiplier));
  list-style-type: none !important;
}
.page-index__link-list a {
  cursor: pointer;
  text-decoration: underline;
}
.page-index__link-list a:hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.page-index__link-list a:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.page-index__link-list a:link {
  color: var(--link-colour);
}
.quote-box {
  box-shadow: var(--shadow-m);
  border-radius: var(--radius-m);
  border: 1px solid transparent;
  --surface-colour: var(--colour-primary-dark);
  color: var(--colour-font-light);
  background-color: var(--colour-primary-dark);
  padding: var(--space-m);
  display: block;
  width: 100%;
}
.quote-box__quote {
  font-size: var(--text-m);
  font-weight: 400;
  line-height: 1.1;
  font-family: var(--font-secondary);
  padding: 0px;
  margin: 0px;
}
.quote-box__quote::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 15px;
  margin-right: var(--space-4xs);
  vertical-align: super;
  mask: url("/sites/eastleighpride/template/images/icons/quote.svg");
  background-color: rgba(255, 255, 255, 0.65);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  transform: rotate(180deg);
}
.quote-box__quote::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 15px;
  margin-left: var(--space-4xs);
  vertical-align: sub;
  mask: url("/sites/eastleighpride/template/images/icons/quote.svg");
  background-color: rgba(255, 255, 255, 0.65);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.quote-box__source {
  font-size: var(--text-s);
  font-weight: 400;
  line-height: 1.1;
  font-family: var(--font-primary);
  margin-top: var(--space-s);
}
.quote-box__source--hidden {
  display: none;
}
.social-media {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--space-s);
}
.social-media--link {
  cursor: pointer;
  text-decoration: underline;
  display: inline-block;
  position: relative;
  height: 50px;
  width: 50px;
  margin-bottom: 0;
  background-color: var(--colour-link);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.social-media--link:hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.social-media--link:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.social-media--link:link {
  color: var(--link-colour);
}
.social-media--link:hover {
  background-color: var(--colour-link-hover);
}
.social-media--link.fb {
  mask: url("/sites/eastleighpride/template/images/icons/facebook_logo_footer.svg");
}
.social-media--link.linkedin {
  mask: url("/sites/eastleighpride/template/images/icons/linkedin_logo_footer.svg");
}
.tauGallery {
  width: 100%;
}
.tauGalleryImage {
  position: relative;
  display: block;
  width: calc((16.67% - 10px));
}
@media (max-width: 740px) {
  .tauGalleryImage {
    width: calc(33.33% - 8px);
  }
}
.tauGalleryImage::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.tauGalleryImage:hover {
  box-shadow: 0 4px #0b0c0c;
  filter: brightness(0.6);
}
.tauGalleryImage:focus {
  border-color: var(--colour-focus);
  outline: 4px solid var(--colour-focus);
  box-shadow: 0 4px #0b0c0c;
}
.tauGalleryImage:focus:not(:active):not(:hover) {
  border-color: var(--colour-focus);
  color: var(--colour-black);
  background-color: var(--colour-focus);
  box-shadow: 0 2px 0 var(--colour-black);
}
.tauGalleryImage img {
  width: 100%;
}
.grid-accordion {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 65ch;
}
.grid-accordion--surface-none {
  padding: 0px;
  background: transparent;
}
.grid-accordion--surface-white {
  --surface-colour: var(--colour-bg);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg);
}
.grid-accordion--surface-elevated {
  box-shadow: var(--shadow-m);
  border-radius: var(--radius-m);
  border: 1px solid transparent;
}
.grid-accordion--surface-outlined {
  border: 3px dotted var(--border);
  box-shadow: none;
}
.grid-accordion--surface-primary {
  --surface-colour: var(--colour-primary);
  color: var(--colour-font-light);
  background-color: var(--colour-primary);
}
.grid-accordion--surface-darkprimary {
  --surface-colour: var(--colour-primary-dark);
  color: var(--colour-font-light);
  background-color: var(--colour-primary-dark);
}
.grid-accordion--surface-lightprimary {
  --surface-colour: var(--colour-primary-light);
  color: var(--colour-font-dark);
  background-color: var(--colour-primary-light);
}
.grid-accordion--surface-grey {
  --surface-colour: var(--colour-bg-grey);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg-grey);
}
.grid-accordion__controls {
  padding-bottom: var(--space-m);
}
.grid-accordion__controls .grid-accordion__button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  cursor: pointer;
  line-height: inherit;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
  border-radius: 0;
  display: inline-flex;
  gap: var(--space-xs);
  align-items: center;
  justify-content: center;
  line-height: 1;
  text-decoration: none;
  font-size: var(--text-s);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
}
.grid-accordion__controls .grid-accordion__button::before {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  margin-top: calc(-0.6rem / 2);
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  display: inline-block;
  transition: transform 0.2s ease;
  transform: rotate(45deg);
  transform-origin: center;
}
.grid-accordion__controls .grid-accordion__button[aria-expanded="true"]::before {
  transform: rotate(-135deg) translateY(calc(-0.6rem / 2)) translateX(calc(-0.6rem / 2));
}
.grid-accordion__controls .grid-accordion__button::before {
  transform: rotate(45deg);
}
.grid-accordion__controls .grid-accordion__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.grid-accordion__controls .grid-accordion__button:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.grid-accordion__controls .grid-accordion__button:focus-visible {
  background-color: var(--colour-focus);
  outline: 3px solid var(--colour-focus);
  outline-offset: 0px;
}
.grid-accordion__controls .grid-accordion__button:focus-visible, .grid-accordion__controls .grid-accordion__button:focus-visible:link, .grid-accordion__controls .grid-accordion__button:focus-visible:visited, .grid-accordion__controls .grid-accordion__button:focus-visible:hover, .grid-accordion__controls .grid-accordion__button:focus-visible:active, .grid-accordion__controls .grid-accordion__button:focus-visible:focus, .grid-accordion__controls .grid-accordion__button:focus-visible:focus-visible {
  color: var(--colour-font-dark);
}
.grid-accordion-segment {
  position: relative;
  border-top: 1px solid var(--colour-border-grey);
}
.grid-accordion-segment:last-child {
  border-bottom: 1px solid var(--colour-border-grey);
}
.grid-accordion-segment__section-button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  cursor: pointer;
  line-height: inherit;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: var(--space-xs);
  gap: var(--space-xs);
  padding-top: var(--space-xs);
  padding-bottom: var(--space-xs);
  width: 100%;
}
.grid-accordion-segment__section-button:hover {
  background: rgba(0, 0, 0, 0.1);
}
.grid-accordion-segment__section-button:focus {
  outline: none;
}
.grid-accordion-segment__section-button:focus-visible {
  outline: none;
}
.grid-accordion-segment__section-button[aria-expanded="true"] .grid-accordion-segment__heading::after {
  transform: rotate(-135deg) translateY(-0.1em) translateX(-0.1em);
}
.grid-accordion-segment__section-button[aria-expanded="true"] .grid-accordion-segment__toggle-display::after {
  transform: rotate(-135deg) translateY(-0.1em) translateX(-0.1em);
}
.grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__heading {
  background-color: var(--colour-focus);
  outline: 3px solid var(--colour-focus);
  outline-offset: 0px;
}
.grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__heading, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__heading:link, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__heading:visited, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__heading:hover, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__heading:active, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__heading:focus, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__heading:focus-visible {
  color: var(--colour-font-dark);
}
.grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__toggle-display {
  font-size: var(--text-s);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
  background-color: var(--colour-focus);
  outline: 3px solid var(--colour-focus);
  outline-offset: 0px;
}
.grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__toggle-display, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__toggle-display:link, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__toggle-display:visited, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__toggle-display:hover, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__toggle-display:active, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__toggle-display:focus, .grid-accordion-segment__section-button:focus-visible .grid-accordion-segment__toggle-display:focus-visible {
  color: var(--colour-font-dark);
}
.grid-accordion-segment__section-button .grid-accordion-segment__heading {
  flex: 0 0 auto;
  font-size: var(--text-base-size);
  font-weight: 900;
  line-height: 1.4;
  font-family: var(--font-primary);
  width: fit-content;
}
.grid-accordion-segment__section-button .grid-accordion-segment__toggle-display {
  flex: 0 0 auto;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  cursor: pointer;
  line-height: inherit;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
  border-radius: 0;
  display: inline-flex;
  gap: var(--space-xs);
  align-items: center;
  justify-content: center;
  line-height: 1;
  text-decoration: none;
  font-size: var(--text-s);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
  padding-bottom: var(--space-s);
  width: fit-content;
}
.grid-accordion-segment__section-button .grid-accordion-segment__toggle-display::before {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  margin-top: calc(-0.6rem / 2);
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  display: inline-block;
  transition: transform 0.2s ease;
  transform: rotate(45deg);
  transform-origin: center;
}
.grid-accordion-segment__section-button .grid-accordion-segment__toggle-display[aria-expanded="true"]::before {
  transform: rotate(-135deg) translateY(calc(-0.6rem / 2)) translateX(calc(-0.6rem / 2));
}
.grid-accordion-segment__section-button .grid-accordion-segment__toggle-display::before {
  transform: rotate(45deg);
}
.grid-accordion-segment__section-button .grid-accordion-segment__toggle-display:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.grid-accordion-segment__section-button .grid-accordion-segment__toggle-display:focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.grid-accordion-segment__body {
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  line-height: var(--body-line-height);
  text-shadow: none;
  padding-bottom: var(--space-s);
}
.grid-accordion-segment__body p {
  line-height: inherit;
}
.grid-accordion-segment__body ul, .grid-accordion-segment__body ol {
  padding-left: var(--space-l);
}
.grid-accordion-segment__body li {
  line-height: inherit;
}
.grid-accordion-segment__body figure img {
  display: block;
}
.grid-accordion-segment__body p {
  line-height: var(--body-line-height);
}
.grid-accordion-segment__body h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
}
.grid-accordion-segment__body h2 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
}
.grid-accordion-segment__body h3 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
}
.grid-accordion-segment__body h4 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
}
.grid-accordion-segment__body h5 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
.grid-accordion-segment__body h6 {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
}
.grid-accordion-segment__body ul, .grid-accordion-segment__body ol {
  padding-left: var(--space-l);
}
.grid-accordion-segment__body table {
  overflow-x: auto;
  max-width: 100%;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.grid-accordion-segment__body th, .grid-accordion-segment__body td {
  padding-top: var(--space-xs);
  padding-right: var(--space-m);
  padding-bottom: var(--space-xs);
  padding-left: 0px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}
.grid-accordion-segment__body img {
  width: 100%;
  height: auto;
  display: block;
}
.grid-accordion-segment__body iframe {
  width: 100%;
  aspect-ratio: 1.7777777778;
}
.grid-accordion-segment__body code {
  font-family: monospace;
}
.grid-accordion-segment__body p code {
  background: rgba(0, 0, 0, 0.05);
  padding: var(--space-2xs) var(--space-xs);
  border-radius: 4px;
}
.grid-accordion-segment__body pre {
  padding: var(--space-m);
  overflow-x: auto;
  font-family: monospace;
  background: #0b0c0c;
  color: #fff;
  border-radius: 8px;
}
.grid-accordion-segment__body a:not(.button) {
  cursor: pointer;
  text-decoration: underline;
}
.grid-accordion-segment__body a:not(.button):hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.grid-accordion-segment__body a:not(.button):focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.grid-accordion-segment__body a:not(.button):link {
  color: var(--link-colour);
}
.grid-accordion-segment__body a.button, .grid-accordion-segment__body a.homepage-header__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}
.grid-accordion-segment__body a.button:hover, .grid-accordion-segment__body a.homepage-header__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.grid-accordion-segment__body a.button:focus-visible, .grid-accordion-segment__body a.homepage-header__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.grid-accordion-segment__body a.button:disabled, .grid-accordion-segment__body a.homepage-header__button:disabled, .grid-accordion-segment__body a.button[aria-disabled="true"], .grid-accordion-segment__body a.homepage-header__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.callout-box {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: center;
}
.callout-box__image-container {
  flex: 1;
  max-width: 150px;
  display: flex;
  justify-content: center;
  align-items: center;
  filter: drop-shadow(var(--shadow-m));
}
.callout-box__image {
  max-width: 100%;
  height: auto;
}
.callout-box__card {
  padding: var(--space-m);
  box-shadow: var(--shadow-m);
  border-radius: var(--radius-m);
  border: 1px solid transparent;
  --surface-colour: var(--colour-bg);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg);
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  line-height: var(--body-line-height);
  text-shadow: none;
  flex: 1;
  position: relative;
  filter: drop-shadow(var(--shadow-m));
  border-radius: var(--radius-l);
}
.callout-box__card p {
  line-height: inherit;
}
.callout-box__card ul, .callout-box__card ol {
  padding-left: var(--space-l);
}
.callout-box__card li {
  line-height: inherit;
}
.callout-box__card figure img {
  display: block;
}
.callout-box__card p {
  line-height: var(--body-line-height);
}
.callout-box__card h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
}
.callout-box__card h2 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
}
.callout-box__card h3 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
}
.callout-box__card h4 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
}
.callout-box__card h5 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
.callout-box__card h6 {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
}
.callout-box__card ul, .callout-box__card ol {
  padding-left: var(--space-l);
}
.callout-box__card table {
  overflow-x: auto;
  max-width: 100%;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.callout-box__card th, .callout-box__card td {
  padding-top: var(--space-xs);
  padding-right: var(--space-m);
  padding-bottom: var(--space-xs);
  padding-left: 0px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}
.callout-box__card img {
  width: 100%;
  height: auto;
  display: block;
}
.callout-box__card iframe {
  width: 100%;
  aspect-ratio: 1.7777777778;
}
.callout-box__card code {
  font-family: monospace;
}
.callout-box__card p code {
  background: rgba(0, 0, 0, 0.05);
  padding: var(--space-2xs) var(--space-xs);
  border-radius: 4px;
}
.callout-box__card pre {
  padding: var(--space-m);
  overflow-x: auto;
  font-family: monospace;
  background: #0b0c0c;
  color: #fff;
  border-radius: 8px;
}
.callout-box__card a:not(.button) {
  cursor: pointer;
  text-decoration: underline;
}
.callout-box__card a:not(.button):hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.callout-box__card a:not(.button):focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.callout-box__card a:not(.button):link {
  color: var(--link-colour);
}
.callout-box__card a.button, .callout-box__card a.homepage-header__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}
.callout-box__card a.button:hover, .callout-box__card a.homepage-header__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.callout-box__card a.button:focus-visible, .callout-box__card a.homepage-header__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.callout-box__card a.button:disabled, .callout-box__card a.homepage-header__button:disabled, .callout-box__card a.button[aria-disabled="true"], .callout-box__card a.homepage-header__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.callout-box__card > * {
  margin: 0;
}
.callout-box__card > * + * {
  margin-top: var(--space-m);
}
.callout-box__card h1, .callout-box__card h2, .callout-box__card h3, .callout-box__card h4, .callout-box__card h5, .callout-box__card h6 {
  margin-top: var(--space-m);
}
@media (max-width: 900px) {
  .callout-box__card h1, .callout-box__card h2, .callout-box__card h3, .callout-box__card h4, .callout-box__card h5, .callout-box__card h6 {
    margin-top: var(--space-m);
  }
}
.callout-box__card h1 + *, .callout-box__card h2 + *, .callout-box__card h3 + *, .callout-box__card h4 + *, .callout-box__card h5 + *, .callout-box__card h6 + * {
  margin-top: var(--space-m);
}
.callout-box__card > :first-child {
  margin-top: 0;
}
.callout-box__card > * {
  font-size: var(--text-s);
  font-weight: 400;
  line-height: 1.4;
  font-family: var(--font-primary);
}
.callout-box__card::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  margin-left: -27px;
  left: 0;
  top: 10%;
  border: 27px solid transparent;
  border-right-color: transparent;
  border-left-width: 27px;
  border-left-style: solid;
  border-left-color: transparent;
  border-right-color: var(--surface-colour);
  border-left: 0;
}
.grid-layout__grid {
  display: grid;
  width: 100%;
  --cols: 2;
  grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
  grid-auto-rows: auto;
  gap: var(--gap, var(--space-xl));
  align-items: var(--align, center);
  justify-items: var(--justify, center);
  gap: var(--space-m);
  --cols: 3;
  --max-cols: 3;
  --align: center;
  --justify: center;
}
.grid-layout__grid--cols-1 {
  --cols: 1;
}
.grid-layout__grid--cols-2 {
  --cols: 2;
}
.grid-layout__grid--cols-3 {
  --cols: 3;
}
.grid-layout__grid--align-top {
  --align: start;
}
.grid-layout__grid--align-bottom {
  --align: end;
}
.grid-layout__grid--align-stretch {
  --align: stretch;
}
@media (max-width: 900px) {
  .grid-layout__grid {
    --max-cols: 2;
  }
}
@media (max-width: 500px) {
  .grid-layout__grid {
    --max-cols: 1;
  }
}
@media (max-width: 900px) {
  .grid-layout__grid {
    gap: var(--space-m);
  }
}
.grid-markdown-block {
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  line-height: var(--body-line-height);
  text-shadow: none;
  padding: var(--space-m);
  min-width: 0;
}
.grid-markdown-block p {
  line-height: inherit;
}
.grid-markdown-block ul, .grid-markdown-block ol {
  padding-left: var(--space-l);
}
.grid-markdown-block li {
  line-height: inherit;
}
.grid-markdown-block figure img {
  display: block;
}
.grid-markdown-block p {
  line-height: var(--body-line-height);
}
.grid-markdown-block h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
}
.grid-markdown-block h2 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
}
.grid-markdown-block h3 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
}
.grid-markdown-block h4 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
}
.grid-markdown-block h5 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
.grid-markdown-block h6 {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
}
.grid-markdown-block ul, .grid-markdown-block ol {
  padding-left: var(--space-l);
}
.grid-markdown-block table {
  overflow-x: auto;
  max-width: 100%;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.grid-markdown-block th, .grid-markdown-block td {
  padding-top: var(--space-xs);
  padding-right: var(--space-m);
  padding-bottom: var(--space-xs);
  padding-left: 0px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}
.grid-markdown-block img {
  width: 100%;
  height: auto;
  display: block;
}
.grid-markdown-block iframe {
  width: 100%;
  aspect-ratio: 1.7777777778;
}
.grid-markdown-block code {
  font-family: monospace;
}
.grid-markdown-block p code {
  background: rgba(0, 0, 0, 0.05);
  padding: var(--space-2xs) var(--space-xs);
  border-radius: 4px;
}
.grid-markdown-block pre {
  padding: var(--space-m);
  overflow-x: auto;
  font-family: monospace;
  background: #0b0c0c;
  color: #fff;
  border-radius: 8px;
}
.grid-markdown-block a:not(.button) {
  cursor: pointer;
  text-decoration: underline;
}
.grid-markdown-block a:not(.button):hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.grid-markdown-block a:not(.button):focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.grid-markdown-block a:not(.button):link {
  color: var(--link-colour);
}
.grid-markdown-block a.button, .grid-markdown-block a.homepage-header__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}
.grid-markdown-block a.button:hover, .grid-markdown-block a.homepage-header__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.grid-markdown-block a.button:focus-visible, .grid-markdown-block a.homepage-header__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.grid-markdown-block a.button:disabled, .grid-markdown-block a.homepage-header__button:disabled, .grid-markdown-block a.button[aria-disabled="true"], .grid-markdown-block a.homepage-header__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.grid-markdown-block > * {
  margin: 0;
}
.grid-markdown-block > * + * {
  margin-top: var(--space-m);
}
.grid-markdown-block h1, .grid-markdown-block h2, .grid-markdown-block h3, .grid-markdown-block h4, .grid-markdown-block h5, .grid-markdown-block h6 {
  margin-top: var(--space-m);
}
@media (max-width: 900px) {
  .grid-markdown-block h1, .grid-markdown-block h2, .grid-markdown-block h3, .grid-markdown-block h4, .grid-markdown-block h5, .grid-markdown-block h6 {
    margin-top: var(--space-m);
  }
}
.grid-markdown-block h1 + *, .grid-markdown-block h2 + *, .grid-markdown-block h3 + *, .grid-markdown-block h4 + *, .grid-markdown-block h5 + *, .grid-markdown-block h6 + * {
  margin-top: var(--space-m);
}
.grid-markdown-block > :first-child {
  margin-top: 0;
}
.grid-markdown-block--surface-none {
  padding: 0px;
  background: transparent;
}
.grid-markdown-block--surface-white {
  --surface-colour: var(--colour-bg);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg);
}
.grid-markdown-block--surface-elevated {
  --surface-colour: var(--colour-bg);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg);
  box-shadow: var(--shadow-m);
  border-radius: var(--radius-m);
  border: 1px solid transparent;
}
.grid-markdown-block--surface-offset-border {
  position: relative;
  border-radius: var(--radius-l);
  margin-top: var(--space-m);
  padding: var(--space-l);
  --surface-colour: var(--colour-bg);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg);
}
.grid-markdown-block--surface-offset-border::after {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  top: -12px;
  left: -12px;
  border: 4px solid var(--colour-primary-dark);
  border-radius: var(--radius-l);
}
.grid-markdown-block--surface-outlined {
  border: 3px dotted var(--border);
  box-shadow: none;
}
.grid-markdown-block--surface-primary {
  --surface-colour: var(--colour-primary);
  color: var(--colour-font-light);
  background-color: var(--colour-primary);
}
.grid-markdown-block--surface-darkprimary {
  --surface-colour: var(--colour-primary-dark);
  color: var(--colour-font-light);
  background-color: var(--colour-primary-dark);
}
.grid-markdown-block--surface-lightprimary {
  --surface-colour: var(--colour-primary-light);
  color: var(--colour-font-dark);
  background-color: var(--colour-primary-light);
}
.grid-markdown-block--surface-grey {
  --surface-colour: var(--colour-bg-grey);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg-grey);
}
.card {
  --text-align: left;
  box-shadow: var(--shadow-m);
  border-radius: var(--radius-m);
  border: 1px solid transparent;
  color: var(--text-colour);
  background-color: var(--surface-weak);
  overflow: hidden;
  width: 100%;
  max-width: 410px;
  min-width: 0;
  text-align: var(--text-align);
}
.card--surface-frameless {
  border: none;
  box-shadow: none;
  --surface-colour: transparent;
  background-color: transparent;
}
.card--surface-frameless .card__heading {
  padding-left: 0px;
  padding-right: 0px;
}
.card--surface-frameless .card__body {
  padding-left: 0px;
  padding-right: 0px;
}
.card--textalign-right {
  --text-align: right;
}
.card--textalign-center {
  --text-align: center;
}
@media (max-width: 740px) {
  .card {
    --text-align: left;
  }
}
.card__heading {
  padding-left: var(--space-s);
  padding-right: var(--space-s);
  padding-top: var(--space-s);
}
.card__heading:first-child {
  padding-bottom: var(--space-s);
}
.card__heading .card-title {
  font-family: var(--font-primary);
  font-weight: 600;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
.card__heading .card-subtitle {
  color: var(--text-colour-muted);
}
.card__media {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: auto;
}
.card__media--square {
  aspect-ratio: 1;
}
.card__media--16-9 {
  aspect-ratio: 1.7777777778;
}
.card__media--auto {
  aspect-ratio: auto;
}
.card__media .card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  margin: 0px;
}
.card__media .card-image-overlay {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}
.card__media .card-image-overlay:hover {
  background: rgba(0, 0, 0, 0.1);
}
.card__media .card-image-overlay:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.card__body {
  padding-left: var(--space-s);
  padding-right: var(--space-s);
}
.card__body:last-child {
  padding-bottom: var(--space-s);
}
.card__body ul.card__meta {
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  line-height: 1.4;
  padding-left: var(--space-l);
  margin: 0;
  padding-left: 0;
  margin: 0px;
  padding: 0px;
}
.card__body ul.card__meta li {
  margin-bottom: var(--space-3xs);
}
.card__body ul.card__meta li {
  margin-bottom: var(--space-4xs);
}
.card__body ul.card__meta .card__meta-item {
  list-style: none;
  display: flex;
  align-items: center;
  margin: 0px;
  padding: 0px;
  font-size: var(--text-s);
}
.card__body ul.card__meta .card__meta-item::before {
  content: "";
  width: var(--icon-size-s);
  aspect-ratio: 1;
  margin-right: var(--space-xs);
  background-color: var(--icon-color, var(--icon-color-default));
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  flex-shrink: 0;
}
.card__body ul.card__meta .card__meta-item--date::before {
  mask-image: var(--icon-calendar);
}
.card__body ul.card__meta .card__meta-item--location::before {
  mask-image: var(--icon-location);
}
.card__body ul.card__meta .card__meta-item--time::before {
  mask-image: var(--icon-time);
}
.card__body .card__divider {
  border: 0;
  border-top: 1px solid var(--component-border-grey);
  margin-top: var(--space-s);
  margin-bottom: var(--space-s);
}
.card__body .card__cardtext {
  font-family: var(--font-primary);
  font-size: var(--text-s);
  line-height: 1.2;
  text-shadow: none;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
}
.card__body .card__cardtext p {
  line-height: inherit;
}
.card__body .card__cardtext ul, .card__body .card__cardtext ol {
  padding-left: var(--space-l);
}
.card__body .card__cardtext li {
  line-height: inherit;
}
.card__body .card__cardtext figure img {
  display: block;
}
.card__body .card__cardtext p {
  line-height: 1.2;
}
.card__body .card__cardtext h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
}
.card__body .card__cardtext h2 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
}
.card__body .card__cardtext h3 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
}
.card__body .card__cardtext h4 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
}
.card__body .card__cardtext h5 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
.card__body .card__cardtext h6 {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
}
.card__body .card__cardtext ul, .card__body .card__cardtext ol {
  padding-left: var(--space-l);
}
.card__body .card__cardtext table {
  overflow-x: auto;
  max-width: 100%;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.card__body .card__cardtext th, .card__body .card__cardtext td {
  padding-top: var(--space-xs);
  padding-right: var(--space-m);
  padding-bottom: var(--space-xs);
  padding-left: 0px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}
.card__body .card__cardtext img {
  width: 100%;
  height: auto;
  display: block;
}
.card__body .card__cardtext iframe {
  width: 100%;
  aspect-ratio: 1.7777777778;
}
.card__body .card__cardtext code {
  font-family: monospace;
}
.card__body .card__cardtext p code {
  background: rgba(0, 0, 0, 0.05);
  padding: var(--space-2xs) var(--space-xs);
  border-radius: 4px;
}
.card__body .card__cardtext pre {
  padding: var(--space-m);
  overflow-x: auto;
  font-family: monospace;
  background: #0b0c0c;
  color: #fff;
  border-radius: 8px;
}
.card__body .card__cardtext a:not(.button) {
  cursor: pointer;
  text-decoration: underline;
}
.card__body .card__cardtext a:not(.button):hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.card__body .card__cardtext a:not(.button):focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.card__body .card__cardtext a:not(.button):link {
  color: var(--link-colour);
}
.card__body .card__cardtext a.button, .card__body .card__cardtext a.homepage-header__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}
.card__body .card__cardtext a.button:hover, .card__body .card__cardtext a.homepage-header__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.card__body .card__cardtext a.button:focus-visible, .card__body .card__cardtext a.homepage-header__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.card__body .card__cardtext a.button:disabled, .card__body .card__cardtext a.homepage-header__button:disabled, .card__body .card__cardtext a.button[aria-disabled="true"], .card__body .card__cardtext a.homepage-header__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.card__body .card__cardtext > :first-child {
  margin-top: 0;
}
.card__body .card__cardtext > :last-child {
  margin-bottom: 0;
}
.card__action {
  padding: 0px;
  font-family: var(--font-secondary);
  font-size: var(--text-m);
  display: flex;
  align-items: center;
  width: 100%;
}
.card--surface-frameless .card__action .card-link {
  padding-top: var(--space-3xs);
  padding-bottom: var(--space-3xs);
  padding-left: 0px;
  padding-right: 0px;
  width: auto;
}
.card--actiontype-ribbon .card__action .card-link {
  --surface-colour: var(--colour-primary);
  color: var(--colour-font-light);
  background-color: var(--colour-primary);
  cursor: pointer;
  display: block;
  width: 100%;
  height: 100%;
  padding: var(--space-s);
}
.card--actiontype-ribbon .card__action .card-link:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.card--actiontype-ribbon .card__action .card-link:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.card--actiontype-arrow .card__action {
  background-color: transparent;
}
.card--actiontype-arrow .card__action .card-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--space-3xs);
  width: auto;
}
.card--actiontype-arrow .card__action .card-link::after {
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  display: inline-block;
  transform: rotate(-45deg);
}
.card--actiontype-arrow .card__action .card-link:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.card--textalign-center .card__action {
  justify-content: center;
}
.card__action .card-link {
  padding: var(--space-s);
  color: var(--link-colour);
  text-decoration: none;
  line-height: 1.4;
}
.stripe-header {
  display: grid;
  grid-template-columns: 1fr;
  border-bottom: 5px solid var(--colour-border-grey);
  --surface-colour: var(--colour-primary-dark);
  color: var(--colour-font-light);
  background-color: var(--colour-primary-dark);
  grid-template-rows: 1fr;
}
@media (max-width: 900px) {
  .stripe-header {
    grid-template-rows: 1fr auto;
  }
}
.stripe-header .stripe-header__background {
  grid-row: 1;
  grid-column: 1;
}
.stripe-header .page-width-container {
  grid-column: 1;
  z-index: 2;
  grid-row: 1;
}
@media (max-width: 900px) {
  .stripe-header .page-width-container {
    grid-row: 2;
  }
}
.stripe-header--action-whiteoutline .stripe__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background: transparent;
  border: 1px solid var(--colour-white);
}
.stripe-header--action-whiteoutline .stripe__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.stripe-header--action-whiteoutline .stripe__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.stripe-header--action-whiteoutline .stripe__button:disabled, .stripe-header--action-whiteoutline .stripe__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.stripe-header--action-whiteoutline .stripe__button, .stripe-header--action-whiteoutline .stripe__button:link, .stripe-header--action-whiteoutline .stripe__button:visited, .stripe-header--action-whiteoutline .stripe__button:hover, .stripe-header--action-whiteoutline .stripe__button:active, .stripe-header--action-whiteoutline .stripe__button:focus, .stripe-header--action-whiteoutline .stripe__button:focus-visible {
  color: var(--colour-font-light);
}
.stripe-header__background {
  --opacity: 0;
  --maxheight: 680px;
  --imgalign: center;
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1.7777777778;
  max-height: var(--maxheight);
  position: relative;
  z-index: 0;
}
.stripe-header__background--5-1 {
  aspect-ratio: 2.5;
  --maxheight: 580px;
}
.stripe-header__background--16-9 {
  aspect-ratio: 1.7777777778;
  --maxheight: 680px;
}
.stripe-header__background--auto {
  aspect-ratio: auto;
  --maxheight: 680px;
}
.stripe-header__background--imgalign-bottom {
  --imgalign: bottom;
}
.stripe-header__background--imgalign-top {
  --imgalign: top;
}
.stripe-header__background--imgalign-center {
  --imgalign: center;
}
.stripe-header__background--filter-20 {
  --opacity: 0.2;
}
.stripe-header__background--filter-40 {
  --opacity: 0.4;
}
.stripe-header__background--filter-60 {
  --opacity: 0.6;
}
.stripe-header__background--filter-80 {
  --opacity: 0.8;
}
@media (max-width: 900px) {
  .stripe-header__background {
    --opacity: 0;
  }
}
@media (max-width: 900px) {
  .stripe-header__background {
    --text-align: start;
  }
}
.stripe-header__background .stripe-header-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  object-position: var(--imgalign);
  z-index: 0;
}
.stripe-header__background::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: black;
  opacity: var(--opacity);
  pointer-events: none;
  z-index: 1;
}
.stripe-header__flex {
  --textalign: left;
  --textboxalign: flex-end;
  --textboxjustify: center;
  --px: 0;
  --py: var(--space-l);
  display: flex;
  justify-content: var(--textboxjustify);
  align-items: var(--textboxalign);
  padding-left: var(--px);
  padding-right: var(--px);
  padding-top: var(--py);
  padding-bottom: var(--py);
  height: 100%;
  width: 100%;
}
@media (max-width: 900px) {
  .stripe-header__flex {
    --px: 0;
    --py: var(--space-m);
  }
}
.stripe-header__flex--text-align-left {
  --textalign: left;
}
.stripe-header__flex--text-align-right {
  --textalign: right;
}
.stripe-header__flex--text-align-center {
  --textalign: center;
}
.stripe-header__flex--textboxalign-top {
  --textboxalign: flex-start;
}
.stripe-header__flex--textboxalign-bottom {
  --textboxalign: flex-end;
}
.stripe-header__flex--textboxalign-center {
  --textboxalign: center;
}
.stripe-header__flex--textboxjustify-left {
  --textboxjustify: flex-start;
}
.stripe-header__flex--textboxjustify-right {
  --textboxjustify: flex-end;
}
.stripe-header__flex--textboxjustify-center {
  --textboxjustify: center;
}
.stripe-header__flex--textboxbackground-transparent .stripe-header__textbox {
  padding: var(--space-m) 0;
  --surface-colour: transparent;
  background-color: transparent;
  color: var(--colour-font-light);
}
@media (max-width: 900px) {
  .stripe-header__flex--textboxbackground-transparent .stripe-header__textbox {
    padding: 0;
  }
}
.stripe-header__textbox {
  display: flex;
  flex-direction: column;
  gap: var(--space-s);
  align-items: stretch;
  justify-content: flex-start;
  text-align: var(--textalign);
  padding: var(--space-m);
}
@media (max-width: 900px) {
  .stripe-header__textbox {
    padding: var(--space-m);
  }
}
@media (max-width: 900px) {
  .stripe-header__textbox {
    width: 100%;
  }
}
.stripe-header__textbox > * {
  max-width: 65ch;
  margin-inline: auto;
}
.stripe-header__textbox .stripe-header-heading {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  align-items: stretch;
  justify-content: flex-start;
  width: 100%;
}
.stripe-header__textbox .stripe-header-heading .stripe-header-title {
  font-size: var(--text-hero);
  font-weight: 400;
  line-height: 1.15;
  font-family: var(--font-secondary);
  margin-top: 0px;
  margin-bottom: 0px;
  font-size: var(--text-hero);
}
@media (max-width: 900px) {
  .stripe-header__textbox .stripe-header-heading .stripe-header-title {
    font-size: var(--text-3xl);
  }
}
@media (max-width: 740px) {
  .stripe-header__textbox .stripe-header-heading .stripe-header-title {
    font-size: var(--text-2xl);
  }
}
.stripe-header__textbox .stripe-header-strapline {
  font-size: var(--text-l);
  font-weight: 400;
  line-height: 1.15;
  font-family: var(--font-secondary);
  font-size: var(--text-l);
}
@media (max-width: 900px) {
  .stripe-header__textbox .stripe-header-strapline {
    font-size: var(--text-m);
  }
}
.stripe-header__textbox .stripe-header-button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background: transparent;
  border: 1px solid var(--colour-white);
  font-size: var(--text-m);
  font-weight: 400;
  line-height: 1.5;
  font-family: var(--font-primary);
  font-family: var(--font-secondary);
  font-weight: 400;
}
.stripe-header__textbox .stripe-header-button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.stripe-header__textbox .stripe-header-button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.stripe-header__textbox .stripe-header-button:disabled, .stripe-header__textbox .stripe-header-button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.stripe-header__textbox .stripe-header-button, .stripe-header__textbox .stripe-header-button:link, .stripe-header__textbox .stripe-header-button:visited, .stripe-header__textbox .stripe-header-button:hover, .stripe-header__textbox .stripe-header-button:active, .stripe-header__textbox .stripe-header-button:focus, .stripe-header__textbox .stripe-header-button:focus-visible {
  color: var(--colour-font-light);
}
.stripe {
  --text-align: start;
  --pt: var(--space-xl);
  --pb: var(--space-xl);
  --surface-colour: var(--colour-bg);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg);
  padding-top: var(--pt);
  padding-bottom: var(--pb);
  color: var(--text-colour);
  /*
  @include respond(xs) {
    --text-align: start;
  }
  */
}
.stripe--text-align-right {
  --text-align: end;
}
.stripe--text-align-center {
  --text-align: center;
}
.stripe--text-align-justify {
  --text-align: justify;
}
.stripe--pt-0 {
  --pt: 0;
}
.stripe--pb-0 {
  --pb: 0;
}
.stripe--py-0 {
  --pt: 0;
  --pb: 0;
}
.stripe--p-thick {
  --pt: var(--space-3xl);
  --pb: var(--space-3xl);
}
.stripe--p-thin {
  --pt: var(--space-l);
  --pb: var(--space-l);
}
@media (max-width: 900px) {
  .stripe {
    padding-top: var(--space-l);
  }
}
@media (max-width: 900px) {
  .stripe {
    padding-bottom: var(--space-l);
  }
}
.stripe--bg-primary {
  --surface-colour: var(--colour-primary);
  color: var(--colour-font-light);
  background-color: var(--colour-primary);
}
.stripe--bg-primary-light {
  --surface-colour: var(--colour-primary-light);
  color: var(--colour-font-dark);
  background-color: var(--colour-primary-light);
}
.stripe--bg-primary-dark {
  --surface-colour: var(--colour-primary-dark);
  color: var(--colour-font-light);
  background-color: var(--colour-primary-dark);
}
.stripe--bg-secondary {
  --surface-colour: var(--colour-secondary);
  color: var(--colour-font-light);
  background-color: var(--colour-secondary);
}
.stripe--bg-grey {
  --surface-colour: var(--colour-bg-grey);
  color: var(--colour-font-dark);
  background-color: var(--colour-bg-grey);
}
.stripe--bg-gradient {
  --surface-colour: var(--colour-gradient);
  color: var(--colour-font-light);
  background: var(--colour-gradient);
}
.stripe--bg-gradientdots {
  background-image: url("/images/backgrounds/dot_gradient.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  color: var(--colour-font-light);
  text-shadow: var(--text-shadow);
}
.stripe--bg-gradienttriangles {
  background-image: url("/images/backgrounds/galaxy_triangles.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  color: var(--colour-font-light);
  text-shadow: var(--text-shadow);
}
.stripe--bg-gradientpolygons {
  background-image: url("/images/backgrounds/galaxy_poly.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  color: var(--colour-font-light);
  text-shadow: var(--text-shadow);
}
.stripe--heading-primary .stripe-title {
  color: var(--colour-primary);
}
.stripe--justify-left .stripe__row {
  justify-content: flex-start;
}
.stripe--justify-left .stripe__grid {
  --justify: start;
}
.stripe--justify-right .stripe__row {
  justify-content: flex-end;
}
.stripe--justify-right .stripe__grid {
  --justify: end;
}
@media (max-width: 900px) {
  .stripe--mobile-reverse .stripe__row {
    flex-direction: column-reverse;
  }
}
@media (max-width: 900px) {
  .stripe--hideonmobile .stripe__media {
    display: none;
  }
}
.stripe--action-primary .stripe__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background-color: var(--colour-primary);
}
.stripe--action-primary .stripe__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.stripe--action-primary .stripe__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.stripe--action-primary .stripe__button:disabled, .stripe--action-primary .stripe__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.stripe--action-primary .stripe__button, .stripe--action-primary .stripe__button:link, .stripe--action-primary .stripe__button:visited, .stripe--action-primary .stripe__button:hover, .stripe--action-primary .stripe__button:active, .stripe--action-primary .stripe__button:focus, .stripe--action-primary .stripe__button:focus-visible {
  color: var(--colour-font-light);
}
.stripe--action-primary .stripe__button, .stripe--action-primary .stripe__button:link, .stripe--action-primary .stripe__button:visited, .stripe--action-primary .stripe__button:hover, .stripe--action-primary .stripe__button:active, .stripe--action-primary .stripe__button:focus, .stripe--action-primary .stripe__button:focus-visible {
  color: var(--colour-font-light);
}
.stripe--action-secondary .stripe__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background-color: var(--colour-secondary);
}
.stripe--action-secondary .stripe__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.stripe--action-secondary .stripe__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.stripe--action-secondary .stripe__button:disabled, .stripe--action-secondary .stripe__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.stripe--action-secondary .stripe__button, .stripe--action-secondary .stripe__button:link, .stripe--action-secondary .stripe__button:visited, .stripe--action-secondary .stripe__button:hover, .stripe--action-secondary .stripe__button:active, .stripe--action-secondary .stripe__button:focus, .stripe--action-secondary .stripe__button:focus-visible {
  color: var(--colour-font-light);
}
.stripe--action-secondary .stripe__button, .stripe--action-secondary .stripe__button:link, .stripe--action-secondary .stripe__button:visited, .stripe--action-secondary .stripe__button:hover, .stripe--action-secondary .stripe__button:active, .stripe--action-secondary .stripe__button:focus, .stripe--action-secondary .stripe__button:focus-visible {
  color: var(--colour-font-light);
}
.stripe--action-whiteoutline .stripe__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background: transparent;
  border: 1px solid var(--colour-white);
}
.stripe--action-whiteoutline .stripe__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.stripe--action-whiteoutline .stripe__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.stripe--action-whiteoutline .stripe__button:disabled, .stripe--action-whiteoutline .stripe__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.stripe--action-whiteoutline .stripe__button, .stripe--action-whiteoutline .stripe__button:link, .stripe--action-whiteoutline .stripe__button:visited, .stripe--action-whiteoutline .stripe__button:hover, .stripe--action-whiteoutline .stripe__button:active, .stripe--action-whiteoutline .stripe__button:focus, .stripe--action-whiteoutline .stripe__button:focus-visible {
  color: var(--colour-font-light);
}
.stripe--action-blackoutline .stripe__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background: transparent;
  border: 1px solid var(--colour-black);
}
.stripe--action-blackoutline .stripe__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.stripe--action-blackoutline .stripe__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.stripe--action-blackoutline .stripe__button:disabled, .stripe--action-blackoutline .stripe__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.stripe--action-blackoutline .stripe__button, .stripe--action-blackoutline .stripe__button:link, .stripe--action-blackoutline .stripe__button:visited, .stripe--action-blackoutline .stripe__button:hover, .stripe--action-blackoutline .stripe__button:active, .stripe--action-blackoutline .stripe__button:focus, .stripe--action-blackoutline .stripe__button:focus-visible {
  color: var(--colour-font-dark);
}
.stripe .page-width-container {
  max-width: 1300px;
  width: 100%;
  padding-left: var(--space-s);
  padding-right: var(--space-s);
}
@media (max-width: 1300px) {
  .stripe .page-width-container {
    max-width: 1100px;
  }
}
@media (max-width: 1100px) {
  .stripe .page-width-container {
    max-width: 900px;
  }
}
@media (max-width: 900px) {
  .stripe .page-width-container {
    max-width: 740px;
  }
}
@media (min-width: 740px) {
  .stripe .page-width-container {
    margin-left: auto;
    margin-right: auto;
  }
}
.stripe .stripe__flex {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: var(--space-m);
}
.stripe__row {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: var(--space-xl);
  gap: var(--space-xl);
}
@media (max-width: 1100px) {
  .stripe__row {
    display: flex;
    gap: var(--space-m);
    gap: var(--space-m);
  }
}
@media (max-width: 900px) {
  .stripe__row {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
  }
}
.stripe__col {
  display: flex;
  flex-direction: column;
  align-items: var(--text-align);
  flex-wrap: wrap;
  gap: var(--space-m);
  gap: var(--space-m);
  max-width: 100%;
}
.stripe__header {
  display: flex;
  flex-direction: column;
  gap: var(--space-s);
  align-items: stretch;
  justify-content: flex-start;
  flex: 2 1 0;
  min-width: 0;
  max-width: 65ch;
  width: 100%;
  min-width: 0;
  text-align: var(--text-align);
}
.stripe__header .stripe-title {
  margin: 0;
}
.stripe__header .stripe-strapline {
  margin: 0;
}
.stripe__text {
  flex: 2 1 0;
  min-width: 0;
  max-width: 65ch;
  width: 100%;
  min-width: 0;
  font-family: var(--font-primary);
  font-size: var(--text-base-size);
  line-height: var(--body-line-height);
  text-shadow: none;
}
.stripe__text p {
  line-height: inherit;
}
.stripe__text ul, .stripe__text ol {
  padding-left: var(--space-l);
}
.stripe__text li {
  line-height: inherit;
}
.stripe__text figure img {
  display: block;
}
.stripe__text p {
  line-height: var(--body-line-height);
}
.stripe__text h1 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-3xl);
  line-height: var(--heading-line-height);
}
.stripe__text h2 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-2xl);
  line-height: var(--heading-line-height);
}
.stripe__text h3 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-xl);
  line-height: var(--heading-line-height);
}
.stripe__text h4 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-l);
  line-height: var(--heading-line-height);
}
.stripe__text h5 {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--text-m);
  line-height: var(--heading-line-height);
}
.stripe__text h6 {
  font-family: var(--font-primary);
  font-weight: 400;
  font-size: var(--text-base-size);
  line-height: var(--heading-line-height);
}
.stripe__text ul, .stripe__text ol {
  padding-left: var(--space-l);
}
.stripe__text table {
  overflow-x: auto;
  max-width: 100%;
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.stripe__text th, .stripe__text td {
  padding-top: var(--space-xs);
  padding-right: var(--space-m);
  padding-bottom: var(--space-xs);
  padding-left: 0px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}
.stripe__text img {
  width: 100%;
  height: auto;
  display: block;
}
.stripe__text iframe {
  width: 100%;
  aspect-ratio: 1.7777777778;
}
.stripe__text code {
  font-family: monospace;
}
.stripe__text p code {
  background: rgba(0, 0, 0, 0.05);
  padding: var(--space-2xs) var(--space-xs);
  border-radius: 4px;
}
.stripe__text pre {
  padding: var(--space-m);
  overflow-x: auto;
  font-family: monospace;
  background: #0b0c0c;
  color: #fff;
  border-radius: 8px;
}
.stripe__text a:not(.button) {
  cursor: pointer;
  text-decoration: underline;
}
.stripe__text a:not(.button):hover {
  color: var(--colour-link-hover);
  text-decoration: none;
  text-decoration-thickness: 0.12em;
}
.stripe__text a:not(.button):focus-visible {
  outline: 3px solid var(--colour-focus);
  outline-offset: 2px;
}
.stripe__text a:not(.button):link {
  color: var(--link-colour);
}
.stripe__text a.button, .stripe__text a.homepage-header__button {
  cursor: pointer;
  display: inline-block;
  padding: var(--space-xs) var(--space-s);
  border-radius: var(--component-border-radius);
  border: 0;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}
.stripe__text a.button:hover, .stripe__text a.homepage-header__button:hover {
  text-decoration: underline;
  text-decoration-color: inherit;
}
.stripe__text a.button:focus-visible, .stripe__text a.homepage-header__button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 6px var(--colour-focus);
}
.stripe__text a.button:disabled, .stripe__text a.homepage-header__button:disabled, .stripe__text a.button[aria-disabled="true"], .stripe__text a.homepage-header__button[aria-disabled="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.stripe__text > * {
  margin: 0;
}
.stripe__text > * + * {
  margin-top: var(--space-m);
}
.stripe__text h1, .stripe__text h2, .stripe__text h3, .stripe__text h4, .stripe__text h5, .stripe__text h6 {
  margin-top: var(--space-m);
}
@media (max-width: 900px) {
  .stripe__text h1, .stripe__text h2, .stripe__text h3, .stripe__text h4, .stripe__text h5, .stripe__text h6 {
    margin-top: var(--space-m);
  }
}
.stripe__text h1 + *, .stripe__text h2 + *, .stripe__text h3 + *, .stripe__text h4 + *, .stripe__text h5 + *, .stripe__text h6 + * {
  margin-top: var(--space-m);
}
.stripe__text > :first-child {
  margin-top: 0;
}
.stripe__action {
  flex: 2 1 0;
  min-width: 0;
  max-width: 65ch;
  width: 100%;
  min-width: 0;
  text-align: var(--text-align);
}
.stripe__media {
  flex: 1 1 auto;
  max-width: 500px;
  width: 500px;
  min-width: 0;
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: auto;
  max-width: 65ch;
}
.stripe__media--16-9 {
  aspect-ratio: 1.7777777778;
}
.stripe__media--square {
  aspect-ratio: 1;
}
.stripe__media--3xs {
  flex: 1 1 auto;
  max-width: 100px;
  width: 100px;
  min-width: 0;
}
.stripe__media--2xs {
  flex: 1 1 auto;
  max-width: 200px;
  width: 200px;
  min-width: 0;
}
.stripe__media--xs {
  flex: 1 1 auto;
  max-width: 300px;
  width: 300px;
  min-width: 0;
}
.stripe__media--s {
  flex: 1 1 auto;
  max-width: 400px;
  width: 400px;
  min-width: 0;
}
.stripe__media--m {
  flex: 1 1 auto;
  max-width: 500px;
  width: 500px;
  min-width: 0;
}
.stripe__media--l {
  flex: 2 1 auto;
  max-width: 650px;
  width: 650px;
  min-width: 0;
}
.stripe__media--xl {
  flex: 2 1 auto;
  max-width: 750px;
  width: 750px;
  min-width: 0;
}
.stripe__media--2xl {
  flex: 2 1 auto;
  max-width: 850px;
  width: 850px;
  min-width: 0;
}
.stripe__media--3xl {
  flex: 2 1 auto;
  max-width: 950px;
  width: 950px;
  min-width: 0;
}
.stripe__media--full {
  flex: 3 1 auto;
  max-width: 100%;
  width: 100%;
  min-width: 0;
}
.stripe__media .stripe-video {
  width: 100%;
  height: auto;
  aspect-ratio: 1.7777777778;
}
.stripe__media .stripe-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/*
** Stripe grid
*/
.stripe__grid {
  --cols: 3;
  --align: center;
  --justify: center;
  display: grid;
  width: 100%;
  --cols: --cols;
  grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
  grid-auto-rows: auto;
  gap: var(--gap, var(--space-xl));
  align-items: var(--align, --align);
  justify-items: var(--justify, --justify);
}
.stripe__grid--cols-1 {
  --cols: 1;
}
.stripe__grid--cols-2 {
  --cols: 2;
}
.stripe__grid--cols-3 {
  --cols: 3;
}
.stripe__grid--cols-4 {
  --cols: 4;
}
.stripe__grid--align-top {
  --align: start;
}
.stripe__grid--align-bottom {
  --align: end;
}
.stripe__grid--align-stretch {
  --align: stretch;
}
@media (max-width: 1100px) {
  .stripe__grid {
    --cols: 2;
  }
}
@media (max-width: 740px) {
  .stripe__grid {
    --cols: 1;
  }
}
@media (max-width: 900px) {
  .stripe__grid {
    gap: var(--space-m);
  }
}
.stripe__grid .stripe__header {
  flex-shrink: 1;
}
