:root {
  --color-white: #fff;
  --color-black: #000;
  --color-neutral-100: #f9f9f9;
  --color-neutral-200: #f3f4f5;
  --color-neutral-250: #e5e7e7;
  --color-neutral-300: #e0e0e0;
  --color-neutral-350: #c0c4c7;
  --color-neutral-400: #9e9e9e;
  --color-neutral-500: #6d6e71;
  --color-neutral-600: #404040;
  --color-neutral-700: #313f4b;
  --color-neutral-800: #1d252c;
  --color-primary-100: #fff4f2;
  --color-primary-200: #ffdad4;
  --color-primary-300: #ff543d;
  --color-primary-500: #ef4129; /* brand red */
  --color-primary-700: #bd0b02; /* brand dark red */
  --color-secondary-300: #ffc534;
  --color-secondary-500: #ffb600; /* brand yellow */
  --color-secondary-700: #f29616;
  --color-accent-500: #00abc8;
  --color-accent-700: #068ba3;
  --font-primary: 'Open Sans', Arial, Helvetica, sans-serif;
  --font-secondary: Montserrat, Arial, Helvetica, sans-serif;
  --font-tertiary: 'Noto Serif', Georgia, serif;
  --body-background: var(--color-neutral-800);
  --body-color: var(--color-white);
  --body-line-height: 1.67;
  --body-padding: 0;
  --body-margin: 0;
  --main-padding: 0;
  --main-margin: 0;
  --main-max-width: none;
  --main-border-radius: 0;
  --main-clip-path: none;
  --main-background: var(--color-neutral-800);
  --main-color: var(--color-white);
  --form-padding: 0;
  --form-margin: 0;
  --form-background: transparent;
  --form-clip-path: none;
  --h1-font-family: var(--font-secondary);
  --h1-font-style: normal;
  --h1-font-size: 1.75rem;
  --h1-font-weight: 700;
  --h1-line-height: 1.25;
  --h1-text-transform: uppercase;
  --h1-text-align: center;
  --h1-color: inherit;
  --h1-margin: 0 0 1.5rem;
  --h1-padding: 0;
  --h1-letter-spacing: 0.01em;
  --h2-font-family: var(--font-secondary);
  --h2-font-style: normal;
  --h2-font-size: 1.5rem;
  --h2-font-weight: 700;
  --h2-line-height: 1.25;
  --h2-text-transform: uppercase;
  --h2-text-align: initial;
  --h2-color: inherit;
  --h2-margin: 0 0 1.5rem;
  --h2-padding: 0;
  --h2-letter-spacing: 0.01em;
  --h3-font-family: var(--font-secondary);
  --h3-font-style: normal;
  --h3-font-size: 1.25rem;
  --h3-font-weight: 700;
  --h3-line-height: 1.25;
  --h3-text-transform: uppercase;
  --h3-text-align: initial;
  --h3-color: inherit;
  --h3-margin: 0 0 1.5rem;
  --h3-padding: 0;
  --h3-letter-spacing: 0.01em;
  --p-margin: 0 0 1.5rem;
  --input-text-height: 3rem;
  --input-text-padding: 0 1.25rem;
  --input-text-font-size: 1rem;
  --input-text-font-weight: 400;
  --input-text-border-width: 0;
  --input-text-border-color: transparent;
  --input-text-text-align: initial;
  --input-text-background: var(--color-white);
  --input-text-color: var(--color-neutral-800);
  --input-text-background-focus: var(--color-white);
  --input-text-color-focus: var(--color-neutral-800);
  --input-text-border-color-focus: #999999;
  --input-border-radius: 0;
  --input-range-thumb-background: var(--color-secondary-500);
  --input-range-thumb-border-color: transparent;
  --input-range-track-background: transparent;
  --input-range-track-border-color: currentColor;
  --input-radio-color: var(--color-secondary-500);
  --input-radio-border-color: currentColor;
  --input-radio-border-opacity: 0.67;
  --input-radio-border-opacity-hover: 1;
  --input-radio-border-opacity-selected: 1;
  --input-checkbox-color: var(--color-secondary-500);
  --input-checkbox-border-color: currentColor;
  --input-checkbox-border-opacity: 0.67;
  --input-checkbox-border-opacity-hover: 1;
  --input-checkbox-border-opacity-selected: 1;
  --button-font-size: 0.9375rem;
  --button-margin: 3rem 0;
  --button-background: var(--color-secondary-500);
  --button-color: var(--color-neutral-800);
  --button-height: 3.75rem;
  --button-min-width: 13.75rem;
  --button-notch-color: var(--color-secondary-700);
  --button-background-hover: var(--button-notch-color);
  --button-color-hover: var(--button-color);
  --button-align: inherit;
  --field-margin: 1.5rem 0;
  --image-select-arrow: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PHN2ZyB3aWR0aD0iNnB4IiBoZWlnaHQ9IjEycHgiIHZpZXdCb3g9IjAgMCA2IDEyIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPiAgICAgICAgPHRpdGxlPnNlbGVjdGFycm93PC90aXRsZT4gICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+ICAgIDxkZWZzPjwvZGVmcz4gICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4gICAgICAgIDxnIGlkPSJzZWxlY3RhcnJvdyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMDAwMDAsIDEuMDAwMDAwKSIgc3Ryb2tlPSIjODY4RTk2Ij4gICAgICAgICAgICA8cG9seWxpbmUgaWQ9IlBhdGgiIHBvaW50cz0iMCAzIDMuMDU1MDg0OTMgMCA2IDIuODkxODE2NTciPjwvcG9seWxpbmU+ICAgICAgICAgICAgPHBvbHlsaW5lIGlkPSJQYXRoLUNvcHkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMuMDAwMDAwLCA4LjUwMDAwMCkgc2NhbGUoMSwgLTEpIHRyYW5zbGF0ZSgtMy4wMDAwMDAsIC04LjUwMDAwMCkgIiBwb2ludHM9IjAgMTAgMy4wNTUwODQ5MyA3IDYgOS44OTE4MTY1NyI+PC9wb2x5bGluZT4gICAgICAgIDwvZz4gICAgPC9nPjwvc3ZnPg==');
  --image-checkmark: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMTIuMTE2bDIuMDUzLTEuODk3YzIuNDAxIDEuMTYyIDMuOTI0IDIuMDQ1IDYuNjIyIDMuOTY5IDUuMDczLTUuNzU3IDguNDI2LTguNjc4IDE0LjY1Ny0xMi41NTVsLjY2OCAxLjUzNmMtNS4xMzkgNC40ODQtOC45MDIgOS40NzktMTQuMzIxIDE5LjE5OC0zLjM0My0zLjkzNi01LjU3NC02LjQ0Ni05LjY3OS0xMC4yNTF6Ii8+PC9zdmc+');

  /* Content widths */
  --hl-spacer: 1.5rem;
}

*,
:after,
:before {
  background: 0 0;
  border: none;
  box-sizing: inherit;
  color: inherit;
  font: inherit;
  font-size: 1em;
  margin: 0;
  padding: 0;
}

html {
  box-sizing: border-box;
}

body {
  text-rendering: optimizeSpeed;
  height: fit-content;
}

[hidden] {
  display: none !important;
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0s !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0s !important;
    scroll-behavior: auto !important;
  }
}

