:root {
  /* Colours */
  --prefab-colour-accent-1: #860736;
  
  --prefab-colour-error: #FF4136;
  --prefab-colour-notice: #FFDF00;
  --prefab-colour-success: #2ECC40;
  --prefab-colour-warning: #FF851B;
  --prefab-colour-white: #FFFFFF;
  --prefab-colour-grey-100: #F8F9FA;
  --prefab-colour-grey-200: #E9ECEF;
  --prefab-colour-grey-300: #DEE2E6;
  --prefab-colour-grey-400: #CED4DA;
  --prefab-colour-grey-500: #ADB5BD;
  --prefab-colour-grey-600: #6C757D;
  --prefab-colour-grey-700: #495057;
  --prefab-colour-grey-800: #343A40;
  --prefab-colour-grey-900: #212529;
  --prefab-colour-black: #000000;
  --prefab-colour-transparent: transparent;

  /* Buttons */
  --prefab-btn-border: 0.15rem;
  --prefab-btn-font-size: 1.10rem;
  --prefab-btn-gap: 0.5rem;
  --prefab-btn-line-height: 1.2rem;
  --prefab-btn-line-height: 1.2rem;
  --prefab-btn-letter-spacing: 0rem;

  --prefab-btn-1-colour: var(--prefab-colour-accent-1);
  --prefab-btn-2-colour: var(--prefab-colour-black);
  --prefab-btn-3-colour: var(--prefab-colour-white);
  --prefab-btn-4-colour: var(--prefab-colour-grey-300);
  --prefab-btn-5-colour: var(--prefab-colour-grey-700);

  --prefab-btn-1-content: var(--prefab-colour-white);
  --prefab-btn-2-content: var(--prefab-colour-white);
  --prefab-btn-3-content: var(--prefab-colour-black);
  --prefab-btn-4-content: var(--prefab-colour-grey-900);
  --prefab-btn-5-content: var(--prefab-colour-grey-100);

  /* Typography */
  --prefab-h1-size: 3rem;
  --prefab-h1-line-height: 1.2;
  --prefab-h1-letter-spacing: 0.20rem;
  --prefab-h2-size: 2.25rem;
  --prefab-h2-line-height: 1.2;
  --prefab-h2-letter-spacing: 0.20rem;
  --prefab-h3-size: 1.75rem;
  --prefab-h3-line-height: 1.2;
  --prefab-h3-letter-spacing: 0.20rem;
  --prefab-h4-size: 1.5rem;
  --prefab-h4-line-height: 1.2;
  --prefab-h4-letter-spacing: 0rem;
  --prefab-h5-size: 1.25rem;
  --prefab-h5-line-height: 1.2;
  --prefab-h5-letter-spacing: 0rem;
  --prefab-h6-size: 1.125rem;
  --prefab-h6-line-height: 1.2;
  --prefab-h6-letter-spacing: 0rem;
  --prefab-lead-size: 1.30rem;
  --prefab-lead-line-height: 1.6;
  --prefab-lead-letter-spacing: 0rem;
  --prefab-body-size: 1.20rem; 
  --prefab-body-letter-spacing: 0rem;
  --prefab-body-line-height: 2.00rem; 
  --prefab-small-size: 0.85rem;
  --prefab-small-line-height: 1.4;
  --prefab-small-letter-spacing: 0rem;
  --prefab-list-size: 1.10rem;
  --prefab-list-line-height: 1.6;
  --prefab-list-letter-spacing: 0rem;

  --prefab-h1-font-weight: 400;
  --prefab-h2-font-weight: 400;
  --prefab-h3-font-weight: 400;
  --prefab-h4-font-weight: 400;
  --prefab-h5-font-weight: 400;

  /* Message boxes */
  --prefab-message-font-size: 1.12rem;
  --prefab-message-letter-spacing: 0rem;
  --prefab-message-line-height: 1.6;

  /* Borders (these are also exposed as utility classes; e.g. prefab-border-left) */
  
  --prefab-border-top: 0.10rem solid var(--prefab-colour-grey-300);
  --prefab-border-bottom: 0.10rem solid var(--prefab-colour-grey-300);
  --prefab-border-left: 0.10rem solid var(--prefab-colour-grey-300);
  --prefab-border-right: 0.10rem solid var(--prefab-colour-grey-300);
  

  /* Accent strokes (these are also exposed as utility classes; e.g. prefab-accent-stroke-left) */
  --prefab-accent-stroke-top: 0.50rem solid var(--prefab-colour-accent-1);
  --prefab-accent-stroke-bottom: 0.50rem solid var(--prefab-colour-accent-1);
  --prefab-accent-stroke-left: 0.50rem solid var(--prefab-colour-accent-1);
  --prefab-accent-stroke-right: 0.50rem solid var(--prefab-colour-accent-1);

  /* Shadows (these are also exposed as utility classes; e.g. prefab-shadow-medium) */
  --prefab-shadow-none: none;
  
  --prefab-shadow-light: 0 0.06rem 0.19rem rgba(0, 0, 0, 0.50);
  --prefab-shadow-light-inset: inset 0 0.06rem 0.19rem rgba(0, 0, 0, 0.50);
  
  
  --prefab-shadow-medium: 0 0.19rem 0.38rem rgba(0, 0, 0, 0.50);
  --prefab-shadow-medium-inset: inset 0 0.19rem 0.38rem rgba(0, 0, 0, 0.50);
  
  
  --prefab-shadow-dark: 0 0.38rem 0.75rem rgba(0, 0, 0, 0.50);
  --prefab-shadow-dark-inset: inset 0 0.38rem 0.75rem rgba(0, 0, 0, 0.50);
  

  /* Horizontal rules */
  --prefab-horizontal-rule-height: 1px;

  /* Forms */
  --prefab-form-input-stroke: 2px;
  --form_label_font_size: 1.20rem;
  --form_label_letter_spacing: 0rem;
  --form_label_line_height: 1.2rem;

  /* Border Radius */
  --prefab-radius-xs: 0.25rem;
  --prefab-radius-sm: 0.5rem;
  --prefab-radius-md: 0.75rem;
  --prefab-radius-lg: 1.00rem;
  --prefab-radius-xl: 1.25rem;
  --prefab-radius-1xl: 1.75rem;
  --prefab-radius-2xl: 2.5rem;
  --prefab-radius-3xl: 3.75rem;
  --prefab-radius-0: 0;
  --prefab-radius-10: 10%;
  --prefab-radius-20: 20%;
  --prefab-radius-30: 30%;
  --prefab-radius-40: 40%;
  --prefab-radius-50: 50%;

  /* Spacing */
  --prefab-spacing-xs: 0.25rem;
  --prefab-spacing-sm: 0.5rem;
  --prefab-spacing-md: 1rem;
  --prefab-spacing-lg: 1.5rem;
  --prefab-spacing-xl: 2rem;
  --prefab-spacing-1xl: 3rem;
  --prefab-spacing-2xl: 4rem;
  --prefab-spacing-3xl: 5rem;
  --prefab-section-padding-normal: clamp(2.00rem, 10.00vmin, 8.00rem);
  --prefab-section-padding-supersized: clamp(4.00rem, 20.00vmin, 16.00rem);

  /* Width */
  --prefab-width-tight: 40.00rem;
  --prefab-width-narrow: 52.00rem;
  --prefab-width-default: 80.00rem;
  --prefab-width-wide: 90.00rem;
  --prefab-width-full: 100%;
}

/* Variables for dark viewing modes */
@media (prefers-color-scheme: dark) {
  
  
  --prefab-shadow-light-darkmode: 0 0.06rem 0.19rem rgba(0, 0, 0, 0.50);
  --prefab-shadow-light-inset-darkmode: inset 0 0.06rem 0.19rem rgba(0, 0, 0, 0.50);
  
  [if 1 ]%
  --prefab-shadow-medium-darkmode: 0 0.19rem 0.38rem rgba(0, 0, 0, 0.50);
  --prefab-medium-shadow-inset-darkmode: inset 0 0.19rem 0.38rem custom;
  %[endif]%
  [if 1 ]%
  --prefab-shadow-dark-darkmode: 0 0.38rem 0.75rem ;
  --prefab-shadow-dark-inser-darkmode: inset 0 0.38rem 0.75rem rgba(0, 0, 0, 0.50);
  %[endif]%
}

.prefab *,
.prefab *::before,
.prefab *::after {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  max-width: 100vw;
}

body {
  font-size: var(--prefab-body-size); 
  line-height: var(--prefab-body-line-height); 
  letter-spacing: var(--prefab-body-letter-spacing);
  color: var(--prefab-colour-grey-800);
  
  font-family: Inter, Roboto, 'Helvetica Neue', 'Arial Nova', 'Nimbus Sans', Arial, sans-serif;
  
  text-transform: none;
}

.prefab p {
  margin-bottom: var(--prefab-spacing-md);
}

 
/* Grid System */

.prefab-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}

/* Default (XS) */
[class*="prefab-col-"] {
  grid-column: span 12;
}

.prefab-col-0  { display: none; }
.prefab-col-1  { display: initial; grid-column: span 1; }
.prefab-col-2  { display: initial; grid-column: span 2; }
.prefab-col-3  { display: initial; grid-column: span 3; }
.prefab-col-4  { display: initial; grid-column: span 4; }
.prefab-col-5  { display: initial; grid-column: span 5; }
.prefab-col-6  { display: initial; grid-column: span 6; }
.prefab-col-7  { display: initial; grid-column: span 7; }
.prefab-col-8  { display: initial; grid-column: span 8; }
.prefab-col-9  { display: initial; grid-column: span 9; }
.prefab-col-10 { display: initial; grid-column: span 10; }
.prefab-col-11 { display: initial; grid-column: span 11; }
.prefab-col-12 { display: initial; grid-column: span 12; }

