/**
 * @file
 * Variables
 */
/* 30em @ 16px font size */
/* 60em @ 16px font size */
/* 60em @ 16px font size */
/* 80em @ 16px font size */
:root {
  --header-stack-width: 850px;
  --site_max_width: 1200px;
  --text-max-width: 40rem;
  --header-height: 60px;
  --nav-height: 40px;
  --footer-height: 100px;
  --sidebar-width: 25%;
  /* used in width functions */
  --w-narrow: 480px;
  --w-regular: 960px;
  --w-average: 960px;
  --w-wide: 1200px;
  --gutter-narrow: 3vw;
  --gutter-regular: 5vw;
  --gutter-wide: 7vw;
  --site_padding-narrow: 5%;
  --pointer_target-padding: 0.6em 0.8em;
  --pointer_target-line-height: 1.3em; /* Assuming font-size: 1rem; */
  --data-field-padding: 0.5em 0.7em; /* used by table cells and text fields */
  --corner_radius-large: 8px;
  --corner_radius-regular: 5px;
  --corner_radius-small: 3px;
  --transition-duration-regular: 0.4s;
}

:root {
  --font-size: 1em;
  --line-height: 1.4;
  --font-size-h1: calc(1.5em + 1vw);
  --font-size-h1-max: 2em;
  --font-size-h2: calc(1.2em + 0.7vw);
  --font-size-h3: calc(1em + 0.5vw);
  --font-size-h4: calc(0.9em + 0.35vw);
  --font-size-h5: 0.83em;
  --font-size-h6: 0.67em;
  --line-height-h1: 1;
  --line-height-h2: 1.15;
  --line-height-h3: 1.3;
  --line-height-h4: 1.38;
  --line-height-h5: 1.45;
  --line-height-h6: 1.5;
}

:root {
  --font-sans: "Open Sans", sans-serif;
  --font-body: var(--font-sans);
  --font-headings: var(--font-body);
  --menu-case: initial;
  --font-weight-body: 400;
  --font-weight-links: 600;
}

:root {
  --colour-near_white: #f5f5f5;
  --colour-dark_grey: #444;
  --colour-medium_grey: #999;
  --colour-dividers: rgba(0, 0, 0, 0.2);
  --colour-selection: #40b6ff;
  --colour-danger: #c72100;
  --colour-error: #e62600;
  --colour-warning: #e09600;
  --colour-success: #77b259;
  --colour-unpublished: #CF5541;
  --colour-primary: #904091;
  /* Social media */
}

:root {
  --colour-secondary: var(--colour-medium_grey);
  --colour-primary-dark: var(--colour-primary);
  --colour-primary-light: var(--colour-primary);
  --colour-primary-lightest: var(--colour-primary);
  --colour-primary-pale: var(--colour-primary);
  --colour-bg-body: white;
  --colour-text-body: var(--colour-dark_grey);
  --colour-links: #2E6088;
  --colour-subtle: var(--colour-text-body);
  --colour-banner: var(--colour-primary-dark);
  --colour-bg-footer: var(--colour-dark_grey);
  --colour-text-footer: var(--colour-medium_grey);
}

/** ----------------------------------------------------------------------------
 * Originally from the Zen theme.
 */
/* element-invisible as defined by http://snook.ca/archives/html_and_css/hiding-content-for-accessibility */
.element-invisible,
.element-focusable {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}

/* Turns off the element-invisible effect. */
.element-focusable:active, .element-focusable:focus {
  position: static !important;
  clip: auto;
  height: auto;
  width: auto;
  overflow: auto;
}

.background-dark {
  color: white;
}
.background-dark a {
  color: inherit;
}
.background-dark a:hover, .background-dark a:focus {
  color: inherit;
}

/**
 * @file
 * Variables
 */
/* 30em @ 16px font size */
/* 60em @ 16px font size */
/* 60em @ 16px font size */
/* 80em @ 16px font size */
:root {
  --header-stack-width: 850px;
  --site_max_width: 1200px;
  --text-max-width: 40rem;
  --header-height: 60px;
  --nav-height: 40px;
  --footer-height: 100px;
  --sidebar-width: 25%;
  /* used in width functions */
  --w-narrow: 480px;
  --w-regular: 960px;
  --w-average: 960px;
  --w-wide: 1200px;
  --gutter-narrow: 3vw;
  --gutter-regular: 5vw;
  --gutter-wide: 7vw;
  --site_padding-narrow: 5%;
  --pointer_target-padding: 0.6em 0.8em;
  --pointer_target-line-height: 1.3em; /* Assuming font-size: 1rem; */
  --data-field-padding: 0.5em 0.7em; /* used by table cells and text fields */
  --corner_radius-large: 8px;
  --corner_radius-regular: 5px;
  --corner_radius-small: 3px;
  --transition-duration-regular: 0.4s;
}