body {
  margin: var(--body-margin);
  padding: var(--body-padding);
  max-width: var(--body-max-width);
  background: var(--body-background);
  color: var(--body-color);
  font-family: var(--font-primary);
  line-height: var(--body-line-height);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

b,
strong {
  font-weight: 700;
}

em,
i {
  font-style: italic;
}

h1 {
  font: var(--h1-font-style) var(--h1-font-weight) var(--h1-font-size) /
    var(--h1-line-height) var(--h1-font-family);
  text-transform: var(--h1-text-transform);
  text-align: var(--h1-text-align);
  color: var(--h1-color);
  letter-spacing: var(--h1-letter-spacing);
  margin: var(--h1-margin);
  padding: var(--h1-padding);
}

h2 {
  font: var(--h2-font-style) var(--h2-font-weight) var(--h2-font-size) /
    var(--h2-line-height) var(--h2-font-family);
  text-transform: var(--h2-text-transform);
  text-align: var(--h2-text-align);
  color: var(--h2-color);
  letter-spacing: var(--h2-letter-spacing);
  margin: var(--h2-margin);
  padding: var(--h2-padding);
}

h3 {
  font: var(--h3-font-style) var(--h3-font-weight) var(--h3-font-size) /
    var(--h3-line-height) var(--h3-font-family);
  text-transform: var(--h3-text-transform);
  text-align: var(--h3-text-align);
  color: var(--h3-color);
  letter-spacing: var(--h3-letter-spacing);
  margin: var(--h3-margin);
  padding: var(--h3-padding);
}

p {
  margin: var(--p-margin);
}

:focus {
  outline-offset: 2px;
  outline: 2px solid var(--color-secondary-500);
}

img {
  display: block;
  max-width: 100%;
  height: auto;
  /* margin: 0 auto; */
}

form {
  padding: var(--form-padding);
  margin: var(--form-margin);
  background: var(--form-background);
  clip-path: var(--form-clip-path);
  width: 100%;
}

@media (min-width: 1140px) {
  form {
    margin: 0 auto;
    padding-left: 0;
    padding-right: 4rem;
  }
}

@media (min-width: 1400px) {
  form {
    margin: 0 auto;
    padding-left: 8rem;
    padding-right: 12rem;
  }
}

ol,
ul {
  padding-left: 2rem;
}

[style*='font-family'] {
  font-family: inherit !important;
}

[style*='color:'] {
  color: inherit !important;
}

.visually-hidden {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: auto !important;
  margin: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

#en__pagebuilder .visually-hidden {
  border: inherit !important;
  clip: none !important;
  height: auto !important;
  margin: inherit !important;
  overflow: visible !important;
  padding: inherit !important;
  position: static !important;
  width: 100% !important;
}

body .en__field .en__field__element.en__field__element--splitselect {
  display: flex;
  gap: 1.5rem;
  width: 100%;
}

body
  .en__field
  .en__field__element.en__field__element--splitselect
  .en__field__item {
  flex-grow: 1;
}

body .en__field {
  margin: var(--field-margin);
  padding-bottom: 0;
  display: flex;
  flex-direction: column;
}

body .en__field__item {
  padding: 0;
}

body .en__field > .en__field__label {
  display: block;
  margin-bottom: 0.25rem;
  font-size: 0.875rem;
  width: unset;
}

/* body .en__field.en__mandatory > .en__field__label:after {
  content: "*";
} */
body .en__field__helpText {
  font-size: 0.75rem;
  margin: -0.25rem 0 0.5rem;
}

body .en__field--email .en__field__element,
body .en__field--number .en__field__element,
body .en__field--password .en__field__element,
body .en__field--select .en__field__element,
body .en__field--splitselect .en__field__element,
body .en__field--splittext .en__field__element,
body .en__field--telephone .en__field__element,
body .en__field--text .en__field__element,
body .en__field--textarea .en__field__element {
  display: block;
}

body .en__field--email .en__field__input,
body .en__field--number .en__field__input,
body .en__field--password .en__field__input,
body .en__field--select .en__field__input,
body .en__field--splitselect .en__field__input,
body .en__field--splittext .en__field__input,
body .en__field--telephone .en__field__input,
body .en__field--text .en__field__input,
/* body .en__field--vgs .card-number-input,
body .en__field--vgs .card-security-code, */
body .en__field__element--calendar .en__field__input,
body .en__field--textarea .en__field__input {
  display: block;
  font-weight: var(--input-text-font-weight);
  font-size: var(--input-text-font-size);
  background: var(--input-text-background);
  color: var(--input-text-color);
  width: 100%;
  color: var(--color-neutral-700);
  height: var(--input-text-height);
  padding: var(--input-text-padding);
  text-align: var(--input-text-text-align);
  border-style: solid;
  border-color: var(--input-text-border-color);
  border-width: var(--input-text-border-width);
  border-radius: var(--input-border-radius);
}

body .en__field--email .en__field__input:focus,
body .en__field--number .en__field__input:focus,
body .en__field--password .en__field__input:focus,
body .en__field--select .en__field__input:focus,
body .en__field--splitselect .en__field__input:focus,
body .en__field--splittext .en__field__input:focus,
body .en__field--telephone .en__field__input:focus,
body .en__field--text .en__field__input:focus,
/* body .en__field--vgs .card-number-input:focus,
body .en__field--vgs .card-security-code:focus, */
body .en__field--textarea .en__field__input:focus {
  background: var(--input-text-background-focus);
  color: var(--input-text-color-focus);
  border-color: var(--input-text-border-color-focus);
}

body .en__field--email .en__field__input--select,
body .en__field--email .en__field__input--splitselect,
body .en__field--number .en__field__input--select,
body .en__field--number .en__field__input--splitselect,
body .en__field--password .en__field__input--select,
body .en__field--password .en__field__input--splitselect,
body .en__field--select .en__field__input--select,
body .en__field--select .en__field__input--splitselect,
body .en__field--splitselect .en__field__input--select,
body .en__field--splitselect .en__field__input--splitselect,
body .en__field--splittext .en__field__input--select,
body .en__field--splittext .en__field__input--splitselect,
body .en__field--telephone .en__field__input--select,
body .en__field--telephone .en__field__input--splitselect,
body .en__field--text .en__field__input--select,
body .en__field--text .en__field__input--splitselect,
body .en__field--textarea .en__field__input--select,
body .en__field--textarea .en__field__input--splitselect {
  appearance: none;
  background-image: var(--image-select-arrow);
  background-repeat: no-repeat;
  background-position: right 1rem center;
}

body .en__field--email .en__field__input:disabled,
body .en__field--number .en__field__input:disabled,
body .en__field--password .en__field__input:disabled,
body .en__field--select .en__field__input:disabled,
body .en__field--splitselect .en__field__input:disabled,
body .en__field--splittext .en__field__input:disabled,
body .en__field--telephone .en__field__input:disabled,
body .en__field--text .en__field__input:disabled,
body .en__field--vgs .card-number-input:disabled,
body .en__field--vgs .card-security-code:disabled,
body .en__field--textarea .en__field__input:disabled {
  opacity: 0.67;
}

body .en__field--email--textarea,
body .en__field--number--textarea,
body .en__field--password--textarea,
body .en__field--select--textarea,
body .en__field--splitselect--textarea,
body .en__field--splittext--textarea,
body .en__field--telephone--textarea,
body .en__field--text--textarea,
body .en__field--textarea--textarea {
  height: 200px;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

body .en__submit {
  margin: 0;
  color: var(--button-color);
  font-family: var(--font-secondary);
  font-size: var(--button-font-size);
  text-align: var(--button-align);
}

.button-container {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding-bottom: 1.5rem !important;
  padding-top: 1.5rem !important;
}

body .en__submit button,
.button-container a,
.button-container a:link,
.button-container a:visited,
.button-container button {
  position: relative;
  border: none;
  cursor: pointer;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: inherit;
  font-size: 1.175rem;
  letter-spacing: 0.015em;
  overflow: hidden;
  transition: background-color 0.2s ease-in-out 0s;
  vertical-align: middle;
  white-space: nowrap;
  padding: 0 1.5em;
  background: var(--button-background);
  color: white;
  height: 65px;
  line-height: var(--button-height);
  min-width: 100%;
  text-decoration: none;
}

body .en__submit button:hover,
.button-container a:hover,
.button-container a:active,
.button-container a:focus,
.button-container button:hover {
  background: var(--button-background-hover);
  color: white;
  text-decoration: none;
}

.en__component--formblock.submit {
  padding-top: 1rem !important;
}

.en__component--formblock.submit-credit-card {
  padding-top: 1.5rem !important;
}

.submit-direct-debit {
  padding-bottom: 1.5rem !important;
}

.submit-direct-debit,
.submit-paypal {
  display: none;
}

#en__pagebuilder .submit-direct-debit,
#en__pagebuilder .submit-paypal,
#en__pagebuilder .digital_wallets {
  display: block !important;
}

form.donation-monthly .digital_wallets,
form.donation-monthly .en__component--formblock.submit-paypal {
  display: none;
}

form.donation-monthly .en__component--formblock.submit-credit-card,
form.donation-monthly .en__component--formblock.submit-direct-debit {
  display: block;
}

form.donation-single .en__component--formblock.submit-direct-debit {
  display: none;
}

form.donation-single .digital_wallets,
form.donation-single .en__component--formblock.submit-credit-card,
form.donation-single .en__component--formblock.submit-paypal {
  display: block;
}

form:has(input[name='transaction.ccnumber']) .en__submit button::after {
  content: var(--hl-donate-amount-button-text, '');
  margin-left: 0.4rem;
}

body .en__submit button.next::after {
  content: '>';
  margin-left: 0.4rem;
}

/* Gret out submit button when submitting in progress  */
.en__submit.envalidate__submit--in-progress button {
  cursor: progress;
  opacity: 0.5;
}

/* Show loading spinner on submit button when submitting in progress */
.en__submit.envalidate__submit--in-progress button::after {
  /* https://loading.io is good for creating spinners -- use a transparent background and the SVG export option for the best results */
  background-image: url(https://aaf1a18515da0e792f78-c27fdabe952dfc357fe25ebf5c8897ee.ssl.cf5.rackcdn.com/2005/loading-spinner.svg?v=1668444099000);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  content: '' !important;
  display: inline-block;
  height: 35px;
  margin-bottom: -3px;
  margin-left: 0;
  vertical-align: bottom;
  width: 35px;
}

#en__digitalWallet__paypalTouch__container {
  display: none !important;
}

#en__pagebuilder #en__digitalWallet__paypalTouch__container {
  display: block !important;
}

body .en__field--checkbox > .en__field__label {
  font-size: 1rem;
  font-weight: 700;
}

body .en__field__element--checkbox .en__field__label {
  position: relative;
  padding-left: 2em;
  font-size: 0.875rem;
  display: block;
}

body .en__field__element--checkbox .en__field__label:after,
body .en__field__element--checkbox .en__field__label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.125rem;
  display: block;
  height: 1.25em;
  width: 1.25em;
  transition: all 0.1s ease-out;
}

body .en__field__element--checkbox .en__field__label:before {
  border: 1px solid var(--input-checkbox-border-color);
  opacity: var(--input-checkbox-border-opacity);
  cursor: pointer;
}

body .en__field__element--checkbox .en__field__label:after {
  background: var(--image-checkmark) no-repeat center center/contain;
  transition: all 0.1s ease-in-out;
  transform: scale(0);
}

body .en__field__element--checkbox .en__field__label:hover:before {
  opacity: var(--input-checkbox-border-opacity-hover);
}

body .en__field__element--checkbox .en__field__input--checkbox {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: auto !important;
  margin: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

body
  .en__field__element--checkbox
  .en__field__input--checkbox:checked
  + .en__field__label:before {
  background: var(--input-checkbox-color);
  border-color: var(--input-checkbox-color);
  opacity: var(--input-checkbox-border-opacity-hover);
}

body
  .en__field__element--checkbox
  .en__field__input--checkbox:checked
  + .en__field__label:after {
  transform: scale(0.75);
}

body .en__component--column {
  min-width: auto;
}

.en__field__element--imgselect {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  column-gap: 1rem;
  row-gap: 2rem;
  justify-content: space-around;
}

.en__imageSelectField {
  align-items: center;
  border: 2px solid transparent;
  border-radius: 0.5rem;
  display: flex;
  height: 4rem;
  justify-content: center;
  padding: 0.5rem;
  width: 6rem;
}

@media (min-width: 768px) {
  .en__imageSelectField {
    height: 6rem;
    width: 9rem;
  }
}

.en__imageSelectField:has(input[type='radio']:focus) {
  border-color: var(--color-secondary-500);
}

.en__imageSelectField:has(input[type='radio']:checked) {
  border-color: var(--color-primary-500);
}

.en__imageSelectField__image {
  max-height: 3rem;
  max-width: 5rem;
}

@media (min-width: 768px) {
  .en__imageSelectField__image {
    max-height: 5rem;
    max-width: 8rem;
  }
}

.en__field__element--imgselect .en__field__item {
  padding-right: 0;
}

/* Visually hide the radio buttons, but keep them accessible */
.en__field__element--imgselect .en__imageSelectField__control {
  height: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  width: 0;
}

body .en__field--radio {
  width: 100%;
}

body .en__field--radio.en__field--newsletter-opt-in {
  width: 75% !important;
}

body .en__field--radio > .en__field__label {
  font-size: 1rem;
  font-weight: 700;
}

body .en__field--radio .en__field__element {
  display: flex;
  gap: 10px;
  padding: 0;
}

body .en__field--radio .en__field__element .en__field__item {
  width: 100%;
}

body .en__field--radio .en__field__element .en__field__label {
  cursor: pointer;
  position: relative;
  padding-left: 2em;
  font-size: 0.875rem;
  line-height: normal;
}

body .en__field--radio .en__field__element .en__field__label:after,
body .en__field--radio .en__field__element .en__field__label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  height: 1.375em;
  width: 1.375em;
  transition: all 0.1s ease-out;
  border-radius: 50%;
}

body .en__field--radio .en__field__element .en__field__label:before {
  border: 1px solid var(--input-radio-border-color);
  opacity: var(--input-radio-border-opacity);
  cursor: pointer;
}

body .en__field--radio .en__field__element .en__field__label:after {
  background: var(--input-radio-color);
  transform: scale(0);
}

body .en__field--radio .en__field__element .en__field__label:hover:before {
  opacity: var(--input-radio-border-opacity-hover);
}