/* SM ≥ 576px */
@media (min-width: 576px) {
  .prefab-sm-0  { display: none; }
  .prefab-sm-1  { display: initial; grid-column: span 1; }
  .prefab-sm-2  { display: initial; grid-column: span 2; }
  .prefab-sm-3  { display: initial; grid-column: span 3; }
  .prefab-sm-4  { display: initial; grid-column: span 4; }
  .prefab-sm-5  { display: initial; grid-column: span 5; }
  .prefab-sm-6  { display: initial; grid-column: span 6; }
  .prefab-sm-7  { display: initial; grid-column: span 7; }
  .prefab-sm-8  { display: initial; grid-column: span 8; }
  .prefab-sm-9  { display: initial; grid-column: span 9; }
  .prefab-sm-10 { display: initial; grid-column: span 10; }
  .prefab-sm-11 { display: initial; grid-column: span 11; }
  .prefab-sm-12 { display: initial; grid-column: span 12; }
}

/* MD ≥ 768px */
@media (min-width: 768px) {
  .prefab-md-0  { display: none; }
  .prefab-md-1  { display: initial; grid-column: span 1; }
  .prefab-md-2  { display: initial; grid-column: span 2; }
  .prefab-md-3  { display: initial; grid-column: span 3; }
  .prefab-md-4  { display: initial; grid-column: span 4; }
  .prefab-md-5  { display: initial; grid-column: span 5; }
  .prefab-md-6  { display: initial; grid-column: span 6; }
  .prefab-md-7  { display: initial; grid-column: span 7; }
  .prefab-md-8  { display: initial; grid-column: span 8; }
  .prefab-md-9  { display: initial; grid-column: span 9; }
  .prefab-md-10 { display: initial; grid-column: span 10; }
  .prefab-md-11 { display: initial; grid-column: span 11; }
  .prefab-md-12 { display: initial; grid-column: span 12; }
}

/* LG ≥ 992px */
@media (min-width: 992px) {
  .prefab-lg-0  { display: none; }
  .prefab-lg-1  { display: initial; grid-column: span 1; }
  .prefab-lg-2  { display: initial; grid-column: span 2; }
  .prefab-lg-3  { display: initial; grid-column: span 3; }
  .prefab-lg-4  { display: initial; grid-column: span 4; }
  .prefab-lg-5  { display: initial; grid-column: span 5; }
  .prefab-lg-6  { display: initial; grid-column: span 6; }
  .prefab-lg-7  { display: initial; grid-column: span 7; }
  .prefab-lg-8  { display: initial; grid-column: span 8; }
  .prefab-lg-9  { display: initial; grid-column: span 9; }
  .prefab-lg-10 { display: initial; grid-column: span 10; }
  .prefab-lg-11 { display: initial; grid-column: span 11; }
  .prefab-lg-12 { display: initial; grid-column: span 12; }
}

/* XL ≥ 1200px */
@media (min-width: 1200px) {
  .prefab-xl-0  { display: none; }
  .prefab-xl-1  { display: initial; grid-column: span 1; }
  .prefab-xl-2  { display: initial; grid-column: span 2; }
  .prefab-xl-3  { display: initial; grid-column: span 3; }
  .prefab-xl-4  { display: initial; grid-column: span 4; }
  .prefab-xl-5  { display: initial; grid-column: span 5; }
  .prefab-xl-6  { display: initial; grid-column: span 6; }
  .prefab-xl-7  { display: initial; grid-column: span 7; }
  .prefab-xl-8  { display: initial; grid-column: span 8; }
  .prefab-xl-9  { display: initial; grid-column: span 9; }
  .prefab-xl-10 { display: initial; grid-column: span 10; }
  .prefab-xl-11 { display: initial; grid-column: span 11; }
  .prefab-xl-12 { display: initial; grid-column: span 12; }
}

.prefab-grid-gap-0 { gap: 0; }
.prefab-grid-gap-none { gap: 0; }
.prefab-grid-gap-xs { gap: var(--prefab-spacing-xs); }
.prefab-grid-gap-sm { gap: var(--prefab-spacing-sm); }
.prefab-grid-gap-md { gap: var(--prefab-spacing-md); }
.prefab-grid-gap-lg { gap: var(--prefab-spacing-lg); }
.prefab-grid-gap-xl { gap: var(--prefab-spacing-xl); }
.prefab-grid-gap-1xl { gap: var(--prefab-spacing-1xl); }
.prefab-grid-gap-2xl { gap: var(--prefab-spacing-2xl); }
.prefab-grid-gap-3xl { gap: var(--prefab-spacing-3xl); }
.prefab-grid-gap-section-normal { gap: var(--prefab-section-padding-normal); }
.prefab-grid-gap-section-supersized { gap: var(--prefab-section-padding-supersized); }


/* Soft CSS Columns */

.prefab-columns-xs-1  { column-count: 1; }
.prefab-columns-xs-2  { column-count: 2; }
.prefab-columns-xs-3  { column-count: 3; }
.prefab-columns-xs-4  { column-count: 4; }
.prefab-columns-xs-5  { column-count: 5; }
.prefab-columns-xs-6  { column-count: 6; }
.prefab-columns-xs-7  { column-count: 7; }
.prefab-columns-xs-8  { column-count: 8; }
.prefab-columns-xs-9  { column-count: 9; }
.prefab-columns-xs-10 { column-count: 10; }
.prefab-columns-xs-11 { column-count: 11; }
.prefab-columns-xs-12 { column-count: 12; }

@media (min-width: 576px) {
  .prefab-columns-sm-1  { column-count: 1; }
  .prefab-columns-sm-2  { column-count: 2; }
  .prefab-columns-sm-3  { column-count: 3; }
  .prefab-columns-sm-4  { column-count: 4; }
  .prefab-columns-sm-5  { column-count: 5; }
  .prefab-columns-sm-6  { column-count: 6; }
  .prefab-columns-sm-7  { column-count: 7; }
  .prefab-columns-sm-8  { column-count: 8; }
  .prefab-columns-sm-9  { column-count: 9; }
  .prefab-columns-sm-10 { column-count: 10; }
  .prefab-columns-sm-11 { column-count: 11; }
  .prefab-columns-sm-12 { column-count: 12; }
}

@media (min-width: 768px) {
  .prefab-columns-md-1  { column-count: 1; }
  .prefab-columns-md-2  { column-count: 2; }
  .prefab-columns-md-3  { column-count: 3; }
  .prefab-columns-md-4  { column-count: 4; }
  .prefab-columns-md-5  { column-count: 5; }
  .prefab-columns-md-6  { column-count: 6; }
  .prefab-columns-md-7  { column-count: 7; }
  .prefab-columns-md-8  { column-count: 8; }
  .prefab-columns-md-9  { column-count: 9; }
  .prefab-columns-md-10 { column-count: 10; }
  .prefab-columns-md-11 { column-count: 11; }
  .prefab-columns-md-12 { column-count: 12; }
}

@media (min-width: 992px) {
  .prefab-columns-lg-1  { column-count: 1; }
  .prefab-columns-lg-2  { column-count: 2; }
  .prefab-columns-lg-3  { column-count: 3; }
  .prefab-columns-lg-4  { column-count: 4; }
  .prefab-columns-lg-5  { column-count: 5; }
  .prefab-columns-lg-6  { column-count: 6; }
  .prefab-columns-lg-7  { column-count: 7; }
  .prefab-columns-lg-8  { column-count: 8; }
  .prefab-columns-lg-9  { column-count: 9; }
  .prefab-columns-lg-10 { column-count: 10; }
  .prefab-columns-lg-11 { column-count: 11; }
  .prefab-columns-lg-12 { column-count: 12; }
}

@media (min-width: 1200px) {
  .prefab-columns-xl-1  { column-count: 1; }
  .prefab-columns-xl-2  { column-count: 2; }
  .prefab-columns-xl-3  { column-count: 3; }
  .prefab-columns-xl-4  { column-count: 4; }
  .prefab-columns-xl-5  { column-count: 5; }
  .prefab-columns-xl-6  { column-count: 6; }
  .prefab-columns-xl-7  { column-count: 7; }
  .prefab-columns-xl-8  { column-count: 8; }
  .prefab-columns-xl-9  { column-count: 9; }
  .prefab-columns-xl-10 { column-count: 10; }
  .prefab-columns-xl-11 { column-count: 11; }
  .prefab-columns-xl-12 { column-count: 12; }
}

/* Typography */

b, strong {
  font-weight: bold;
}

address {
  font-style: normal;
}

a,
a:visited {
  color: var(--prefab-colour-accent-1);
  opacity: 1.00;
  text-decoration: underline;
  text-decoration-thickness: 0.05rem;
  text-underline-offset: 0.20rem;
  text-decoration-color: currentColor;
  text-decoration-style: solid;
  transition: text-decoration-color 0.2s, opacity 0.2s;
}

a:hover,
a:active {
  opacity: 0.85;
}

.prefab_btn,
.prefab_btn_parent a,
.prefab_btn_parent button {
  cursor: pointer;
  display: inline-flex;
  width: auto;
  text-decoration: none;
  text-align: center;
  margin: var(--prefab-spacing-sm) 0;
  padding: var(--prefab-spacing-md) var(--prefab-spacing-xl);
  letter-spacing: var(--prefab-btn-letter-spacing);
  line-height: var(--prefab-btn-line-height);
  font-size: var(--prefab-btn-font-size);
  
  font-family: inherit;
  
  border-radius: var(--prefab-radius-sm);
  transition: transform 0.1s ease-out, opacity 0.2s;
  opacity: 1.00;
  gap: var(--prefab-btn-gap);
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}