:root {
  --font-size: 1em;
  --line-height: 1.4;
  --font-size-h1: calc(1.5em + 1vw);
  --font-size-h1-max: 2em;
  --font-size-h2: calc(1.2em + 0.7vw);
  --font-size-h3: calc(1em + 0.5vw);
  --font-size-h4: calc(0.9em + 0.35vw);
  --font-size-h5: 0.83em;
  --font-size-h6: 0.67em;
  --line-height-h1: 1;
  --line-height-h2: 1.15;
  --line-height-h3: 1.3;
  --line-height-h4: 1.38;
  --line-height-h5: 1.45;
  --line-height-h6: 1.5;
}

:root {
  --font-sans: "Open Sans", sans-serif;
  --font-body: var(--font-sans);
  --font-headings: var(--font-body);
  --menu-case: initial;
  --font-weight-body: 400;
  --font-weight-links: 600;
}

:root {
  --colour-near_white: #f5f5f5;
  --colour-dark_grey: #444;
  --colour-medium_grey: #999;
  --colour-dividers: rgba(0, 0, 0, 0.2);
  --colour-selection: #40b6ff;
  --colour-danger: #c72100;
  --colour-error: #e62600;
  --colour-warning: #e09600;
  --colour-success: #77b259;
  --colour-unpublished: #CF5541;
  --colour-primary: #904091;
  /* Social media */
}

:root {
  --colour-secondary: var(--colour-medium_grey);
  --colour-primary-dark: var(--colour-primary);
  --colour-primary-light: var(--colour-primary);
  --colour-primary-lightest: var(--colour-primary);
  --colour-primary-pale: var(--colour-primary);
  --colour-bg-body: white;
  --colour-text-body: var(--colour-dark_grey);
  --colour-links: #2E6088;
  --colour-subtle: var(--colour-text-body);
  --colour-banner: var(--colour-primary-dark);
  --colour-bg-footer: var(--colour-dark_grey);
  --colour-text-footer: var(--colour-medium_grey);
}

.cta {
  --breakpoint: 800px;
  --padding: 1.6em;
  max-width: initial;
  width: initial;
  background: var(--colour-primary);
  color: white;
  margin-top: calc(20px + 4.2vw) !important;
  margin-bottom: 60px;
  padding: var(--padding);
}
.cta a {
  color: inherit;
}
.cta a:hover, .cta a:focus {
  color: inherit;
}
.cta a,
.cta h1, .cta h2, .cta h3, .cta h4 {
  color: inherit;
}
.cta > [role=presentation] {
  margin-left: auto;
  margin-right: auto;
  width: 88%;
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 1.5em;
  flex-wrap: wrap;
}
@media (min-width: 800px) {
  .cta > [role=presentation] {
    flex-wrap: nowrap;
  }
}
.cta h2 {
  margin-top: 0;
}
.cta .text p {
  margin-bottom: 0;
}
.cta .text a {
  text-decoration: underline;
}
.cta .text .field--name-field-title,
.cta .text .title {
  font-weight: bold;
}
.cta .image {
  margin-bottom: calc(0em - var(--padding));
  display: flex;
  align-items: end;
  margin-top: -170px;
  z-index: 20;
  overflow: hidden;
  aspect-ratio: 1/1.2;
  padding-left: 20px;
  padding-right: 20px;
  width: 126px;
  /*background: #0080002b; */
}
@media (min-width: 800px) {
  .cta .image {
    padding-left: 34px;
    padding-right: 34px;
    width: 220px;
  }
}
.cta .image img {
  object-position: top;
  object-fit: cover;
  transform: rotate(14deg);
  margin-bottom: -70px;
  box-shadow: 0 0 10px hsla(0, 0%, 0%, 0.25);
  aspect-ratio: 1/1.2;
}
.cta .actions {
  flex-shrink: 0;
}
.cta .actions a {
  margin: 0;
}
.cta .field--name-field-link a {
  appearance: none;
  display: inline-block;
  font-size: 0.9em;
  line-height: 1.1;
  padding: var(--pointer_target-padding);
  text-decoration: none;
  font-weight: 600;
  transition: all 0.12s ease;
  border-radius: var(--corner_radius-regular);
  border: none;
  background-color: var(--colour-links);
  color: white;
  margin-top: 0.6em;
  margin-right: 0.6em;
  vertical-align: middle;
  font-family: inherit;
  background: white;
  color: var(--colour-text-body);
  font-weight: normal;
  font-size: 1em;
  padding: 0.8em 1.4em;
}

/*# sourceMappingURL=cta.css.map */