body .en__field--radio .en__field__input--radio {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: auto !important;
  margin: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

body .en__field--radio .en__field__input--radio:checked + .en__field__label {
  font-weight: 700;
}

body
  .en__field--radio
  .en__field__input--radio:checked
  + .en__field__label:before {
  opacity: var(--input-radio-border-opacity-selected);
}

body
  .en__field--radio
  .en__field__input--radio:checked
  + .en__field__label:after {
  transform: scale(0.55);
}

body .en__field--range > .en__field__label {
  font-size: 1rem;
  font-weight: 700;
}

body .en__field--range .en__field__element {
  display: block;
}

body .en__field--range .en__field__input {
  display: block;
  width: 100%;
  margin: 0.5rem 0 0.25rem;
  -webkit-appearance: none;
}

body .en__field--range .en__field__input::-webkit-slider-thumb {
  -webkit-appearance: none;
}

body .en__field--range .en__field__input::-ms-track {
  width: 100%;
  cursor: pointer;
  background: 0 0;
  border-color: transparent;
  color: transparent;
}

body .en__field--range .en__field__input::-webkit-slider-thumb {
  -webkit-appearance: none;
  border-radius: 50%;
  background: var(--input-range-thumb-background);
  border: 0.125rem solid var(--input-range-thumb-border-color);
  cursor: pointer;
  box-shadow: 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.5);
  height: 1.125rem;
  width: 1.125rem;
  margin-top: -0.0125rem;
  margin-top: -0.25rem;
}

body .en__field--range .en__field__input::-moz-range-thumb {
  border-radius: 50%;
  background: var(--input-range-thumb-background);
  border: 0.125rem solid var(--input-range-thumb-border-color);
  cursor: pointer;
  box-shadow: 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.5);
  height: 1.125rem;
  width: 1.125rem;
  margin-top: -0.0125rem;
}

body .en__field--range .en__field__input::-ms-thumb {
  border-radius: 50%;
  background: var(--input-range-thumb-background);
  border: 0.125rem solid var(--input-range-thumb-border-color);
  cursor: pointer;
  box-shadow: 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.5);
  height: 1.125rem;
  width: 1.125rem;
  margin-top: -0.0125rem;
}

body .en__field--range .en__field__input::-webkit-slider-runnable-track {
  -webkit-appearance: none;
  width: 100%;
  height: 0.6875rem;
  border-radius: 0.34375rem;
  cursor: pointer;
  background: var(--input-range-track-background);
  border: 0.0625rem solid var(--input-range-track-border-color);
}

body .en__field--range .en__field__input::-moz-range-track {
  width: 100%;
  height: 0.6875rem;
  border-radius: 0.34375rem;
  cursor: pointer;
  background: var(--input-range-track-background);
  border: 0.0625rem solid var(--input-range-track-border-color);
}

body .en__field--range .en__field__input::-ms-track {
  width: 100%;
  height: 0.6875rem;
  border-radius: 0.34375rem;
  cursor: pointer;
  background: var(--input-range-track-background);
  border: 0.0625rem solid var(--input-range-track-border-color);
}

body .en__field--range .en__rangeFieldLabels {
  display: flex;
  justify-content: space-between;
  font-size: 0.875rem;
}

body .en__component--ecardblock button {
  background: var(--color-primary-500);
  border-radius: 0;
  transition: background-color 0.2s ease-in-out 0s;
}

body .en__component--ecardblock button:hover {
  background: var(--color-primary-700);
}

body .en__component--ecardblock label {
  display: block;
  padding: 6px 0;
  margin-bottom: 0.25rem;
  font-size: 0.875rem;
  width: unset;
}

body .en__component--ecardblock input,
body .en__component--ecardblock textarea {
  display: block;
  font-weight: var(--input-text-font-weight);
  font-size: var(--input-text-font-size);
  background: var(--input-text-background);
  color: var(--color-neutral-700);
  height: var(--input-text-height);
  padding: var(--input-text-padding);
  text-align: var(--input-text-text-align);
  border-style: solid;
  border-color: var(--input-text-border-color);
  border-width: var(--input-text-border-width);
  border-radius: var(--input-border-radius);
}

body .en__component--ecardblock input:focus,
body .en__component--ecardblock textarea:focus {
  background: var(--input-text-background-focus);
  color: var(--input-text-color-focus);
  border-color: var(--input-text-border-color-focus);
}

body .en__component--ecardblock textarea {
  height: 200px;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

body .en__ecarditems__showprev {
  position: relative;
  font-weight: 700;
  text-transform: uppercase;
  font-family: inherit;
  font-size: 0.9375rem;
  letter-spacing: 0.015em;
  padding: 0 1.5em;
  height: var(--button-height);
  line-height: var(--button-height);
  min-width: var(--button-min-width);
  margin-bottom: 1rem;
}

body .en__ecarditems__showprev:after {
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  border-bottom: 1.5rem solid var(--color-primary-700);
  border-left: 1.5rem solid transparent;
  transition: transform 0.2s ease-in-out 0s;
}

body .en__ecarditems__addrecipient {
  height: var(--input-text-height);
  width: var(--input-text-height);
}

body .en__ecardrecipients__detail {
  margin: var(--field-margin);
  margin-top: 0;
}

body .en__ecardrecipients__name input {
  width: 92%;
}

body .en__ecardrecipients__email input {
  width: calc(92% - var(--input-text-height));
}

body .en__ecardrecipients__list {
  color: var(--input-text-color);
  background: var(--color-neutral-250);
  border: none;
}

body .en__ecardrecipients__recipient input {
  background: 0 0;
  width: auto;
  height: auto;
  padding: inherit;
  flex: 1 1 0;
  margin-right: 0.75rem;
}

body .ecardrecipient__remove button {
  transition: color 0.2s ease-in-out 0s;
}

body .ecardrecipient__remove button:hover {
  background: 0 0;
  color: var(--color-primary-700);
}

body .en__field__error {
  font-size: 1rem;
  color: var(--color-primary-700);
  order: 99;
  margin-top: 0.5rem;
}

body .en__socialShares {
  height: auto;
}

body .en__component--contactblock {
  background: 0 0;
}

body .en__contact__detail {
  padding: 0;
  background: 0 0;
}

body .en__contact__detail .en__field--email,
body .en__contact__detail .en__field--number,
body .en__contact__detail .en__field--password,
body .en__contact__detail .en__field--select,
body .en__contact__detail .en__field--splitselect,
body .en__contact__detail .en__field--textarea,
body .en__contact__detail .en__field__input--text {
  display: block;
  font-weight: var(--input-text-font-weight);
  font-size: var(--input-text-font-size);
  background: var(--input-text-background);
  color: var(--input-text-color);
  width: 100%;
  color: var(--color-neutral-700);
  height: var(--input-text-height);
  padding: var(--input-text-padding);
  text-align: var(--input-text-text-align);
  border-style: solid;
  border-color: var(--input-text-border-color);
  border-width: var(--input-text-border-width);
  border-radius: var(--input-border-radius);
}

body .en__contact__detail .en__field--email:focus,
body .en__contact__detail .en__field--number:focus,
body .en__contact__detail .en__field--password:focus,
body .en__contact__detail .en__field--select:focus,
body .en__contact__detail .en__field--splitselect:focus,
body .en__contact__detail .en__field--textarea:focus,
body .en__contact__detail .en__field__input--text:focus {
  background: var(--input-text-background-focus);
  color: var(--input-text-color-focus);
  border-color: var(--input-text-border-color-focus);
}

body .en__contact__detail .en__field--email--select,
body .en__contact__detail .en__field--email--splitselect,
body .en__contact__detail .en__field--number--select,
body .en__contact__detail .en__field--number--splitselect,
body .en__contact__detail .en__field--password--select,
body .en__contact__detail .en__field--password--splitselect,
body .en__contact__detail .en__field--select--select,
body .en__contact__detail .en__field--select--splitselect,
body .en__contact__detail .en__field--splitselect--select,
body .en__contact__detail .en__field--splitselect--splitselect,
body .en__contact__detail .en__field--textarea--select,
body .en__contact__detail .en__field--textarea--splitselect,
body .en__contact__detail .en__field__input--text--select,
body .en__contact__detail .en__field__input--text--splitselect {
  appearance: none;
  background-image: var(--image-select-arrow);
  background-repeat: no-repeat;
  background-position: right 1rem center;
}

body .en__contact__detail .en__field--email:disabled,
body .en__contact__detail .en__field--number:disabled,
body .en__contact__detail .en__field--password:disabled,
body .en__contact__detail .en__field--select:disabled,
body .en__contact__detail .en__field--splitselect:disabled,
body .en__contact__detail .en__field--textarea:disabled,
body .en__contact__detail .en__field__input--text:disabled {
  opacity: 0.67;
}

body .en__contact__detail .en__field--textarea {
  height: 200px;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

body .en__hidden {
  display: none !important;
}

body .en__field--recurrpay > .en__field__label {
  display: none;
}

#en__pagebuilder .en__field--recurrpay > .en__field__label {
  display: block;
}

body .en__field--recurrpay .en__field__error {
  padding-top: 0.125rem;
}

body .en__field--recurrpay .en__field__element--radio .en__field__label {
  padding: 14px;
  color: #000;
  border: 1px solid #7f7f7f;
  border-radius: 0.375rem;
  cursor: pointer;
  display: block;
  transition: all 0.1s ease-out;
  flex-grow: 1;
  text-align: center;
  line-height: 1.25;
  font-size: 1.175rem;
  font-weight: 600;
}

@media (min-width: 960px) {
  body .en__field--recurrpay .en__field__element--radio .en__field__label {
    font-size: 1.175rem;
  }
}

body .en__field--recurrpay .en__field__element--radio .en__field__label:hover {
  background: var(--color-primary-500);
  border-color: var(--color-primary-500);
  font-weight: 600;
  color: var(--color-white);
}

body .en__field--recurrpay .en__field__element--radio .en__field__label:after,
body .en__field--recurrpay .en__field__element--radio .en__field__label:before {
  display: none;
}

body
  .en__field--recurrpay
  .en__field__element--radio
  .en__field__input:checked
  + .en__field__label {
  background: var(--color-primary-500);
  border-color: var(--color-primary-500);
  font-weight: 700;
  color: var(--color-white);
}

body .en__field--NOT_TAGGED_12.en__field--radio > .en__field__label,
body .en__field--donationAmt.en__field--radio > .en__field__label {
  display: none;
}

#en__pagebuilder .en__field--NOT_TAGGED_12.en__field--radio > .en__field__label,
#en__pagebuilder .en__field--donationAmt.en__field--radio > .en__field__label {
  display: block;
}

body .en__field--NOT_TAGGED_12.en__field--radio .en__field__error,
body .en__field--donationAmt.en__field--radio .en__field__error {
  padding-top: 1rem;
}

body .en__field--NOT_TAGGED_12.en__field--radio .en__field__element--radio,
body .en__field--donationAmt.en__field--radio .en__field__element--radio {
  /* display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)); */
  grid-gap: 10px;
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 600px) {
  body .en__field--NOT_TAGGED_12.en__field--radio .en__field__element--radio,
  body .en__field--donationAmt.en__field--radio .en__field__element--radio {
    /* grid-template-columns: repeat(3, minmax(0, 1fr)); */
    display: flex;
    flex-wrap: wrap;
  }
}

body .en__field--NOT_TAGGED_12.en__field--radio .en__field__item,
body .en__field--donationAmt.en__field--radio .en__field__item {
  /* display: contents; */
  flex-basis: 31%;
}

body
  .en__field--donationAmt.en__field--radio
  .en__field__item:nth-last-child(2) {
  flex-basis: 100%;
}

body .en__field--NOT_TAGGED_12.en__field--radio .en__field__item--hidden,
body .en__field--donationAmt.en__field--radio .en__field__item--hidden {
  display: none;
}