.prefab_btn:hover,
.prefab_btn_parent a:hover,
.prefab_btn_parent button:hover {
  opacity: 0.85;
}

.prefab_btn:active,
.prefab_btn_parent a:active,
.prefab_btn_parent button:active {
  transform: scale(0.95) translateY(2px);
}

.prefab_btn:disabled,
.prefab_btn_parent a:disabled,
.prefab_btn_parent button:disabled {
  opacity: 0.25;
  cursor: not-allowed;
}

.prefab_btn_block,
.prefab_btn_parent.prefab_btn_block a,
.prefab_btn_parent.prefab_btn_block button {
  width: 100%;
}

.prefab_btn_pill,
.prefab_btn_parent.prefab_btn_pill a,
.prefab_btn_parent.prefab_btn_pill button {
  border-radius: 100rem;
}

.prefab_btn_1,
.prefab_btn_1_parent a,
.prefab_btn_1_parent button,
.prefab_btn_1:visited,
.prefab_btn_1_parent a:visited {
  background-color: var(--prefab-btn-1-colour);
  color: var(--prefab-btn-1-content);
  border: var(--prefab-btn-border) solid var(--prefab-btn-1-colour);
}

.prefab_btn_1.prefab_btn_outline,
.prefab_btn_1_parent.prefab_btn_outline a,
.prefab_btn_1_parent.prefab_btn_outline button,
.prefab_btn_1.prefab_btn_outline:visited,
.prefab_btn_1_parent.prefab_btn_outline a:visited {
  background: transparent;
  color: var(--prefab-btn-1-colour);
  border: var(--prefab-btn-border) solid var(--prefab-btn-1-colour);
}

.prefab_btn_1.prefab_btn_coloured_link,
.prefab_btn_1_parent.prefab_btn_coloured_link a,
.prefab_btn_1_parent.prefab_btn_coloured_link button,
.prefab_btn_1.prefab_btn_coloured_link:visited,
.prefab_btn_1_parent.prefab_btn_coloured_link a:visited {
  background: transparent;
  border-color: transparent;
  color: var(--prefab-btn-1-colour);
  text-decoration: underline;
  text-decoration-thickness: 0.05rem;
  text-underline-offset: 0.20rem;
  text-decoration-color: currentColor;
  text-decoration-style: solid;
  transition: text-decoration-color 0.2s, opacity 0.2s;
}

.prefab_btn_2,
.prefab_btn_2_parent a,
.prefab_btn_2_parent button,
.prefab_btn_2:visited,
.prefab_btn_2_parent a:visited {
  background-color: var(--prefab-btn-2-colour);
  color: var(--prefab-btn-2-content);
  border: var(--prefab-btn-border) solid var(--prefab-btn-2-colour);
}

.prefab_btn_2.prefab_btn_outline,
.prefab_btn_2_parent.prefab_btn_outline a,
.prefab_btn_2_parent.prefab_btn_outline button,
.prefab_btn_2.prefab_btn_outline:visited,
.prefab_btn_2_parent.prefab_btn_outline a:visited {
  background: transparent;
  color: var(--prefab-btn-2-colour);
  border: var(--prefab-btn-border) solid var(--prefab-btn-2-colour);
}

.prefab_btn_2.prefab_btn_coloured_link,
.prefab_btn_2_parent.prefab_btn_coloured_link a,
.prefab_btn_2_parent.prefab_btn_coloured_link button,
.prefab_btn_2.prefab_btn_coloured_link:visited,
.prefab_btn_2_parent.prefab_btn_coloured_link a:visited {
  background: transparent;
  border-color: transparent;
  color: var(--prefab-btn-2-colour);
  text-decoration: underline;
  text-decoration-thickness: 0.05rem;
  text-underline-offset: 0.20rem;
  text-decoration-color: currentColor;
  text-decoration-style: solid;
  transition: text-decoration-color 0.2s, opacity 0.2s;
}

.prefab_btn_3,
.prefab_btn_3_parent a,
.prefab_btn_3_parent button,
.prefab_btn_3:visited,
.prefab_btn_3_parent a:visited {
  background-color: var(--prefab-btn-3-colour);
  color: var(--prefab-btn-3-content);
  border: var(--prefab-btn-border) solid var(--prefab-btn-3-colour);
}

.prefab_btn_3.prefab_btn_outline,
.prefab_btn_3_parent.prefab_btn_outline a,
.prefab_btn_3_parent.prefab_btn_outline button,
.prefab_btn_3.prefab_btn_outline:visited,
.prefab_btn_3_parent.prefab_btn_outline a:visited {
  background: transparent;
  color: var(--prefab-btn-3-colour);
  border: var(--prefab-btn-border) solid var(--prefab-btn-3-colour);
}

.prefab_btn_3.prefab_btn_coloured_link,
.prefab_btn_3_parent.prefab_btn_coloured_link a,
.prefab_btn_3_parent.prefab_btn_coloured_link button,
.prefab_btn_3.prefab_btn_coloured_link:visited,
.prefab_btn_3_parent.prefab_btn_coloured_link a:visited {
  background: transparent;
  border-color: transparent;
  color: var(--prefab-btn-3-colour);
  text-decoration: underline;
  text-decoration-thickness: 0.05rem;
  text-underline-offset: 0.20rem;
  text-decoration-color: currentColor;
  text-decoration-style: solid;
  transition: text-decoration-color 0.2s, opacity 0.2s;
}

.prefab_btn_4,
.prefab_btn_4_parent a,
.prefab_btn_4:visited,
.prefab_btn_4_parent a:visited {
  background-color: var(--prefab-btn-4-colour);
  color: var(--prefab-btn-4-content);
  border: var(--prefab-btn-border) solid var(--prefab-btn-4-colour);
}

.prefab_btn_4.prefab_btn_outline,
.prefab_btn_4_parent.prefab_btn_outline a,
.prefab_btn_4_parent.prefab_btn_outline button,
.prefab_btn_4.prefab_btn_outline:visited,
.prefab_btn_4_parent.prefab_btn_outline a:visited {
  background: transparent;
  color: var(--prefab-btn-4-colour);
  border: var(--prefab-btn-border) solid var(--prefab-btn-4-colour);
}

.prefab_btn_4.prefab_btn_coloured_link,
.prefab_btn_4_parent.prefab_btn_coloured_link a,
.prefab_btn_4_parent.prefab_btn_coloured_link button,
.prefab_btn_4.prefab_btn_coloured_link:visited,
.prefab_btn_4_parent.prefab_btn_coloured_link a:visited {
  background: transparent;
  border-color: transparent;
  color: var(--prefab-btn-4-colour);
  text-decoration: underline;
  text-decoration-thickness: 0.05rem;
  text-underline-offset: 0.20rem;
  text-decoration-color: currentColor;
  text-decoration-style: solid;
  transition: text-decoration-color 0.2s, opacity 0.2s;
}

.prefab_btn_5,
.prefab_btn_5_parent a,
.prefab_btn_5_parent button,
.prefab_btn_5:visited,
.prefab_btn_5_parent a:visited {
  background-color: var(--prefab-btn-5-colour);
  color: var(--prefab-btn-5-content);
  border: var(--prefab-btn-border) solid var(--prefab-btn-5-colour);
}

.prefab_btn_5.prefab_btn_outline,
.prefab_btn_5_parent.prefab_btn_outline a,
.prefab_btn_5_parent.prefab_btn_outline button,
.prefab_btn_5.prefab_btn_outline:visited,
.prefab_btn_5_parent.prefab_btn_outline a:visited {
  background: transparent;
  color: var(--prefab-btn-5-colour);
  border: var(--prefab-btn-border) solid var(--prefab-btn-5-colour);
}

.prefab_btn_5.prefab_btn_coloured_link,
.prefab_btn_5_parent.prefab_btn_coloured_link a,
.prefab_btn_5_parent.prefab_btn_coloured_link button,
.prefab_btn_5.prefab_btn_coloured_link:visited,
.prefab_btn_5_parent.prefab_btn_coloured_link a:visited {
  background: transparent;
  border-color: transparent;
  color: var(--prefab-btn-5-colour);
  text-decoration: underline;
  text-decoration-thickness: 0.05rem;
  text-underline-offset: 0.20rem;
  text-decoration-color: currentColor;
  text-decoration-style: solid;
  transition: text-decoration-color 0.2s, opacity 0.2s;
}

.prefab_btn_1.prefab_btn_plain_link,
.prefab_btn_2.prefab_btn_plain_link,
.prefab_btn_3.prefab_btn_plain_link,
.prefab_btn_4.prefab_btn_plain_link,
.prefab_btn_5.prefab_btn_plain_link,
.prefab_btn_1_parent.prefab_btn_plain_link a,
.prefab_btn_2_parent.prefab_btn_plain_link a,
.prefab_btn_3_parent.prefab_btn_plain_link a,
.prefab_btn_4_parent.prefab_btn_plain_link a,
.prefab_btn_5_parent.prefab_btn_plain_link a,
.prefab_btn_1_parent.prefab_btn_plain_link a:visited,
.prefab_btn_2_parent.prefab_btn_plain_link a:visited,
.prefab_btn_3_parent.prefab_btn_plain_link a:visited,
.prefab_btn_4_parent.prefab_btn_plain_link a:visited,
.prefab_btn_5_parent.prefab_btn_plain_link a:visited {
  padding: 0;
  background: transparent;
  border-color: transparent;
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 0.05rem;
  text-underline-offset: 0.20rem;
  text-decoration-color: currentColor;
  text-decoration-style: solid;
  transition: text-decoration-color 0.2s, opacity 0.2s;
}

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

