:root {
  --primary: #5CE0D8;
  --secondary:#01345B;
  --tertiary:#FFCF43;
  --grey:#a0a0a0;
  --black: #1d1d1d;
  --white: #fff;
  --mid-grey: #c7c7c7;
  --light-grey: #f5f5f5;
  --error: #f33f3f;
  --primary-font-colour: #14233c;
  --button-colour: var(--primary);
  --button-colour-secondary: var(--secondary);
  --border-color:var(--primary);
  --border-color-secondary: var(--secondary);
  --border-color-tertiary: var(--tertiary);
  --border-color-white: var(--white);
  --border-color-grey: var(--mid-grey);
  --border-color-black: var(--black);
  --icon-color:var(--black);
  --icon-color-primary:var(--primary);
  --icon-color-secondary:var(--secondary);
  --icon-color-tertiary:var(--tertiary);
  --icon-color-white:var(--white); }

.background-colour.background-colour--grey {
  background-color: #f5f5f5;
  background-color: #f5f5f5;
  background-color: var(--light-grey); }
  .background-colour.background-colour--grey + .background-colour.background-colour--grey {
    padding: 0 0 60px; }

.background-colour.background-colour--primary {
  background-color: #5CE0D8;
  background-color: #5CE0D8;
  background-color: var(--primary); }
  .background-colour.background-colour--primary + .background-colour.background-colour--primary {
    padding: 0 0 60px; }
  .background-colour.background-colour--primary .text h1, .background-colour.background-colour--primary .text h2, .background-colour.background-colour--primary .text h3, .background-colour.background-colour--primary .text h4, .background-colour.background-colour--primary .text h5, .background-colour.background-colour--primary .text p, .background-colour.background-colour--primary .text ul, .background-colour.background-colour--primary .text ol, .background-colour.background-colour--primary .text li, .background-colour.background-colour--primary .text a {
    --primary-font-colour: var(--white); }

.background-colour.background-colour--secondary {
  background-color: #01345B;
  background-color: #01345B;
  background-color: var(--secondary); }
  .background-colour.background-colour--secondary + .background-colour.background-colour--secondary {
    padding: 0 0 60px; }
  .background-colour.background-colour--secondary .text h1, .background-colour.background-colour--secondary .text h2, .background-colour.background-colour--secondary .text h3, .background-colour.background-colour--secondary .text h4, .background-colour.background-colour--secondary .text h5, .background-colour.background-colour--secondary .text p, .background-colour.background-colour--secondary .text ul, .background-colour.background-colour--secondary .text ol, .background-colour.background-colour--secondary .text li, .background-colour.background-colour--secondary .text a {
    --primary-font-colour: var(--white); }

.background-colour.background-colour--tertiary {
  background-color: #FFCF43;
  background-color: #FFCF43;
  background-color: var(--tertiary); }
  .background-colour.background-colour--tertiary + .background-colour.background-colour--tertiary {
    padding: 0 0 60px; }
  .background-colour.background-colour--tertiary .text h1, .background-colour.background-colour--tertiary .text h2, .background-colour.background-colour--tertiary .text h3, .background-colour.background-colour--tertiary .text h4, .background-colour.background-colour--tertiary .text h5, .background-colour.background-colour--tertiary .text p, .background-colour.background-colour--tertiary .text ul, .background-colour.background-colour--tertiary .text ol, .background-colour.background-colour--tertiary .text li, .background-colour.background-colour--tertiary .text a {
    --primary-font-colour: var(--white); }