#en__pagebuilder .en__field__item--hidden {
  display: block !important;
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__label,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__label {
  color: var(--color-neutral-800);
  height: 2.8rem;
  display: block;
  text-align: center;
  position: relative;
  line-height: 2.8rem;
  width: 100%;
  z-index: 1;
  cursor: pointer;
  text-transform: capitalize;
  padding-left: 0;
  border: solid 1px #999999;
  border-radius: 5px;
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__label,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__label {
  font-size: 1.125rem;
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__label:after,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__label:after {
  display: none;
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__label:before,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__label:before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  /* background: var(--color-white); */
  z-index: -1;
  transition: all 0.1s ease-out;
  transform: scale(1);
  border-radius: 0;
  border: none;
  opacity: 1;
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__label:hover:before,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__label:hover:before {
  transform: scale(0.95);
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__input--radio,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__input--radio {
  display: none;
}

#en__pagebuilder
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__input--radio,
#en__pagebuilder
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__input--radio {
  display: block;
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__input--radio[value='Other']:checked
  + label,
body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__input--radio[value='other']:checked
  + label,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__input--radio[value='Other']:checked
  + label,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__input--radio[value='other']:checked
  + label {
  display: none !important;
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__input--radio:checked
  + .en__field__label,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__input--radio:checked
  + .en__field__label {
  z-index: 2;
  color: #fff;
  font-size: 1.175rem;
  background: var(--color-primary-500);
  border: solid 1px var(--color-primary-500);
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__input--radio:checked
  + .en__field__label:before,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__input--radio:checked
  + .en__field__label:before {
  /* transform: scaleX(1.125) scaleY(1.14286);
  box-shadow: 0 2px 20px 4px rgba(0, 0, 0, 0.12), 0 0.375rem 0 0 var(--color-primary-700) inset; */
  background: var(--color-primary-500);
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__item--hidden,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__item--hidden {
  display: none;
}

body
  .en__field--NOT_TAGGED_12.en__field--radio
  .en__field__item
  .en__field__input--other,
body
  .en__field--donationAmt.en__field--radio
  .en__field__item
  .en__field__input--other {
  background: var(--color-white);
  color: var(--color-neutral-800);
  width: 100%;
  font-size: 1.125rem;
  text-align: center;
  transition: all 0.2s ease-in-out;
  position: relative;
  outline: 0;
  z-index: 2;
  /* transform: scale(1.125);
  transition: all 0.2s ease-in-out; */
  /* box-shadow: 0 2px 20px 4px rgba(0, 0, 0, 0.12), 0 0.375rem 0 0 var(--color-primary-700) inset; */
  height: 2.8rem;
  line-height: 2.8rem;
}

.en__component--row {
  display: flex !important;
  flex-direction: column;
  flex-wrap: nowrap !important;
}

@media (min-width: 1140px) {
  .en__component--row {
    flex-direction: row;
  }
}

.en__component--row .en__component--column--2 {
  margin: 0 auto;
}

.en__field.en__field--donationAmt
  .en__field__item--other:not(.en__field__item--hidden) {
  flex-direction: row-reverse;
  background: #1d252c;
  border-radius: 5px;
  height: 2.8rem;
  display: flex;
  flex-grow: 100;
  font-size: 1.125rem !important;
}

.en__field.en__field--donationAmt
  .en__field__item--other:not(.en__field__item--hidden)
  label {
  box-sizing: border-box;
  height: 55px;
  flex-basis: 15%;
  margin: 0;
  padding: 12px 7px;
  padding-right: 0;
  text-align: right;
  color: transparent;
  background: unset;
  border-radius: 5px 0 0 5px;
}

.en__field.en__field--donationAmt
  .en__field__item:nth-last-child(2)
  > label
  .other-value,
.en__field.en__field--donationAmt
  .en__field__item.en__field__item--other
  > label
  .other-value {
  color: #fff;
  font-weight: normal;
  padding-left: 10px;
}

.en__field.en__field--donationAmt
  .en__field__item--other:not(.en__field__item--hidden)
  input {
  height: 2.8rem;
  flex-basis: 85%;
  margin: 0;
  border: 0;
  background: #fff;
  color: #000;
  box-sizing: border-box;
  border-radius: 0 5px 5px 0;
  margin-right: 0px;
  padding: 13px 13px 13px 0px;
  font-size: 1.125rem !important;
  color: #000 !important;
  border-top: solid 1px #999999;
  border-bottom: solid 1px #999999;
  border-right: solid 1px #999999;
  text-align: left;
  padding-left: 20px;
}

.en__field.en__field--donationAmt
  .en__field__item--other:not(.en__field__item--hidden)
  input::placeholder {
  font-size: 1.125rem !important;
  color: #000 !important;
}

.en__field.hidden {
  display: none;
}

#en__pagebuilder .en__field.hidden {
  display: block;
}

.validation-error input {
  border: solid 1px var(--color-primary-500) !important;
}

label.error {
  color: var(--color-primary-500);
  font-size: 0.6875rem;
}

.en__field--donationAmt
  div.en__field__element--radio
  .en__field__item.en__field__item--other:not(.en__field__item--hidden)
  label,
.en__field--recurrfreq
  div.en__field__element--radio
  .en__field__item.en__field__item--other:not(.en__field__item--hidden)
  label {
  display: none;
}

.en__field--donationAmt
  div.en__field__element--radio
  .en__field__item.en__field__item--other:not(.en__field__item--hidden)::after,
.en__field--recurrfreq
  div.en__field__element--radio
  .en__field__item.en__field__item--other:not(.en__field__item--hidden)::after {
  content: '£';
  font-size: 1.125rem !important;
  color: #fff;
  width: 45px;
  display: flex;
  flex-direction: row;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.en__field__label.en__field__label--item span.currency {
  display: none;
}

#en__pagebuilder .en__field__label.en__field__label--item span.currency {
  display: inline;
}

.gift-aid-message {
  padding-bottom: 0 !important;
  padding-top: 1rem !important;
}

body .en__component--gift-aid {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

body .en__component--gift-aid .en__field {
  flex-grow: 1;
  margin: 0;
}

body .en__component--gift-aid .en__field--checkbox {
  width: 100%;
}

form[action*='donate']:has(
    input[name='transaction.taxdeductible'][value='N']:checked
  )
  .gift-aid-only,
.gift-aid-only {
  display: none;
}

#en__pagebuilder .gift-aid-only,
form[action*='donate']:has(
    input[name='transaction.taxdeductible'][value='Y']:checked
  )
  .gift-aid-only,
form.gift-aid-selected .gift-aid-only {
  display: block;
}

/* Hide the other Gift Aid radio button field */
body .en__field--NOT_TAGGED_5 {
  display: none;
}

#en__pagebuilder .en__field--NOT_TAGGED_5 {
  display: block;
}

/* Hide the 'Gift Aid' opt-in checkbox */
.en__field--gift-aid {
  display: none !important;
}

#en__pagebuilder .en__field--gift-aid {
  display: block !important;
}

body .en__upsellModal__content {
  color: var(--color-neutral-800);
  text-align: center;
}

body #en__upsellModal #en__upsellModal__yes button {
  position: relative;
  border: none;
  cursor: pointer;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: 0.015em;
  overflow: hidden;
  transition: background-color 0.2s ease-in-out 0s;
  vertical-align: middle;
  padding: 0 1.5em;
  background: var(--button-background);
  color: inherit;
  height: 4em;
  line-height: 1.25;
  min-width: var(--button-min-width);
  font-family: var(--font-secondary);
  font-size: var(--button-font-size);
  color: var(--button-color);
}

body #en__upsellModal #en__upsellModal__yes button:after {
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  border-bottom: 1.5rem solid var(--button-notch-color);
  border-left: 1.5rem solid transparent;
  transition: transform 0.2s ease-in-out 0s;
}

body #en__upsellModal #en__upsellModal__yes button:hover {
  background: var(--button-background-hover);
}

body #en__upsellModal #en__upsellModal__no button {
  padding: 0;
  margin: 0;
  display: inline;
  text-decoration: underline;
  text-decoration-color: var(--color-secondary-500);
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
  width: auto;
  cursor: pointer;
  font-weight: 600;
}

body #en__upsellModal #en__upsellModal__no button:hover {
  background: var(--color-secondary-500);
}

.thw-iframe--donation {
  --body-padding: 1.5rem;
  --input-radio-color: var(--color-primary-500);
  --input-checkbox-color: var(--color-primary-500);
  --button-background: var(--color-primary-500);
  --button-color: var(--color-white);
  --button-height: 5rem;
  --button-min-width: 16.25rem;
  --button-notch-color: var(--color-primary-700);
  --button-background-hover: var(--color-primary-700);
}

.thw-iframe--newsletter-subscribe {
  --input-text-height: 3.75rem;
  --input-text-font-size: 1.125rem;
  --input-text-font-weight: 300;
  --input-text-border-width: 1px;
  --input-text-border-color: var(--color-neutral-250);
  --input-text-text-align: center;
  --input-text-background: var(--color-neutral-200);
  --input-text-background-focus: var(--color-white);
  --input-text-border-color-focus: var(--color-secondary-500);
  --field-margin: 1rem 0;
}

.thw-iframe--newsletter-subscribe {
  background: var(--color-white);
  color: var(--color-neutral-800);
}

.thw-iframe--newsletter-subscribe h1 {
  font-family: var(--font-tertiary);
  font-style: italic;
  letter-spacing: 0;
  text-transform: none;
  text-align: left;
  font-weight: 700;
  font-size: 1.5rem;
  text-align: center;
}

.thw-iframe--newsletter-subscribe h2 {
  text-align: center;
  font-size: 1.75rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

.thw-iframe--newsletter-subscribe p {
  margin: 0.75rem 0;
  text-align: center;
  font-size: 1.125rem;
}

.thw-iframe--newsletter-subscribe .en__field > .en__field__label {
  text-align: center;
}

.thw-iframe--newsletter-subscribe .en__field--radio .en__field__element {
  justify-content: center;
}

.thw-iframe--newsletter-subscribe
  .en__field--radio
  .en__field__element
  .en__field__label:hover:before {
  border-color: var(--color-neutral-500);
}

.thw-iframe--newsletter-subscribe
  .en__field--radio
  .en__field__input--radio:checked
  + .en__field__label:before {
  border-color: var(--color-neutral-500);
}

.thw-iframe--newsletter-subscribe
  .en__field--checkbox
  .en__field__element
  .en__field__label:hover:before {
  border-color: var(--color-neutral-500);
}

.thw-iframe--newsletter-subscribe
  .en__field--checkbox
  .en__field__input--checkbox:checked
  + .en__field__label:before {
  border-color: var(--color-neutral-500);
}

.thw-iframe--newsletter-subscribe .en__submit {
  text-align: center;
  margin: 1.5rem 0;
}

.thw-iframe--newsletter-footer {
  --body-max-width: 23.9375rem;
  --body-background: transparent;
  --h1-font-family: var(--font-tertiary);
  --h1-font-style: italic;
  --h1-color: var(--color-secondary-500);
  --h1-letter-spacing: 0;
  --h1-text-transform: none;
  --h1-text-align: initial;
  --h1-font-size: 1.25rem;
  --h2-font-size: 1.125rem;
  --h2-line-height: 1.2;
  --h2-letter-spacing: 0.05em;
  --p-margin: 1rem 0;
  --input-text-height: 3.75rem;
  --input-text-font-size: 1.125rem;
  --input-text-font-weight: 300;
  --input-text-border-width: 1px;
  --input-text-border-color: var(--color-neutral-250);
  --input-text-text-align: center;
  --input-text-background: var(--color-neutral-200);
  --input-text-background-focus: var(--color-white);
  --input-text-border-color-focus: var(--color-secondary-500);
  --button-margin: 1rem 0;
  --field-margin: 1rem 0;
  --form-padding: 1.75rem 2rem;
  --form-background: var(--color-black);
  --form-clip-path: polygon(
    0 0,
    100% 0,
    100% calc(100% - 2.5rem),
    calc(100% - 2.5rem) 100%,
    0 100%
  );
}

.en-page {
  --body-background: black;
  --main-max-width: 50rem;
  --main-margin: clamp(0rem, calc(15vw - 120px), 3rem) auto;
  --main-padding: clamp(3rem, 6.25%, 4rem) clamp(1.5rem, 6.25%, 4rem);
  --button-align: center;
}

.en-page .pageImage {
  width: auto !important;
  height: auto !important;
}

.en-page .main {
  margin: var(--main-margin);
  background: var(--main-background);
  color: var(--main-color);
  border-radius: var(--main-border-radius);
  padding: var(--main-padding);
  max-width: var(--main-max-width);
  clip-path: var(--main-clip-path);
  width: 100%;
}

.en-page .footer {
  background: var(--color-black);
  color: var(--color-white);
  height: auto;
  padding: 0;
}

.en-page .footer__container {
  margin: 0 auto;
  flex-direction: column;
}

@media (min-width: 1140px) {
  .en-page .footer__container {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

@media (min-width: 1140px) {
  .en-page .footer__section {
    white-space: nowrap;
    flex: 1;
    display: flex;
    justify-content: center;
  }

  .en-page .footer__section:first-child > * {
    margin-right: auto;
  }

  .en-page .footer__section:last-child > * {
    text-align: right;
    margin-left: auto;
  }
}

.en-page .footer__blue_section {
  background: #20252b !important;
  padding-top: 50px;
  padding-bottom: 50px;
  width: 100%;
  margin: 0;
  color: #fff;
  border-bottom: solid 1px #272a2f;
}

@media (max-width: 1139px) {
  .en-page .footer__blue_section {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.en-page .footer__black_section {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: solid 1px #171717;
  width: 100%;
  margin: 0;
}

.en-page .footer__black_section .footer-nav {
  list-style: none;
  display: flex;
  font-size: 0.75rem;
  flex-direction: row;
}

@media (max-width: 1139px) {
  .en-page .footer__black_section .footer-nav {
    flex-direction: column;
    margin-left: 50px;
  }
}

.en-page .footer-nav {
  list-style: none;
  display: flex;
  margin: 0;
  padding: 0.5em 0 0;
  justify-content: center;
  font-size: 0.75rem;
  line-height: 1;
}

.en-page .footer__blue_section ul {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  padding: 0;
  list-style: none;
  font-size: 0.875rem;
  max-width: 70rem;
  flex-direction: row;
}

@media (max-width: 1139px) {
  .en-page .footer__blue_section ul {
    flex-direction: column;
    margin-left: 50px;
  }
}

.en-page .footer__blue_section ul li {
  display: flex;
  align-items: center;
}

@media (max-width: 1139px) {
  .en-page .footer__blue_section ul li {
    font-size: 0.625rem;
    max-width: 80%;
    margin-bottom: 8px;
  }
}

.en-page .footer__blue_section ul li.location::before {
  content: '';
  background-image: url(https://aaf1a18515da0e792f78-c27fdabe952dfc357fe25ebf5c8897ee.ssl.cf5.rackcdn.com/2295/location.png?v=1699455266000);
  margin-right: 10px;
  display: inline-flex;
  height: 30px;
  width: 20px;
}

@media (max-width: 575px) {
  .en-page .footer__blue_section ul li.location::before {
    margin-right: 15px;
    width: 35px !important;
  }
}

@media (max-width: 1139px) {
  .en-page .footer__blue_section ul li.location::before {
    margin-right: 15px;
    width: 20px;
  }
}

.en-page .footer__blue_section ul li.mail::before {
  content: '';
  background-image: url(https://aaf1a18515da0e792f78-c27fdabe952dfc357fe25ebf5c8897ee.ssl.cf5.rackcdn.com/2295/email.png?v=1699455254000);
  margin-right: 10px;
  display: inline-flex;
  height: 16px;
  width: 25px;
}

.en-page .footer__blue_section ul li.tel::before {
  content: '';
  background-image: url(https://aaf1a18515da0e792f78-c27fdabe952dfc357fe25ebf5c8897ee.ssl.cf5.rackcdn.com/2295/tel.png?v=1699455281000);
  margin-right: 10px;
  display: inline-flex;
  height: 22px;
  width: 21px;
}

@media (max-width: 1139px) {
  .en-page .footer__blue_section ul li.tel::before {
    margin-right: 15px;
    width: 20px;
  }
}

@media (min-width: 1140px) {
  .en-page .footer-nav {
    padding-top: 0;
  }
}

.en-page .footer-nav a {
  text-decoration: none;
  color: inherit;
  display: block;
  padding: 4px 8px;
}

.en-page .footer-nav a:hover {
  text-decoration: underline;
}

.en-page .social {
  list-style: none;
  display: flex;
  margin: 0 -6px;
  padding: 0;
  justify-content: center;
  line-height: 1;
}

.en-page .social__item {
  color: var(--color-white);
  padding: 6px;
}

.en-page .social__item a {
  display: block;
  color: inherit;
  opacity: 0.68;
}

.en-page .social__item a:hover {
  opacity: 1;
}

.en-page .social__item svg {
  display: block;
}

.en-page .social__item path {
  fill: currentColor;
}

.en-page .copyright {
  font-size: 0.75rem;
  line-height: 1.8;
  margin: 0;
  padding: 3em 0 0;
  text-align: center;
}

@media (min-width: 1140px) {
  .en-page .copyright {
    padding-top: 0;
  }
}

.en-page--light {
  --body-color: var(--color-neutral-600);
  --body-background: transparent;
  --main-border-radius: 0.5rem;
  --main-background: var(--color-white);
  --main-color: var(--color-neutral-600);
  --input-text-height: 3.125rem;
  --input-text-border-width: 0 0 0.125rem;
  --input-text-background: var(--color-neutral-100);
  --input-text-background-focus: var(--color-neutral-100);
  --input-text-border-color: var(--color-neutral-300);
  --input-text-border-color-focus: var(--color-secondary-500);
  --input-text-color: var(--color-neutral-600);
}

.en-page--light :focus {
  outline: 0;
}

.en-page--transparent {
  --body-color: var(--color-neutral-600);
  --body-background: transparent;
  --main-border-radius: 0.5rem;
  --main-background: rgba(255, 255, 255, 0.9);
  --main-color: var(--color-neutral-600);
  --input-text-height: 3.125rem;
  --input-text-border-width: 0 0 0.125rem;
  --input-text-background: var(--color-neutral-100);
  --input-text-background-focus: var(--color-neutral-100);
  --input-text-border-color: var(--color-neutral-300);
  --input-text-border-color-focus: var(--color-secondary-500);
  --input-text-color: var(--color-neutral-600);
}

.en-page--transparent :focus {
  outline: 0;
}

.en-page--dark {
  --main-background: var(--color-neutral-800);
  --main-color: var(--color-white);
  --main-clip-path: polygon(
    0 0,
    100% 0,
    100% calc(100% - 3.75rem),
    calc(100% - 3.75rem) 100%,
    0 100%
  );
}

.en-page--donation {
  --body-padding: 1.5rem;
  --input-radio-color: var(--color-primary-500);
  --input-checkbox-color: var(--color-primary-500);
  --button-background: var(--color-primary-500);
  --button-color: var(--color-white);
  --button-height: 5rem;
  --button-min-width: 16.25rem;
  --button-notch-color: var(--color-primary-700);
  --button-background-hover: var(--color-primary-700);
}

.en-page--donation-standalone {
  --body-padding: 0;
  --input-radio-color: var(--color-primary-500);
  --input-checkbox-color: var(--color-primary-500);
  --button-background: var(--color-primary-500);
  --button-color: var(--color-white);
  --button-height: 5rem;
  --button-min-width: 16.25rem;
  --button-notch-color: var(--color-primary-700);
  --button-background-hover: var(--color-primary-700);
}

.en-page--donation-standalone .header {
  width: 100%;
  z-index: 2;
  height: 3.75rem;
  padding: 0 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  top: 0;
  left: 0;
}

#en__pagebuilder .en-page--donation-standalone .header,
#en__pagebuilder header {
  position: static;
}

@media (min-width: 768px) {
  .en-page--donation-standalone .header {
    height: 4.75rem;
  }
}

@media (min-width: 1140px) {
  .en-page--donation-standalone .header {
    padding: 0 2.5rem;
  }
}

.en-page--donation-standalone .header__logo {
  width: 7.8125rem;
}

@media (min-width: 768px) {
  .en-page--donation-standalone .header__logo {
    width: 17.5rem;
  }
}

.en-page--donation-standalone .hero {
  position: relative;
  z-index: 1;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4rem;
  background: #000;
  /* max-width: 1500px; */
  align-items: stretch;
}

@media (min-width: 1140px) {
  .en-page--donation-standalone .hero {
    padding: 0 1rem 0;
    flex-direction: row;
    /* justify-content: space-around; */
    min-height: 735px;
    align-items: flex-start;
    justify-content: center;
  }
}

.en-page--donation-standalone .hero__image {
  left: 0;
  top: 0;
  position: absolute;
  z-index: -1;
  overflow: hidden;

  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.en-page--donation-standalone .hero__image picture {
  display: contents;
}

.en-page--donation-standalone .hero__image img {
  max-height: unset;
  width: 150%;
  height: auto;
  margin-top: 0%;
  max-width: none;
  margin-left: 60%;
}

@media (max-width: 575px) {
  .en-page--donation-standalone .hero__image img {
    margin-left: 375px;
    width: 200%;
  }
}

@media (min-width: 960px) {
  .en-page--donation-standalone .hero__image {
    max-height: 735px;
  }

  .en-page--donation-standalone .hero__image img {
    width: auto;
    margin-right: 5%;
    margin-left: unset;
  }
}

@media (min-width: 1140px) {
  .en-page--donation-standalone .hero__image {
    max-height: 735px;
  }

  .en-page--donation-standalone .hero__image img {
    width: auto;
    margin-right: 5%;
  }
}

@media (min-width: 1200px) {
  .en-page--donation-standalone .hero__image img {
    margin-right: 0%;
  }
}

@media (min-width: 1300px) {
  .en-page--donation-standalone .hero__image img {
    margin-right: -3%;
  }
}

@media (min-width: 1400px) {
  .en-page--donation-standalone .hero__image img {
    /* margin-right: -5%; */
    margin-right: -2%;
  }
}

@media (min-width: 1500px) {
  .en-page--donation-standalone .hero__image img {
    /* margin-right: -7%; */
    margin-right: -2%;
  }
}

.en__component--row .en__component--column--1 {
  align-items: center;
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  display: flex;
  flex-direction: column;
  margin: 0;
  padding-top: 14rem;
  position: relative;
  text-align: center;
  width: 100% !important;
}

#en__pagebuilder .en__component--row .en__component--column--1 {
  padding-top: 0 !important;
}

@media (min-width: 480px) {
  .en__component--row .en__component--column--1 {
    padding-top: 18rem;
  }
}

@media (min-width: 600px) {
  .en__component--row .en__component--column--1 {
    padding-top: 24rem;
  }
}

@media (min-width: 1140px) {
  .en__component--row .en__component--column--1 {
    flex-basis: 65%;
    flex-grow: 1;
    padding-bottom: 4rem;
    padding-top: 26rem;
    width: auto !important;
  }
}

.en__component--row .en__component--column--1 > * {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  max-width: calc(100% - 3rem);
}

@media (min-width: 600px) {
  .en__component--row .en__component--column--1 > * {
    margin-left: auto;
    margin-right: auto;
    max-width: 27rem;
  }
}

@media (min-width: 1140px) {
  .en__component--row .en__component--column--1 > * {
    text-align: center;
    margin-right: 7rem;
    margin-left: 7rem;
  }
}

.en__component--row .en__component--column--1 h1 {
  background-color: #fe3b1f;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone; /* For Safari */
  display: inline;
  font-size: 2rem;
  line-height: 1.5;
  padding-left: 20px;
  padding-right: 20px;
}

@media (min-width: 960px) {
  .en__component--row .en__component--column--1 h1 {
    font-size: 2.25rem;
  }
}

@media (min-width: 1280px) {
  .en__component--row .en__component--column--1 h1 {
    font-size: 2.8125rem;
  }
}

.en__component--row .en__component--column--1 h1 + * {
  margin-top: 1.5rem;
}

.en__component--row .en__component--column--1 p {
  background-color: #000000aa;
  font-size: 1em;
}

@media (min-width: 960px) {
  .en__component--row .en__component--column--1 p {
    font-size: 1.125rem;
  }
}

.background-image-credit {
  border-bottom-right-radius: 5px;
  color: white;
  font-size: 1rem;
  right: 0;
  padding: 0.5rem 1rem;
  position: absolute;
  top: 13rem;
}

@media (min-width: 480px) {
  .background-image-credit {
    top: 18rem;
  }
}

@media (min-width: 600px) {
  .background-image-credit {
    top: 24rem;
  }
}

@media (min-width: 1140px) {
  .background-image-credit {
    left: 0;
    right: auto;
    top: 32rem;
  }
}

.background-image-credit details {
  align-items: flex-end;
  background-color: #000000cc;
  bottom: 0.5rem;
  display: flex;
  flex-direction: column-reverse;
  gap: 0.5rem;
  right: 0.5rem;
  padding: 0.25rem 0.5rem;
  position: absolute;
  width: auto;
}

@media (min-width: 1140px) {
  .background-image-credit details {
    align-items: flex-start;
    left: 0.5rem;
    right: auto;
  }
}

.background-image-credit details[open] {
  width: 20rem;
}

.background-image-credit summary {
  cursor: pointer;
  display: flex;
  justify-content: flex-end;
  list-style: none;
  margin: 0;
  position: relative;
}

.background-image-credit summary::-webkit-details-marker {
  display: none;
}

.background-image-credit summary::after {
  background-image: url(images/icon-info-white.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  display: inline-block;
  filter: drop-shadow(0.1rem 0.1rem 0.1rem black);
  height: 1.5rem;
  opacity: 0.5;
  width: 1.5rem;
}

.background-image-credit details[open] > summary::after {
  opacity: 1;
}

/* Hide 'About this photo' text except for screenreaders */
.background-image-credit summary span {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.en__component--row .en__component--column--2 {
  color: #000;
  background: transparent;
  margin: 0 auto;
  position: relative;
  width: 100% !important;
}

@media (min-width: 640px) {
  .en__component--row .en__component--column--2 {
    margin: 0 auto;
    max-width: 860px;
  }
}

@media (min-width: 960px) {
  .en__component--row .en__component--column--2 {
    padding: 0;
  }
}

@media (min-width: 1140px) {
  .en__component--row .en__component--column--2 {
    flex-basis: 40%;
    flex-grow: 0;
    margin: 0 -1.5rem;
    max-width: 460px;
    width: auto !important;
  }
}

/* Placeholder space before we add 'Secure donations' or 'Secure form' text using Javascript */
.en__component--row .en__component--column--2::before {
  background-color: black;
  content: var(--hl-column2-top-content, '');
  display: block;
  height: 3.75rem;
  width: 100%;
}

@media (min-width: 768px) {
  .en__component--row .en__component--column--2::before {
    height: 4.75rem;
  }
}

.en__component--row .en__component--column--2 > * {
  background-color: white;
  padding: 0.1px 1rem;
  margin: 0 auto;
  max-width: calc(370px + 6rem);
}

@media (min-width: 600px) {
  .en__component--row .en__component--column--2 > * {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}

.en__component--row
  .en__component--column--2
  > *:last-child:not(.payment-logos):not(.disclosures),
.en__component--row .en__component--column--2 > *:has(+ .payment-logos) {
  padding-bottom: 2rem;
  padding-top: 1rem;
}

.en__component--row
  .en__component--column--2
  .en__component--copyblock
  p:last-child {
  margin-bottom: 0;
}

.en__component--row .en__component--column--2 > *.en__component--imageblock {
  padding-top: 1rem;
}

@media (min-width: 600px) {
  .en__component--row .en__component--column--2 > *.en__component--imageblock {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

/* Steps indicator */

.en__component--row .en__component--column--2 > .steps-listing {
  padding-top: 2rem;
}

.en__component--row .en__component--column--2 .steps-listing ul {
  border-top: solid 2px #e9e9eb;
  margin: 0;
  padding: 0;
  padding-top: 3px;
  list-style: none;
  display: flex;
  flex-wrap: nowrap;
  box-sizing: border-box;
  justify-content: space-between;
}

.en__component--row .en__component--column--2 .steps-listing ul li span {
  font-size: 0.9375rem;
  color: #000;
}

.en__component--row .en__component--column--2 .steps-listing ul li.active span {
  font-size: 0.9375rem;
  font-weight: bold;
  color: #000;
}

.en__component--row
  .en__component--column--2
  .steps-listing
  ul
  li.active::after {
  content: '';
  width: 12px;
  height: 12px;
  background: #3a4147 !important;
  display: block;
  position: absolute;
  left: calc(50% - 6px);
  border-radius: 50%;
  top: -10px;
  z-index: 1;
}

.en__component--row .en__component--column--2 .steps-listing ul li {
  flex-basis: 33%;
  position: relative;
  text-align: center;
}

.en__component--row .en__component--column--2 .steps-listing ul li::before {
  content: '';
  width: 12px;
  height: 12px;
  background: #dddee0;
  display: block;
  position: absolute;
  left: calc(50% - 6px);
  border-radius: 50%;
  top: -10px;
  z-index: 1;
}

.en__component--row .en__component--column--2 .steps-listing ul li::after {
  content: '';
  width: 12px;
  height: 12px;
  background: #dddee0;
  display: block;
  position: absolute;
  left: calc(50% - 6px);
  border-radius: 50%;
  top: -10px;
  z-index: 1;
}

/* Red flash */

.flash-red p {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  background: var(--hl-colour-red);
  color: white;
  line-height: 1;
  margin-bottom: 0;
  white-space: nowrap;
  padding: 0.5em 1em;
  font-size: 1.125rem;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 100%;
}

.flash-red + .en__component--copyblock h1 {
  margin-top: 2rem;
}

/* Hide donation upsell messages initially, until we can move them to the correct position between two form fields */
.upsellMessageMonthly,
.upsellMessageSingle {
  display: none;
}

#en__pagebuilder .upsellMessageMonthly,
#en__pagebuilder .upsellMessageSingle {
  display: block;
}

.en__component--row .en__component--column--2 .upsellMessageSingle p {
  display: flex;
}

.en__component--row .en__component--column--2 .upsellMessageSingle,
.en__component--row .en__component--column--2 .upsellMessageMonthly {
  font-size: 0.8125rem !important;
}

.en__component--row .en__component--column--2 .upsellMessageSingle em,
.en__component--row .en__component--column--2 .upsellMessageMonthly em {
  font-size: 0.8125rem !important;
}

.en__component--row .en__component--column--2 .jBUPlA {
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: space-between;
  padding: 1.5rem 0;
  background: #f5f5f5;
}

.en__component--row .en__component--column--2 .monthly_payment_logo .jBUPlA {
  padding-left: 5rem;
  padding-right: 5rem;
}

@media (min-width: 960px) {
  .en__component--row .en__component--column--2 .jBUPlA {
    padding-left: 2.5rem;
  }
}

.secure-donation {
  background-color: black !important;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  color: #fff;
  margin-right: 35px;
  padding-bottom: 1rem !important;
  padding-top: 1rem !important;
}

@media (min-width: 960px) {
  .secure-donation {
    margin-right: 85px;
  }
}

.secure-donation img {
  padding-bottom: 0px;
  margin: 0;
  display: flex;
  /* padding-right: 35px;
  margin-top: -8px; */

  padding-right: 10px;
  height: 19px;
  margin-top: 5px;
}

.secure-donation .pagetype-donation {
  display: none;
}

.secure-donation .pagetype-general {
  display: block;
}

body:has(form[action*='donate']) .secure-donation .pagetype-donation {
  display: block;
}

body:has(form[action*='donate']) .secure-donation .pagetype-general {
  display: none;
}

.disclosures {
  display: none;
  padding: 0 !important;
  visibility: hidden;
}

body:has(form[action*='donate']) .disclosures {
  display: block;
  visibility: visible;
}

body:has(.en__component--socialshareblock) .disclosures {
  display: none;
}

.en__component--row .en__component--column--2 .privacy {
  background-color: black;
  padding: 0 1rem 1rem;
  color: #fff;
  text-align: center;
}

.en__component--row .en__component--column--2 .privacy p {
  padding: 0;
  margin: 0;
  font-size: 0.875rem;
  padding-top: 20px;
}

.fundraising-info {
  background-color: white;
  color: var(--color-neutral-800);
  display: none;
  padding-top: 45px;
  padding-bottom: 45px;
  text-align: center;
  margin: 0 auto;
  font-size: 1.125rem;
  width: 100%;
}

body:has(form[action*='donate']) .fundraising-info {
  display: block;
}

.fundraising-info p {
  margin: 0;
  text-align: center;
}

.fundraising-info .text {
  max-width: 460px;
  padding-left: 20px;
  padding-right: 40px;
}

.fundraising-info a {
  text-decoration: none;
  border-bottom: 2px solid var(--color-secondary-500);
}

.fundraising-info a:hover {
  background: var(--color-secondary-500);
}

.en__field.adaptive_placeholder {
  position: relative;
  width: 100%;
}

.en__field.en__field--firstName,
.en__field.en__field--lastName {
  width: 50%;
  width: calc(50% - 10px);
  float: left;
  box-sizing: border-box;
  clear: none;
}

#en__pagebuilder .en__field.en__field--firstName,
#en__pagebuilder .en__field.en__field--lastName {
  float: none;
  width: 100%;
}

.en__field.en__field--firstName {
  margin-right: 20px;
  clear: both;
}

.en__field.adaptive_placeholder input,
.en__field.adaptive_placeholder select {
  outline: none;
  border: solid 1px #999999;
}

.en__field.adaptive_placeholder textarea {
  min-height: 170px;
  padding-top: 30px;
  outline: none;
  border: solid 1px #999999;
}

.en__field.adaptive_placeholder > .en__field--select > label,
.en__field.adaptive_placeholder > label {
  pointer-events: none;
  transition-duration: 0.2s;
  transition-property: transform;
  transform-origin: left;
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  padding: 12px 0 11px 20px;
  z-index: 2;
}

.en__field.adaptive_placeholder > .en__field--select > label.focusin,
.en__field.adaptive_placeholder > label.focusin {
  -webkit-transform: translate(0.2em, -0.8em) scale(0.8, 0.8);
  transform: translate(0.2em, -0.8em) scale(0.8, 0.8);
  background: #fff;
  padding: 0px 5px 0px 5px;
  margin-left: 10px;
  max-width: 100%;
  min-width: auto;
  top: 0;
  left: 0;
}

.en__field.adaptive_placeholder.en__field--select > label {
  top: 1px;
  left: 4px;
  font-weight: normal;
  position: absolute;
  max-width: 100%;
  max-width: calc(100% - 30px);
  background: #fff;
  padding: 13px 0 12px 20px;
  box-sizing: border-box;
  z-index: 2;
}

.en__field.adaptive_placeholder.en__field--select > label.focusin {
  padding: 0px 5px 0px 5px;
}

.en__field.adaptive_placeholder.en__field--splitselect .en__field__item {
  position: relative;
}

.en__field.adaptive_placeholder.en__field--splitselect
  .en__field__item
  > label {
  top: 3px;
  font-weight: normal;
  position: absolute;
  background: #fff;
  padding: 0 10px 0 10px;
  font-size: 0.875rem;
  line-height: 16px;
  line-height: 1rem;
  width: auto;
  transform: translate(0.2em, -0.8em) scale(0.8, 0.8);
  z-index: 2;
}

@media only screen and (min-width: 768px) {
  .en__field.adaptive_placeholder.en__field--splitselect
    .en__field__item
    > label {
    max-width: 100%;
    max-width: calc(100% - 30px);
    /*min-width: calc(100% - 30px);*/
  }
}

.en__field.adaptive_placeholder.en__field--splitselect
  .en__field__item
  > label.focusin {
  padding: 0px 5px 0px 5px;
}

.en__field.adaptive_placeholder.en__field--splitselect
  .en__field__item
  .en__field__element--select {
  width: 100%;
}

.en__field.remove-translition.adaptive_placeholder label {
  transition: none;
}

#en__digitalWallet .en__digitalWallet__button {
  margin-top: 15px;
}

.fundraising-info .logo_text {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  margin: 0 auto;
  max-width: 75rem;
}

.fundraising-info .logo_text div {
  max-width: 370px;
  padding: 20px;
}

@media (min-width: 1140px) {
  .fundraising-info .logo_text {
    flex-direction: row;
  }

  .fundraising-info .logo_text div {
    padding: unset;
  }
}

.fundraising-info .logo_text div h3 {
  font-size: 0.9375rem;
  font-weight: bold;
  padding-top: 20px;
}

.fundraising-info .logo_text div p {
  font-size: 0.8125rem;
}

img.background-image {
  display: none !important;
}

/* Hide image blocks which are just used to set the source URL for the background image */
.en__component--imageblock:has(.background-image-source) {
  display: none;
}

#en__pagebuilder .en__component--imageblock {
  display: block !important;
}

/* Hide placeholder added to Loqate autocomplete field by ENvalidate */
input[placeholder='Start typing to find']::placeholder {
  color: transparent;
}

/* When using Loqate address lookup, hide other address fields initially */
.loqate-autocomplete-fields,
form.gift-aid-selected .gift-aid-only.loqate-autocomplete-fields {
  display: none;
}

.show-address-link {
  cursor: pointer;
  text-decoration: underline;
}

.en__field__element--email,
.en__field__element--text {
  display: flex;
  align-items: center;
}

.en__field__element--email span.valid,
.en__field__element--text span.valid {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%230bab47' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  height: 16px;
  width: 16px;
  display: flex;
  background-position: center;
  background-repeat: no-repeat;
  justify-content: center;
  align-items: center;
  position: absolute;
  right: 40px; /* allow space for browser autofill and password manager indicators, which may also show */
  top: 16px;
  background-size: 16px;
}

.validation-error span.valid {
  display: none;
}

.en__field__element--email span.invalid,
.en__field__element--text span.invalid {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23d30000' class='bi bi-exclamation-circle-fill' viewBox='0 0 16 16'%3e%3cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z'/%3e%3c/svg%3e");
  height: 16px;
  width: 16px;
  display: flex;
  background-position: center;
  background-repeat: no-repeat;
  justify-content: center;
  align-items: center;
  position: absolute;
  right: 40px; /* allow space for browser autofill and password manager indicators, which may also show */
  top: 16px;
  background-size: 16px;
}

:not(.validation-error) span.invalid {
  display: none;
}

.validation-error span.invalid {
  display: block;
}

.giftaid_wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 20px;
}

.giftaid_label p {
  padding: 0;
  margin: 0 !important;
}

.giftaid_logo {
  width: 150px;
}

.hidden {
  display: none !important;
}

#en__pagebuilder .en__component.hidden {
  display: block !important;
}

.en_hidden_copyblock {
  display: none;
}

body#en__pagebuilder .en_hidden_copyblock {
  display: block;
  opacity: 1;
}

body#en__pagebuilder .en__component--formblock.hidden {
  display: block;
  opacity: 1;
}

.en_popup_text {
  margin-top: -1.5rem !important;
  padding-bottom: 1rem !important;
}

.en_popup_text p {
  background: #f5f5f5;
  padding: 20px 25px !important;
  border-radius: 10px;
  margin-top: 30px;
  position: relative;
  max-width: 370px;
  margin-bottom: 30px;
  border: solid 1px #edeaf0;
}

.en_popup_text p::before {
  content: '';
  position: absolute;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 20px solid #f5f5f5;
  top: -15px;
  left: 170px;
}

.en_popup_text_yes {
  margin-top: -1rem !important;
}

.en_popup_text_yes p {
  background: #f5f5f5;
  color: #000;
  padding: 20px 25px !important;
  border-radius: 10px;
  margin: 0;
  position: relative;
  max-width: 360px;
  border: solid 1px #edeaf0;
}

.en_popup_text_yes p::before {
  content: '';
  position: absolute;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 20px solid #f5f5f5;
  top: -15px;
  left: 20px;
}

.error_alert_block {
  background: #fff4f2;
  display: none;
  -webkit-box-pack: start;
  justify-content: center;
  align-items: flex-start;
  position: relative;
  z-index: 1;
  font-size: 0.8125rem;
  margin: 1.5rem 0;
  border: solid 1px #ffdad4;
}

.en__component--column:has(.en__field__error) .error_alert_block {
  display: flex;
}

.error_alert_block svg {
  margin-top: 0.25rem;
}

.eqLOlF {
  fill: var(--color-primary-500);
  display: block;
}

.bOhAjN {
  margin-left: 0.75rem;
}

.eGaKmY {
  padding: 0.75rem;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  align-items: flex-start;
  position: relative;
  z-index: 1;
}

.valid .en__field__item--other {
  background: var(--color-primary-500) !important;
}

.en__field--recurrstart label {
  transform: translate(0.2em, -0.8em) scale(0.8, 0.8);
  background: #fff;
  padding: 0px 5px 0px 5px;
  max-width: 100%;
  min-width: auto;
  top: 0;
  left: 0;
}

.en__field.adaptive_placeholder > .en__field--select > label,
.en__field--calendar.adaptive_placeholder > label {
  pointer-events: none;
  transition-duration: 0.2s;
  transition-property: transform;
  transform-origin: left;
  position: absolute;
  left: 10px;
  top: 3px;
  font-weight: normal;
  position: absolute;
  background: #fff;
  padding: 0 10px 0 10px;
  font-size: 0.875rem;
  line-height: 1rem;
  width: auto;
  transform: translate(0.2em, -0.8em) scale(0.8, 0.8);
  z-index: 2;
}

.no_cost_title_eoy,
.no_cost_title {
  font-weight: bold !important;
}

.no_cost_title {
  margin-bottom: 0;
}

.digital_wallets {
  margin-bottom: 25px;
}

.osano-cm-info--position_right {
  right: 25px !important;
}

li.en__error {
  z-index: 9999;
  position: relative;
  background: red;
  color: #fff !important;
  margin-left: 1.25rem;
  padding: 5;
  list-style: none;
}

button.disabled {
  cursor: not-allowed !important;
  pointer-events: all !important;
  opacity: 0.5;
}

button.disabled:hover {
  background: var(--color-primary-500) !important;
}

button:disabled {
  cursor: not-allowed !important;
  pointer-events: all !important;
  opacity: 0.5;
}

button:disabled:hover {
  background: var(--color-primary-500) !important;
}

button:disabled .loading-icon {
  display: block !important;
}

.en__field--newsletter-opt-in {
  display: none !important;
}

#en__pagebuilder .en__field--newsletter-opt-in {
  display: flex !important;
}

.en__field--fundraising-opt-in {
  display: none !important;
}

#en__pagebuilder .en__field--fundraising-opt-in {
  display: flex !important;
}

.en__field--fan-opt-in {
  display: none !important;
}

#en__pagebuilder .en__field--fan-opt-in {
  display: flex !important;
}

.en__field__input--vgs {
  height: 3rem !important;
  width: 100% !important;
  border: unset !important;
}

img.icon {
  right: 1.25rem !important;
}

#en__field_supporter_questions_1044931 {
  display: none;
}

#en__pagebuilder #en__field_supporter_questions_1044931 {
  display: block;
}