.prefab-center,
.prefab-centre {
  text-align: center;
}

.prefab-justify {
  text-align: justify;
}

.prefab-right {
  text-align: right;
}

.prefab h1, .prefab h2, .prefab h3, .prefab h4, .prefab h5, .prefab h6, .prefab small {
  padding: 0;
  margin: 0;
}

.prefab h1 {
  font-size: var(--prefab-h1-size); 
  line-height: var(--prefab-h1-line-height); 
  letter-spacing: var(--prefab-h1-letter-spacing);
  font-weight: var(--prefab-h1-font-weight);
  
  margin-bottom: var(--prefab-spacing-md);
  text-transform: none;
}

.prefab h2 {
  font-size: var(--prefab-h2-size); 
  line-height: var(--prefab-h2-line-height); 
  letter-spacing: var(--prefab-h2-letter-spacing);
  font-weight: var(--prefab-h2-font-weight);
  
  margin-bottom: var(--prefab-spacing-md);
  text-transform: none;
}

.prefab h3 {
  font-size: var(--prefab-h3-size); 
  line-height: var(--prefab-h3-line-height); 
  letter-spacing: var(--prefab-h3-letter-spacing);
  font-weight: var(--prefab-h3-font-weight);
  
  margin-bottom: var(--prefab-spacing-md);
  text-transform: none;
}

.prefab h4 {
  font-size: var(--prefab-h4-size); 
  line-height: var(--prefab-h4-line-height); 
  letter-spacing: var(--prefab-h4-letter-spacing);
  font-weight: var(--prefab-h4-font-weight);
  
  margin-bottom: var(--prefab-spacing-md);
  text-transform: none;
}

.prefab h5 {
  font-size: var(--prefab-h5-size); 
  line-height: var(--prefab-h5-line-height); 
  letter-spacing: var(--prefab-h5-letter-spacing);
  font-weight: var(--prefab-h5-font-weight);
  
  margin-bottom: var(--prefab-spacing-md);
  text-transform: none;
}

.prefab h6 {
  font-size: var(--prefab-h6-size); 
  line-height: var(--prefab-h6-line-height); 
  letter-spacing: var(--prefab-h6-letter-spacing);
  font-weight: var(--prefab-h6-font-weight);
  
  margin-bottom: var(--prefab-spacing-md);
  text-transform: none;
}

.prefab .lead,
.prefab .lead p {
  font-size: var(--prefab-lead-size); 
  line-height: var(--prefab-lead-line-height); 
  letter-spacing: var(--prefab-lead-letter-spacing);
  
  font-family: inherit;
  
  margin-bottom: var(--prefab-spacing-md);
  text-transform: none;
}

.prefab .display * {
  font-size: 2rem;
}

@media (min-width: 576px) {
  .prefab .display * {
    font-size: 3rem;
  }
}

@media (min-width: 768px) {
  .prefab .display * {
    font-size: 4rem;
  }
}

@media (min-width: 992px) {
  .prefab .display * {
    font-size: 5rem;
  }
}

@media (min-width: 1200px) {
  .prefab .display * {
    font-size: 6rem;
  }
}

.prefab small {
  font-size: var(--prefab-small-size); 
  line-height: var(--prefab-small-line-height); 
  letter-spacing: var(--prefab-small-letter-spacing);
  
  font-family: inherit;
  
  margin-bottom: 0;
  text-transform: none;
}

.prefab-section-item-svg svg {
  width: 3rem;
  height: auto;
}

.prefab ol:not(nav ol), 
.prefab ul:not(nav ul) {
  font-size: var(--prefab-list-size); 
  line-height: var(--prefab-list-line-height); 
  letter-spacing: var(--prefab-list-letter-spacing);
  
  font-family: inherit;
  
  margin-bottom: var(--prefab-spacing-md);
  text-transform: none;
}

.prefab ol:not(nav ol) {
  list-style-type: decimal;
}

.prefab ul:not(nav ul) {
  list-style-type: disc;
}

.prefab ol:not(nav ol) li,
.prefab ul:not(nav ul) li {
  margin-top: calc(var(--prefab-spacing-md) / 2);
  margin-bottom: calc(var(--prefab-spacing-md) / 2);
}

/* Details styling */

details {
  border: 1px solid var(--prefab-colour-grey-200);
  border-radius: var(--prefab-radius-sm);
  margin-bottom: var(--prefab-spacing-lg);
  overflow: hidden;
  background-color: var(--prefab-colour-grey-100);
  font-weight: 400;
  font-size: 1.20rem;
  font-family: inherit;
  color: var(--prefab-colour-grey-800);
}

summary {
  cursor: pointer;
  padding: var(--prefab-spacing-sm) var(--prefab-spacing-md);
  background-color: var(--prefab-colour-grey-200);
  list-style: none; /* removes default triangle */
  position: relative;
  border-radius: var(--prefab-radius-sm);
  transition: border-radius 0.2s ease;
  display: flex;
  font-weight: 400;
  flex-direction: row-reverse;
  justify-content: space-between;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  font-size: 1.2rem;
  font-family: inherit;
  color: var(--prefab-colour-900);
}

summary::-webkit-details-marker {
  display: none;
}

summary .icon {
  transition: transform 0.3s ease;
  transform-origin: center;
  display: inline-flex;
  color: var(--prefab-colour-accent-1);
}

summary .icon svg {
  width: 1.5rem;
  height: auto;
}

details[open] summary .icon {
  transform: rotate(90deg);
}

details[open] summary {
  border-bottom: 1px solid var(--prefab-colour-grey-200);
  border-radius: var(--prefab-radius-sm)  var(--prefab-radius-sm)  0 0;
}

details > *:not(summary) {
  padding: var(--prefab-spacing-sm) var(--prefab-spacing-md);
  background-color: var(--prefab-colour-grey-100);
  margin: 0;
}

details[open] > *:last-child {
  border-radius: 0 0 var(--prefab-radius-sm) var(--prefab-radius-sm) ;
}

/* Message boxes */

.prefab_msg_box {
  font-size: var(--prefab-message-font-size);
  letter-spacing: var(--prefab-message-letter-spacing);
  line-height: var(--prefab-message-line-height);
  font-family: inherit;
  text-transform: none;
  padding: var(--prefab-spacing-md);
  position: relative;
}

.prefab_msg_box::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0),rgba(0, 0, 0, 0.20));
  
  z-index: 0;
}


.prefab_msg_box > * {
  position: relative;
  z-index: 1;
}

.prefab_error {
  background-color: var(--prefab-colour-error);
  color: var(--prefab-colour-white) !important;
}

.prefab_info {
  background-color: var(--prefab-colour-accent-1);
  color: var(--prefab-colour-white) !important;
}

.prefab_notice {
  background-color: var(--prefab-colour-notice);
  color: var(--prefab-colour-black) !important;
}

.prefab_success {
  background-color: var(--prefab-colour-success);
  color: var(--prefab-colour-white) !important;
}

.prefab_warning {
  background-color: var(--prefab-colour-warning);
  color: var(--prefab-colour-white) !important;
}

/* Dividers */

hr,
.prefab-divider--solid {
  border: none;
  height: var(--prefab-horizontal-rule-height);
  background: var(--prefab-colour-grey-400);
  width: 100%;
  margin: 0 auto;
}

.prefab-divider--none {
  border: none;
  height: 0rem;
  background: transparent;
  width: 100%;
  margin: 0;
}

.prefab-divider--fade {
  border: none;
  height: var(--prefab-horizontal-rule-height);
  width: 100%;
  background: linear-gradient(to right, transparent, var(--prefab-colour-grey-400), transparent);
  margin: 0 auto;
}

.prefab-divider--fade-out {
  border: none;
  height: var(--prefab-horizontal-rule-height);
  width: 100%;
  background: linear-gradient(to right, var(--prefab-colour-grey-400) 0%, transparent 100%);
  margin: 0 auto;
}

.prefab-divider--fade-in {
  border: none;
  height: var(--prefab-horizontal-rule-height);
  width: 100%;
  background: linear-gradient(to right, transparent 0%, var(--prefab-colour-grey-400) 100%);
  margin: 0 auto;
}

.prefab-divider--w-100 { width: 100%; }
.prefab-divider--w-75  { width: 75%; }
.prefab-divider--w-50  { width: 50%; }
.prefab-divider--w-25  { width: 25%; }

/* Navigation lists */

.prefab_nav_list ol,
.prefab_nav_list ul {
  padding: 0;
  margin: 0;
  list-style: none !important;
}
.prefab_nav_list a {
  display: block;
  padding: var(--prefab-spacing-xs) 0;
}
.prefab_nav_list li:first-child a {
  padding-top: 0;
}
.prefab_nav_list li:last-child a {
  padding-bottom: 0;
}

/* Shadows */


.prefab-light-shadow {
  box-shadow: 0 0.06rem 0.19rem rgba(0, 0, 0, 0.50);
}
.prefab-light-shadow-inset {
  box-shadow: inset 0 0.06rem 0.19rem rgba(0, 0, 0, 0.50);
}
@media (prefers-color-scheme: dark) {
  .prefab-light-shadow {
    box-shadow: 0 0.06rem 0.19rem rgba(0, 0, 0, 0.50);
  }
  .prefab-light-shadow-inset {
    box-shadow: inset 0 0.06rem 0.19rem rgba(0, 0, 0, 0.50);
  }
}