.component-grid {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
          justify-content: space-between; }
  @supports (display: grid) {
    .component-grid {
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      grid-row-gap: 20px;
      grid-column-gap: 20px; } }
  .component-grid__100, .component-grid__50, .component-grid__33, .component-grid__25, .component-grid__30, .component-grid__70 {
    -webkit-flex-basis: 100%;
            flex-basis: 100%; }
    @supports (display: grid) {
      .component-grid__100, .component-grid__50, .component-grid__33, .component-grid__25, .component-grid__30, .component-grid__70 {
        grid-column: 1/-1; } }
  @media all and (min-width: 640px) {
    .component-grid__25 {
      -webkit-flex-basis: 21%;
              flex-basis: 21%; }
      @supports (display: grid) {
        .component-grid__25 {
          grid-column: span 3; } }
    .component-grid__30 {
      -webkit-flex-basis: 27%;
              flex-basis: 27%; }
      @supports (display: grid) {
        .component-grid__30 {
          grid-column: span 4; } }
    .component-grid__50 {
      -webkit-flex-basis: 46%;
              flex-basis: 46%; }
      @supports (display: grid) {
        .component-grid__50 {
          grid-column: span 6; } }
    .component-grid__70 {
      -webkit-flex-basis: 69%;
              flex-basis: 69%; }
      @supports (display: grid) {
        .component-grid__70 {
          grid-column: span 8; } } }
  @media all and (min-width: 768px) {
    .component-grid__33 {
      -webkit-flex-basis: 27%;
              flex-basis: 27%; }
      @supports (display: grid) {
        .component-grid__33 {
          grid-column: span 4; } } }

.container .page-builder-section {
  padding: 60px 0 !important; }

.inner-grid {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
          justify-content: space-between; }
  @supports (display: grid) {
    .inner-grid {
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      grid-row-gap: 20px;
      grid-column-gap: 20px; } }
  .inner-grid__section {
    -webkit-flex-basis: 100%;
            flex-basis: 100%; }
    @supports (display: grid) {
      .inner-grid__section {
        grid-column: 1/-1; } }

.inner-grid__section.inner-grid__section--small {
  -webkit-flex-basis: 100%;
          flex-basis: 100%; }
  @supports (display: grid) {
    .inner-grid__section.inner-grid__section--small {
      grid-column: 1/-1; } }
  @media all and (min-width: 640px) {
    @supports (display: grid) {
      .inner-grid__section.inner-grid__section--small {
        grid-column: 2/12; } } }
  @media all and (min-width: 768px) {
    @supports (display: grid) {
      .inner-grid__section.inner-grid__section--small {
        grid-column: 3/11; } } }
  @media all and (min-width: 1024px) {
    .inner-grid__section.inner-grid__section--small {
      max-width: 530px;
      margin: 0 auto;
      margin-bottom: 72px; }
      @supports (display: grid) {
        .inner-grid__section.inner-grid__section--small {
          grid-column: 4/10;
          margin: 0; } } }

.inner-grid__section.inner-grid__section--medium {
  -webkit-flex-basis: 100%;
          flex-basis: 100%; }
  @supports (display: grid) {
    .inner-grid__section.inner-grid__section--medium {
      grid-column: 1/-1; } }
  @media all and (min-width: 768px) {
    @supports (display: grid) {
      .inner-grid__section.inner-grid__section--medium {
        grid-column: 2/12; } } }
  @media all and (min-width: 1024px) {
    .inner-grid__section.inner-grid__section--medium {
      max-width: 710px;
      margin: 0 auto;
      margin-bottom: 72px; }
      @supports (display: grid) {
        .inner-grid__section.inner-grid__section--medium {
          grid-column: 3/11;
          margin: 0; } } }

.inner-grid__section.inner-grid__section--large {
  -webkit-flex-basis: 100%;
          flex-basis: 100%; }
  @supports (display: grid) {
    .inner-grid__section.inner-grid__section--large {
      grid-column: 1/-1; } }
  @media all and (min-width: 1024px) {
    .inner-grid__section.inner-grid__section--large {
      max-width: 890px;
      margin: 0 auto;
      margin-bottom: 72px; }
      @supports (display: grid) {
        .inner-grid__section.inner-grid__section--large {
          grid-column: 2/12;
          margin: 0; } } }

.page-builder .page-builder-section {
  -webkit-flex-basis: 100%;
          flex-basis: 100%;
  padding: 60px 0; }
  @supports (display: grid) {
    .page-builder .page-builder-section {
      grid-column: 1/-1; } }
  .page-builder .page-builder-section:first-of-type {
    padding-top: 0; }
  .page-builder .page-builder-section .hero {
    margin-bottom: 0; }

.spacer {
  display: block;
  padding: 32px 0; }
  @media all and (min-width: 1024px) {
    .spacer {
      padding: 48px 0; } }