#en__field_supporter_questions_1145077 {
  display: none;
}

#en__pagebuilder #en__field_supporter_questions_1145077 {
  display: block;
}

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  margin-bottom: 30px;
}

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

.payment-logos {
  background-color: #f5f5f5;
  display: none;
  margin: 0 auto;
  padding: 0 !important;
  width: 100%;
}

body:has(form[action*='donate']) .payment-logos {
  display: block;
}

body:has(.en__component--socialshareblock) .payment-logos {
  display: none;
}

.single_payment_logo,
.monthly_payment_logo {
  display: none;
}

form:has(input[name='transaction.recurrpay'][value='N']:checked)
  .payment-logos
  .single_payment_logo,
form.donation-single .payment-logos .single_payment_logo {
  display: block;
}

form:has(input[name='transaction.recurrpay'][value='Y']:checked)
  .payment-logos
  .monthly_payment_logo,
form.donation-monthly .payment-logos .monthly_payment_logo {
  display: block;
}

.single_donation_text,
.monthly_donation_text {
  display: none;
  padding-bottom: 1rem !important;
  padding-top: 2rem !important;
}

.single_donation_text:has(+ .en__component--formblock),
.monthly_donation_text:has(+ .en__component--formblock) {
  padding-bottom: 0.1px !important;
}