.prefab-medium-shadow {
  box-shadow: 0 0.19rem 0.38rem rgba(0, 0, 0, 0.50);
}
.prefab-medium-shadow-inset {
  box-shadow: inset 0 0.19rem 0.38rem rgba(0, 0, 0, 0.50);
}
@media (prefers-color-scheme: dark) {
  .prefab-medium-shadow {
    box-shadow: 0 0.19rem 0.38rem rgba(0, 0, 0, 0.50);
  }
  .prefab-medium-shadow-inset {
    box-shadow: inset 0 0.19rem 0.38rem custom;
  }
}



.prefab-dark-shadow {
  box-shadow: 0 0.38rem 0.75rem rgba(0, 0, 0, 0.50);
}
.prefab-dark-shadow-inset {
  box-shadow: inset 0 0.38rem 0.75rem rgba(0, 0, 0, 0.50);
}
@media (prefers-color-scheme: dark) {
  .prefab-dark-shadow {
    box-shadow: 0 0.38rem 0.75rem ;
  }
  .prefab-dark-shadow-inset {
    box-shadow: inset 0 0.38rem 0.75rem rgba(0, 0, 0, 0.50);
  }
}


/* Borders */

.prefab-border-top {
  border-top: var(--prefab-border-top);
}
.prefab-border-bottom {
  border-top: var(--prefab-border-bottom);
}
.prefab-border-left {
  border-top: var(--prefab-border-left);
}
.prefab-border-right {
  border-top: var(--prefab-border-right);
}

/* Accent strokes */

.prefab-accent-stroke-left {
  border-left: 0.50rem solid var(--prefab-colour-accent-1);
}
.prefab-accent-stroke-right {
  border-right: 0.50rem solid var(--prefab-colour-accent-1);
}
.prefab-accent-stroke-top {
  border-top: 0.50rem solid var(--prefab-colour-accent-1);
}
.prefab-accent-stroke-bottom {
  border-bottom: 0.50rem solid var(--prefab-colour-accent-1);
}

/* Forms */

.prefab_form {
  display: flex;
  flex-direction: column;
  gap: var(--prefab-spacing-md);
}

.prefab fieldset {
  border: none;
  padding: 0;
  margin: 0;
}

.prefab_2_col_form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--prefab-spacing-md);
}

.prefab_2_col_form .prefab_form_group {
  display: flex;
  flex-direction: column;
}

.prefab_2_col_form .span_2 {
  grid-column: span 2;
}

@media (max-width: 768px) {
  .prefab_2_col_form {
    grid-template-columns: 1fr;
  }

  .prefab_2_col_form .span_2 {
    grid-column: span 1;
  }
}

/* Target buttons inside the grid */
.prefab_2_col_form .prefab_form_group.prefab_form_button_group {
  grid-column: span 2;
  display: flex;
  justify-content: flex-start; /* Or center, or flex-end */
}

.prefab_2_col_form .prefab_form_group.prefab_form_button_group .button {
  width: auto; /* Ensure button shrinks to fit */
}

.prefab .prefab_form_group {
  position: relative;
}

.prefab label,
.prefab legend {
  display: block;
  font-weight: 400;
  padding: 0;
  margin: var(--prefab-spacing-sm) 0 0.25rem 0;
  font-family: inherit;
  color: var(--prefab-colour-grey-900);
  text-transform: none;
}

.prefab input,
.prefab textarea,
.prefab select {
  box-sizing: border-box;
  display: block;
  width: 100%;
  padding: var(--prefab-spacing-sm) var(--prefab-spacing-sm);
  font-family: sans-serif;
  font-size: 1.2rem;
  line-height: 1.3;
  border: var(--prefab-form-input-stroke) solid var(--prefab-colour-grey-300);
  border-radius: var(--prefab-radius-sm);
  color: var(--prefab-colour-black);
  background: var(--prefab-colour-white);
  transition: border-color 0.2s, box-shadow 0.2s;
}

.prefab .prefab_form_double_inputs {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.prefab .prefab_form_double_inputs label:first-child input {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: none;
}

.prefab .prefab_form_double_inputs label:last-child input {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.prefab .prefab_form_checkbox,
.prefab .prefab_form_radio {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  cursor: pointer;
}

.prefab input[type="checkbox"],
.prefab input[type="radio"] {
  accent-color: var(--prefab-colour-accent-1);
  margin-right: 0;
  width: 1rem;
}

.prefab .prefab_has_error input,
.prefab .prefab_has_error textarea,
.prefab .prefab_has_error select,
.prefab input:user-invalid,
.prefab textarea:user-invalid,
.prefab select:user-invalid {
  border: var(--prefab-form-input-stroke) solid var(--prefab-colour-error);
}

@keyframes prefab_shake {
  0%, 100% { transform: translateX(0); }
  10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
  20%, 40%, 60%, 80% { transform: translateX(5px); }
}

.prefab .prefab_form_group.prefab_has_error {
  animation: prefab_shake 1s ease;
}

.prefab .prefab_has_error label,
.prefab .prefab_has_error legend {
  font-weight: bold;
  color: var(--prefab-colour-error);
}

.prefab .prefab_form_error_message {
  padding: 0;
  margin: 0;
  color: var(--prefab-colour-error);
}

.prefab_numeric_scale_wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.prefab_numeric_scale {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  justify-content: center;
}

.prefab_numeric_scale input {
  display: none; /* hide the native radio */
}

.prefab_numeric_scale span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: var(--prefab-form-input-stroke) solid var(--prefab-colour-grey-500);
  color: var(--prefab-colour-grey-500);
  background-color: var(--prefab-colour-white);
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.2s ease;
  user-select: none;
  font-weight: normal !important;
}

.prefab_numeric_scale span:hover {
  border-color: var(--prefab-colour-accent-1);
  color: var(--prefab-colour-accent-1);
}

.prefab_numeric_scale input:checked + span {
  background-color: var(--prefab-colour-accent-1);
  border-color: var(--prefab-colour-accent-1);
  color: #fff;
}

.prefab span.prefab_scale_label {
  background-color: transparent;
  white-space: nowrap;
  border: none;
  width: auto;
  height: auto;
  color: inherit;
  font-weight: normal !important;
}

@media (max-width: 600px) {
  .prefab_numeric_scale_wrapper {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }

  .prefab_scale_label {
    text-align: center;
    margin: 0;
  }

  .prefab_numeric_scale {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    align-items: stretch;
  }

  .prefab_numeric_scale label {
    width: 100%;
  }

  .prefab_numeric_scale span {
    width: 100%;
    height: auto;
    border-radius: 0.25rem;
    padding: 0.5rem;
  }

  .prefab span.prefab_scale_label {
    padding: 0;
  }
}

.prefab .prefab_smiley_rating > div {
  display: inline-flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 1rem;
  border: none;
  margin-bottom: 0.5rem;
}

.prefab .prefab_smiley_rating input {
  display: none;
}

.prefab .prefab_smiley_rating label svg {
  cursor: pointer;
  width: 3rem;
  height: auto;
  transition: transform 0.2s, fill 0.2s;
  fill: var(--prefab-colour-grey-500);
}

.prefab .prefab_smiley_rating input:checked + label svg {
  transform: scale(1.2);
  fill: var(--prefab-colour-accent-1);
}

.prefab .prefab_smiley_rating input:not(:checked) + label:hover svg {
  fill: var(--prefab-colour-accent-1);
}

.prefab .prefab_smiley_rating input:not(:checked) + label svg {
  fill: var(--prefab-colour-grey-500);
}

.prefab .prefab_star_rating > div {
  display: inline-flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 0.5rem;
  border: none;
  margin-bottom: 0.5rem;
}

.prefab .prefab_star_rating input {
  display: none;
}

.prefab .prefab_star_rating label {
  cursor: pointer;
  width: 3rem;
  height: 3rem;
  display: inline-block;
}

.prefab .prefab_star_rating svg {
  width: 100%;
  height: 100%;
  fill: var(--prefab-colour-grey-500);
  transition: fill 0.2s;
}

.prefab .prefab_star_rating input:not(:checked) ~ label:hover svg,
.prefab .prefab_star_rating input:not(:checked) ~ label:hover ~ label svg {
  fill: var(--prefab-colour-accent-1);
}

.prefab .prefab_star_rating input:checked ~ label svg,
.prefab .prefab_star_rating input:checked ~ label ~ label svg {
  fill: var(--prefab-colour-accent-1);
}

.prefab .prefab_thumb_rating > div {
  display: inline-flex;
  flex-direction: row;
  justify-content: flex-start;
  gap: 1rem;
  border: none;
  margin-bottom: 0.5rem;
}

.prefab .prefab_thumb_rating input {
  display: none;
}

.prefab .prefab_thumb_rating label svg {
  cursor: pointer;
  width: 3rem;
  height: auto;
  transition: transform 0.2s, fill 0.2s;
  fill: var(--prefab-colour-grey-500);
}

.prefab .prefab_thumb_rating input:checked + label svg {
  transform: scale(1.2);
  fill: var(--prefab-colour-accent-1);
}

.prefab .prefab_thumb_rating input:not(:checked) + label:hover svg {
  fill: var(--prefab-colour-accent-1);
}

.prefab .prefab_thumb_rating input:not(:checked) + label svg {
  fill: var(--prefab-colour-grey-500);
}

.prefab select {
  display: block;
  width: 100%;
  padding: var(--prefab-spacing-sm) 2.25rem var(--prefab-spacing-sm) var(--prefab-spacing-sm);
  font-family: sans-serif;
  font-size: 1.2rem;
  line-height: 1.3;
  color: var(--prefab-colour-black);
  background-color: var(--prefab-colour-white);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentText' viewBox='0 0 16 16'%3E%3Cpath d='M1.5 5l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 1rem;
  border: var(--prefab-form-input-stroke) solid var(--prefab-colour-grey-300);
  border-radius: var(--prefab-radius-sm);
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.prefab input:focus,
.prefab textarea:focus,
.prefab select:focus {
  outline: none;
  border: var(--prefab-form-input-stroke) solid var(--prefab-colour-accent-1);
}

/* Required field marker */
.prefab .required {
  color: var(--prefab-colour-error, #d4351c);
}

/* Validation styling */
.prefab .prefab_has_error input,
.prefab .prefab_has_error textarea,
.prefab .prefab_has_error select {
  border-color: var(--prefab-colour-error, #d4351c);
  background-color: #fff5f5;
}

.prefab .prefab_has_success input,
.prefab .prefab_has_success textarea,
.prefab .prefab_has_success select {
  border-color: var(--prefab-colour-success, #28a745);
  background: #f5fff8;
}

/* Edititorial content */

.prefab-section-editorial-comment {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  opacity: 1;
  max-width: none !important;
  transition: opacity 250ms ease-in-out;
}

*:hover > .prefab-section-editorial-comment,
body.prefab-no-editorials .prefab-section-editorial-comment {
  opacity: 0;
}

.prefab-section-editorial-comment::before {
  content: '';
  background: repeating-linear-gradient(
    -45deg,
    rgba(0, 0, 0, 0),
    rgba(0, 0, 0, 0) 20px,
    var(--prefab-colour-accent-1) 20px,
    var(--prefab-colour-accent-1) 40px
  );
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.5;
  z-index: 1;
}

.prefab-section-editorial-comment > div {
  font-size: 1.5rem;
  text-transform: uppercase;
  color: var(--prefab-colour-accent-1);
  background-color: white;
  text-align: center;
  width: 90%;
  padding: 1rem;
  z-index: 2;
  border: 1px solid var(--prefab-colour-accent-1);
  box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.3);
  border-radius: var(--prefab-radius-sm);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

.prefab-editiorial-control {
  background-color: white;
  color: black;
  border: 1px solid var(--prefab-colour-accent-1);
  font-size: 13px;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  padding: 0.5rem;
  position: fixed;
  bottom: 5px;
  left: 5px;
  z-index: 999;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem;
}

.prefab-editiorial-control label {
  margin: 0;
  font-weight: normal;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}



 
.prefab * {
  overflow: visible !important; 
}


















  /* 400 - Normal */
  @font-face {
      font-family: 'Barlow Condensed';
      src: url('../../resources/fonts/barlow-condensed-v12-latin-regular.woff2') format('woff2');
      font-weight: 400;
      font-style: normal;
      font-display: swap;
  }





























 h1, h2, h3, h4, h5, h6, .fontamental_stacks_in_2_3 {
  font-family: 'Barlow Condensed', sans-serif;
}

















  /* 400 - Normal */
  @font-face {
      font-family: 'Barlow';
      src: url('../../resources/fonts/barlow-v12-latin-regular.woff2') format('woff2');
      font-weight: 400;
      font-style: normal;
      font-display: swap;
  }



  /* 400 - Italic */
  @font-face {
      font-family: 'Barlow';
      src: url('../../resources/fonts/barlow-v12-latin-italic.woff2') format('woff2');
      font-weight: 400;
      font-style: italic;
      font-display: swap;
  }














    /* 700 - Normal */
  @font-face {
      font-family: 'Barlow';
      src: url('../../resources/fonts/barlow-v12-latin-700.woff2') format('woff2');
      font-weight: 700;
      font-style: normal;
      font-display: swap;
  }



  /* 700 - Italic */
  @font-face {
      font-family: 'Barlow';
      src: url('../../resources/fonts/barlow-v12-latin-700italic.woff2') format('woff2');
      font-weight: 700;
      font-style: italic;
      font-display: swap;
  }












 .prefab-btn, .lead, body, a, code, blockquote, figure, small, ol, ul, .prefab_msg_box .prefab-card, .fontamental_stacks_in_2_4 {
  font-family: 'Barlow', sans-serif;
}

/* Prefab skip link */

.prefab-skip-link {
  position: absolute;
  top: -100px;
  left: 0;
  display: block;
  background-color: var(--prefab-colour-accent-1);
  color: var(--prefab-colour-white) !important;
  padding: var(--prefab-spacing-md);
  z-index: 1000;
  text-decoration: none;
  transition: top 0.3s;
  text-align: center;
  width: 100%;
}

.prefab-skip-link:focus {
  position: relative;
  top: auto;
}

/* Prefab navigation bar */

body.menu-open {
  max-height: 100vh;
  overflow: hidden;
}

.prefab-nav {
  
  
  
  position: relative;
  
  z-index: 2;
}

.prefab-nav ul,
.prefab-nav li {
  padding: 0;
  margin: 0;
  list-style: none;
}

body.menu-open .prefab-nav {
  height: 100vh;
  overflow: auto;
}


.prefab-nav {
  background-color: var(--prefab-colour-white);
}


.prefab-nav-inner {
  max-width: var(--prefab-width-default);
  margin: 0 auto;
  padding: var(--prefab-spacing-sm) 0.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  flex-wrap: wrap;
}

/* Nav bar logo */

.prefab-logo-link {
  opacity: 1;
  flex-shrink: 1;
  max-width: calc(100% - 6rem);
}

.prefab-logo-link:hover {
  opacity: 1;
}

picture.prefab-logo {
  max-width: 350px;
  max-height: 138px;
  display: block;
  margin: auto;
}

picture.prefab-logo img {
  max-width: 100%;
  height: auto;
}

/* Mobile menu toggle button */

.prefab-menu-btn {
  font-size: inherit;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  align-items: center;
  justify-content: flex-end;
  cursor: pointer;
  border: none;
  min-width: 5rem;
}


.prefab-menu-btn {
  background-color: var(--prefab-colour-white);
  color: var(--prefab-colour-black);
}


.prefab-menu-btn svg {
  width: 3rem;
  height: auto;
}

.prefab-menu-btn svg.bi-dash-lg {
  display: none;
}

.menu-open .prefab-menu-btn svg.bi-list {
  display: none;
}

.menu-open .prefab-menu-btn svg.bi-dash-lg {
  display: block;
}

/* Menu links and content */

.prefab-nav-links {
  display: none;
  flex-direction: column;
  width: 100%;
}


.prefab-nav-links {
  background-color: var(--prefab-colour-white);
}


.menu-open .prefab-nav-links {
  display: flex;
  flex-direction: column-reverse;
}

.prefab-nav-links li {
  position: relative;
}


.prefab-nav-links li {
  border-bottom: 1px solid var(--prefab-colour-accent-1);
}


.prefab-nav-links ul a {
  color: var(--prefab-colour-black);
  padding: var(--prefab-spacing-lg) var(--prefab-spacing-md);
  text-decoration: none;
  opacity: 1;
  display: block;
  transition: color 100ms ease-in-out;
}


.prefab-nav-links ul a {
  color: var(--prefab-colour-black);
}


.prefab-nav-links ul a:hover {
  color: var(--prefab-colour-accent-1);
}


.prefab-nav-links ul a:hover {
  color: var(--prefab-colour-grey-600);
}


.prefab-nav-links ul a.current {
  font-weight: bold;
}


.prefab-nav-links ul a.current {
  color: var(--prefab-colour-accent-1);
}



.prefab-nav-links ul svg {
  color: var(--prefab-colour-black);
}


.prefab-nav-links a.prefab_surpressed_link {
  pointer-events: none;
}

.prefab-nav-links ul ul {
  display: none;
  border-radius: var(--radius-sm);
  
  border: 1px solid var(--prefab-colour-accent-1);
  
}


.prefab-nav ul ul {
  background-color: var(--prefab-colour-white);
}


.prefab-nav-links ul ul ul {
  display: none;
}

.prefab-nav-links li.open,
.prefab-nav-links ul ul li:last-child {
  border-bottom: none;
}

.prefab-nav-links svg {
  display: none;
}

.prefab-nav-links button svg {
  display: inline-block;
}

.prefab-nav-links .submenu-toggle {
  position: absolute;
  top: var(--prefab-spacing-sm);
  right: 0;
  border: none;
  background: transparent;
  line-height: 1;
  cursor: pointer;
}


.prefab-nav-links .submenu-toggle svg {
  color: var(--prefab-colour-accent-1);
}


.prefab-nav-links .submenu-toggle svg {
  width: 3rem;
  height: auto;
}

.prefab-nav-links .submenu-toggle svg {
  transition: transform 0.3s ease;
}

.prefab-nav-links  li.open .submenu-toggle svg {
  transform: rotate(90deg);
}

.prefab-nav-contact-svg {
  padding-right: var(--prefab-spacing-xs);
}

.prefab-nav-contact-svg svg {
  display: inline-block;
}

.prefab-nav-links li.open > ul {
  display: block;
}

.prefab-page-links {
  display: flex;
  
  flex-direction: column-reverse;
  
}


.prefab-page-links ul:nth-child(1) > li:first-child {
  display: none;
}





.prefab-page-links {
  display: flex;
  justify-content: stretch;
}

.prefab_nav_cta {
  flex: 1;
}

.prefab_nav_cta a {
  display: block;
}


@media screen and (min-width: 1200px) {
  body.menu-open .prefab-nav,
  .prefab-nav {
    height: auto;
    overflow: visible;
  }

  .prefab-menu-btn,
  .submenu-toggle {
    display: none;
  }

  .prefab-nav-links {
    display: flex;
    width: auto;
    flex: 1;
  }

  .prefab-contact-links ul,
  .prefab-page-links ul {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }

  .prefab-contact-links li:last-child a {
    padding-right: 0;
  }

  .prefab-page-links {
    flex-direction: row;
    justify-content: flex-end;
    gap: var(--prefab-spacing-md);
  }

  .prefab-nav-links li {
    border-bottom: none;
  }

  .prefab-nav-links ul a {
    padding: var(--prefab-spacing-sm) var(--prefab-spacing-md);
    white-space: nowrap;
  }

  .prefab-nav-links svg {
    display: inline-block;
  }

  .prefab-nav-links ul li.open > ul,
  .prefab-nav-links ul ul {
    display: none;
  }

  .prefab-nav-links ul ul {
    position: absolute;
    top: 100%;
    left: calc(-1 * var(--prefab-spacing-md));
    width: auto;
    min-width: 6rem;
    gap: 0;
    padding: var(--prefab-spacing-md);
    border: none;
    
    /* Fade & Slide */
    display: block;
    opacity: 0;
    transform: translateY(-0.5rem);
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease;
    
    
    
    
  }

  
  .prefab-nav-links li:hover > ul,
  .prefab-nav-links li:focus-within > ul {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }
  
  
  
  

  .prefab-language-switcher ul {
    left: auto;
    right: 0;
  }

  .prefab_nav_cta_btns {
    display: flex;
    gap: var(--prefab-spacing-md);
    white-space: nowrap;
  }

  .prefab_nav_cta a {
    display: inline-flex;
  }
}









.prefab_divider_stacks_in_54_2 {
  margin-top: 0;
  margin-bottom: 0;
}/* Prefab Section (stacks_in_7) */

.prefab_section_stacks_in_7 {
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding: var(--prefab-section-padding-normal) 0 var(--prefab-section-padding-normal) 0;
}








.prefab_section_stacks_in_7 {
  background-color: var(--prefab-colour-white);
}


.prefab_section_stacks_in_7 video.prefab_bg_video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: 1;
  pointer-events: none;
}















.prefab_section_stacks_in_7::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
  
  
  
}

.prefab_section_stacks_in_7 > * {
  position: relative;
  z-index: 3;
}

.prefab_section_stacks_in_7 .prefab-section-content {
  max-width: var(--prefab-width-default);
  margin: 0 auto;
  padding: 0 0.5rem;
  align-items: stretch;
}



/* Prefab Section Item (stacks_in_18) */

.prefab_section_item_stacks_in_18 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  
  text-align: center;
  
  
  
}












.prefab_section_item_stacks_in_18 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_18 h1,
.prefab_section_item_stacks_in_18 h2,
.prefab_section_item_stacks_in_18 h3,
.prefab_section_item_stacks_in_18 h4,
.prefab_section_item_stacks_in_18 h5,
.prefab_section_item_stacks_in_18 h6 {
  color: var(--prefab-colour-grey-900);
}



.prefab_section_item_stacks_in_18.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_18 {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_18 ol:not(nav ol), 
.prefab_section_item_stacks_in_18 ul:not(nav ul) {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_18 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_18 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_18 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_18 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-accent-1);
}


.prefab_section_item_stacks_in_18 > * {
  max-width: var(--prefab-width-full);
  width: 100%;
  margin: 0 auto;
}














/* Prefab Section Item (stacks_in_35) */

.prefab_section_item_stacks_in_35 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  text-align: left;
  
  
  
  
}












.prefab_section_item_stacks_in_35 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_35 h1,
.prefab_section_item_stacks_in_35 h2,
.prefab_section_item_stacks_in_35 h3,
.prefab_section_item_stacks_in_35 h4,
.prefab_section_item_stacks_in_35 h5,
.prefab_section_item_stacks_in_35 h6 {
  color: var(--prefab-colour-grey-900);
}



.prefab_section_item_stacks_in_35.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_35 {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_35 ol:not(nav ol), 
.prefab_section_item_stacks_in_35 ul:not(nav ul) {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_35 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_35 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_35 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_35 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-accent-1);
}


.prefab_section_item_stacks_in_35 > * {
  max-width: var(--prefab-width-narrow);
  width: 100%;
  margin: 0 auto;
}














/* Prefab Section (stacks_in_6_2) */

.prefab_section_stacks_in_6_2 {
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding: var(--prefab-section-padding-normal) 0 var(--prefab-section-padding-normal) 0;
}








.prefab_section_stacks_in_6_2 {
  background-color: var(--prefab-colour-accent-1);
}


.prefab_section_stacks_in_6_2 video.prefab_bg_video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: 1;
  pointer-events: none;
}