#en__pagebuilder .single_donation_text,
#en__pagebuilder .monthly_donation_text {
  display: block;
}

form.donation-single .single_donation_text {
  display: block;
}

form.donation-monthly .monthly_donation_text {
  display: block;
}

/* Email to target contact */

.en__component--column > .en__component--contactblock {
  background-color: transparent;
  margin-bottom: 4.5rem;
  padding: 0;
}

.en__contact__detail {
  padding-top: 0 !important;
}

.en__contactSubject__field {
  border-width: 1px;
}

/* Email to target modals */

/* Hide modal text - we'll automatically move it into the contact block using JS */
form:has(.modal-open) .modal-text {
  display: none;
}

/* Hide contact block initially */
form:has(.modal-open) .en__component--contactblock {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

form:has(.modal-open) .en__component--contactblock.modal-show {
  align-items: center;
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(5px);
  clip: auto;
  clip-path: none;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  left: 0px;
  max-width: 100%;
  position: fixed;
  top: 0px;
  width: 100%;
  z-index: 999;
}

form:has(.modal-open) .en__component--contactblock.modal-show > * {
  background-color: white;
  margin: 0 auto;
  max-width: min(100%, 768px);
  padding: 1.5rem;
  width: 100%;
}

form:has(.modal-open) .en__component--contactblock.modal-show > *:first-child {
  padding-top: 3rem;
}

form:has(.modal-open) .en__component--contactblock.modal-show > *:last-child {
  padding-bottom: 3rem;
}

@media (min-width: 770px) {
  form:has(.modal-open) .en__component--contactblock.modal-show > * {
    padding: 1.5rem 3rem;
  }
}

.en__component--contactblock h2 {
  line-height: calc(0.9em + 0.75rem);
  letter-spacing: 0.02em;
  margin-bottom: 1rem;
  font-family: 'Noto Serif';
  font-size: 1.5625rem;
  font-style: italic;
  font-weight: 400;
  color: var(--color-neutral-800);
  text-transform: none;
  margin-left: 10px;
}

.modal-open {
  cursor: pointer;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  padding: 0.95em 1.2em 0.92em;
  color: var(--color-theme-accent-dark);
  font-weight: 400;
  font-size: 1rem;
  -webkit-font-smoothing: subpixel-antialiased;
  line-height: 1;
  width: 100%;
  margin: auto;
}

@media (min-width: 1000px) {
  .modal-open {
    width: 70%;
  }
}

.modal-open:hover {
  transform: scale(1.1); /* Slightly increases size */
  background-color: #f6f6f6; /* Lightens background color */
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.2);
}