.prefab_section_stacks_in_6_2::before {
  background-image: url('../../resources/bg-patterns/curve-2.svg');
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.10;
  pointer-events: none;
}








.prefab_section_stacks_in_6_2::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
  
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.00) 50%, rgba(0, 0, 0, 0.50) 100%);
  
  
  
}

.prefab_section_stacks_in_6_2 > * {
  position: relative;
  z-index: 3;
}

.prefab_section_stacks_in_6_2 .prefab-section-content {
  max-width: var(--prefab-width-default);
  margin: 0 auto;
  padding: 0 0.5rem;
  align-items: stretch;
}



/* Prefab Section Item (stacks_in_6_3) */

.prefab_section_item_stacks_in_6_3 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  text-align: left;
  
  
  
  
}






.prefab_section_item_stacks_in_6_3 h1,
.prefab_section_item_stacks_in_6_3 h2,
.prefab_section_item_stacks_in_6_3 h3,
.prefab_section_item_stacks_in_6_3 h4,
.prefab_section_item_stacks_in_6_3 h5,
.prefab_section_item_stacks_in_6_3 h6 {
  margin: 0 !important;
}



.prefab_section_item_stacks_in_6_3 p {
  margin: 0 !important;
}





.prefab_section_item_stacks_in_6_3 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_6_3 h1,
.prefab_section_item_stacks_in_6_3 h2,
.prefab_section_item_stacks_in_6_3 h3,
.prefab_section_item_stacks_in_6_3 h4,
.prefab_section_item_stacks_in_6_3 h5,
.prefab_section_item_stacks_in_6_3 h6 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_3.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_3 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_3 ol:not(nav ol), 
.prefab_section_item_stacks_in_6_3 ul:not(nav ul) {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_3 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_6_3 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_3 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_3 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-white);
}


.prefab_section_item_stacks_in_6_3 > * {
  max-width: var(--prefab-width-full);
  width: 100%;
  margin: 0 auto;
}














.prefab_divider_stacks_in_6_7 {
  margin-top: var(--prefab-spacing-sm);
  margin-bottom: var(--prefab-spacing-lg);
}/* Prefab Section Item (stacks_in_6_51) */

.prefab_section_item_stacks_in_6_51 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  text-align: left;
  
  
  
  
}






.prefab_section_item_stacks_in_6_51 h1,
.prefab_section_item_stacks_in_6_51 h2,
.prefab_section_item_stacks_in_6_51 h3,
.prefab_section_item_stacks_in_6_51 h4,
.prefab_section_item_stacks_in_6_51 h5,
.prefab_section_item_stacks_in_6_51 h6 {
  margin: 0 !important;
}



.prefab_section_item_stacks_in_6_51 p {
  margin: 0 !important;
}





.prefab_section_item_stacks_in_6_51 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_6_51 h1,
.prefab_section_item_stacks_in_6_51 h2,
.prefab_section_item_stacks_in_6_51 h3,
.prefab_section_item_stacks_in_6_51 h4,
.prefab_section_item_stacks_in_6_51 h5,
.prefab_section_item_stacks_in_6_51 h6 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_51.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_51 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_51 ol:not(nav ol), 
.prefab_section_item_stacks_in_6_51 ul:not(nav ul) {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_51 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_6_51 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_51 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_51 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-white);
}


.prefab_section_item_stacks_in_6_51 > * {
  max-width: var(--prefab-width-full);
  width: 100%;
  margin: 0 auto;
}







.prefab_section_item_stacks_in_6_51 ul,
.prefab_section_item_stacks_in_6_51 ul li {
  padding: 0;
  margin: 0;
  list-style: none;
}








.prefab_divider_stacks_in_6_56 {
  margin-top: var(--prefab-spacing-sm);
  margin-bottom: var(--prefab-spacing-lg);
}/* Prefab Section Item (stacks_in_6_61) */

.prefab_section_item_stacks_in_6_61 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  text-align: left;
  
  
  
  
}








.prefab_section_item_stacks_in_6_61 p {
  margin: 0 !important;
}





.prefab_section_item_stacks_in_6_61 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_6_61 h1,
.prefab_section_item_stacks_in_6_61 h2,
.prefab_section_item_stacks_in_6_61 h3,
.prefab_section_item_stacks_in_6_61 h4,
.prefab_section_item_stacks_in_6_61 h5,
.prefab_section_item_stacks_in_6_61 h6 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_61.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_61 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_61 ol:not(nav ol), 
.prefab_section_item_stacks_in_6_61 ul:not(nav ul) {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_61 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_6_61 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_61 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_61 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-white);
}


.prefab_section_item_stacks_in_6_61 > * {
  max-width: var(--prefab-width-full);
  width: 100%;
  margin: 0 auto;
}














.prefab_divider_stacks_in_6_62 {
  margin-top: var(--prefab-spacing-sm);
  margin-bottom: 0;
}/* Prefab Section Item (stacks_in_6_66) */

.prefab_section_item_stacks_in_6_66 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  text-align: left;
  
  
  
  
}






.prefab_section_item_stacks_in_6_66 h1,
.prefab_section_item_stacks_in_6_66 h2,
.prefab_section_item_stacks_in_6_66 h3,
.prefab_section_item_stacks_in_6_66 h4,
.prefab_section_item_stacks_in_6_66 h5,
.prefab_section_item_stacks_in_6_66 h6 {
  margin: 0 !important;
}



.prefab_section_item_stacks_in_6_66 p {
  margin: 0 !important;
}





.prefab_section_item_stacks_in_6_66 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_6_66 h1,
.prefab_section_item_stacks_in_6_66 h2,
.prefab_section_item_stacks_in_6_66 h3,
.prefab_section_item_stacks_in_6_66 h4,
.prefab_section_item_stacks_in_6_66 h5,
.prefab_section_item_stacks_in_6_66 h6 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_66.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_66 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_66 ol:not(nav ol), 
.prefab_section_item_stacks_in_6_66 ul:not(nav ul) {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_66 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_6_66 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_66 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_66 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-white);
}


.prefab_section_item_stacks_in_6_66 > * {
  max-width: var(--prefab-width-full);
  width: 100%;
  margin: 0 auto;
}














/* Prefab Section Item (stacks_in_6_71) */

.prefab_section_item_stacks_in_6_71 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  text-align: left;
  
  
  
  
}






.prefab_section_item_stacks_in_6_71 h1,
.prefab_section_item_stacks_in_6_71 h2,
.prefab_section_item_stacks_in_6_71 h3,
.prefab_section_item_stacks_in_6_71 h4,
.prefab_section_item_stacks_in_6_71 h5,
.prefab_section_item_stacks_in_6_71 h6 {
  margin: 0 !important;
}



.prefab_section_item_stacks_in_6_71 p {
  margin: 0 !important;
}





.prefab_section_item_stacks_in_6_71 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_6_71 h1,
.prefab_section_item_stacks_in_6_71 h2,
.prefab_section_item_stacks_in_6_71 h3,
.prefab_section_item_stacks_in_6_71 h4,
.prefab_section_item_stacks_in_6_71 h5,
.prefab_section_item_stacks_in_6_71 h6 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_71.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_71 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_71 ol:not(nav ol), 
.prefab_section_item_stacks_in_6_71 ul:not(nav ul) {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_71 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_6_71 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_71 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_71 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-white);
}


.prefab_section_item_stacks_in_6_71 > * {
  max-width: var(--prefab-width-full);
  width: 100%;
  margin: 0 auto;
}














/* Prefab Section Item (stacks_in_6_24) */

.prefab_section_item_stacks_in_6_24 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  text-align: left;
  
  
  
  
}






.prefab_section_item_stacks_in_6_24 h1,
.prefab_section_item_stacks_in_6_24 h2,
.prefab_section_item_stacks_in_6_24 h3,
.prefab_section_item_stacks_in_6_24 h4,
.prefab_section_item_stacks_in_6_24 h5,
.prefab_section_item_stacks_in_6_24 h6 {
  margin: 0 !important;
}



.prefab_section_item_stacks_in_6_24 p {
  margin: 0 !important;
}





.prefab_section_item_stacks_in_6_24 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_6_24 h1,
.prefab_section_item_stacks_in_6_24 h2,
.prefab_section_item_stacks_in_6_24 h3,
.prefab_section_item_stacks_in_6_24 h4,
.prefab_section_item_stacks_in_6_24 h5,
.prefab_section_item_stacks_in_6_24 h6 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_24.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_24 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_24 ol:not(nav ol), 
.prefab_section_item_stacks_in_6_24 ul:not(nav ul) {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_24 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_6_24 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_24 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_24 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-white);
}


.prefab_section_item_stacks_in_6_24 > * {
  max-width: var(--prefab-width-full);
  width: 100%;
  margin: 0 auto;
}














/* Prefab Section Item (stacks_in_6_38) */

.prefab_section_item_stacks_in_6_38 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  text-align: left;
  
  
  
  
}






.prefab_section_item_stacks_in_6_38 h1,
.prefab_section_item_stacks_in_6_38 h2,
.prefab_section_item_stacks_in_6_38 h3,
.prefab_section_item_stacks_in_6_38 h4,
.prefab_section_item_stacks_in_6_38 h5,
.prefab_section_item_stacks_in_6_38 h6 {
  margin: 0 !important;
}



.prefab_section_item_stacks_in_6_38 p {
  margin: 0 !important;
}





.prefab_section_item_stacks_in_6_38 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_6_38 h1,
.prefab_section_item_stacks_in_6_38 h2,
.prefab_section_item_stacks_in_6_38 h3,
.prefab_section_item_stacks_in_6_38 h4,
.prefab_section_item_stacks_in_6_38 h5,
.prefab_section_item_stacks_in_6_38 h6 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_38.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_38 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_38 ol:not(nav ol), 
.prefab_section_item_stacks_in_6_38 ul:not(nav ul) {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_38 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_6_38 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_38 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_38 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-white);
}


.prefab_section_item_stacks_in_6_38 > * {
  max-width: var(--prefab-width-full);
  width: 100%;
  margin: 0 auto;
}














.prefab_divider_stacks_in_6_39 {
  margin-top: 0;
  margin-bottom: var(--prefab-spacing-lg);
}/* Prefab Section Item (stacks_in_6_43) */

.prefab_section_item_stacks_in_6_43 {
  padding: var(--prefab-spacing-md);
  border-radius: 0;
  position: relative;
  
  
  overflow: hidden;
  
  
  
  
  
  
  
  
  
  text-align: left;
  
  
  
  
}




.prefab_section_item_stacks_in_6_43 * {
  margin: 0 !important;
}









.prefab_section_item_stacks_in_6_43 {
  background-color: var(--prefab-colour-transparent);
}



.prefab_section_item_stacks_in_6_43 h1,
.prefab_section_item_stacks_in_6_43 h2,
.prefab_section_item_stacks_in_6_43 h3,
.prefab_section_item_stacks_in_6_43 h4,
.prefab_section_item_stacks_in_6_43 h5,
.prefab_section_item_stacks_in_6_43 h6 {
  color: var(--prefab-colour-grey-900);
}



.prefab_section_item_stacks_in_6_43.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_43 {
  color: var(--prefab-colour-white);
}



.prefab_section_item_stacks_in_6_43 ol:not(nav ol), 
.prefab_section_item_stacks_in_6_43 ul:not(nav ul) {
  color: var(--prefab-colour-grey-800);
}



.prefab_section_item_stacks_in_6_43 a:not(.prefab_btn_parent a, a.prefab_btn), 
.prefab_section_item_stacks_in_6_43 a:visited:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_43 a:hover:not(.prefab_btn_parent a, a.prefab_btn),
.prefab_section_item_stacks_in_6_43 a:active:not(.prefab_btn_parent a, a.prefab_btn) {
  color: var(--prefab-colour-white);
}


.prefab_section_item_stacks_in_6_43 > * {
  max-width: var(--prefab-width-full);
  width: 100%;
  margin: 0 auto;
}














 
.prefab_modal_stacks_in_55_8 {
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.prefab_modal_stacks_in_55_8[hidden] {
    display: none;
}

.prefab_modal_backdrop_stacks_in_55_8 {
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.85);
    backdrop-filter: blur(2px);
}
  
.prefab_modal_dialog_stacks_in_55_8 {
    position: relative;
    max-height: 90vh;
    overflow: auto;
    width: clamp(20.00rem, 80.00%, 40.00rem);
    z-index: 1;
    outline: none;
    padding: var(--prefab-spacing-md);
    border-radius: var(--prefab-radius-xs);
    box-shadow: var(--prefab-dark-shadow);
    position: relative;
    overflow: hidden;
    
    
    
    
    
    
    
    
    
    text-align: left;
    
    
    
    
}


.prefab_modal_dialog_stacks_in_55_8 {
  background-color: var(--prefab-colour-white);
}



.prefab_modal_dialog_stacks_in_55_8 h1,
.prefab_modal_dialog_stacks_in_55_8 h2,
.prefab_modal_dialog_stacks_in_55_8 h3,
.prefab_modal_dialog_stacks_in_55_8 h4,
.prefab_modal_dialog_stacks_in_55_8 h5,
.prefab_modal_dialog_stacks_in_55_8 h6 {
  color: var(--prefab-colour-grey-900);
}



.prefab_modal_dialog_stacks_in_55_8.lead p {
  color: var(--prefab-colour-grey-800);
}



.prefab_modal_dialog_stacks_in_55_8 {
  color: var(--prefab-colour-grey-800);
}



.prefab_modal_dialog_stacks_in_55_8 ol:not(nav ol), 
.prefab_modal_dialog_stacks_in_55_8 ul:not(nav ul) {
  color: var(--prefab-colour-grey-800);
}



.prefab_modal_dialog_stacks_in_55_8 a:not(.prefab_btn-parent a), 
.prefab_modal_dialog_stacks_in_55_8 a:visited:not(.prefab_btn-parent a),
.prefab_modal_dialog_stacks_in_55_8 a:hover:not(.prefab_btn-parent a),
.prefab_modal_dialog_stacks_in_55_8 a:active:not(.prefab_btn-parent a) {
  color: var(--prefab-colour-accent-1);
}


.prefab_modal_content_stacks_in_55_8 {
    position: relative;
    z-index: 1;
}
  

/* ========== Close Button (inside dialog) ========== */
.prefab_modal_close_stacks_in_55_8 {
    position: absolute;
    top: 0;
    right: 0;
    padding: 1rem;
    font-size: 2rem;
    background: none;
    border: none;
    cursor: pointer;
    line-height: 1;
    z-index: 2;
}

  