.modal-open button {
  background-color: transparent;
  border: none;
  color: var(--color-primary-700);
  cursor: pointer;
  font-size: 1rem;
  text-decoration: none;
  text-transform: uppercase;
}

.modal-svg {
  fill: var(--color-primary-700);
  margin-right: 2px;
}

@media (max-width: 760px) {
  .CompModal {
    min-width: 100% !important;
  }
}

#companiesText {
  text-decoration: underline;
}

#companiesText:hover {
  cursor: pointer;
  color: var(--color-primary-700);
}

.CompModal p {
  margin: 0px !important;
  line-height: 1.5 !important;
}

.en__contactSubject__field,
.en__contactMessage__plainText {
  background: #f9f9f9;
  border-style: solid;
  border-color: #ededed;
  box-shadow: none;
}

/* Widgets e.g. progress bar for petitions */

.enWidget {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.enWidget__fill {
  background-color: var(--color-primary-700) !important;
}

.enWidget__fill__count {
  font-family: 'Open Sans', sans-serif !important;
  font-size: 1.6rem !important;
}

.enWidget__progress {
  border: 1px solid lightgrey !important;
}

/**************

  Helper classes

  **************/

/* Show/hide on different screen sizes */

@media only screen and (max-width: 39.999em) {
  .hl__hide-on-mobile {
    display: none !important;
  }
}

@media only screen and (max-width: 63.999em) {
  .hl__hide-on-mobile-tablet {
    display: none !important;
  }
}

@media only screen and (min-width: 40em) {
  .hl__hide-on-tablet-desktop {
    display: none !important;
  }
}

@media only screen and (min-width: 64em) {
  .hl__hide-on-desktop {
    display: none !important;
  }
}

@media only screen and (min-width: 76em) {
  .hl__hide-on-large-desktop {
    display: none !important;
  }
}

/* Spacing */

.hl__margin--bottom--none {
  margin-bottom: 0 !important;
}

.hl__margin--bottom--small {
  margin-bottom: calc(var(--hl-spacer) / 2) !important;
}

.hl__margin--bottom--medium {
  margin-bottom: var(--hl-spacer) !important;
}

.hl__margin--bottom--large {
  margin-bottom: calc(var(--hl-spacer) * 2) !important;
}

.hl__margin--bottom--extra-large {
  margin-bottom: calc(var(--hl-spacer) * 3) !important;
}

.hl__margin--left--none {
  margin-left: 0 !important;
}

.hl__margin--left--small {
  margin-left: calc(var(--hl-spacer) / 2) !important;
}

.hl__margin--left--medium {
  margin-left: var(--hl-spacer) !important;
}

.hl__margin--left--large {
  margin-left: calc(var(--hl-spacer) * 2) !important;
}

.hl__margin--left--extra-large {
  margin-left: calc(var(--hl-spacer) * 3) !important;
}

.hl__margin--right--none {
  margin-right: 0 !important;
}

.hl__margin--right--small {
  margin-right: calc(var(--hl-spacer) / 2) !important;
}

.hl__margin--right--medium {
  margin-right: var(--hl-spacer) !important;
}

.hl__margin--right--large {
  margin-right: calc(var(--hl-spacer) * 2) !important;
}

.hl__margin--right--extra-large {
  margin-right: calc(var(--hl-spacer) * 3) !important;
}

.hl__margin--top--none {
  margin-top: 0 !important;
}

.hl__margin--top--small {
  margin-top: calc(var(--hl-spacer) / 2) !important;
}

.hl__margin--top--medium {
  margin-top: var(--hl-spacer) !important;
}

.hl__margin--top--large {
  margin-top: calc(var(--hl-spacer) * 2) !important;
}

.hl__margin--top--extra-large {
  margin-top: calc(var(--hl-spacer) * 3) !important;
}

.hl__padding--bottom--none {
  padding-bottom: 0 !important;
}

.hl__padding--bottom--small {
  padding-bottom: calc(var(--hl-spacer) / 2) !important;
}

.hl__padding--bottom--medium {
  padding-bottom: var(--hl-spacer) !important;
}

.hl__padding--bottom--large {
  padding-bottom: calc(var(--hl-spacer) * 2) !important;
}

.hl__padding--bottom--extra-large {
  padding-bottom: calc(var(--hl-spacer) * 3) !important;
}

.hl__padding--left--none {
  padding-left: 0 !important;
}

.hl__padding--left--small {
  padding-left: calc(var(--hl-spacer) / 2) !important;
}

.hl__padding--left--medium {
  padding-left: var(--hl-spacer) !important;
}

.hl__padding--left--large {
  padding-left: calc(var(--hl-spacer) * 2) !important;
}

.hl__padding--left--extra-large {
  padding-left: calc(var(--hl-spacer) * 3) !important;
}

.hl__padding--right--none {
  padding-right: 0 !important;
}

.hl__padding--right--small {
  padding-right: calc(var(--hl-spacer) / 2) !important;
}

.hl__padding--right--medium {
  padding-right: var(--hl-spacer) !important;
}

.hl__padding--right--large {
  padding-right: calc(var(--hl-spacer) * 2) !important;
}

.hl__padding--right--extra-large {
  padding-right: calc(var(--hl-spacer) * 3) !important;
}

.hl__padding--top--none {
  padding-top: 0 !important;
}

.hl__padding--top--small {
  padding-top: calc(var(--hl-spacer) / 2) !important;
}

.hl__padding--top--medium {
  padding-top: var(--hl-spacer) !important;
}

.hl__padding--top--large {
  padding-top: calc(var(--hl-spacer) * 2) !important;
}

.hl__padding--top--extra-large {
  padding-top: calc(var(--hl-spacer) * 3) !important;
}

/* Colours */

.hl__background--red {
  background-color: var(--color-primary-500) !important;
}

.hl__background--dark-red {
  background-color: var(--color-primary-700) !important;
}

.hl__background--white {
  background-color: white !important;
}

.hl__background--yellow {
  background-color: var(--color-secondary-500) !important;
}

.hl__text--red {
  color: var(--color-primary-500) !important;
}

.hl__text--dark-red {
  color: var(--color-primary-700) !important;
}

.hl__text--white {
  color: white !important;
}

.hl__text--yellow {
  color: var(--color-secondary-500) !important;
}

button.hl__button--red,
.hl__button--red button,
a.hl__button--red,
a.hl__button--red:link,
a.hl__button--red:visited,
.button-container.hl__button--red a,
.button-container.hl__button--red a:link,
.button-container.hl__button--red a:visited {
  background-color: var(--color-primary-500) !important;
  color: white !important;
}

button.hl__button--red::after,
.hl__button--red button::after,
a.hl__button--red::after,
.button-container.hl__button--red a::after {
  border-bottom-color: var(--color-primary-700) !important;
}

button.hl__button--red:hover,
button.hl__button--red:active,
button.hl__button--red:focus,
.hl__button--red button:hover,
.hl__button--red button:active,
.hl__button--red button:focus,
a.hl__button--red:hover,
a.hl__button--red:active,
a.hl__button--red:focus,
.button-container.hl__button--red a:hover,
.button-container.hl__button--red a:active,
.button-container.hl__button--red a:focus {
  background-color: var(--color-primary-700) !important;
}

button.hl__button--yellow,
.hl__button--yellow button,
a.hl__button--yellow,
a.hl__button--yellow:link,
a.hl__button--yellow:visited,
.button-container.hl__button--yellow a,
.button-container.hl__button--yellow a:link,
.button-container.hl__button--yellow a:visited {
  background-color: var(--color-secondary-500) !important;
  color: var(--color-neutral-800) !important;
}

button.hl__button--yellow::after,
.hl__button--yellow button::after,
a.hl__button--yellow::after,
.button-container.hl__button--yellow a::after {
  border-bottom-color: var(--color-secondary-700) !important;
}

button.hl__button--yellow:hover,
button.hl__button--yellow:active,
button.hl__button--yellow:focus,
.hl__button--yellow button:hover,
.hl__button--yellow button:active,
.hl__button--yellow button:focus,
a.hl__button--yellow:hover,
a.hl__button--yellow:active,
a.hl__button--yellow:focus,
.button-container.hl__button--yellow a:hover,
.button-container.hl__button--yellow a:active,
.button-container.hl__button--yellow a:focus {
  background-color: var(--color-secondary-700) !important;
}

/* Screenreaders */

.hl__screenreader-only {
  clip: rect(1px, 1px, 1px, 1px) !important;
  height: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  width: 1px !important;
}
