@charset "UTF-8";
/*
Theme Name: Fuel Poverty Scotland 2023
Theme URI: 
Description: A simple responsive theme.
Version: 1.0.0
Author: Scott Sibson
Author URI: https://edinburgh.thegateworldwide.com
Tags: black, white, one-column, two-columns, flexible-width, custom-background, custom-colors, custom-menu, full-width-template, theme-options
License: GNU General Public License v2.0 & Apache License 2.0
License URI: http://www.gnu.org/licenses/gpl-2.0.html http://www.apache.org/licenses/LICENSE-2.0
*/
/* Design System Imports */
/*------------------------------------*\
    FOCUS
    Default focus indicator
\*------------------------------------*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */
@import url("https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@300;400;500;600;700;800&display=swap");
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr {
  text-decoration: none;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*------------------------------------*\
    RESET (INUITCSS)
\*------------------------------------*/
/**
 * As well as using normalize.css, it is often advantageous to remove all
 * margins from certain elements.
 */
body,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
dl, dd, ol, ul,
form, fieldset, legend,
figure,
table, th, td, caption,
hr {
  margin: 0;
  padding: 0;
}

/**
 * Give a help cursor to elements that give extra info on `:hover`.
 */
abbr[title],
dfn[title] {
  cursor: help;
}

/**
 * Remove underlines from potentially troublesome elements.
 */
u,
ins {
  text-decoration: none;
}

/**
 * Apply faux underlines to inserted text via `border-bottom`.
 */
ins {
  border-bottom: 1px solid;
}

/*------------------------------------*\
    BASIC MARGINS
\*------------------------------------*/
h1, h2, h3, h4, h5, h6,
ul, ol, dl,
blockquote, p, address,
table,
fieldset, figure,
pre {
  margin: 0 0 16px;
}

/*------------------------------------*\
    ABBREVIATIONS
    Improved display of abbreviation styling with better readability than browser default
\*------------------------------------*/
abbr[title], acronym[title] {
  text-decoration: underline dotted;
  text-decoration-thickness: 1px;
  text-underline-offset: 1px;
}

/*------------------------------------*\
    ADDRESS
\*------------------------------------*/
address {
  font-style: normal;
}

/*------------------------------------*\
    BODY
\*------------------------------------*/
body {
  background: #ffffff;
  color: #333333;
  font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
  margin: 0;
  text-rendering: optimizeLegibility;
}

@media (min-width: 768px) {
  body {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}
/*------------------------------------*\
    BOX-SIZING (INUITCSS)
\*------------------------------------*/
/**
 * Set the global `box-sizing` state to `border-box`.
 *
 * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice
 * paulirish.com/2012/box-sizing-border-box-ftw
 */
html {
  box-sizing: border-box;
}

*, *::before, *::after {
  box-sizing: inherit;
}

/*------------------------------------*\
    HEADINGS
\*------------------------------------*/
h1, .ds_h1, .alpha {
  font-size: 1.875rem;
  line-height: 1.3333333333;
  font-weight: 700;
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  h1, .ds_h1, .alpha {
    font-size: 2.75rem;
    line-height: 1.2727272727;
  }
}

h2, .ds_h2, .beta {
  font-size: 1.375rem;
  line-height: 1.4545454545;
  font-weight: 700;
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  h2, .ds_h2, .beta {
    font-size: 1.875rem;
    line-height: 1.3333333333;
  }
}
@media (min-width: 768px) {
  h2, .ds_h2, .beta {
    margin-bottom: 16px;
  }
}
h2:not(:first-child), .ds_h2:not(:first-child), .beta:not(:first-child) {
  margin-top: 2rem;
}
@media (min-width: 768px) {
  h2:not(:first-child), .ds_h2:not(:first-child), .beta:not(:first-child) {
    margin-top: 2.5rem;
  }
}

h3, .ds_h3, .gamma {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  font-weight: 700;
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  h3, .ds_h3, .gamma {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}
h3:not(:first-child), .ds_h3:not(:first-child), .gamma:not(:first-child) {
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  h3:not(:first-child), .ds_h3:not(:first-child), .gamma:not(:first-child) {
    margin-top: 1.5rem;
  }
}

h4, .ds_h4, .delta {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  h4, .ds_h4, .delta {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}

h5, .ds_h5, .epsilon {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  font-weight: 700;
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  h5, .ds_h5, .epsilon {
    font-size: 1rem;
    line-height: 1.5;
  }
}

/*------------------------------------*\
    HORIZONTAL RULE
\*------------------------------------*/
hr {
  border: none;
  border-top: 1px solid #b3b3b3;
  margin-top: 1.5rem;
  margin-bottom: calc(1.5rem + -1px);
}
@media (min-width: 768px) {
  hr {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  hr {
    margin-bottom: calc(2rem + -1px);
  }
}

/*------------------------------------*\
    LEADER
\*------------------------------------*/
.ds_leader,
.ds_leader-first-paragraph > p:first-child {
  font-size: 1.1875rem;
  line-height: 1.6842105263;
  margin-bottom: 2rem;
  font-weight: 300;
  line-height: 32px;
}
@media (min-width: 768px) {
  .ds_leader,
  .ds_leader-first-paragraph > p:first-child {
    font-size: 1.5rem;
    line-height: 1.6666666667;
  }
}
@media (min-width: 768px) {
  .ds_leader,
  .ds_leader-first-paragraph > p:first-child {
    margin-bottom: 2.5rem;
  }
}
@media (min-width: 768px) {
  .ds_leader,
  .ds_leader-first-paragraph > p:first-child {
    line-height: 40px;
  }
}

/*------------------------------------*\
    LINKS
\*------------------------------------*/
a,
.ds_link {
  color: #0065bd;
  text-decoration: underline;
  outline: 0px solid transparent;
  text-underline-offset: 1px;
  transition: color 0.2s, background-color 0.2s, outline-color 0.2s;
}
a:hover,
.ds_link:hover {
  background-color: #d9effc;
  color: #00437e;
  outline: 2px solid #d9effc;
  transition-duration: 0.2s;
}
a:focus,
.ds_link:focus {
  outline: 2px solid #fdd522;
  outline-offset: 0;
  background-color: #fdd522;
  box-shadow: -2px 5px #333333, 2px 5px #333333;
  color: #333333;
  text-decoration: none;
  transition-duration: 0s;
}
a > svg,
.ds_link > svg {
  fill: currentColor;
}

.ds_link {
  background: transparent;
  border: 0;
  display: inline;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  margin: 0;
  min-height: 0;
  min-width: 0;
  padding: 0;
  text-align: left;
}

.ds_reversed a,
.ds_reversed .ds_link {
  color: currentColor;
}
.ds_reversed a:focus,
.ds_reversed .ds_link:focus {
  color: #333333;
}
.ds_reversed a:hover:not(:focus),
.ds_reversed .ds_link:hover:not(:focus) {
  background-color: transparent;
  color: currentColor;
  outline-color: transparent;
}

a[disabled] {
  pointer-events: none;
}

h1 a, h2 a, h3 a, h4 a {
  text-decoration: none;
}
h1 a:hover:not(:focus), h2 a:hover:not(:focus), h3 a:hover:not(:focus), h4 a:hover:not(:focus) {
  text-decoration: underline;
}

/*------------------------------------*\
    LISTS
\*------------------------------------*/
ul, ol, dd {
  margin-left: 24px;
}
ul > :last-child, ol > :last-child, dd > :last-child {
  margin-bottom: 0;
}

li {
  margin-bottom: 8px;
}

dt {
  font-weight: 700;
}

/*------------------------------------*\
    SCROLL BEHAVIOUR
\*------------------------------------*/
html,
body {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html,
  body {
    scroll-behavior: auto;
  }
}
/*------------------------------------*\
    SMALL
\*------------------------------------*/
small,
.ds_small {
  font-size: 0.875rem;
  line-height: 1.7142857143;
}
@media (min-width: 768px) {
  small,
  .ds_small {
    font-size: 1rem;
    line-height: 1.5;
  }
}

.ds_tiny {
  font-size: 0.75rem;
  line-height: 1.3333333333;
}
@media (min-width: 768px) {
  .ds_tiny {
    font-size: 0.875rem;
    line-height: 1.7142857143;
  }
}

/*------------------------------------*\
    LAYOUT
\*------------------------------------*/
.ds_layout {
  margin-right: -32px;
  overflow: hidden;
  margin-bottom: 96px;
}
.ds_layout > * {
  margin-right: 32px;
}
@supports (display: grid) {
  .ds_layout {
    display: grid;
    grid-gap: 0 32px;
    margin-right: 0;
    overflow: visible;
  }
  .ds_layout > * {
    margin-left: 0;
    margin-right: 0;
    width: auto !important;
  }
}
.ds_layout__content img, .ds_layout__partner img {
  height: auto;
  max-width: 100%;
}

@media (min-width: 768px) {
  .ds_layout__feedback {
    clear: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--article .ds_layout__header {
    clear: left;
    float: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--article .ds_layout__partner {
    float: left;
    width: calc(100% * 0.3333333333 - 32px);
  }
  .ds_layout--article .ds_layout__sidebar {
    float: left;
    width: calc(100% * 0.3333333333 - 32px);
  }
  .ds_layout--article .ds_layout__content {
    clear: left;
    float: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--guide .ds_layout__header {
    clear: left;
    float: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--guide .ds_layout__partner {
    float: left;
    width: calc(100% * 0.3333333333 - 32px);
  }
  .ds_layout--guide .ds_layout__navigation {
    clear: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--guide .ds_layout__content {
    clear: left;
    float: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--guide .ds_layout__sidebar {
    float: left;
    width: calc(100% * 0.25 - 32px);
    margin-left: calc(100% * 0.0833333333);
  }
  .ds_layout--guide .ds_layout__feedback {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--category-list .ds_layout__list {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--category-list .ds_layout__grid {
    width: calc(100% * 1 - 32px);
  }
  .ds_layout--search-results .ds_layout__header {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--search-results .ds_layout__content {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--search-results-with-sidebar .ds_layout__header {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--search-results-with-sidebar .ds_layout__sidebar {
    float: left;
    width: calc(100% * 0.3333333333 - 32px);
  }
  .ds_layout--search-results-with-sidebar .ds_layout__content {
    float: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
}
@media (min-width: 992px) {
  .ds_layout--article .ds_layout__content {
    clear: left;
    float: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--article .ds_layout__sidebar {
    float: left;
    margin-left: calc(100% * 0.0833333333);
    width: calc(100% * 0.25 - 32px);
  }
  .ds_layout--guide .ds_layout__content {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--guide .ds_layout__sidebar {
    float: left;
    margin-left: calc(100% * 0.0833333333);
    width: calc(100% * 0.25 - 32px);
  }
  .ds_layout--guide .ds_layout__feedback {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--search-results .ds_layout__header {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--search-results .ds_layout__content {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--search-results-with-sidebar .ds_layout__header {
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_layout--search-results-with-sidebar .ds_layout__sidebar {
    float: left;
    width: calc(100% * 0.3333333333 - 32px);
  }
  .ds_layout--search-results-with-sidebar .ds_layout__content {
    float: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
}
@supports (display: grid) {
  /**
   * GRID KEY
   * c: content
   * f: feedback
   * h: header
   * l: list (e.g. category items, search results)
   * g: grid
   * n: navigation (e.g. subpages of a publication or guide)
   * p: partner branding
   * s: sidebar
   */
  body .ds_layout > *[class] {
    margin-left: 0;
    margin-right: 0;
    width: auto;
  }
  .ds_layout {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto 1fr;
    grid-template-areas: "h h" "p p" "c c" "s s" "f f";
    margin-right: 0;
    margin-bottom: 0;
  }
  .ds_layout__content {
    grid-area: c;
  }
  .ds_layout__feedback {
    grid-area: f;
  }
  .ds_layout__header {
    grid-area: h;
  }
  .ds_layout__list {
    grid-area: l;
  }
  .ds_layout__grid {
    grid-area: g;
  }
  .ds_layout__navigation {
    grid-area: n;
  }
  .ds_layout__partner {
    grid-area: p;
    align-self: start;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
  @media (min-width: 768px) {
    .ds_layout__partner {
      margin-top: 2rem;
    }
  }
  @media (min-width: 768px) {
    .ds_layout__partner {
      margin-bottom: 2rem;
    }
  }
  .ds_layout__sidebar {
    grid-area: s;
  }
  .ds_layout--category-list {
    grid-template-areas: "h h" "c c" "l l" "g g" "f f";
  }
  .ds_layout--guide {
    grid-template-areas: "h h" "p p" "n n" "c c" "s s" "f f";
  }
  .ds_layout--search-results {
    grid-template-areas: "h h" "n n" "c c";
  }
  .ds_layout--search-results-with-sidebar {
    grid-template-areas: "h h" "n n" "s s" "c c";
  }
  @media (min-width: 480px) {
    .ds_layout {
      grid-template-columns: repeat(6, 1fr);
      grid-template-areas: "h h h h h h" "p p p p p p" "c c c c c c" "s s s s s s" "f f f f f f";
    }
    .ds_layout--category-list {
      grid-template-areas: "h h h h h h" "c c c c c c" "l l l l l l" "g g g g g g" "f f f f f f";
    }
    .ds_layout--guide {
      grid-template-areas: "h h h h h h" "p p p p p p" "n n n n n n" "c c c c c c" "s s s s s s" "f f f f f f";
    }
    .ds_layout--search-results {
      grid-template-areas: "h h h h h h" "n n n n n n" "c c c c c c";
    }
    .ds_layout--search-results-with-sidebar {
      grid-template-areas: "h h h h h h" "n n n n n n" "s s s s s s" "c c c c c c";
    }
  }
  @media (min-width: 768px) {
    .ds_layout {
      grid-template-columns: repeat(12, 1fr);
    }
    .ds_layout--article {
      grid-template-areas: "h h h h h h h h p p p p" "c c c c c c c c s s s s" "f f f f f f f f . . . .";
    }
    .ds_layout--guide {
      grid-template-areas: "h h h h h h h h p p p p" "n n n n n n n n . . . ." "c c c c c c c c s s s s" "f f f f f f f f . . . .";
    }
    .ds_layout--category-list {
      grid-template-areas: "h h h h h h h h h h h h" "c c c c c c c c c c c c" "l l l l l l l l . . . ." "g g g g g g g g g g g g" "f f f f f f f f . . . .";
    }
    .ds_layout--search-results {
      grid-template-areas: "h h h h h h h h . . . ." "n n n n n n n n n n n n" "c c c c c c c c . . . .";
    }
    .ds_layout--search-results-with-sidebar {
      grid-template-areas: "h h h h h h h h . . . ." "n n n n n n n n n n n n" "s s s s c c c c c c c c";
    }
  }
  @media (min-width: 992px) {
    .ds_layout--article {
      grid-template-areas: "h h h h h h h h . p p p" "c c c c c c c c . s s s" "f f f f f f f f . . . .";
    }
    .ds_layout--guide {
      grid-template-areas: "h h h h h h h h . p p p" "n n n n n n n n . . . ." "c c c c c c c c . s s s" "f f f f f f f f . . . .";
    }
  }
}
/*------------------------------------*\
    PAGE SETUP
    anchor footer to bottom of the viewport on short pages
\*------------------------------------*/
html {
  min-height: 100%;
  position: relative;
}

.ds_page {
  min-height: calc(100vh - 360px);
  margin-bottom: 360px;
}

.ds_site-footer {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

@supports (display: grid) {
  .ds_page {
    display: grid;
    margin-bottom: 0;
    min-height: 100vh;
    grid-template: "page-top" auto "page-middle" 1fr "page-bottom" auto;
  }
  .ds_page__top {
    grid-area: page-top;
  }
  .ds_page__middle {
    grid-area: page-middle;
  }
  .ds_page__bottom {
    grid-area: page-bottom;
  }
  .ds_site-footer {
    position: static;
  }
}
.ds_page__middle {
  display: grid;
  grid-template-rows: auto 1fr;
  padding-bottom: 4rem;
  position: relative;
}

/*------------------------------------*\
    PRE FOOTER BACKGROUND
    for when a block immediately preceding the footer has a non-white background
\*------------------------------------*/
.ds_page__middle:has(.ds_pre-footer-background) {
  padding-bottom: 0;
}

.ds_page__middle.js-pre-footer-background {
  padding-bottom: 0;
}

.ds_pre-footer-background {
  padding-bottom: 4rem;
}

/*------------------------------------*\
    CATEGORY PAGE LAYOUT
\*------------------------------------*/
.category-lower,
.ds_category-lower {
  background: #f8f8f8;
  border-top: 1px solid #ebebeb;
  margin-top: -1px;
}

/*------------------------------------*\
    STACK
    Your classic lobotomised owl https://alistapart.com/article/axiomatic-css-and-lobotomized-owls/
\*------------------------------------*/
.ds_stack > * {
  margin-bottom: 0;
}
.ds_stack > * + * {
  margin-bottom: 0;
  margin-top: 16px;
}

/*------------------------------------*\
    WRAPPERS
\*------------------------------------*/
.ds_wrapper {
  margin: 0 auto;
  padding: 0 16px;
  width: 100%;
}
.ds_wrapper--no-overflow {
  overflow: hidden;
}

@media (min-width: 768px) {
  .ds_wrapper {
    width: 768px;
  }
}
@media (min-width: 992px) {
  .ds_wrapper {
    width: 960px;
  }
}
@media (min-width: 1200px) {
  .ds_wrapper {
    width: 1152px;
  }
}
/*------------------------------------*\
    BREAKPOINT CHECK
\*------------------------------------*/
.ds_breakpoint-check {
  display: none;
}
@media (min-width: 480px) {
  .ds_breakpoint-check.ds_breakpoint-check--small {
    display: block;
  }
}
@media (min-width: 768px) {
  .ds_breakpoint-check.ds_breakpoint-check--medium {
    display: block;
  }
}
@media (min-width: 992px) {
  .ds_breakpoint-check.ds_breakpoint-check--large {
    display: block;
  }
}
@media (min-width: 1200px) {
  .ds_breakpoint-check.ds_breakpoint-check--xlarge {
    display: block;
  }
}

/*------------------------------------*\
    VISIBILITY
\*------------------------------------*/
.visually-hidden {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
}

.fully-hidden {
  display: none !important;
}

/*------------------------------------*\
    LISTS
\*------------------------------------*/
.ds_no-bullets {
  list-style-type: none;
  margin-left: 0;
}

/*------------------------------------*\
    MARGIN MODIFIERS
    Deprecated, prefer use of margin override classes e.g. ds_!_margin--0, ds_!_margin-bottom--0
\*------------------------------------*/
.ds_block-margins {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ds_block-margins {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_block-margins {
    margin-bottom: 2rem;
  }
}

.ds_no-margin {
  margin: 0 !important;
}

.ds_no-margin--top {
  margin-top: 0 !important;
}

.ds_no-margin--right {
  margin-right: 0 !important;
}

.ds_no-margin--bottom {
  margin-bottom: 0 !important;
}

.ds_no-margin--left {
  margin-left: 0 !important;
}

.ds_no-margin--vertical {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.ds_no-margin--horizontal {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/*------------------------------------*\
    PADDING MODIFIERS
    Deprecated, prefer use of padding override classes e.g. ds_!_padding--0, ds_!_padding-bottom--0
\*------------------------------------*/
.ds_no-padding {
  padding: 0 !important;
}

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

.ds_no-padding--right {
  padding-right: 0 !important;
}

.ds_no-padding--bottom {
  padding-bottom: 0 !important;
}

.ds_no-padding--left {
  padding-left: 0 !important;
}

.ds_no-padding--vertical {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

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

.ds_\!_margin--0 {
  margin: 0 !important;
}

.ds_\!_margin-left--0 {
  margin-left: 0 !important;
}

.ds_\!_margin-right--0 {
  margin-right: 0 !important;
}

.ds_\!_margin-top--0 {
  margin-top: 0 !important;
}

.ds_\!_margin-bottom--0 {
  margin-bottom: 0 !important;
}

.ds_\!_margin--1 {
  margin: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin--1 {
    margin: 0.5rem !important;
  }
}

.ds_\!_margin-left--1 {
  margin-left: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-left--1 {
    margin-left: 0.5rem !important;
  }
}

.ds_\!_margin-right--1 {
  margin-right: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-right--1 {
    margin-right: 0.5rem !important;
  }
}

.ds_\!_margin-top--1 {
  margin-top: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-top--1 {
    margin-top: 0.5rem !important;
  }
}

.ds_\!_margin-bottom--1 {
  margin-bottom: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-bottom--1 {
    margin-bottom: 0.5rem !important;
  }
}

.ds_\!_margin--2 {
  margin: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin--2 {
    margin: 1rem !important;
  }
}

.ds_\!_margin-left--2 {
  margin-left: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-left--2 {
    margin-left: 1rem !important;
  }
}

.ds_\!_margin-right--2 {
  margin-right: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-right--2 {
    margin-right: 1rem !important;
  }
}

.ds_\!_margin-top--2 {
  margin-top: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-top--2 {
    margin-top: 1rem !important;
  }
}

.ds_\!_margin-bottom--2 {
  margin-bottom: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-bottom--2 {
    margin-bottom: 1rem !important;
  }
}

.ds_\!_margin--3 {
  margin: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin--3 {
    margin: 1.5rem !important;
  }
}

.ds_\!_margin-left--3 {
  margin-left: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-left--3 {
    margin-left: 1.5rem !important;
  }
}

.ds_\!_margin-right--3 {
  margin-right: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-right--3 {
    margin-right: 1.5rem !important;
  }
}

.ds_\!_margin-top--3 {
  margin-top: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-top--3 {
    margin-top: 1.5rem !important;
  }
}

.ds_\!_margin-bottom--3 {
  margin-bottom: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-bottom--3 {
    margin-bottom: 1.5rem !important;
  }
}

.ds_\!_margin--4 {
  margin: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin--4 {
    margin: 2rem !important;
  }
}

.ds_\!_margin-left--4 {
  margin-left: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-left--4 {
    margin-left: 2rem !important;
  }
}

.ds_\!_margin-right--4 {
  margin-right: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-right--4 {
    margin-right: 2rem !important;
  }
}

.ds_\!_margin-top--4 {
  margin-top: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-top--4 {
    margin-top: 2rem !important;
  }
}

.ds_\!_margin-bottom--4 {
  margin-bottom: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-bottom--4 {
    margin-bottom: 2rem !important;
  }
}

.ds_\!_margin--5 {
  margin: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin--5 {
    margin: 2.5rem !important;
  }
}

.ds_\!_margin-left--5 {
  margin-left: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-left--5 {
    margin-left: 2.5rem !important;
  }
}

.ds_\!_margin-right--5 {
  margin-right: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-right--5 {
    margin-right: 2.5rem !important;
  }
}

.ds_\!_margin-top--5 {
  margin-top: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-top--5 {
    margin-top: 2.5rem !important;
  }
}

.ds_\!_margin-bottom--5 {
  margin-bottom: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-bottom--5 {
    margin-bottom: 2.5rem !important;
  }
}

.ds_\!_margin--6 {
  margin: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin--6 {
    margin: 3rem !important;
  }
}

.ds_\!_margin-left--6 {
  margin-left: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-left--6 {
    margin-left: 3rem !important;
  }
}

.ds_\!_margin-right--6 {
  margin-right: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-right--6 {
    margin-right: 3rem !important;
  }
}

.ds_\!_margin-top--6 {
  margin-top: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-top--6 {
    margin-top: 3rem !important;
  }
}

.ds_\!_margin-bottom--6 {
  margin-bottom: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-bottom--6 {
    margin-bottom: 3rem !important;
  }
}

.ds_\!_margin--7 {
  margin: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin--7 {
    margin: 3.5rem !important;
  }
}

.ds_\!_margin-left--7 {
  margin-left: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-left--7 {
    margin-left: 3.5rem !important;
  }
}

.ds_\!_margin-right--7 {
  margin-right: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-right--7 {
    margin-right: 3.5rem !important;
  }
}

.ds_\!_margin-top--7 {
  margin-top: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-top--7 {
    margin-top: 3.5rem !important;
  }
}

.ds_\!_margin-bottom--7 {
  margin-bottom: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-bottom--7 {
    margin-bottom: 3.5rem !important;
  }
}

.ds_\!_margin--8 {
  margin: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin--8 {
    margin: 4rem !important;
  }
}

.ds_\!_margin-left--8 {
  margin-left: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-left--8 {
    margin-left: 4rem !important;
  }
}

.ds_\!_margin-right--8 {
  margin-right: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-right--8 {
    margin-right: 4rem !important;
  }
}

.ds_\!_margin-top--8 {
  margin-top: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-top--8 {
    margin-top: 4rem !important;
  }
}

.ds_\!_margin-bottom--8 {
  margin-bottom: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-bottom--8 {
    margin-bottom: 4rem !important;
  }
}

.ds_\!_margin--9 {
  margin: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin--9 {
    margin: 4.5rem !important;
  }
}

.ds_\!_margin-left--9 {
  margin-left: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-left--9 {
    margin-left: 4.5rem !important;
  }
}

.ds_\!_margin-right--9 {
  margin-right: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-right--9 {
    margin-right: 4.5rem !important;
  }
}

.ds_\!_margin-top--9 {
  margin-top: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-top--9 {
    margin-top: 4.5rem !important;
  }
}

.ds_\!_margin-bottom--9 {
  margin-bottom: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_margin-bottom--9 {
    margin-bottom: 4.5rem !important;
  }
}

.ds_\!_padding--0 {
  padding: 0 !important;
}

.ds_\!_padding-left--0 {
  padding-left: 0 !important;
}

.ds_\!_padding-right--0 {
  padding-right: 0 !important;
}

.ds_\!_padding-top--0 {
  padding-top: 0 !important;
}

.ds_\!_padding-bottom--0 {
  padding-bottom: 0 !important;
}

.ds_\!_padding--1 {
  padding: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding--1 {
    padding: 0.5rem !important;
  }
}

.ds_\!_padding-left--1 {
  padding-left: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-left--1 {
    padding-left: 0.5rem !important;
  }
}

.ds_\!_padding-right--1 {
  padding-right: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-right--1 {
    padding-right: 0.5rem !important;
  }
}

.ds_\!_padding-top--1 {
  padding-top: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-top--1 {
    padding-top: 0.5rem !important;
  }
}

.ds_\!_padding-bottom--1 {
  padding-bottom: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-bottom--1 {
    padding-bottom: 0.5rem !important;
  }
}

.ds_\!_padding--2 {
  padding: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding--2 {
    padding: 1rem !important;
  }
}

.ds_\!_padding-left--2 {
  padding-left: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-left--2 {
    padding-left: 1rem !important;
  }
}

.ds_\!_padding-right--2 {
  padding-right: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-right--2 {
    padding-right: 1rem !important;
  }
}

.ds_\!_padding-top--2 {
  padding-top: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-top--2 {
    padding-top: 1rem !important;
  }
}

.ds_\!_padding-bottom--2 {
  padding-bottom: 1rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-bottom--2 {
    padding-bottom: 1rem !important;
  }
}

.ds_\!_padding--3 {
  padding: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding--3 {
    padding: 1.5rem !important;
  }
}

.ds_\!_padding-left--3 {
  padding-left: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-left--3 {
    padding-left: 1.5rem !important;
  }
}

.ds_\!_padding-right--3 {
  padding-right: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-right--3 {
    padding-right: 1.5rem !important;
  }
}

.ds_\!_padding-top--3 {
  padding-top: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-top--3 {
    padding-top: 1.5rem !important;
  }
}

.ds_\!_padding-bottom--3 {
  padding-bottom: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-bottom--3 {
    padding-bottom: 1.5rem !important;
  }
}

.ds_\!_padding--4 {
  padding: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding--4 {
    padding: 2rem !important;
  }
}

.ds_\!_padding-left--4 {
  padding-left: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-left--4 {
    padding-left: 2rem !important;
  }
}

.ds_\!_padding-right--4 {
  padding-right: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-right--4 {
    padding-right: 2rem !important;
  }
}

.ds_\!_padding-top--4 {
  padding-top: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-top--4 {
    padding-top: 2rem !important;
  }
}

.ds_\!_padding-bottom--4 {
  padding-bottom: 1.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-bottom--4 {
    padding-bottom: 2rem !important;
  }
}

.ds_\!_padding--5 {
  padding: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding--5 {
    padding: 2.5rem !important;
  }
}

.ds_\!_padding-left--5 {
  padding-left: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-left--5 {
    padding-left: 2.5rem !important;
  }
}

.ds_\!_padding-right--5 {
  padding-right: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-right--5 {
    padding-right: 2.5rem !important;
  }
}

.ds_\!_padding-top--5 {
  padding-top: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-top--5 {
    padding-top: 2.5rem !important;
  }
}

.ds_\!_padding-bottom--5 {
  padding-bottom: 2rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-bottom--5 {
    padding-bottom: 2.5rem !important;
  }
}

.ds_\!_padding--6 {
  padding: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding--6 {
    padding: 3rem !important;
  }
}

.ds_\!_padding-left--6 {
  padding-left: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-left--6 {
    padding-left: 3rem !important;
  }
}

.ds_\!_padding-right--6 {
  padding-right: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-right--6 {
    padding-right: 3rem !important;
  }
}

.ds_\!_padding-top--6 {
  padding-top: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-top--6 {
    padding-top: 3rem !important;
  }
}

.ds_\!_padding-bottom--6 {
  padding-bottom: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-bottom--6 {
    padding-bottom: 3rem !important;
  }
}

.ds_\!_padding--7 {
  padding: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding--7 {
    padding: 3.5rem !important;
  }
}

.ds_\!_padding-left--7 {
  padding-left: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-left--7 {
    padding-left: 3.5rem !important;
  }
}

.ds_\!_padding-right--7 {
  padding-right: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-right--7 {
    padding-right: 3.5rem !important;
  }
}

.ds_\!_padding-top--7 {
  padding-top: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-top--7 {
    padding-top: 3.5rem !important;
  }
}

.ds_\!_padding-bottom--7 {
  padding-bottom: 2.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-bottom--7 {
    padding-bottom: 3.5rem !important;
  }
}

.ds_\!_padding--8 {
  padding: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding--8 {
    padding: 4rem !important;
  }
}

.ds_\!_padding-left--8 {
  padding-left: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-left--8 {
    padding-left: 4rem !important;
  }
}

.ds_\!_padding-right--8 {
  padding-right: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-right--8 {
    padding-right: 4rem !important;
  }
}

.ds_\!_padding-top--8 {
  padding-top: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-top--8 {
    padding-top: 4rem !important;
  }
}

.ds_\!_padding-bottom--8 {
  padding-bottom: 3rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-bottom--8 {
    padding-bottom: 4rem !important;
  }
}

.ds_\!_padding--9 {
  padding: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding--9 {
    padding: 4.5rem !important;
  }
}

.ds_\!_padding-left--9 {
  padding-left: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-left--9 {
    padding-left: 4.5rem !important;
  }
}

.ds_\!_padding-right--9 {
  padding-right: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-right--9 {
    padding-right: 4.5rem !important;
  }
}

.ds_\!_padding-top--9 {
  padding-top: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-top--9 {
    padding-top: 4.5rem !important;
  }
}

.ds_\!_padding-bottom--9 {
  padding-bottom: 3.5rem !important;
}
@media (min-width: 768px) {
  .ds_\!_padding-bottom--9 {
    padding-bottom: 4.5rem !important;
  }
}

/*------------------------------------*\
    DESIGN SYSTEM FORMS
\*------------------------------------*/
/*------------------------------------*\
    FORM VARIABLES
\*------------------------------------*/
/*------------------------------------*\
    FORM MIXINS
\*------------------------------------*/
/*------------------------------------*\
    FORM ELEMENTS (base)
\*------------------------------------*/
legend {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  font-weight: 700;
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  legend {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}

fieldset {
  border: 0;
}

/*------------------------------------*\
    CHARACTER COUNT
\*------------------------------------*/
.ds_character-count {
  margin-top: -16px;
}

/*------------------------------------*\
    CHECKBOXES
\*------------------------------------*/
.ds_checkbox {
  margin-bottom: 24px;
  padding-left: 40px;
  position: relative;
}
.ds_checkbox__input {
  height: 44px;
  left: -2px;
  opacity: 0;
  position: absolute;
  top: -2px;
  width: 44px;
}
.ds_checkbox__label {
  display: inline-block;
  padding: 4px 32px 4px 16px;
}
.ds_checkbox__label::before {
  background-color: #ffffff;
  border: 2px solid #333333;
  content: "";
  height: 40px;
  left: 0;
  position: absolute;
  width: 40px;
}
.ds_checkbox__label::after {
  content: "";
  position: absolute;
  bottom: calc(100% - 40px);
  left: 0;
  right: calc(100% - 40px);
  opacity: 0;
}
.ds_checkbox__label::before, .ds_checkbox__label::after {
  top: -4px;
}
@media (min-width: 768px) {
  .ds_checkbox__label::before, .ds_checkbox__label::after {
    top: 0;
  }
}
.ds_checkbox__input:focus + .ds_checkbox__label::before {
  border-width: 4px;
  box-shadow: 0 0 0 3px #fdd522;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_checkbox__input:focus + .ds_checkbox__label::before {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 4px !important;
    outline-offset: -4px;
  }
}
.ds_checkbox__input:checked + .ds_checkbox__label::before {
  border-color: #333333;
}
.ds_checkbox__input:checked + .ds_checkbox__label::after {
  opacity: 1;
}
.ds_checkbox--small {
  margin-bottom: 16px;
  margin-left: -8px;
}
.ds_checkbox--small .ds_checkbox__label::before {
  height: 1.5rem;
  left: 8px;
  top: 4px;
  width: 1.5rem;
}
@media (min-width: 768px) {
  .ds_checkbox--small .ds_checkbox__label::before {
    top: 8px;
  }
}
.ds_checkbox--small .ds_checkbox__input:hover + .ds_checkbox__label::before {
  box-shadow: 0 0 0 11px #b3b3b3;
}
.ds_checkbox--small .ds_checkbox__input:hover:focus + .ds_checkbox__label::before {
  box-shadow: 0 0 0 3px #fdd522, 0 0 0 11px #b1b4b6;
}
.ds_checkbox > .ds_hint-text {
  padding-left: 16px;
}
.ds_checkbox__label::after {
  background-color: transparent;
  border-style: solid;
  border-width: 0px 0 5px 5px;
  border-top-color: transparent;
  left: 7px;
  height: 14px;
  top: 6px;
  width: 26px;
  transform: rotate(-45deg);
}
.ds_checkbox__input:checked + .ds_checkbox__label::before {
  background-color: currentColor;
}
.ds_checkbox__input:checked + .ds_checkbox__label::after {
  border-color: #ffffff;
}
.ds_checkbox__input:focus:checked + .ds_checkbox__label::before {
  background-color: #fdd522;
}
.ds_checkbox__input:focus:checked + .ds_checkbox__label::after {
  background-color: transparent;
  border-color: currentColor;
}
.ds_checkbox--small .ds_checkbox__label::after {
  border-width: 6px;
  left: 14px;
  top: 14px;
}
.ds_checkbox--small .ds_checkbox__label::after {
  width: 13px;
  height: 7px;
  left: 13px;
  top: 11px;
  border-width: 0 0 3px 3px;
}
.ds_checkbox .ds_question__error-message {
  margin-left: 16px;
}

.ds_checkboxes > .ds_checkbox:last-child {
  margin-bottom: 4px;
}

.ds_checkbox-separator {
  font-weight: 700;
  margin: 24px 0;
  text-align: center;
  width: 40px;
}

@media (min-width: 768px) {
  .ds_checkbox__label::after {
    top: 10px;
  }
  .ds_checkbox--small .ds_checkbox__label::after {
    top: 15px;
  }
}
/*------------------------------------*\
    CURRENCY WRAPPER
\*------------------------------------*/
.ds_currency-wrapper {
  position: relative;
}
.ds_currency-wrapper::before {
  font-size: 1.1875rem;
  line-height: 1.6842105263;
  content: "£";
  height: 48px;
  font-weight: 700;
  line-height: 48px !important;
  pointer-events: none;
  position: absolute;
  text-align: center;
  top: 0;
  width: 48px;
}
@media (min-width: 768px) {
  .ds_currency-wrapper::before {
    font-size: 1.5rem;
    line-height: 1.6666666667;
  }
}
.ds_currency-wrapper[data-symbol]::before {
  content: attr(data-symbol);
}
.ds_currency-wrapper > .ds_input {
  padding-left: 40px;
}
.ds_currency-wrapper > .ds_input:focus {
  padding-left: 39px;
}

/*------------------------------------*\
    $ERROR SUMMARY
\*------------------------------------*/
.ds_error-summary {
  border: 4px solid #d32205;
  padding: 20px 28px;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ds_error-summary {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_error-summary {
    margin-bottom: 2rem;
  }
}
.ds_error-summary > :last-child {
  margin-bottom: 0;
}
.ds_error-summary__title {
  margin-top: 0;
}
.ds_error-summary__list {
  color: #d32205;
  font-weight: 700;
  list-style-type: none;
  margin-left: 0;
}
.ds_error-summary__list a {
  color: #d32205;
}
.ds_error-summary__list a:focus {
  color: #333333;
}
.ds_error-summary__list li {
  margin-left: 0;
}

.flashable {
  transition: background-color 2s;
}
.flashable--flash {
  background-color: #fdd522;
  transition-duration: 0s;
}

/*------------------------------------*\
    FIELD GROUP
\*------------------------------------*/
.ds_field-group {
  margin-top: 16px;
}
.ds_field-group--inline {
  display: flex;
  flex-direction: row;
}
.ds_field-group--inline > div:not(:last-child) {
  margin-right: 16px;
}

/*------------------------------------*\
    HINT TEXT
\*------------------------------------*/
.ds_hint-text {
  color: #727272;
  margin-bottom: 16px;
}
.ds_hint-text > * {
  margin-bottom: 8px;
}

/*------------------------------------*\
    LABEL
\*------------------------------------*/
.ds_label {
  color: #333333;
  display: inline-block;
  font-weight: 700;
  margin-bottom: 8px;
}

/*------------------------------------*\
    PREFILLED VALUE LIST
\*------------------------------------*/
.ds_prefilled-value-list__key {
  margin: 0;
  margin-bottom: 0.5rem;
  padding: 0;
}
@media (min-width: 768px) {
  .ds_prefilled-value-list__key {
    margin-bottom: 0.5rem;
  }
}
.ds_prefilled-value-list__value {
  margin: 0;
  margin-bottom: 1.5rem;
  padding: 0;
}
@media (min-width: 768px) {
  .ds_prefilled-value-list__value {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 768px) {
  .ds_prefilled-value-list__value {
    display: flex;
  }
  .ds_prefilled-value-list__value-actions {
    margin-left: 1.5rem;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .ds_prefilled-value-list__value-actions {
    margin-left: 1.5rem;
  }
}

/*------------------------------------*\
    QUESTION
\*------------------------------------*/
.ds_question--error {
  border-left: 4px solid #d32205;
  padding-left: 20px;
}
.ds_question__message, .ds_question__error-message {
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ds_question__message, .ds_question__error-message {
    margin-bottom: 1rem;
  }
}
.ds_question__error-message {
  color: #d32205;
  font-weight: 700;
}

/*------------------------------------*\
    RADIO BUTTONS
\*------------------------------------*/
.ds_radio {
  margin-bottom: 24px;
  padding-left: 40px;
  position: relative;
}
.ds_radio__input {
  height: 44px;
  left: -2px;
  opacity: 0;
  position: absolute;
  top: -2px;
  width: 44px;
}
.ds_radio__label {
  display: inline-block;
  padding: 4px 32px 4px 16px;
}
.ds_radio__label::before {
  background-color: #ffffff;
  border: 2px solid #333333;
  content: "";
  height: 40px;
  left: 0;
  position: absolute;
  width: 40px;
}
.ds_radio__label::after {
  content: "";
  position: absolute;
  bottom: calc(100% - 40px);
  left: 0;
  right: calc(100% - 40px);
  opacity: 0;
}
.ds_radio__label::before, .ds_radio__label::after {
  top: -4px;
  border-radius: 50%;
}
@media (min-width: 768px) {
  .ds_radio__label::before, .ds_radio__label::after {
    top: 0;
  }
}
.ds_radio__input:focus + .ds_radio__label::before {
  border-width: 4px;
  box-shadow: 0 0 0 3px #fdd522;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_radio__input:focus + .ds_radio__label::before {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 4px !important;
    outline-offset: -4px;
  }
}
.ds_radio__input:checked + .ds_radio__label::before {
  border-color: #333333;
}
.ds_radio__input:checked + .ds_radio__label::after {
  opacity: 1;
}
.ds_radio--small {
  margin-bottom: 16px;
  margin-left: -8px;
}
.ds_radio--small .ds_radio__label::before {
  height: 1.5rem;
  left: 8px;
  top: 4px;
  width: 1.5rem;
}
@media (min-width: 768px) {
  .ds_radio--small .ds_radio__label::before {
    top: 8px;
  }
}
.ds_radio--small .ds_radio__input:hover + .ds_radio__label::before {
  box-shadow: 0 0 0 11px #b3b3b3;
}
.ds_radio--small .ds_radio__input:hover:focus + .ds_radio__label::before {
  box-shadow: 0 0 0 3px #fdd522, 0 0 0 11px #b1b4b6;
}
.ds_radio > .ds_hint-text {
  padding-left: 16px;
}
.ds_radio__label::after {
  top: 6px;
  left: 10px;
  width: 0;
  height: 0;
  border: 10px solid currentColor;
  border-radius: 50%;
  background: currentColor;
}
.ds_radio--small .ds_radio__label::after {
  border-width: 6px;
  left: 14px;
  top: 10px;
}

@media (min-width: 768px) {
  .ds_radio__label::after {
    top: 10px;
  }
  .ds_radio--small .ds_radio__label::after {
    top: 14px;
  }
}
/*------------------------------------*\
    REVEAL CONTENT
\*------------------------------------*/
.ds_reveal-content {
  display: none;
  margin-top: 16px;
  padding-left: 16px;
  position: relative;
}
.ds_reveal-content > :last-child {
  margin-bottom: 0;
}
.ds_reveal-content::before {
  background-color: #b3b3b3;
  bottom: 0;
  content: "";
  left: -22px;
  position: absolute;
  top: 0;
  width: 4px;
}

:checked ~ .ds_reveal-content {
  display: block;
}

/*------------------------------------*\
    SELECT
\*------------------------------------*/
.ds_select {
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: transparent;
  border-radius: 0;
  border: 0;
  box-shadow: inset 0 0 0 2px currentColor;
  min-height: 48px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  padding: 8px;
  width: 100%;
}
.ds_select:focus {
  outline: 2px solid #fdd522;
  outline-offset: 0;
  box-shadow: inset 0 0 0 4px currentColor;
}

.ds_select-arrow {
  background: #0065bd;
  bottom: 0;
  content: "";
  outline: 2px solid transparent;
  outline-offset: -2px;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  width: 48px;
}
.ds_select-arrow::before {
  bottom: 0;
  color: #ffffff;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  content: "";
  background-color: transparent;
  border-style: solid;
  border-width: 0px 0px 3px 3px;
  border-top-color: transparent;
  display: inline-block;
  height: 12px;
  width: 12px;
  transform: rotate(-45deg);
  right: 18px;
  top: 15px;
}

.ds_select:focus + .ds_select-arrow {
  background-color: #fdd522;
}
.ds_select:focus + .ds_select-arrow::before {
  color: #333333;
}

.ds_select-wrapper {
  border-radius: 0;
  display: block;
  margin-bottom: 24px;
  min-height: 48px;
  padding: 0;
  position: relative;
  width: 100%;
}

.ds_select-wrapper.ds_input--error .ds_select,
.ds_select-wrapper .ds_select--error,
.ds_select-wrapper .ds_input--error {
  box-shadow: inset 0 0 0 4px #d32205;
}
.ds_select-wrapper.ds_input--error .ds_select:focus,
.ds_select-wrapper .ds_select--error:focus,
.ds_select-wrapper .ds_input--error:focus {
  box-shadow: inset 0 0 0 4px currentColor;
}

.ds_select-wrapper.ds_input--error {
  padding: 0;
}

/*------------------------------------*\
    TEXT INPUTS
    Covers text-based INPUT elements and TEXTAREA elements
\*------------------------------------*/
.ds_input {
  border: 2px solid currentColor;
  border-radius: 0;
  display: block;
  margin-bottom: 24px;
  min-height: 48px;
  padding: 8px;
  width: 100%;
}
.ds_input:focus {
  outline: 2px solid #fdd522;
  outline-offset: 0;
  box-shadow: inset 0 0 0 2px;
}
.ds_input--error {
  border-color: #d32205;
  border-width: 4px;
  padding: 4px;
}
.ds_input--error:focus {
  border-color: currentColor;
  box-shadow: none;
}
.ds_input + .ds_input__message {
  margin-top: -16px;
}
.ds_input__message--error {
  color: #d32205;
  font-weight: 700;
}

.ds_input--fixed-2 {
  max-width: calc(16px + 2em);
}

.ds_currency-wrapper .ds_input--fixed-2 {
  max-width: calc(40px + 8px + 2em);
}

.ds_input--fixed-3 {
  max-width: calc(16px + 3em);
}

.ds_currency-wrapper .ds_input--fixed-3 {
  max-width: calc(40px + 8px + 3em);
}

.ds_input--fixed-4 {
  max-width: calc(16px + 4em);
}

.ds_currency-wrapper .ds_input--fixed-4 {
  max-width: calc(40px + 8px + 4em);
}

.ds_input--fixed-5 {
  max-width: calc(16px + 5em);
}

.ds_currency-wrapper .ds_input--fixed-5 {
  max-width: calc(40px + 8px + 5em);
}

.ds_input--fixed-10 {
  max-width: calc(16px + 10em);
}

.ds_currency-wrapper .ds_input--fixed-10 {
  max-width: calc(40px + 8px + 10em);
}

.ds_input--fixed-20 {
  max-width: calc(16px + 20em);
}

.ds_currency-wrapper .ds_input--fixed-20 {
  max-width: calc(40px + 8px + 20em);
}

.ds_input--fluid-one-quarter {
  max-width: 25%;
}

.ds_input--fluid-one-third {
  max-width: 33.333333%;
}

.ds_input--fluid-half {
  max-width: 50%;
}

.ds_input--fluid-two-thirds {
  max-width: 67.666667%;
}

.ds_input--fluid-three-quarters {
  max-width: 75%;
}

.ds_input__wrapper {
  display: block;
  margin-bottom: 24px;
  overflow: auto;
}
.ds_input__wrapper .ds_input {
  float: left;
  margin-bottom: 0;
  margin-right: -48px;
  padding-right: 56px;
}
.ds_input__wrapper .ds_icon {
  height: 32px;
  padding: 8px;
  width: 32px;
}
.ds_input__wrapper > .ds_button {
  margin: 0;
  min-height: 48px;
  min-width: 48px;
  padding-top: 12px;
  padding-bottom: 12px;
}
.ds_input__wrapper > .ds_button > .ds_icon {
  height: 32px;
  padding: 8px;
  width: 32px;
}

@supports (display: flex) {
  .ds_input__wrapper {
    display: flex;
    overflow: visible;
  }
}
/*------------------------------------*\
    ACCORDION
\*------------------------------------*/
.ds_accordion {
  margin-bottom: calc(1.5rem + -1px);
  margin-top: 1.5rem;
  position: relative;
}
@media (min-width: 768px) {
  .ds_accordion {
    margin-bottom: calc(2rem + -1px);
  }
}
@media (min-width: 768px) {
  .ds_accordion {
    margin-top: 2rem;
  }
}
.ds_accordion__open-all {
  display: none;
  float: right;
  margin-bottom: 8px;
  position: relative;
  text-decoration: none;
}
.ds_accordion__open-all + * {
  clear: both;
}

h1 + .ds_accordion, h2 + .ds_accordion, h3 + .ds_accordion {
  margin-top: 0;
}

.ds_accordion.js-initialised .ds_accordion__open-all {
  display: block;
}

.ds_accordion-item {
  border-bottom: 1px solid #ebebeb;
  border-top: 1px solid #ebebeb;
}
.ds_accordion-item__header, .ds_accordion-item__header-button {
  display: block;
  position: relative;
  transition: background-color 0.2s, outline-color 0.2s;
  z-index: 1;
  outline: 0 !important;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #ffffff;
  border-width: 0;
  color: #0065bd;
  font-weight: 700;
  margin: 0;
  padding: 16px 48px 15px 16px;
  position: relative;
  text-align: left;
  width: 100%;
}
.ds_accordion-item__header:focus, .ds_accordion-item__header-button:focus {
  background-color: #fdd522;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  color: #333333;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_accordion-item__header:focus, .ds_accordion-item__header-button:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_accordion-item__header:hover:not(:focus), .ds_accordion-item__header-button:hover:not(:focus) {
  background-color: #d9effc;
}
@media (min-width: 768px) {
  .ds_accordion-item__header, .ds_accordion-item__header-button {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}
.ds_accordion-item__header:hover:not(:focus), .ds_accordion-item__header-button:hover:not(:focus) {
  color: #00437e;
}
.ds_accordion-item--open .ds_accordion-item__header-button:not(:focus):not(:hover) {
  background-color: #f8f8f8;
  color: #333333;
}
.ds_accordion-item__title {
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ds_accordion-item__title {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}
.ds_accordion-item__label {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.ds_accordion-item__indicator {
  content: "";
  background-color: transparent;
  border-style: solid;
  border-width: 0px 0px 0.1875em 0.1875em;
  border-top-color: transparent;
  display: inline-block;
  height: 0.75em;
  width: 0.75em;
  transform: rotate(-45deg);
  position: absolute;
  right: 24px;
  top: 18px;
  transition: transform 0.2s, top 0.2s;
  pointer-events: none;
}
.ds_accordion-item__body {
  display: none;
  padding: 24px 40px 40px 16px;
}
.ds_accordion-item__body > :last-child {
  margin-bottom: 0;
}
.ds_accordion-item__control:checked ~ .ds_accordion-item__body {
  display: block;
}
.ds_accordion-item__control:checked ~ .ds_accordion-item__header {
  background-color: #f8f8f8;
  color: #333333;
}
.ds_accordion-item__control:checked ~ .ds_accordion-item__header .ds_accordion-item__indicator, .ds_accordion-item__control:checked ~ .ds_accordion-item__header-button .ds_accordion-item__indicator {
  top: 24px;
  transform: rotate(-225deg);
}
.ds_accordion-item__control:focus ~ .ds_accordion-item__header, .ds_accordion-item__control:focus:hover ~ .ds_accordion-item__header {
  background: #fdd522;
  box-shadow: 0 3px #333333;
  color: #333333;
  z-index: 2;
}
.ds_accordion-item + .ds_accordion-item {
  margin-top: -1px;
}

.ds_accordion.js-initialised .ds_accordion-item__body {
  overflow: hidden;
  padding: 0 40px 0 16px;
  transition: max-height 0.2s, padding 0.2s;
}
@media (min-width: 768px) {
  .ds_accordion.js-initialised .ds_accordion-item__body {
    padding-right: 100px;
  }
}
.ds_accordion.js-initialised .ds_accordion-item__control:checked ~ .ds_accordion-item__body {
  padding-bottom: 32px;
  padding-top: 24px;
}

@media (min-width: 768px) {
  .ds_accordion-item__indicator {
    margin-top: 3px;
    right: 26px;
  }
}
/* SMALL VARIANT */
.ds_accordion--small .ds_accordion-item__button,
.ds_accordion--small .ds_accordion-item__header-button,
.ds_accordion--small .ds_accordion-item__body,
.ds_accordion--small .ds_accordion__open-all {
  font-size: 16px;
  line-height: 1.5rem;
}
.ds_accordion--small .ds_accordion-item__body {
  padding-right: 16px;
}

/*------------------------------------*\
    ARTICLE ASIDE
\*------------------------------------*/
.ds_article-aside {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  padding-top: 1.5rem;
  line-height: 20px;
  position: relative;
}
@media (min-width: 768px) {
  .ds_article-aside {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_article-aside {
    margin-bottom: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_article-aside {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media (min-width: 768px) {
  .ds_article-aside {
    padding-top: 2rem;
  }
}
.ds_article-aside:first-child {
  margin-top: 0;
}
.ds_article-aside::before {
  background-color: #0065bd;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

@media (min-width: 768px) {
  .ds_article-aside {
    line-height: 24px;
  }
  .ds_article-aside li {
    margin-bottom: 16px;
  }
}
.ds_aspect-box {
  overflow: hidden;
  position: relative;
  padding-bottom: 56.25%;
}
.ds_aspect-box--square {
  padding-bottom: 100%;
}
.ds_aspect-box--43 {
  padding-bottom: 75%;
}
.ds_aspect-box--235 {
  padding-bottom: 42.5531914894%;
}
.ds_aspect-box--219 {
  padding-bottom: 42.8571428571%;
}
.ds_aspect-box--fallback {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.ds_aspect-box--fallback .ds_aspect-box__inner {
  display: none;
}
.ds_aspect-box__inner {
  height: 100%;
  left: 0;
  width: 100%;
  object-fit: cover;
  position: absolute;
  right: 0;
}

.ds_autocomplete {
  position: relative;
  /*
    [1] 18px = 20px (associated site search input) minus 2px (suggestions border)
    [2] 14px = the 18px from [1] minus the 4px border
  */
}
.ds_autocomplete__suggestions {
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
  border: 2px solid #b3b3b3;
  display: none;
  left: 0;
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 10;
}
.ds_autocomplete__suggestions-list {
  list-style-type: none;
  margin: 0;
}
.ds_autocomplete__suggestion {
  background-color: #ffffff;
  color: #727272;
  cursor: pointer;
  font-style: italic;
  margin-bottom: 0;
  padding: 11px 18px; /* [1] */
  transition: background-color 0.2s;
}
.ds_autocomplete__suggestion:hover {
  background-color: #d9effc;
}
.ds_autocomplete__suggestion.active {
  background-color: #fdd522;
  border-left: 4px solid #333333;
  padding-left: 14px; /* [2] */
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_autocomplete__suggestion.active {
    border-left-color: highlight;
    color: highlight;
  }
}
.ds_autocomplete__suggestion:not(:last-child) {
  border-bottom: 2px solid #b3b3b3;
}
.ds_autocomplete__suggestion__text {
  font-style: normal;
  color: #333333;
}
.ds_autocomplete__suggestion__category {
  color: #0065bd;
}
.ds_autocomplete__highlight {
  background-color: transparent;
  font-weight: 700;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_autocomplete__highlight {
    color: highlight;
  }
}

.js-autocomplete-input[aria-expanded=true] ~ .ds_autocomplete__suggestions {
  display: block;
}

@media (min-width: 768px) {
  .ds_autocomplete__suggestions {
    font-size: 1rem;
    line-height: 1.5;
  }
}
/*------------------------------------*\
    BACK LINK
\*------------------------------------*/
.ds_back-link {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  align-items: center;
  display: inline-flex;
  margin: 16px 0 16px 16px;
  position: relative;
}
@media (min-width: 768px) {
  .ds_back-link {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_back-link::before {
  content: "";
  background-color: transparent;
  border-style: solid;
  border-width: 0px 0px 0.125em 0.125em;
  border-top-color: transparent;
  display: inline-block;
  height: 0.5em;
  width: 0.5em;
  transform: rotate(-315deg);
  border-width: 0 0 2px 2px;
  left: -14px;
  position: absolute;
}

/*------------------------------------*\
    $BACK TO TOP
\*------------------------------------*/
.ds_back-to-top {
  display: none;
}

@media only screen {
  .ds_back-to-top {
    bottom: 56px;
    display: block;
    pointer-events: none;
    position: absolute;
    right: 8px;
    top: 100vh;
    z-index: 1;
  }
  .ds_back-to-top__button {
    display: block;
    position: relative;
    transition: background-color 0.2s, outline-color 0.2s;
    z-index: 1;
    outline: 0 !important;
    font-size: 0.875rem;
    line-height: 1.7142857143;
    background-color: rgba(255, 255, 255, 0.9);
    font-weight: 700;
    margin: 0;
    min-width: 120px;
    pointer-events: all;
    padding: 8px 32px 8px 16px;
    position: fixed;
    position: sticky;
    right: 8px;
    top: calc(100vh - 56px);
  }
  .ds_back-to-top__button:focus {
    background-color: #fdd522;
    box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
    color: #333333;
  }
}
@media only screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_back-to-top__button:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
@media only screen {
  .ds_back-to-top__button:hover:not(:focus) {
    background-color: #d9effc;
  }
}
@media only screen and (min-width: 768px) {
  .ds_back-to-top__button {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media only screen {
  .ds_back-to-top__icon {
    position: absolute;
    right: 8px;
    top: 8px;
  }
}
/*------------------------------------*\
    $BREADCRUMBS
\*------------------------------------*/
.ds_breadcrumbs {
  color: #727272;
  font-size: 14px;
  line-height: 24px;
  padding-left: 0;
  margin: 24px 0 16px;
}
.ds_breadcrumbs__item {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.ds_breadcrumbs__item:not(:first-child) .ds_breadcrumbs__link {
  margin-left: -2px;
}
.ds_breadcrumbs__item:not(:first-child)::before {
  content: "";
  background-color: transparent;
  border-style: solid;
  border-width: 0px 0px 0.08333325em 0.08333325em;
  border-top-color: transparent;
  display: inline-block;
  height: 0.333333em;
  width: 0.333333em;
  transform: rotate(-135deg);
  margin: 0 8px 0 6px;
  position: relative;
  top: -1px;
}
.ds_breadcrumbs__container {
  padding-top: 16px;
}
@media (min-width: 768px) {
  .ds_breadcrumbs__container {
    padding-top: 24px;
  }
}
@supports (display: flex) {
  .ds_breadcrumbs {
    display: flex;
    flex-wrap: wrap;
  }
}

.ds_reversed .ds_breadcrumbs {
  color: #ffffff;
}

/*------------------------------------*\
    BUTTONS
\*------------------------------------*/
.ds_button {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  min-height: 56px;
  min-width: 56px;
  padding: 16px;
  background: #0065bd;
  border: 0;
  border-radius: 0;
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  font-weight: 700;
  line-height: 24px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ds_button {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_button > .ds_icon {
  height: 40px;
  padding: 8px;
  width: 40px;
}
@media (min-width: 768px) {
  .ds_button {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_button {
    margin-bottom: 2rem;
  }
}
.ds_button:hover {
  background-color: #00437e;
  color: #ffffff;
  outline-color: transparent;
  transition-duration: 0.2s;
}
.ds_button:focus {
  background-color: #fdd522;
  box-shadow: 0 3px #333333;
  color: #333333;
  outline: 0;
  transition-duration: 0s;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_button:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 4px !important;
  }
}
.ds_button .ds_icon {
  pointer-events: none;
}
.ds_button[disabled] {
  background-color: #727272;
  box-shadow: none;
  color: #ffffff;
  font-weight: 400;
  outline: none;
  pointer-events: none;
}

.ds_reversed .ds_button {
  background-color: #ffffff;
  color: #0065bd;
}
.ds_reversed .ds_button:focus, .ds_reversed .ds_button:hover:focus {
  background-color: #fdd522;
}
.ds_reversed .ds_button:hover {
  background-color: #d9effc;
}
.ds_reversed .ds_button--secondary {
  background-color: transparent;
  border-color: currentColor;
  color: #ffffff;
}
.ds_reversed .ds_button--secondary:hover:not(:focus) {
  background-color: rgba(0, 0, 0, 0.3);
  color: #ffffff;
  outline-color: currentColor;
}

.ds_button--secondary {
  background-color: transparent;
  color: #0065bd;
  outline: 2px solid currentColor;
  outline-offset: -2px;
}
.ds_button--secondary:hover:not(:focus) {
  background-color: #d9effc;
  color: #00437e;
  outline: 2px solid currentColor;
  outline-offset: -2px;
}
.ds_button--cancel {
  background-color: transparent;
  color: #333333;
  outline: 2px solid currentColor;
  outline-offset: -2px;
}
.ds_button--cancel:hover:not(:focus) {
  background-color: #ebebeb;
  color: #333333;
  outline: 2px solid currentColor;
  outline-offset: -2px;
}

.ds_button--small {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  min-height: 48px;
  min-width: 48px;
  padding-top: 12px;
  padding-bottom: 12px;
}
@media (min-width: 768px) {
  .ds_button--small {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_button--small > .ds_icon {
  height: 32px;
  padding: 8px;
  width: 32px;
}

.ds_button--fixed {
  width: 200px;
}
.ds_button--fixed.ds_button--small {
  width: 160px;
}
.ds_button--max {
  max-width: 480px;
  width: 100%;
}

.ds_button-group {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ds_button-group {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_button-group {
    margin-bottom: 2rem;
  }
}
.ds_button-group > .ds_button {
  margin: 0 0 24px;
}
.ds_button-group > .ds_button > :last-child {
  margin-bottom: 0;
}

.ds_button .ds_icon {
  bottom: 0;
  box-sizing: content-box;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
}
.ds_button--has-icon {
  padding-right: calc(56px + 16px);
}
.ds_button--has-icon--left {
  padding-left: calc(56px + 16px);
  padding-right: 16px;
}
.ds_button--has-icon--left .ds_icon {
  left: 0;
  right: auto;
}

/*------------------------------------*\
    COOKIE BANNER
    Modifications to the notification banner component for this particular use case
\*------------------------------------*/
.ds_notification.ds_notification--cookie {
  background: #ebebeb;
  color: #333333;
}
.ds_notification.ds_notification--cookie .ds_notification__content {
  padding-top: 24px;
  padding-bottom: 32px;
}

.ds_notification.ds_notification--cookie-success {
  background: #428542;
}

/*------------------------------------*\
    CALLOUT
\*------------------------------------*/
.ds_callout {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  background: #f8f8f8;
  border-left: 4px solid #0065bd;
}
@media (min-width: 768px) {
  .ds_callout {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_callout {
    margin-bottom: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_callout {
    padding-top: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_callout {
    padding-bottom: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_callout {
    padding-left: 1.5rem;
  }
}
@media (min-width: 768px) {
  .ds_callout {
    padding-right: 1.5rem;
  }
}
.ds_callout > :last-child {
  margin-bottom: 0;
}
.ds_callout--no-border {
  border: none;
}
.ds_callout__label.ds_content-label {
  color: #0065bd;
  font-size: 14px;
}
.ds_callout__label + .ds_callout__title {
  margin-top: 0;
}

/*------------------------------------*\
    CARD
\*------------------------------------*/
.ds_card {
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
  font-size: 0.875rem;
  line-height: 1.7142857143;
  background-color: #ffffff;
  display: grid;
  grid-template-rows: auto 1fr;
  position: relative;
}
@media (min-width: 768px) {
  .ds_card {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_card--grey {
  background-color: #f8f8f8;
  color: #333333;
}
.ds_card--grey:focus-within {
  color: #333333;
}
.ds_card--hover:hover, .ds_card--has-hover:hover {
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
}
.ds_card--hover:hover:not(:focus), .ds_card--has-hover:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_card--hover:hover:not(:focus) .ds_metadata, .ds_card--has-hover:hover:not(:focus) .ds_metadata {
  color: inherit;
}
.ds_card--hover:focus-within, .ds_card--has-hover:focus-within {
  background-color: #fdd522 !important;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  transition-duration: 0s;
}
.ds_card--hover:focus-within .ds_card__link--cover, .ds_card--has-hover:focus-within .ds_card__link--cover {
  background-color: transparent;
  box-shadow: none;
  outline: none;
}
.ds_card--hover:focus-within .ds_metadata, .ds_card--has-hover:focus-within .ds_metadata {
  color: inherit;
}
@media (max-width: 767px) {
  .ds_card__media--small-mobile {
    margin: 1rem 1rem 0;
    max-width: 384px;
  }
}
.ds_card__content {
  display: grid;
  grid-template-rows: auto auto 1fr;
  height: 100%;
  padding-top: 1rem;
  padding-right: 1rem;
  padding-bottom: 1.5rem;
  padding-left: 1rem;
}
.ds_card__content > :last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ds_card__content {
    padding-top: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_card__content {
    padding-right: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_card__content {
    padding-bottom: 1.5rem;
  }
}
@media (min-width: 768px) {
  .ds_card__content {
    padding-left: 1rem;
  }
}
.ds_card__content-footer {
  align-self: end;
}
.ds_card__content-footer > :last-child {
  margin-bottom: 0;
}
.ds_card__title {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  font-weight: 700;
  margin-bottom: 8px;
  margin-bottom: 0.5rem;
  margin-top: 0 !important;
}
@media (min-width: 768px) {
  .ds_card__title {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}
@media (min-width: 768px) {
  .ds_card__title {
    margin-bottom: 0.5rem;
  }
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_card__link--cover:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_card__link--cover:after {
  content: "";
  height: 100%;
  left: 0px;
  position: absolute;
  top: 0px;
  width: 100%;
  z-index: 1;
}

/* Support for old markup */
.ds_card .ds_category-item__link:hover:before {
  display: none;
}

/*------------------------------------*\
    CATEGORY HEADER
\*------------------------------------*/
.ds_category-header {
  padding-top: 16px;
  padding-bottom: 32px;
}
.ds_category-header__header {
  margin-bottom: 32px;
}
.ds_category-header__title {
  color: #333333;
  font-weight: 300;
  margin-bottom: 8px;
}
.ds_category-header__summary {
  line-height: 24px;
}
.ds_category-header__summary > :last-child {
  margin-bottom: 8px;
}
.ds_category-header__media {
  display: block;
  margin: 0 auto;
  height: auto;
  max-height: 360px;
  max-width: 320px;
}
@media (min-width: 768px) {
  .ds_category-header__media {
    max-width: 100%;
  }
}

.ds_reversed .ds_category-header {
  color: #ffffff;
}
.ds_reversed .ds_category-header__title {
  color: #ffffff;
}

.ds_category-header {
  margin-right: -32px;
  overflow: hidden;
}
.ds_category-header > * {
  margin-right: 32px;
}
@supports (display: grid) {
  .ds_category-header {
    display: grid;
    grid-gap: 0 32px;
    margin-right: 0;
    overflow: visible;
  }
  .ds_category-header > * {
    margin-left: 0;
    margin-right: 0;
    width: auto !important;
  }
}

.ds_category-header {
  grid-gap: 32px 32px;
}

@media (min-width: 768px) {
  .ds_category-header__header {
    float: left;
    width: calc(100% * 0.6666666667 - 32px);
    margin: 40px 0;
  }
  .ds_category-header__media-container {
    float: left;
    width: calc(100% * 0.3333333333 - 32px);
  }
  .ds_category-header__summary {
    line-height: 32px;
  }
}
@supports (display: grid) {
  .ds_category-header__header {
    margin-bottom: 0;
  }
  @media (min-width: 768px) {
    .ds_category-header {
      align-items: center;
      grid-template-columns: repeat(12, 1fr);
    }
    .ds_category-header__header {
      float: none;
      grid-column: 1/span 8;
      margin: 40px 0;
    }
    .ds_category-header__media-container {
      float: none;
      grid-column: 9/span 4;
      margin-right: 0;
    }
  }
}
/*------------------------------------*\
    CATEGORY ITEM
    Navigation elements for different levels of category navigation. Includes classes for layout of these elements in a list.
\*------------------------------------*/
.ds_category-item {
  display: block;
  position: relative;
  transition: background-color 0.2s, outline-color 0.2s;
  z-index: 1;
  outline: 0 !important;
  /*
      supports grid is a hack as a proxy for supports :focus-within
  */
  padding: 12px 16px 12px;
  text-decoration: none;
  transition: background-color 0.2s, border-color 0.2s;
  width: 100%;
}
.ds_category-item:focus {
  background-color: #fdd522;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  color: #333333;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_category-item:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_category-item:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_category-item .ds_category-item__link:focus:hover {
  text-decoration: none;
}
@supports (display: grid) {
  .ds_category-item .ds_category-item__link {
    background-color: transparent;
    outline: none;
  }
  .ds_category-item .ds_category-item__link::after {
    content: "";
    height: 100%;
    left: 0px;
    position: absolute;
    top: 0px;
    width: 100%;
    z-index: 0;
  }
  @media screen and (forced-colors: active) and (prefers-contrast: more) {
    .ds_category-item .ds_category-item__link::after {
      content: none;
    }
  }
  .ds_category-item .ds_category-item__link:focus::after {
    transition-duration: 0s;
  }
  .ds_category-item:focus-within {
    background-color: #fdd522 !important;
    box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
    transition-duration: 0s;
  }
  .ds_category-item:focus-within .ds_category-item__link:focus {
    box-shadow: none;
    background-color: transparent;
  }
  @media screen and (forced-colors: active) and (prefers-contrast: more) {
    .ds_category-item:focus-within .ds_category-item__link:focus {
      outline-color: highlight !important;
      outline-style: solid !important;
      outline-width: 2px !important;
    }
  }
}
.ds_category-item > :last-child {
  margin-bottom: 0;
}
.ds_category-item__title {
  font-size: 1.1875rem;
  line-height: 1.6842105263;
  line-height: 28px;
  margin: 0 0 16px;
}
@media (min-width: 768px) {
  .ds_category-item__title {
    font-size: 1.5rem;
    line-height: 1.6666666667;
  }
}
.ds_category-item .ds_category-item__link::after {
  left: -4px;
}
.ds_category-item__link {
  color: #0065bd;
}
.ds_category-item__link::before {
  background-color: #0065bd;
  bottom: 0;
  content: "";
  left: -4px;
  opacity: 0.3;
  position: absolute;
  top: 0;
  width: 4px;
}
.ds_category-item__link:focus::before {
  content: none;
}
.ds_category-item__link:hover::before {
  background-color: #00437e;
  opacity: 1;
}
.ds_category-item__link::after {
  background: transparent;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.ds_category-item__summary {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  color: #727272;
  line-height: 24px;
  margin: 0;
}
@media (min-width: 768px) {
  .ds_category-item__summary {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_category-item:hover .ds_category-item__summary, .ds_category-item:focus-within .ds_category-item__summary {
  color: #333333;
}

.ds_card > .ds_category-item {
  padding-top: 24px;
  padding-bottom: 24px;
  position: static;
}
.ds_card .ds_category-item__link::before {
  left: 0;
  right: 0;
  bottom: 0;
  top: 100%;
  transition: top 0.2s;
  width: 100%;
}
.ds_card .ds_category-item__link:hover::before {
  top: calc(100% - 4px);
}
.ds_card .ds_category-item__link::after {
  left: 0;
}

@media (min-width: 768px) {
  .ds_category-item__title {
    line-height: 32px;
  }
  .ds_card > .ds_category-item {
    min-height: 200px;
  }
}
/*------------------------------------*\
    CATEGORY LIST
\*------------------------------------*/
.ds_category-list-container {
  margin: 32px 0;
}

.ds_category-list {
  margin-right: -32px;
  overflow: hidden;
  list-style-type: none;
  margin-bottom: 32px;
  margin-left: -8px;
  margin-top: -8px;
  padding: 8px;
}
.ds_category-list > * {
  margin-right: 32px;
}
@supports (display: grid) {
  .ds_category-list {
    display: grid;
    grid-gap: 0 32px;
    margin-right: 0;
    overflow: visible;
  }
  .ds_category-list > * {
    margin-left: 0;
    margin-right: 0;
    width: auto !important;
  }
}
.ds_category-list > * {
  display: flex;
  flex-direction: column;
  margin: 0 0 32px;
  width: 100%;
}
.ds_category-list--narrow > * {
  margin-bottom: 12px;
}

.ds_category-list--narrow {
  margin-right: -12px;
  overflow: hidden;
}
.ds_category-list--narrow > * {
  margin-right: 12px;
}
@supports (display: grid) {
  .ds_category-list--narrow {
    display: grid;
    grid-gap: 0 12px;
    margin-right: 0;
    overflow: visible;
  }
  .ds_category-list--narrow > * {
    margin-left: 0;
    margin-right: 0;
    width: auto !important;
  }
}

@media (max-width: 767px) {
  .ds_category-list--grid > * {
    min-height: 0;
  }
}
@media (min-width: 768px) {
  .ds_category-list--grid > * {
    float: left;
    width: calc(100% * 0.5 - 32px);
  }
  .ds_category-list--grid > *:nth-child(2n+1) {
    clear: left;
  }
  .ds_category-list--grid.ds_category-list--narrow > * {
    width: calc(100% * 0.5 - 12px);
  }
}
@media (min-width: 992px) {
  .ds_category-list--grid > * {
    width: calc(100% * 0.3333333333 - 32px);
  }
  .ds_category-list--grid > *:nth-child(n) {
    clear: none;
  }
  .ds_category-list--grid > *:nth-child(3n+1) {
    clear: left;
    margin-left: 0;
  }
  .ds_category-list--grid.ds_category-list--narrow > * {
    width: calc(100% * 0.3333333333 - 12px);
  }
}
@supports (display: grid) {
  .ds_category-list {
    grid-row-gap: 32px;
    margin-left: 0;
    margin-top: 0;
    padding: 0;
  }
  .ds_category-list--narrow {
    grid-gap: 12px 12px;
  }
  .ds_category-list > *[class] {
    margin-bottom: 0;
  }
  @media (min-width: 768px) {
    .ds_category-list--grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
    }
  }
  @media (min-width: 992px) {
    .ds_category-list--grid {
      grid-template-columns: 1fr 1fr 1fr;
    }
  }
}
/*------------------------------------*\
    CONTACT DETAILS
\*------------------------------------*/
.ds_contact-details__title {
  padding-top: 0.5rem;
  display: inline-block;
  margin-bottom: 0;
  position: relative;
}
@media (min-width: 768px) {
  .ds_contact-details__title {
    padding-top: 0.5rem;
  }
}
.ds_contact-details__title::after {
  background-color: #0065bd;
  content: "";
  height: 4px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.ds_contact-details__list dd {
  margin-left: 0;
}
.ds_contact-details__list dt {
  font-weight: 700;
}
.ds_contact-details__item {
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .ds_contact-details__item {
    margin-top: 1rem;
  }
}
.ds_contact-details__social-item {
  margin-bottom: 0.5rem;
  position: relative;
}
@media (min-width: 768px) {
  .ds_contact-details__social-item {
    margin-bottom: 0.5rem;
  }
}
.ds_contact-details__social-link {
  padding-left: 2rem;
}
.ds_contact-details__social-icon {
  height: 1.5rem !important;
  pointer-events: none;
  position: absolute;
  left: 0;
  width: 1.5rem !important;
}

@media (min-width: 768px) {
  .ds_contact-details__social-icon {
    top: 0.25rem;
  }
}
/*------------------------------------*\
    CONTENT LABEL
\*------------------------------------*/
.ds_content-label {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  font-weight: 400;
  margin: 0;
}
@media (min-width: 768px) {
  .ds_content-label {
    font-size: 1rem;
    line-height: 1.5;
  }
}

/*------------------------------------*\
    CONTENTS NAV
\*------------------------------------*/
.ds_contents-nav__title {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  margin: 0;
  padding: 0;
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .ds_contents-nav__title {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}
@media (min-width: 768px) {
  .ds_contents-nav__title {
    margin-bottom: 0.5rem;
  }
}
.ds_contents-nav__list {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  margin-bottom: 2.5rem;
  list-style: none;
  margin-left: 0;
  padding-left: 32px;
}
@media (min-width: 768px) {
  .ds_contents-nav__list {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media (min-width: 768px) {
  .ds_contents-nav__list {
    margin-bottom: 3rem;
  }
}
.ds_contents-nav__item {
  position: relative;
}
.ds_contents-nav__item::before {
  background: currentColor;
  content: "—";
  height: 1px;
  left: -32px;
  overflow: hidden;
  position: absolute;
  top: 12px;
  width: 20px;
}
.ds_contents-nav__link.ds_current {
  font-weight: 700;
}

/*------------------------------------*\
    DATE PICKER
\*------------------------------------*/
.ds_datepicker {
  position: relative;
}
.ds_datepicker__dialog {
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
  background-color: #ffffff;
  clear: both;
  display: none;
  padding: 8px;
  outline: 1px solid #b3b3b3;
  outline-offset: -1px;
  position: static;
  top: 0;
  transition: background-color 0.2s, outline-color 0.2s;
  width: 296px;
  z-index: 2;
}
.ds_datepicker__dialog__header {
  position: relative;
  text-align: center;
}
.ds_datepicker__dialog__header > :nth-child(1) {
  position: absolute;
  left: 0;
  top: -2px;
}
.ds_datepicker__dialog__header > :nth-child(3) {
  position: absolute;
  right: 0;
  top: -2px;
}
.ds_datepicker__dialog__title {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  line-height: 2.2857142857;
  margin: 0 !important;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .ds_datepicker__dialog__title {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_datepicker__dialog__navbuttons button {
  background-color: transparent;
  color: #333333 !important;
  font-weight: 400;
  min-height: 40px;
  margin: 0;
  padding: 4px;
  min-width: 32px;
  display: block;
  position: relative;
  transition: background-color 0.2s, outline-color 0.2s;
  z-index: 1;
  outline: 0 !important;
  display: inline-block;
}
.ds_datepicker__dialog__navbuttons button:focus {
  background-color: #fdd522;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  color: #333333;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_datepicker__dialog__navbuttons button:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_datepicker__dialog__navbuttons button:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_datepicker__dialog__navbuttons button .ds_icon {
  height: 32px;
  padding: 0;
  position: static;
  width: 24px;
}
.ds_datepicker__dialog__table tbody:focus-within {
  outline: 2px solid #fdd522;
}
.ds_datepicker__dialog__table td {
  border: 0;
  margin: 0;
  outline: 0;
  padding: 0;
}
.ds_datepicker__dialog__table th {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  color: #727272;
  font-weight: 400;
}
@media (min-width: 768px) {
  .ds_datepicker__dialog__table th {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_datepicker__dialog__table button {
  background-color: transparent;
  border-width: 0;
  color: #333333;
  font-weight: 400;
  min-height: 40px;
  margin: 0;
  padding: 0;
  min-width: 40px;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  display: block;
  position: relative;
  transition: background-color 0.2s, outline-color 0.2s;
  z-index: 1;
  outline: 0 !important;
}
@media (min-width: 768px) {
  .ds_datepicker__dialog__table button {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_datepicker__dialog__table button:focus {
  background-color: #fdd522;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  color: #333333;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_datepicker__dialog__table button:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_datepicker__dialog__table button:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_datepicker__dialog__table button[disabled=true] {
  background-color: #ebebeb;
  color: #333333;
}
.ds_datepicker__dialog__table button.ds_datepicker__current {
  outline: 2px solid #333333 !important;
  outline-offset: -2px;
}
.ds_datepicker__dialog__table button.ds_datepicker__current[tabindex="-1"] {
  background: #f8f8f8;
  color: currentColor;
}
.ds_datepicker__dialog__table button.ds_datepicker__today {
  font-weight: 700;
}
.ds_datepicker__dialog__table button.ds_datepicker__today::after {
  background-color: currentColor;
  border-radius: 4px;
  bottom: 6px;
  content: "";
  height: 4px;
  left: 50%;
  margin-left: -2px;
  position: absolute;
  width: 4px;
}
.ds_datepicker__dialog__table button.ds_selected:not(:focus) {
  background-color: #333333;
  color: #ffffff;
}
.ds_datepicker__dialog__table-caption {
  font-size: 0.75rem;
  line-height: 1.3333333333;
  caption-side: bottom;
  line-height: 2;
  margin-top: 8px;
}
@media (min-width: 768px) {
  .ds_datepicker__dialog__table-caption {
    font-size: 0.875rem;
    line-height: 1.7142857143;
  }
}
.ds_datepicker__dialog__buttongroup {
  margin-right: -8px;
  overflow: hidden;
  overflow: visible;
}
.ds_datepicker__dialog__buttongroup > * {
  margin-right: 8px;
}
@supports (display: grid) {
  .ds_datepicker__dialog__buttongroup {
    display: grid;
    grid-gap: 0 8px;
    margin-right: 0;
    overflow: visible;
  }
  .ds_datepicker__dialog__buttongroup > * {
    margin-left: 0;
    margin-right: 0;
    width: auto !important;
  }
}
.ds_datepicker__dialog__buttongroup button {
  width: calc(100% * 0.5 - 8px);
  display: block;
  float: left;
  margin: 0;
}
@supports (display: grid) {
  .ds_datepicker__dialog__buttongroup {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 768px) {
  .ds_datepicker__dialog {
    position: absolute;
  }
  .ds_datepicker__dialog__title {
    line-height: 1.5;
    padding: 8px 0;
  }
  .ds_datepicker__dialog__header > :nth-child(1) {
    top: 0;
  }
  .ds_datepicker__dialog__header > :nth-child(3) {
    top: 0;
  }
  .ds_datepicker__dialog__table th {
    line-height: 2;
  }
  .ds_datepicker__dialog__table-caption {
    line-height: 2.2857142857;
  }
}
/*------------------------------------*\
    DETAILS
\*------------------------------------*/
.ds_details {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ds_details {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_details {
    margin-bottom: 2rem;
  }
}

.ds_details__summary {
  color: #0065bd;
  text-decoration: underline;
  outline: 0px solid transparent;
  text-underline-offset: 1px;
  transition: color 0.2s, background-color 0.2s, outline-color 0.2s;
  padding-left: 1.5rem;
  cursor: pointer;
  display: inline-block;
  position: relative;
}
.ds_details__summary:hover {
  background-color: #d9effc;
  color: #00437e;
  outline: 2px solid #d9effc;
  transition-duration: 0.2s;
}
.ds_details__summary:focus {
  outline: 2px solid #fdd522;
  outline-offset: 0;
  background-color: #fdd522;
  box-shadow: -2px 5px #333333, 2px 5px #333333;
  color: #333333;
  text-decoration: none;
  transition-duration: 0s;
}
.ds_details__summary > svg {
  fill: currentColor;
}
@media (min-width: 768px) {
  .ds_details__summary {
    padding-left: 2rem;
  }
}
.ds_details__summary::before {
  background-color: currentColor;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  content: "";
  display: block;
  height: calc(0.4210526316em * 2);
  left: 0.25em;
  position: absolute;
  top: calc(50% - 0.4210526316em + 1px);
  transition: transform 0.2s;
  width: 0.4210526316em;
}

.ds_details[open] .ds_details__summary::before {
  transform: rotate(90deg);
}

.ds_details__text {
  border-left: 4px solid #b3b3b3;
  box-sizing: border-box;
  margin-top: 1rem;
  padding: 0.5rem;
  padding-left: calc(1.5rem + calc(4px * -1));
}
@media (min-width: 768px) {
  .ds_details__text {
    margin-top: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_details__text {
    padding: 0.5rem;
  }
}
@media (min-width: 768px) {
  .ds_details__text {
    padding-left: calc(2rem + calc(4px * -1));
  }
}

/*------------------------------------*\
    FEATURE HEADER
\*------------------------------------*/
.ds_feature-header {
  margin-bottom: 3rem;
}
@media (min-width: 768px) {
  .ds_feature-header {
    margin-bottom: 4rem;
  }
}
.ds_feature-header__title {
  font-size: 1.875rem;
  line-height: 1.3333333333;
  font-weight: 700;
  margin-bottom: 32px;
  margin-bottom: 0.5rem;
  font-weight: 300;
}
@media (min-width: 768px) {
  .ds_feature-header__title {
    font-size: 2.75rem;
    line-height: 1.2727272727;
  }
}
@media (min-width: 768px) {
  .ds_feature-header__title {
    margin-bottom: 0.5rem;
  }
}
.ds_feature-header--background {
  background-color: #ebebeb;
}
.ds_feature-header__primary {
  padding: 1rem 0;
  position: relative;
  z-index: 2;
}
@media (min-width: 768px) {
  .ds_feature-header__primary {
    padding: 1.5rem 0;
  }
}
@media (min-width: 992px) {
  .ds_feature-header__primary {
    padding: 2.5rem 0;
  }
}
.ds_feature-header--background .ds_feature-header__primary {
  padding-left: 1rem;
}
@media (max-width: 767px) {
  .ds_feature-header--background .ds_feature-header__primary {
    padding-right: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_feature-header--background .ds_feature-header__primary {
    padding-left: 1.5rem;
  }
}
@media (min-width: 992px) {
  .ds_feature-header--background .ds_feature-header__primary {
    padding-left: 2.5rem;
  }
}
.ds_feature-header__secondary {
  position: relative;
  z-index: 1;
}
.ds_feature-header__image {
  display: block;
  height: auto;
  width: 100%;
}
@media (min-width: 768px) {
  .ds_feature-header {
    align-items: center;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-gap: 32px;
  }
  .ds_feature-header__primary {
    grid-area: 1/1/2/7;
    margin-right: 0;
  }
  .ds_feature-header__primary > :last-child {
    margin-bottom: 0;
  }
  .ds_feature-header__secondary {
    grid-area: 1/7/2/13;
  }
  .ds_feature-header--wide .ds_feature-header__primary {
    grid-area: 1/1/2/9;
    margin-right: 0;
  }
  .ds_feature-header--wide .ds_feature-header__secondary {
    grid-area: 1/9/2/13;
  }
}

.ds_reversed .ds_feature-header__primary,
.ds_reversed .ds_feature-header__primary a {
  color: #ffffff;
}

@media (min-width: 768px) {
  .ds_feature-header {
    display: -ms-grid;
    -ms-grid-columns: 1fr 32px 1fr;
  }
  .ds_feature-header--wide {
    -ms-grid-columns: 2fr 32px 1fr;
  }
  .ds_feature-header__primary {
    -ms-grid-column: 1;
    -ms-grid-row-align: center;
  }
  .ds_feature-header__secondary {
    -ms-grid-column: 3;
  }
}

.ds_file-download {
  background-color: #f8f8f8;
  display: flex;
  padding: 1rem;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ds_file-download {
    margin-bottom: 1rem;
  }
}
.ds_file-download--highlighted {
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.15);
  border-left: 4px solid #0065bd;
  padding-left: 0.75rem;
}
.ds_file-download__thumbnail {
  margin-right: 1rem;
}
.ds_file-download__thumbnail-image {
  box-shadow: inset 0 0 0 4px rgba(0, 0, 0, 0.08);
  display: block;
  max-width: 100%;
  padding: 4px;
}
.ds_file-download__thumbnail-link {
  display: block;
  width: 4.5rem;
}
.ds_file-download__thumbnail-image--generic {
  box-shadow: none;
  padding: 0;
}
.ds_file-download__content {
  flex-grow: 1;
}
.ds_file-download__title {
  font-weight: 700;
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .ds_file-download__title {
    margin-bottom: 0.5rem;
  }
}
.ds_file-download__title a:not(:focus) {
  text-decoration: underline;
}

@media (max-width: 767px) {
  .ds_file-download .ds_file-download__button {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .ds_file-download__thumbnail-link {
    width: 6.5rem;
  }
}
/*------------------------------------*\
    HIDE THIS PAGE
\*------------------------------------*/
.ds_has-hide-page .ds_page {
  margin-top: 56px;
}

.ds_hide-page {
  background-color: #ebebeb;
  left: 0;
  position: fixed;
  right: 0;
  text-align: center;
  top: 0;
  z-index: 1000;
}
.ds_hide-page__button {
  background-color: #d32205;
  margin: 0;
  width: 100%;
}
.ds_hide-page__button:hover:not(:focus) {
  background-color: #881603;
}
.ds_hide-page__text {
  font-size: 0.75rem;
  line-height: 1.3333333333;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ds_hide-page__text {
    font-size: 0.875rem;
    line-height: 1.7142857143;
  }
}
.ds_hide-page .js-enabled-text {
  display: none;
}

@media only screen and (hover: hover) {
  .js-enabled .js-enabled-text {
    display: block;
  }
  .ds_has-hide-page .ds_page {
    margin-top: 80px;
  }
}
@media (min-width: 768px) {
  .ds_hide-page {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    background-color: rgba(255, 255, 255, 0.9);
    left: auto;
    outline: 1px solid #ebebeb;
    outline-offset: -1px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .ds_hide-page {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .ds_hide-page {
    margin-bottom: 2rem;
  }
}
@media (min-width: 768px) {
  @supports (position: sticky) and (display: grid) {
    .ds_hide-page {
      bottom: 8px;
      position: sticky;
    }
  }
}
@media (min-width: 768px) {
  .ds_hide-page__text {
    margin: 8px 0;
  }
}
@media (min-width: 768px) {
  .ds_has-hide-page .ds_page {
    margin-top: 0;
  }
}
@supports (display: grid) {
  .ds_hide-page {
    width: 100%;
  }
  @media (min-width: 768px) {
    .ds_hide-page {
      align-self: start;
      grid-area: 1/9/3/13;
      right: 8px;
      top: 8px;
    }
  }
  @media (min-width: 992px) {
    .ds_hide-page {
      grid-area: 1/10/3/13;
    }
  }
}
/*------------------------------------*\
    ICON
\*------------------------------------*/
.ds_icon {
  fill: currentColor;
  height: 1.5em;
  vertical-align: middle;
  width: 1.5em;
}

.ds_icon--12 {
  width: 12px;
  height: 12px;
}

.ds_icon--16 {
  width: 16px;
  height: 16px;
}

.ds_icon--20 {
  width: 20px;
  height: 20px;
}

.ds_icon--24 {
  width: 24px;
  height: 24px;
}

.ds_icon--28 {
  width: 28px;
  height: 28px;
}

.ds_icon--32 {
  width: 32px;
  height: 32px;
}

.ds_icon--36 {
  width: 36px;
  height: 36px;
}

.ds_icon--40 {
  width: 40px;
  height: 40px;
}

.ds_icon--44 {
  width: 44px;
  height: 44px;
}

.ds_icon--48 {
  width: 48px;
  height: 48px;
}

.ds_icon--52 {
  width: 52px;
  height: 52px;
}

.ds_icon--56 {
  width: 56px;
  height: 56px;
}

.ds_icon--60 {
  width: 60px;
  height: 60px;
}

.ds_icon--64 {
  width: 64px;
  height: 64px;
}

.ds_icon--68 {
  width: 68px;
  height: 68px;
}

.ds_icon--72 {
  width: 72px;
  height: 72px;
}

.ds_icon--76 {
  width: 76px;
  height: 76px;
}

.ds_icon--80 {
  width: 80px;
  height: 80px;
}

.ds_icon--fill {
  width: 100%;
  height: 100%;
}

/*------------------------------------*\
    #INSET TEXT
\*------------------------------------*/
.ds_inset-text {
  border-left: 8px solid #b3b3b3;
  padding: 16px;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ds_inset-text {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_inset-text {
    margin-bottom: 2rem;
  }
}
.ds_inset-text > :last-child {
  margin-bottom: 0;
}

.ds_inset-text__text > :last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .ds_inset-text {
    padding-left: 32px;
    padding-right: 64px;
  }
}
/*------------------------------------*\
    LINK ITEM
    Navigation element for a simple link with supporting metadata
\*------------------------------------*/
.ds_link-item {
  padding-bottom: 1.5rem;
  border-bottom: 2px #ebebeb solid;
  margin: 0;
}
@media (min-width: 768px) {
  .ds_link-item {
    padding-bottom: 1.5rem;
  }
}
.ds_link-item__title {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  margin: 0 !important;
}
@media (min-width: 768px) {
  .ds_link-item__title {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}
.ds_link-item__summary {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  margin: 0;
  margin-top: 0.5rem;
}
@media (min-width: 768px) {
  .ds_link-item__summary {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media (min-width: 768px) {
  .ds_link-item__summary {
    margin-top: 0.5rem;
  }
}

/*------------------------------------*\
    LINK LIST
\*------------------------------------*/
.ds_link-list {
  margin-right: -32px;
  overflow: hidden;
  list-style: none;
  margin: 0;
  padding: 0;
}
.ds_link-list > * {
  margin-right: 32px;
}
@supports (display: grid) {
  .ds_link-list {
    display: grid;
    grid-gap: 0 32px;
    margin-right: 0;
    overflow: visible;
  }
  .ds_link-list > * {
    margin-left: 0;
    margin-right: 0;
    width: auto !important;
  }
}
@media (max-width: 767px) {
  .ds_link-list .ds_link-item + .ds_link-item {
    margin-top: 1.5rem;
  }
}
@media (max-width: 767px) and (min-width: 768px) {
  .ds_link-list .ds_link-item + .ds_link-item {
    margin-top: 1.5rem;
  }
}
@media (min-width: 768px) {
  .ds_link-list .ds_link-item {
    float: left;
    width: calc(100% * 0.3333333333 - 32px);
  }
  .ds_link-list .ds_link-item:nth-child(3n+1) {
    clear: left;
    margin-left: 0;
  }
  @supports (display: grid) {
    .ds_link-list {
      display: grid;
      row-gap: 1.5rem;
      grid-template-columns: 1fr 1fr 1fr;
    }
  }
}

/*------------------------------------*\
    PAGE METADATA
\*------------------------------------*/
.ds_metadata {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  margin: 0;
  overflow: hidden;
}
.ds_metadata__key {
  display: inline;
  font-weight: normal;
}
.ds_metadata__key::after {
  content: ":";
}
.ds_metadata__value {
  display: inline;
  font-weight: 700;
  margin-left: 0;
}
.ds_metadata__value a {
  font-weight: 400;
}

/**
 * Alternative display collapsing the metadata into a single line
 */
.ds_metadata--inline {
  font-size: 0.75rem;
  line-height: 1.3333333333;
  color: #727272;
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .ds_metadata--inline {
    font-size: 0.875rem;
    line-height: 1.7142857143;
  }
}
.ds_metadata--inline .ds_metadata__item {
  display: inline;
  position: relative;
}
.ds_metadata--inline .ds_metadata__item:not(:first-child) {
  margin-left: 0.25em;
  padding-left: calc(0.5em + 1px);
}
.ds_metadata--inline .ds_metadata__item:not(:first-child)::before {
  background: currentColor;
  content: "";
  height: calc(1em - 1px);
  left: 0;
  position: absolute;
  top: 2px;
  width: 1px;
}
.ds_metadata--inline .ds_metadata__value {
  font-weight: 400;
}

/*------------------------------------*\
    NOTIFICATION BANNER
\*------------------------------------*/
.ds_notification {
  background: #333333;
  color: #ffffff;
  margin-bottom: 1px;
}
.ds_notification > :last-child {
  margin-bottom: 0;
}
.ds_notification--success {
  background: #428542;
}
.ds_notification__content {
  padding: 16px 0 15px;
  position: relative;
}
.ds_notification__content--has-close {
  padding-right: 40px;
}
.ds_notification__text {
  display: inline-block;
  margin-right: 16px;
}
.ds_notification__text > :last-child {
  margin-bottom: 0;
}
.ds_notification__actions {
  margin-bottom: -16px;
  margin-top: 32px;
  text-align: center;
}
.ds_notification__actions > * {
  margin-bottom: 16px;
  margin-top: 0;
  white-space: nowrap;
  width: 100%;
}
.ds_notification__icon {
  display: block;
  position: absolute;
  height: 32px;
  line-height: 0;
  margin-left: -4px;
  margin-top: -4px;
  padding: 2px;
  width: 32px;
}
.ds_notification__icon + .ds_notification__text {
  margin-left: 40px;
}
@media (min-width: 768px) {
  .ds_notification__icon + .ds_notification__text {
    margin-left: 64px;
  }
}
.ds_notification__icon--colour {
  color: #fdd522;
}
.ds_notification__icon--inverse {
  background-color: #ffffff;
  border-radius: 100px;
  color: #333333;
}
.ds_notification__icon--inverse.ds_notification__icon--colour {
  background-color: #fdd522;
}
.ds_notification__close {
  background: transparent;
  border-width: 0;
  box-sizing: content-box;
  color: currentColor;
  display: none;
  font-size: 14px;
  height: 40px;
  margin: 0;
  padding: 0;
  position: absolute;
  right: -8px;
  top: 8px;
  width: 40px;
  min-height: 0;
  min-width: 0;
}
.ds_notification__close:focus {
  background-color: #fdd522;
  box-shadow: 0 3px #333333;
  color: #333333;
  outline: 0;
  transition-duration: 0s;
}
.ds_notification__close:hover:not(:focus) {
  background-color: transparent;
  color: currentColor;
  outline: 2px solid currentColor;
}
.ds_notification__close > * {
  pointer-events: none;
}

@media (min-width: 768px) {
  .ds_notification__close {
    top: 12px;
  }
  .ds_notification__icon {
    margin-top: 0;
  }
  .ds_notification__actions {
    text-align: left;
  }
  .ds_notification__actions > * {
    width: auto;
  }
  .ds_notification__actions > *:not(last-child) {
    margin-right: 16px;
  }
}
@supports (display: flex) {
  @media (min-width: 768px) {
    .ds_notification__actions {
      align-items: center;
      display: inline-flex;
      flex-wrap: wrap;
      width: auto;
    }
    .ds_notification__actions > * {
      flex-basis: auto;
      flex-grow: initial;
    }
  }
}
.js-enabled .ds_notification__close {
  display: block;
}

/*------------------------------------*\
    NOTIFICATION PANEL
\*------------------------------------*/
.ds_notification-panel {
  margin-bottom: 1.5rem;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  background: #f8f8f8;
  text-align: center;
}
@media (min-width: 768px) {
  .ds_notification-panel {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 768px) {
  .ds_notification-panel {
    padding-top: 3rem;
  }
}
@media (min-width: 768px) {
  .ds_notification-panel {
    padding-bottom: 3rem;
  }
}
@media (min-width: 768px) {
  .ds_notification-panel {
    padding-left: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_notification-panel {
    padding-right: 2rem;
  }
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_notification-panel {
    outline: 4px solid currentColor !important;
    outline-offset: -4px !important;
  }
}
.ds_notification-panel:not(:first-child) {
  margin-top: 2.5rem;
}
@media (min-width: 768px) {
  .ds_notification-panel:not(:first-child) {
    margin-top: 3rem;
  }
}
.ds_notification-panel--success {
  background: #428542;
  color: #ffffff;
}
.ds_notification-panel__title {
  font-size: 1.875rem;
  line-height: 1.3333333333;
  font-weight: 700;
  margin-bottom: 32px;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ds_notification-panel__title {
    font-size: 2.75rem;
    line-height: 1.2727272727;
  }
}
@media (min-width: 768px) {
  .ds_notification-panel__title {
    margin-bottom: 1rem;
  }
}
.ds_notification-panel__content > :last-child {
  margin-bottom: 0;
}
.ds_notification-panel__reference {
  font-size: 1.1875rem;
  line-height: 1.6842105263;
}
@media (min-width: 768px) {
  .ds_notification-panel__reference {
    font-size: 1.5rem;
    line-height: 1.6666666667;
  }
}

/*------------------------------------*\
    ARTICLE HEADER
    title block for articles
\*------------------------------------*/
.ds_page-header {
  margin: 16px 0 32px;
}
.ds_page-header__title {
  margin-bottom: 0;
}
.ds_page-header__metadata {
  margin-top: 8px;
}

@media (min-width: 768px) {
  .ds_page-header {
    margin-top: 32px;
  }
  .ds_page-header__label + .ds_page-header__title {
    margin-top: -8px;
  }
}
/*------------------------------------*\
    PAGINATION
\*------------------------------------*/
.ds_pagination {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  text-align: center;
}
@media (min-width: 768px) {
  .ds_pagination {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_pagination__list {
  list-style-type: none;
  margin: 0;
}
.ds_pagination__load-more + .ds_pagination__list {
  display: none;
}
.ds_pagination__item {
  display: inline-block;
  margin-bottom: 4px;
}
.ds_pagination__link {
  display: block;
  position: relative;
  transition: background-color 0.2s, outline-color 0.2s;
  z-index: 1;
  outline: 0 !important;
  line-height: 40px;
  min-height: 40px;
  min-width: 40px;
  text-decoration: none;
}
.ds_pagination__link:focus {
  background-color: #fdd522;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  color: #333333;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_pagination__link:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_pagination__link:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_pagination__link.ds_current {
  background-color: #f8f8f8;
  box-shadow: inset 0 -3px 0 0px currentColor;
  pointer-events: none;
}
.ds_pagination__link--text:not(.ds_pagination__link--icon) {
  padding-left: 24px;
  padding-right: 24px;
  width: auto;
}
.ds_pagination__link--ellipsis {
  min-width: 0;
  pointer-events: none;
}
.ds_pagination__link > * {
  pointer-events: none;
}

@media (min-width: 768px) {
  .ds_pagination__load-more + .ds_pagination__list {
    display: block;
  }
  .ds_pagination__load-more {
    display: none;
  }
  .ds_pagination__link--icon {
    padding-left: 24px;
    padding-right: 24px;
    width: auto;
  }
}
@media (max-width: 767px) {
  .ds_pagination__link--icon .ds_pagination__link-label {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px;
  }
}
@supports (display: flex) {
  .ds_pagination__item {
    margin-bottom: 0;
  }
  .ds_pagination__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    justify-content: center;
  }
  .ds_pagination__link {
    align-items: center;
    display: flex;
    justify-content: center;
  }
}
/*------------------------------------*\
    PHASE BANNER
\*------------------------------------*/
.ds_phase-banner {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  background: #ebebeb;
  clear: both;
  line-height: 24px;
  padding: 16px 0;
}
@media (min-width: 768px) {
  .ds_phase-banner {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_phase-banner.no-bottom-margin {
  margin-bottom: 0;
}
.ds_phase-banner__content {
  display: table;
  margin-bottom: 0;
}
.ds_phase-banner__tag {
  margin-right: 1em;
}
.ds_phase-banner__text {
  display: table-cell;
}

@supports (display: flex) {
  .ds_phase-banner__content {
    align-items: baseline;
    display: flex;
  }
  .ds_phase-banner__content--stacked {
    flex-direction: column;
  }
  .ds_phase-banner__content--stacked > *:not(:last-child) {
    margin-bottom: 8px;
  }
}
/*------------------------------------*\
    SEARCH RESULT
\*------------------------------------*/
.ds_search-result {
  margin: 0;
  padding: 0;
  padding-top: 1rem;
  padding-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ds_search-result {
    padding-top: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_search-result {
    padding-bottom: 1.5rem;
  }
}
.ds_search-result + .ds_search-result:not(.ds_search-result--promoted) {
  border-top: 1px #b3b3b3 solid;
}
.ds_search-result--promoted {
  padding-top: 0;
}
.ds_search-result--promoted-content {
  background: #f8f8f8;
  border-left: 3px solid #0065bd;
  padding-top: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 1rem;
}
@media (min-width: 768px) {
  .ds_search-result--promoted-content {
    padding-top: 0.5rem;
  }
}
@media (min-width: 768px) {
  .ds_search-result--promoted-content {
    padding-left: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_search-result--promoted-content {
    padding-right: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_search-result--promoted-content {
    padding-bottom: 1rem;
  }
}
.ds_search-result--promoted-title {
  margin-bottom: 0.5rem;
  font-size: 0.75rem;
  line-height: 1.3333333333;
  color: #727272;
  font-weight: 700;
}
@media (min-width: 768px) {
  .ds_search-result--promoted-title {
    margin-bottom: 0.5rem;
  }
}
@media (min-width: 768px) {
  .ds_search-result--promoted-title {
    font-size: 0.875rem;
    line-height: 1.7142857143;
  }
}
.ds_search-result__title {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  margin: 0 !important;
  margin-bottom: 0.5rem !important;
}
@media (min-width: 768px) {
  .ds_search-result__title {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}
@media (min-width: 768px) {
  .ds_search-result__title {
    margin-bottom: 0.5rem !important;
  }
}
.ds_search-result__title:last-child {
  margin-bottom: 0 !important;
}
.ds_search-result__sub-title {
  font-size: 1rem;
  line-height: 1.5;
  margin: 0;
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .ds_search-result__sub-title {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}
@media (min-width: 768px) {
  .ds_search-result__sub-title {
    margin-bottom: 0.5rem;
  }
}
.ds_search-result__summary {
  font-size: 1rem;
  line-height: 1.5;
  margin: 0;
}
@media (min-width: 768px) {
  .ds_search-result__summary {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}
.ds_search-result__summary mark {
  background-color: inherit;
  color: inherit;
  font-weight: 700;
}
.ds_search-result__metadata {
  margin-top: 0.5rem;
  font-size: 0.75rem;
  line-height: 1.6666666667;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ds_search-result__metadata {
    margin-top: 0.5rem;
  }
}
@media (min-width: 768px) {
  .ds_search-result__metadata {
    font-size: 0.875rem;
    line-height: 1.4285714286;
  }
}
.ds_search-result__has-media {
  display: flex;
}
.ds_search-result__media-wrapper {
  padding-top: 2px;
  padding-right: 1rem;
}
@media (min-width: 768px) {
  .ds_search-result__media-wrapper {
    padding-right: 1rem;
  }
}
.ds_search-result__media {
  width: 96px;
}
@media (min-width: 480px) {
  .ds_search-result__media {
    width: 128px;
  }
}
.ds_search-result__context {
  margin: 0;
  padding: 0;
  margin-top: 1rem;
  padding-left: calc(1rem + 3px);
  font-size: 0.875rem;
  line-height: 1.4285714286;
  position: relative;
}
@media (min-width: 768px) {
  .ds_search-result__context {
    margin-top: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_search-result__context {
    padding-left: calc(1rem + 3px);
  }
}
@media (min-width: 768px) {
  .ds_search-result__context {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_search-result__context:before {
  background: #0065bd;
  content: "";
  height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
}
@media (min-width: 768px) {
  .ds_search-result__context:before {
    height: 24px;
  }
}
.ds_search-result__context-key {
  color: #727272;
  margin: 0;
  padding: 0;
}
.ds_search-result__context-value {
  margin: 0;
  padding: 0;
  margin-top: 0.5rem;
}
@media (min-width: 768px) {
  .ds_search-result__context-value {
    margin-top: 0.5rem;
  }
}
.ds_search-result__sublinks {
  margin-bottom: 0;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .ds_search-result__sublinks {
    margin-top: 1rem;
  }
}
.ds_search-result__sublinks-title {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
}

/*------------------------------------*\
    SEARCH RESULTS
\*------------------------------------*/
.ds_search-results__title {
  font-size: 1rem;
  line-height: 1.5;
  margin-top: 0 !important;
  margin-bottom: 0.5rem !important;
  font-weight: 400;
}
@media (min-width: 768px) {
  .ds_search-results__title {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}
@media (min-width: 768px) {
  .ds_search-results__title {
    margin-bottom: 0.5rem !important;
  }
}
.ds_search-results__title-query {
  font-weight: 700;
}
.ds_search-results__suggestions + .ds_search-results__title {
  margin-top: 1rem !important;
}
@media (min-width: 768px) {
  .ds_search-results__suggestions + .ds_search-results__title {
    margin-top: 1rem !important;
  }
}
.ds_search-results__list {
  border-bottom: 1px #b3b3b3 solid;
  list-style-type: none;
  margin: 0;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ds_search-results__list {
    margin-bottom: 2rem;
  }
}
.ds_search-results__related {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  padding: 1rem;
  background: #f8f8f8;
}
@media (min-width: 768px) {
  .ds_search-results__related {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media (min-width: 768px) {
  .ds_search-results__related {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_search-results__related {
    margin-bottom: 2rem;
  }
}
.ds_search-results__related > :last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ds_search-results__related {
    padding: 1rem;
  }
}
.ds_search-results__related-title {
  font-size: 1rem;
  line-height: 1.5;
  margin: 0;
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .ds_search-results__related-title {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}
@media (min-width: 768px) {
  .ds_search-results__related-title {
    margin-bottom: 0.5rem;
  }
}

/*------------------------------------*\
    #SEQUENTIAL NAVIGATION
    previous and next buttons
\*------------------------------------*/
.ds_sequential-nav {
  margin-bottom: 56px;
  margin-top: 56px;
  overflow: hidden;
}

@supports (display: grid) {
  .ds_sequential-nav {
    overflow: initial;
  }
}
.ds_sequential-nav__button {
  display: block;
  position: relative;
  transition: background-color 0.2s, outline-color 0.2s;
  z-index: 1;
  outline: 0 !important;
  background: transparent;
  display: inline-block;
  line-height: 24px;
  padding: 12px 4px;
  position: relative;
  text-decoration: none;
  width: 100%;
}
.ds_sequential-nav__button:focus {
  background-color: #fdd522;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  color: #333333;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_sequential-nav__button:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_sequential-nav__button:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_sequential-nav__button:not([href]) {
  display: none;
}
.ds_sequential-nav__button > * {
  pointer-events: none;
}
.ds_sequential-nav__button--left::before, .ds_sequential-nav__button--right::before {
  content: "";
  height: 56px;
  width: 56px;
  background-color: #0065bd;
  background-position: center;
  border-radius: 56px;
  border: 2px solid #0065bd;
  display: inline-block;
  position: absolute;
  top: 8px;
  transition: background-color 0.2s;
}
.ds_sequential-nav__button--left::after, .ds_sequential-nav__button--right::after {
  color: #ffffff;
  position: absolute;
  top: 25px;
}
.ds_sequential-nav__button--left {
  padding-left: 73px;
  text-align: left;
}
.ds_sequential-nav__button--left::before {
  left: 4px;
}
.ds_sequential-nav__button--left::after {
  content: "";
  background-color: transparent;
  border-style: solid;
  border-width: 0px 0px 5.5px 5.5px;
  border-top-color: transparent;
  display: inline-block;
  height: 22px;
  width: 22px;
  transform: rotate(-315deg);
  left: 24px;
}
.ds_sequential-nav__button--right {
  text-align: right;
  float: right;
  padding-right: 73px;
  text-align: right;
}
.ds_sequential-nav__button--right::before {
  right: 4px;
}
.ds_sequential-nav__button--right::after {
  content: "";
  background-color: transparent;
  border-style: solid;
  border-width: 0px 0px 5.5px 5.5px;
  border-top-color: transparent;
  display: inline-block;
  height: 22px;
  width: 22px;
  transform: rotate(-135deg);
  right: 24px;
}

.ds_sequential-nav__button:hover::before {
  background-color: #00437e;
  border-color: #00437e;
}

.ds_sequential-nav__button:focus::before {
  background-color: #333333;
  border-color: #333333;
}

.ds_sequential-nav__text {
  display: inline-block;
  padding-top: 24px;
  position: relative;
  width: 100%;
}
.ds_sequential-nav__text::before {
  color: #002d54;
  content: attr(data-label);
  font-size: 1rem;
  font-weight: 700;
  left: 0;
  position: absolute;
  right: 0;
  text-transform: uppercase;
  top: 0;
}
@media (min-width: 768px) {
  .ds_sequential-nav__text::before {
    font-size: 1rem;
  }
}

@media (min-width: 480px) {
  .ds_sequential-nav__item {
    width: calc(50% - 16px);
  }
  .ds_sequential-nav__item--prev {
    float: left;
  }
  .ds_sequential-nav__item--next {
    float: right;
  }
}
@supports (display: grid) {
  .ds_sequential-nav {
    display: grid;
    grid-gap: 32px 32px;
    grid-template-areas: "next" "prev";
  }
  .ds_sequential-nav__item {
    float: none;
    width: 100%;
  }
  .ds_sequential-nav__item--prev {
    grid-area: prev;
  }
  .ds_sequential-nav__item--next {
    grid-area: next;
  }
  @media (min-width: 480px) {
    .ds_sequential-nav {
      grid-template-columns: 1fr 1fr;
      grid-template-areas: "prev next";
    }
  }
}
/*------------------------------------*\
    SIDE NAVIGATION
\*------------------------------------*/
.ds_side-navigation {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  border: 1px solid #ebebeb;
  position: relative;
}
@media (min-width: 768px) {
  .ds_side-navigation {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_side-navigation {
    margin-bottom: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_side-navigation {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_side-navigation__expand {
  display: block;
  position: relative;
  transition: background-color 0.2s, outline-color 0.2s;
  z-index: 1;
  outline: 0 !important;
  background-color: #ffffff;
  color: #0065bd;
  cursor: pointer;
  font-weight: 700;
  margin: 0;
  padding: 16px 40px 16px 16px;
  position: sticky;
  text-align: left;
  text-decoration: none;
  top: 0;
  transition: background-color 0.2s, box-shadow 0.2s;
  width: 100%;
  z-index: 2;
}
.ds_side-navigation__expand:focus {
  background-color: #fdd522;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  color: #333333;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_side-navigation__expand:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_side-navigation__expand:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_side-navigation__expand--shadow {
  box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.15);
}
.ds_side-navigation__expand:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_side-navigation__expand:hover .side-navigation__expand-indicator {
  color: #00437e;
}
.ds_side-navigation__expand--shadow:focus {
  box-shadow: 0 3px #333333, 0px 8px 5px rgba(0, 0, 0, 0.15);
}
.ds_side-navigation__expand-indicator {
  content: "";
  background-color: transparent;
  border-style: solid;
  border-width: 0px 0px 0.1875em 0.1875em;
  border-top-color: transparent;
  display: inline-block;
  height: 0.75em;
  width: 0.75em;
  transform: rotate(-45deg);
  border-width: 0px 0px 3px 3px;
  position: absolute;
  right: 24px;
  top: 20px;
  transition: transform 0.2s, top 0.2s;
  pointer-events: none;
}
.ds_side-navigation #show-side-navigation:focus ~ .ds_side-navigation__expand {
  background: #fdd522;
  box-shadow: 0 3px #333333;
  color: #333333;
  transition-duration: 0s;
}
.ds_side-navigation #show-side-navigation:checked ~ .ds_side-navigation__expand .ds_side-navigation__expand-indicator {
  top: 24px;
  transform: rotate(-225deg);
}
.ds_side-navigation #show-side-navigation:checked ~ .ds_side-navigation__expand:not(:focus):not(:hover) {
  background-color: #f8f8f8;
  color: #333333;
}
#show-side-navigation:checked ~ .ds_side-navigation__list, #show-side-navigation:checked ~ .ds_side-navigation__list .ds_side-navigation__list {
  display: block;
}
.ds_side-navigation__list {
  display: none;
  list-style-type: none;
  margin: 8px 16px;
}
.ds_side-navigation__list .ds_side-navigation__list {
  margin: 0 0 0 16px;
}
.ds_side-navigation__item {
  position: relative;
  margin-bottom: 0;
}
.ds_side-navigation__item--disabled {
  text-decoration: line-through;
}
.ds_side-navigation__link {
  display: block;
  position: relative;
  transition: background-color 0.2s, outline-color 0.2s;
  z-index: 1;
  outline: 0 !important;
  margin-bottom: 2px;
  padding: 12px 40px 10px 16px;
  position: relative;
  text-decoration: none;
}
.ds_side-navigation__link:focus {
  background-color: #fdd522;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  color: #333333;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_side-navigation__link:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_side-navigation__link:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_side-navigation__link:not([href]) {
  pointer-events: none;
}
.ds_side-navigation__link:hover, .ds_side-navigation__link.ds_current {
  position: relative;
}
.ds_side-navigation__link:hover::before, .ds_side-navigation__link.ds_current::before {
  background: #0065bd;
  bottom: 0;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 2px;
}
.ds_side-navigation__link:focus {
  box-shadow: 0 3px #333333;
  z-index: 2;
}
.ds_side-navigation__link:focus::before {
  content: none;
}
.ds_side-navigation__link.ds_current:not(:focus) {
  background-color: #f8f8f8;
}
.ds_side-navigation__link.ds_current:not(:focus):hover {
  background-color: #f8f8f8;
}
.ds_side-navigation__link--inactive {
  pointer-events: none;
  background-color: #ebebeb;
}
.ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__link {
  padding-left: 24px;
}
.ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__link::before {
  background: #ebebeb;
  bottom: 12px;
  content: "";
  left: 12px;
  position: absolute;
  right: 100%;
  width: 4px;
  top: 12px;
}
.ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__link:hover::before, .ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__link.ds_current::before {
  background: #0065bd;
}
.ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__list .ds_side-navigation__link:focus::before {
  background: #333333;
}

@media (max-width: 767px) {
  .js-initialised.ds_side-navigation > .ds_side-navigation__list {
    margin: 0 16px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s, padding 0.2s;
  }
  .js-initialised.ds_side-navigation #show-side-navigation:checked ~ .ds_side-navigation__list {
    padding-bottom: 8px;
    padding-top: 8px;
  }
}
@media (min-width: 768px) {
  .ds_side-navigation {
    border-width: 0;
    line-height: 24px;
  }
  .ds_side-navigation__expand {
    display: none;
  }
  .ds_side-navigation__list {
    display: block !important;
    margin: 0;
    max-height: none !important;
  }
  .ds_side-navigation #show-side-navigation {
    display: none;
  }
}
/*
    SITE NAVIGATION
    containing site-navigation and mobile equivalent
*/
.ds_site-navigation {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  display: none;
}
@media (min-width: 768px) {
  .ds_site-navigation {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_site-navigation__toggle {
  display: none;
}
.ds_site-navigation__list {
  display: block;
  list-style-type: none;
  margin: 0;
}
.ds_site-navigation__item {
  margin-bottom: 0;
}
.ds_site-navigation__link {
  color: currentColor;
  display: block;
  padding: 8px 16px;
  text-decoration: none;
  white-space: nowrap;
}
.ds_site-navigation__link:focus {
  position: relative;
  z-index: 1;
}

@media (max-width: 767px) {
  .ds_site-navigation {
    background-color: #f8f8f8;
    margin: 0 -16px;
  }
  .ds_site-navigation--mobile {
    display: block;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s;
  }
  .ds_site-navigation__list {
    padding: 16px;
  }
  .ds_site-navigation__item:not(:last-child) {
    border-bottom: 1px solid #b3b3b3;
  }
  .ds_site-navigation__link {
    padding-bottom: 16px;
    padding-top: 16px;
  }
  .ds_site-navigation__link:hover:not(:focus), .ds_site-navigation__link.ds_current {
    border-left: 4px solid #0065bd;
    padding-left: 12px;
  }
  .ds_site-navigation__toggle:checked ~ .ds_site-navigation,
  .ds_site-navigation--open {
    border-top: 1px solid #ebebeb;
    max-height: none;
  }
  @supports (color: var(--mobile-menu-height)) {
    .ds_site-navigation__toggle:checked ~ .ds_site-navigation,
    .ds_site-navigation--open {
      max-height: var(--mobile-menu-height, none);
    }
  }
}
@media (min-width: 768px) {
  .ds_site-navigation {
    line-height: 2;
  }
  .ds_site-navigation:not(.ds_site-navigation--mobile) {
    display: block;
  }
  .ds_site-navigation__item {
    display: inline-block;
  }
  .ds_site-navigation__list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0 -16px;
  }
  .ds_site-navigation .ds_site-navigation__link {
    position: relative;
    transition-duration: 0s !important;
  }
  .ds_site-navigation .ds_site-navigation__link:hover:not(:focus) {
    background: transparent;
    outline-color: transparent;
  }
  .ds_site-navigation .ds_site-navigation__link::after {
    background-color: currentColor;
    bottom: -5px;
    content: "";
    height: 1px;
    left: 50%;
    opacity: 0;
    position: absolute;
    right: 50%;
    transition: left 0.2s, right 0.2s, opacity 0.2s;
  }
  .ds_site-navigation .ds_site-navigation__link:hover::after {
    left: 0;
    opacity: 1;
    right: 0;
  }
  .ds_site-navigation .ds_site-navigation__link::after {
    bottom: 0;
    height: 3px;
  }
  .ds_site-navigation .ds_site-navigation__link.ds_current:not(:focus) {
    background-color: #f8f8f8;
    color: #333333;
  }
  .ds_site-navigation .ds_site-navigation__link.ds_current:not(:focus):after {
    left: 0;
    opacity: 1;
    right: 0;
  }
  .ds_site-navigation a.ds_site-navigation__link:focus {
    box-shadow: 0 3px #333333;
    outline: none;
    padding-bottom: 5px;
  }
}
@media screen and (min-width: 768px) and (forced-colors: active) and (prefers-contrast: more) {
  .ds_site-navigation a.ds_site-navigation__link:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
@media (min-width: 768px) {
  .ds_site-navigation a.ds_site-navigation__link:focus::after {
    content: none;
  }
}
@media (min-width: 768px) {
  .ds_site-navigation a.ds_site-navigation__link:hover:not(:focus) {
    background-color: #d9effc;
  }
}
@media (min-width: 768px) {
  .ds_reversed .ds_site-navigation {
    color: #ffffff;
  }
}

/*------------------------------------*\
    BRANDING
\*------------------------------------*/
.ds_site-branding {
  overflow: hidden;
  padding: 12px 0;
  position: relative;
}
.ds_site-branding__logo {
  height: 32px;
  margin-right: 1.5rem;
}
.ds_site-branding__logo-image {
  height: 32px;
  pointer-events: none;
  width: auto;
}
.ds_site-branding__link {
  color: currentColor;
  display: inline-block;
  position: relative;
  text-decoration: none;
  position: relative;
  transition-duration: 0s !important;
}
.ds_site-branding__link:hover:not(:focus) {
  background: transparent;
  outline-color: transparent;
}
.ds_site-branding__link::after {
  background-color: currentColor;
  bottom: -5px;
  content: "";
  height: 2px;
  left: 50%;
  opacity: 0;
  position: absolute;
  right: 50%;
  transition: left 0.2s, right 0.2s, opacity 0.2s;
}
.ds_site-branding__link:hover::after {
  left: 0;
  opacity: 1;
  right: 0;
}
.ds_site-branding__title {
  font-weight: 300;
  line-height: 1.5rem;
}
.ds_site-branding__title::before {
  background: #0065bd;
  bottom: 12px;
  content: "";
  position: absolute;
  margin-left: -0.75rem;
  top: 12px;
  width: 1px;
}
.ds_site-branding__logo, .ds_site-branding__title {
  float: left;
}

@media (min-width: 768px) {
  .ds_site-branding__link {
    margin-bottom: 0;
  }
  .ds_site-branding__logo {
    height: 40px;
    margin-right: 3rem;
  }
  .ds_site-branding__logo-image {
    height: 40px;
  }
  .ds_site-branding__title {
    line-height: 40px;
  }
  .ds_site-branding__title::before {
    margin-left: -1.5rem;
  }
}
@supports (display: flex) {
  .ds_site-branding {
    align-items: center;
    display: flex;
    flex-flow: wrap;
    gap: 1rem 0;
  }
  .ds_site-branding__logo, .ds_site-branding__title {
    float: none;
  }
}
.ds_reversed .ds_site-branding {
  color: #ffffff;
}
.ds_reversed .ds_site-branding__logo {
  color: #ffffff;
}
.ds_reversed .ds_site-branding__logo:not(:last-child)::before {
  background-color: #ffffff;
}

/*------------------------------------*\
    SITE FOOTER
\*------------------------------------*/
.ds_site-footer {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  background-color: #ebebeb;
  border-top: 1px solid #b3b3b3;
  padding-top: 15px;
}
@media (min-width: 768px) {
  .ds_site-footer {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.ds_site-footer__content {
  padding-bottom: 32px;
}
.ds_site-footer__site-items {
  border-bottom: 1px solid #b3b3b3;
  font-size: 14px;
  line-height: 1.7142857143;
  list-style-type: none;
  margin: 0 0 23px;
}
.ds_site-footer__copyright-logo {
  display: block;
  margin-bottom: 8px;
  width: 32px;
  position: relative;
  transition-duration: 0s !important;
}
.ds_site-footer__copyright-logo:hover:not(:focus) {
  background: transparent;
  outline-color: transparent;
}
.ds_site-footer__copyright-logo::after {
  background-color: currentColor;
  bottom: -5px;
  content: "";
  height: 1px;
  left: 50%;
  opacity: 0;
  position: absolute;
  right: 50%;
  transition: left 0.2s, right 0.2s, opacity 0.2s;
}
.ds_site-footer__copyright-logo:hover::after {
  left: 0;
  opacity: 1;
  right: 0;
}
.ds_site-footer__copyright-logo img {
  height: auto;
  width: 100%;
}
.ds_site-footer__org {
  max-width: 160px;
  position: relative;
}
.ds_site-footer__org-logo {
  display: block;
  height: auto;
  width: 100%;
}
.ds_site-footer__org-link {
  display: block;
  position: relative;
  transition-duration: 0s !important;
}
.ds_site-footer__org-link:hover:not(:focus) {
  background: transparent;
  outline-color: transparent;
}
.ds_site-footer__org-link::after {
  background-color: currentColor;
  bottom: -5px;
  content: "";
  height: 1px;
  left: 50%;
  opacity: 0;
  position: absolute;
  right: 50%;
  transition: left 0.2s, right 0.2s, opacity 0.2s;
}
.ds_site-footer__org-link:hover::after {
  left: 0;
  opacity: 1;
  right: 0;
}
.ds_site-footer .ds_site-footer__org-link,
.ds_site-footer .ds_site-footer__copyright-logo {
  color: currentColor !important;
}

.ds_reversed .ds_site-footer__content {
  color: #ffffff;
}

.ds_reversed .ds_footer__site-items {
  border-color: rgba(255, 255, 255, 0.2);
}

.ds_site-items__item {
  display: inline-block;
  margin-bottom: 16px;
}
.ds_site-items__item:not(:last-child) {
  margin-right: 20px;
}

@media (min-width: 768px) {
  .ds_site-footer {
    line-height: 24px;
  }
  .ds_site-footer__copyright {
    padding-left: 48px;
    position: relative;
  }
  .ds_site-footer__copyright-logo {
    position: absolute;
    left: 0;
    top: 2px;
  }
  .ds_site-footer__content {
    margin-right: -32px;
    overflow: hidden;
  }
  .ds_site-footer__content > * {
    margin-right: 32px;
  }
  @supports (display: grid) {
    .ds_site-footer__content {
      display: grid;
      grid-gap: 0 32px;
      margin-right: 0;
      overflow: visible;
    }
    .ds_site-footer__content > * {
      margin-left: 0;
      margin-right: 0;
      width: auto !important;
    }
  }
  .ds_site-footer__copyright {
    float: left;
    width: calc(100% * 0.6666666667 - 32px);
  }
  .ds_site-footer__org {
    float: right;
    width: calc(100% * 0.25 - 32px);
  }
  @supports (display: grid) {
    .ds_site-footer__content {
      display: grid;
      grid-gap: 0 32px;
      grid-template-columns: repeat(12, 1fr);
      grid-template-areas: "a a a a a a a a a a a a" "b b b b b b b b . c c c";
    }
    .ds_site-footer__site-items {
      grid-area: a;
    }
    .ds_site-footer__copyright {
      grid-area: b;
    }
    .ds_site-footer__org {
      grid-area: c;
      justify-self: right;
      width: 100% !important;
    }
  }
}
/*------------------------------------*\
    SITE HEADER
\*------------------------------------*/
.ds_site-header {
  background-color: #ffffff;
  border-bottom: 1px solid #ebebeb;
  margin-bottom: -1px;
  position: relative;
}
.ds_site-header::before {
  background: #0065bd;
  display: block;
  content: "";
  height: 4px;
}
.ds_site-header--gradient::before {
  background: linear-gradient(to right, #002d54, #0065bd);
}
.ds_site-header__content {
  overflow: auto;
}
.ds_site-header .ds_site-branding {
  float: left;
}
.ds_site-header .ds_site-header__controls {
  float: right;
  height: calc(100% + 1px);
  margin-bottom: -1px;
}
.ds_site-header .ds_site-navigation {
  clear: both;
}
.ds_site-header__search {
  float: right;
  margin: 8px 0;
}
.ds_site-header__search .ds_input__wrapper {
  margin: 0;
}
.ds_site-header__control {
  color: inherit;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 400;
  min-height: 48px;
  margin: 0 -16px -1px 0;
  padding: 16px;
  display: block;
  position: relative;
  transition: background-color 0.2s, outline-color 0.2s;
  z-index: 1;
  outline: 0 !important;
}
.ds_site-header__control:focus {
  background-color: #fdd522;
  box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
  color: #333333;
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_site-header__control:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
.ds_site-header__control:hover:not(:focus) {
  background-color: #d9effc;
}
.ds_site-header__control--active {
  background-color: #f8f8f8;
  box-shadow: -1px -1px 0px rgba(0, 0, 0, 0.08);
}
.ds_site-header__control--active .ds_site-header__control-icon {
  display: none;
}
.ds_site-header__control--active .ds_site-header__control-icon--active-icon {
  display: block;
}
.ds_site-header__control-icon {
  height: 24px;
  width: 24px;
}
.ds_site-header__control-icon--active-icon {
  display: none;
}
.ds_site-header__control-text {
  float: left;
  margin-right: 8px;
  pointer-events: none;
}
.ds_site-header__navigation {
  border-top: 1px solid #ebebeb;
  margin-top: -1px;
}

@supports (display: grid) {
  .ds_site-header__content {
    align-items: center;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas: "branding controls" "nav nav" "search search";
    overflow: initial;
  }
  .ds_site-header .ds_site-branding {
    grid-area: branding;
  }
  .ds_site-header__controls {
    grid-area: controls;
  }
  .ds_site-header__search {
    grid-area: search;
  }
  .ds_site-header .ds_site-navigation--mobile {
    grid-area: nav;
  }
  @media (min-width: 768px) {
    .ds_site-header__content {
      grid-template-columns: auto max-content;
      grid-template-areas: "branding search";
    }
  }
}
@supports (display: flex) {
  .ds_site-header__control {
    align-items: center;
    display: flex;
    height: 100%;
  }
}
@media (min-width: 768px) {
  .ds_site-header__controls {
    display: none;
  }
}
/*------------------------------------*\
    SEARCH BOX
\*------------------------------------*/
.ds_site-search {
  box-sizing: border-box;
  color: #333333;
  min-height: 48px;
}
.ds_site-search__input {
  background: #ebebeb;
  border-width: 0;
  margin-bottom: 0;
  min-height: 48px;
  padding-left: 20px;
}
.ds_site-search__input:focus {
  box-shadow: inset 0 0 0 4px;
}
.ds_site-search__input:not(:focus) {
  outline: 2px solid transparent;
}
.ds_site-search--large {
  margin-bottom: 48px;
}

@media (min-width: 768px) {
  .ds_site-search {
    min-height: 48px;
  }
  .ds_site-search__button {
    height: 48px;
    width: 48px;
  }
}
.ds_reversed .ds_site-search .ds_site-search__button {
  background-color: #002d54;
}

/*------------------------------------*\
    #SKIP LINKS
\*------------------------------------*/
.ds_skip-links {
  position: relative;
}

.ds_skip-links__list {
  list-style-type: none;
  margin: 0;
}

.ds_skip-links__item {
  margin: 0;
}

.ds_skip-links__link {
  clip: rect(1px 1px 1px 1px);
  display: block;
  height: 1px;
  left: 10px;
  overflow: hidden;
  padding: 7px;
  position: absolute;
  top: 10px;
  width: 1px;
}
.ds_skip-links__link:focus {
  clip: auto;
  height: auto;
  width: auto;
  z-index: 10000;
}

/*------------------------------------*\
    #STEP NAVIGATION
    Step navigation is an enhancement the DS accordion
\*------------------------------------*/
.ds_step-navigation {
  counter-reset: section;
}
.ds_step-navigation__title {
  font-size: 19px;
  line-height: 1.5rem;
}
.ds_step-navigation__title-link {
  display: block;
  border-top: 1px solid #ebebeb;
  border-bottom: 1px solid #ebebeb;
  margin-bottom: 1rem;
  margin-top: 0.5rem;
  padding-bottom: 1.5rem;
  padding-top: 1.5rem;
}
@media (min-width: 768px) {
  .ds_step-navigation__title-link {
    margin-bottom: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_step-navigation__title-link {
    margin-top: 0.5rem;
  }
}
@media (min-width: 768px) {
  .ds_step-navigation__title-link {
    padding-bottom: 1.5rem;
  }
}
@media (min-width: 768px) {
  .ds_step-navigation__title-link {
    padding-top: 1.5rem;
  }
}
.ds_step-navigation__current-link::before {
  content: "";
  position: absolute;
  left: -24px;
  right: 100%;
  height: 1px;
  background: #333333;
  margin-top: 12px;
}
.ds_step-navigation__count {
  background-color: #ffffff;
  border: 1px solid currentColor;
  border-radius: 20px;
  color: #333333;
  content: counter(section);
  counter-increment: section;
  display: block;
  font-size: 16px;
  font-weight: 700;
  height: 32px;
  left: -40px;
  line-height: 30px;
  position: absolute;
  text-align: center;
  top: 0.75rem;
  width: 32px;
}
.ds_current .ds_step-navigation__count {
  background-color: #f8f8f8;
  border: 2px solid #0065bd;
  line-height: 28px;
}
.ds_step-navigation .ds_accordion {
  margin-left: 40px;
}
.ds_step-navigation .ds_accordion-item {
  position: relative;
}
.ds_step-navigation .ds_accordion-item::before {
  background: #333333;
  bottom: -1.0625rem;
  content: "";
  display: block;
  left: -24px;
  position: absolute;
  top: 2.4375rem;
  width: 1px;
}
.ds_step-navigation .ds_accordion-item:last-child::before {
  bottom: 0 !important;
}
.ds_step-navigation .ds_accordion-item:last-child::after {
  background: #333333;
  bottom: -1px;
  content: "";
  display: block;
  height: 1px;
  left: -30px;
  position: absolute;
  width: 13px;
}
.ds_step-navigation__or, .ds_step-navigation__and {
  counter-increment: section -1;
}
.ds_step-navigation__or .ds_step-navigation__count, .ds_step-navigation__and .ds_step-navigation__count {
  background-color: transparent;
  border: none;
}

@media (min-width: 768px) {
  .ds_step-navigation:not(.ds_step-navigation--small) .ds_step-navigation__count {
    font-size: 19px;
    height: 40px;
    left: -48px;
    line-height: 38px;
    width: 40px;
  }
  .ds_step-navigation:not(.ds_step-navigation--small) .ds_current .ds_step-navigation__count {
    line-height: 36px;
  }
  .ds_step-navigation:not(.ds_step-navigation--small) .ds_step-navigation__current-link::before {
    left: -28px;
    margin-top: 16px;
  }
  .ds_step-navigation:not(.ds_step-navigation--small) .ds_accordion {
    margin-left: 48px;
  }
  .ds_step-navigation:not(.ds_step-navigation--small) .ds_accordion-item::before {
    bottom: -1.0625rem;
    left: -28px;
    top: 3.0625rem;
  }
  .ds_step-navigation:not(.ds_step-navigation--small) .ds_accordion-item:last-child::after {
    left: -34px;
  }
}
/*------------------------------------*\
    #SUMMARY LIST
\*------------------------------------*/
.ds_summary-list {
  list-style-type: none;
  margin-left: 0;
  margin-top: 2.5rem;
}
@media (min-width: 768px) {
  .ds_summary-list {
    margin-top: 3rem;
  }
}
.ds_summary-list__key {
  font-weight: 700;
}
.ds_summary-list__key, .ds_summary-list__value, .ds_summary-list__actions {
  display: block;
  margin-bottom: 8px;
}
.ds_summary-list__item {
  padding-bottom: 8px;
  position: relative;
  margin-bottom: calc(1rem + -1px);
}
@media (min-width: 768px) {
  .ds_summary-list__item {
    margin-bottom: calc(1rem + -1px);
  }
}
.ds_summary-list__item::after {
  background: #b3b3b3;
  bottom: -1px;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  right: 0;
}
.ds_summary-list__answer::before, .ds_summary-list__answer::after {
  content: "";
}
.ds_summary-list--no-border .ds_summary-list__item::after {
  content: none;
}

@media (min-width: 768px) {
  .ds_summary-list {
    border-collapse: collapse;
    display: table;
    width: 100%;
  }
  .ds_summary-list__item {
    display: table-row;
  }
  .ds_summary-list__key, .ds_summary-list__value, .ds_summary-list__actions {
    display: table-cell;
    padding: 16px;
  }
  .ds_summary-list__key {
    padding-left: 0;
    width: 50%;
  }
  .ds_summary-list__value {
    width: 50%;
  }
  .ds_summary-list__actions {
    padding-right: 0;
    text-align: right;
  }
}
/*------------------------------------*\
    TABLES
\*------------------------------------*/
.ds_table {
  width: 100%;
}
.ds_table tbody,
.ds_table thead,
.ds_table tfoot {
  border: 1px solid #b3b3b3;
}
.ds_table th {
  background-color: #ebebeb;
  font-weight: 700;
  position: relative;
  text-align: left;
}
.ds_table th,
.ds_table td {
  vertical-align: top;
}
.ds_table th[colspan] {
  border: 1px solid #b3b3b3;
}
.ds_table th:not(:first-child)::before {
  border-left: 1px solid #b3b3b3;
  bottom: 8px;
  content: "";
  left: -1px;
  position: absolute;
  top: 8px;
}
.ds_table tr > * {
  padding: 8px 16px 8px 8px;
}
.ds_table tr {
  border-bottom: 1px solid #ebebeb;
}
.ds_table tr:last-child {
  border-bottom-color: #b3b3b3;
}
.ds_table thead > tr:last-child {
  border-bottom-width: 0;
}
.ds_table tbody > tr > td {
  background-color: #ffffff;
}
.ds_table tbody > tr:nth-child(even) > td {
  background-color: #f8f8f8;
}
.ds_table caption {
  font-size: 1rem;
  font-weight: 700;
  line-height: 24px;
  margin-bottom: 16px;
  text-align: left;
}
@media (min-width: 768px) {
  .ds_table caption {
    line-height: 32px;
  }
}

@media (max-width: 767px) {
  .ds_table.js-is-scrolling[data-smallscreen=scrolling] {
    display: block;
    max-width: 100%;
    overflow-x: auto;
  }
  .ds_table.js-is-scrolling[data-smallscreen=scrolling] tr > :first-child {
    left: 0;
    position: sticky;
    z-index: 1;
  }
  .ds_table.js-is-scrolling[data-smallscreen=scrolling] caption {
    display: block;
    left: 0;
    position: sticky;
  }
  .ds_table.js-is-scrolling[data-smallscreen=scrolling] tr > :first-child::after {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.07), rgba(0, 0, 0, 0));
    content: "";
    height: 100%;
    position: absolute;
    right: -10px;
    top: 0;
    width: 10px;
  }
  .ds_table.js-is-scrolling[data-smallscreen=scrolling] tr > :first-child::before {
    background: #b3b3b3;
    content: "";
    height: 100%;
    left: -1px;
    position: absolute;
    top: 0;
    width: 1px;
  }
  .ds_table.js-is-scrolling[data-smallscreen=scrolling] tr > th:first-child {
    background: #ebebeb;
  }
  .ds_table.js-is-scrolling[data-smallscreen=scrolling] tr > td:first-child {
    border-right: 1px solid #ebebeb;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] thead {
    clip: rect(1px 1px 1px 1px);
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    width: 1px;
    overflow: hidden;
    position: absolute !important;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] {
    border: 0;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tbody {
    border: none;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr {
    border: 0;
    display: block;
    margin-bottom: 16px;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr > * {
    display: block;
    overflow: auto;
    padding-left: calc(50% - 8px);
    position: relative;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr > * {
    border: 1px solid #b3b3b3;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr > td:not(:last-child) {
    border-bottom-color: #ebebeb;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr > th:last-child {
    border-width: 0;
    margin-top: 32px;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr > td:not(:first-child) {
    border-top-width: 0;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr > td::before {
    content: attr(data-heading);
    display: block;
    position: absolute;
    font-weight: 700;
    left: 0;
    margin-left: 16px;
    margin-right: 16px;
    text-align: left;
    width: calc(50% - 16px);
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr > td:first-child {
    box-shadow: inset 0 4px 0 #ebebeb;
    padding-top: 11px;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr > td:nth-child(odd) {
    background-color: #ffffff;
  }
  .js-enabled .ds_table[data-smallscreen=boxes] tr > td:nth-child(even) {
    background-color: #f8f8f8;
  }
}
/*------------------------------------*\
    TABS
\*------------------------------------*/
.ds_tabs {
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .ds_tabs {
    margin-bottom: 2rem;
  }
}
.ds_tabs__title {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  margin: 0;
  padding: 0;
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .ds_tabs__title {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}
@media (min-width: 768px) {
  .ds_tabs__title {
    margin-bottom: 0.5rem;
  }
}
.ds_tabs__list {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  margin-bottom: 2.5rem;
  list-style: none;
  margin-left: 0;
  padding-left: 32px;
}
@media (min-width: 768px) {
  .ds_tabs__list {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media (min-width: 768px) {
  .ds_tabs__list {
    margin-bottom: 3rem;
  }
}
.ds_tabs__tab {
  position: relative;
}
.ds_tabs__tab::before {
  background: currentColor;
  content: "—";
  height: 1px;
  left: -32px;
  overflow: hidden;
  position: absolute;
  top: 12px;
  width: 20px;
}
.ds_tabs__tab.ds_current {
  font-weight: 700;
}
.ds_tabs__content + .ds_tabs__content {
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  .ds_tabs__content + .ds_tabs__content {
    margin-top: 1.5rem;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised {
    margin-bottom: 1.5rem;
  }
}
@media (max-width: 767px) and (min-width: 768px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle {
    display: block;
    position: relative;
    transition: background-color 0.2s, outline-color 0.2s;
    z-index: 1;
    outline: 0 !important;
    background-color: #ffffff;
    border: 2px solid #ebebeb;
    color: #0065bd;
    font-weight: 700;
    margin: 0;
    padding: 14px 38px 14px 14px;
    text-align: left;
    text-decoration: none;
    width: 100%;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle:focus {
    background-color: #fdd522;
    box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
    color: #333333;
  }
}
@media screen and (max-width: 767px) and (forced-colors: active) and (prefers-contrast: more) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle:hover:not(:focus) {
    background-color: #d9effc;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle:hover:not(:focus) {
    color: #00437e;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle::after {
    content: "";
    background-color: transparent;
    border-style: solid;
    border-width: 0px 0px 0.1875em 0.1875em;
    border-top-color: transparent;
    display: inline-block;
    height: 0.75em;
    width: 0.75em;
    transform: rotate(-45deg);
    border-width: 0px 0px 3px 3px;
    position: absolute;
    right: 16px;
    top: 17px;
    transition: transform 0.2s;
    pointer-events: none;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle:focus {
    border: 0;
    padding: 16px 40px 16px 16px;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle:focus::after {
    right: 18px;
    top: 19px;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle + .ds_tabs__list {
    display: none;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle[aria-expanded=true] {
    border-bottom: 0;
    color: #333333;
    padding-bottom: 16px;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle[aria-expanded=true]:not(:focus) {
    background-color: #f8f8f8;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle[aria-expanded=true]:hover:not(:focus) {
    background-color: #d9effc;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle[aria-expanded=true]::after {
    top: 23px;
    transform: rotate(-225deg);
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle[aria-expanded=true]:focus::after {
    top: 25px;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__toggle[aria-expanded=true] + .ds_tabs__list {
    display: block;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__list {
    font-size: 1rem;
    line-height: 1.5;
    border: 2px solid #ebebeb;
    border-top: 0;
    margin: 0;
    padding: 8px 6px 6px 6px;
  }
}
@media (max-width: 767px) and (min-width: 768px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__list {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__tab {
    margin: 0 0 2px 0;
    padding: 0;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__tab::before {
    display: none;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__tab-link {
    display: block;
    position: relative;
    transition: background-color 0.2s, outline-color 0.2s;
    z-index: 1;
    outline: 0 !important;
    padding: 11px 16px;
    text-decoration: none;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__tab-link:focus {
    background-color: #fdd522;
    box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
    color: #333333;
  }
}
@media screen and (max-width: 767px) and (forced-colors: active) and (prefers-contrast: more) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__tab-link:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__tab-link:hover:not(:focus) {
    background-color: #d9effc;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__tab.ds_current {
    font-weight: 400;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__tab.ds_current .ds_tabs__tab-link:not(:focus) {
    background-color: #f8f8f8;
    border-left: 2px solid #0065bd;
    color: #333333;
    padding-left: 14px;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__title {
    display: none;
  }
}
@media (max-width: 767px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__current {
    margin-top: 0.5rem;
  }
}
@media (max-width: 767px) and (min-width: 768px) {
  .ds_tabs.ds_tabs--links .ds_tabs__navigation.js-initialised .ds_tabs__current {
    margin-top: 0.5rem;
  }
}
@media (min-width: 768px) {
  .ds_tabs.ds_tabs--links .ds_tabs__toggle {
    display: none;
  }
  .ds_tabs.ds_tabs--links .ds_tabs__current {
    display: none;
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__list, .ds_tabs.ds_tabs--links .ds_tabs__list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
  }
  .ds_tabs.js-initialised .ds_tabs__tab-link, .ds_tabs.ds_tabs--links .ds_tabs__tab-link {
    display: block;
    position: relative;
    transition: background-color 0.2s, outline-color 0.2s;
    z-index: 1;
    outline: 0 !important;
    color: #333333;
    display: inline-block;
    padding: 16px 16px calc(16px - 2px);
  }
  .ds_tabs.js-initialised .ds_tabs__tab-link:focus, .ds_tabs.ds_tabs--links .ds_tabs__tab-link:focus {
    background-color: #fdd522;
    box-shadow: inset 0 -3px #333333, inset 0 -3px #333333;
    color: #333333;
  }
}
@media screen and (min-width: 768px) and (forced-colors: active) and (prefers-contrast: more) {
  .ds_tabs.js-initialised .ds_tabs__tab-link:focus, .ds_tabs.ds_tabs--links .ds_tabs__tab-link:focus {
    outline-color: highlight !important;
    outline-style: solid !important;
    outline-width: 2px !important;
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__tab-link:hover:not(:focus), .ds_tabs.ds_tabs--links .ds_tabs__tab-link:hover:not(:focus) {
    background-color: #d9effc;
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__tab-link:hover, .ds_tabs.ds_tabs--links .ds_tabs__tab-link:hover {
    color: #00437e;
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__tab-link:focus, .ds_tabs.ds_tabs--links .ds_tabs__tab-link:focus {
    color: #333333;
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__tab, .ds_tabs.ds_tabs--links .ds_tabs__tab {
    background-color: #f8f8f8;
    margin: 0;
  }
  .ds_tabs.js-initialised .ds_tabs__tab::before, .ds_tabs.ds_tabs--links .ds_tabs__tab::before {
    display: none;
  }
  .ds_tabs.js-initialised .ds_tabs__tab.ds_current, .ds_tabs.ds_tabs--links .ds_tabs__tab.ds_current {
    background-color: #ffffff;
    font-weight: 400;
    margin-bottom: -2px !important;
  }
  .ds_tabs.js-initialised .ds_tabs__tab.ds_current .ds_tabs__tab-link, .ds_tabs.ds_tabs--links .ds_tabs__tab.ds_current .ds_tabs__tab-link {
    border-top: 3px solid #0065bd;
    border-left: 2px solid #b3b3b3;
    border-right: 2px solid #b3b3b3;
    border-bottom: 0;
    color: #333333;
    padding: calc(16px - 3px) calc(16px - 2px) 16px;
    text-decoration: none;
  }
  .ds_tabs.js-initialised .ds_tabs__tab.ds_current .ds_tabs__tab-link:focus, .ds_tabs.ds_tabs--links .ds_tabs__tab.ds_current .ds_tabs__tab-link:focus {
    border: 0;
    padding: 16px 16px 16px;
  }
  .ds_tabs.js-initialised .ds_tabs__tab:focus-within, .ds_tabs.ds_tabs--links .ds_tabs__tab:focus-within {
    margin-bottom: -2px !important;
  }
  .ds_tabs.js-initialised .ds_tabs__tab:focus-within .ds_tabs__tab-link, .ds_tabs.ds_tabs--links .ds_tabs__tab:focus-within .ds_tabs__tab-link {
    padding: 16px 16px;
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__title, .ds_tabs.ds_tabs--links .ds_tabs__title {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px;
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__content, .ds_tabs.ds_tabs--links .ds_tabs__content {
    border-top: 2px solid #b3b3b3;
    margin: 0;
    padding-top: 1.5rem;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__content, .ds_tabs.ds_tabs--links .ds_tabs__content {
    padding-top: 1.5rem;
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__content--bordered, .ds_tabs.ds_tabs--links .ds_tabs__content--bordered {
    border: 2px solid #b3b3b3;
    padding-top: 1.5rem;
    padding-right: calc(1rem + -2px);
    padding-bottom: calc(1.5rem + -2px);
    padding-left: calc(1rem + -2px);
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__content--bordered, .ds_tabs.ds_tabs--links .ds_tabs__content--bordered {
    padding-top: 1.5rem;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__content--bordered, .ds_tabs.ds_tabs--links .ds_tabs__content--bordered {
    padding-right: calc(1rem + -2px);
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__content--bordered, .ds_tabs.ds_tabs--links .ds_tabs__content--bordered {
    padding-bottom: calc(1.5rem + -2px);
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__content--bordered, .ds_tabs.ds_tabs--links .ds_tabs__content--bordered {
    padding-left: calc(1rem + -2px);
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__content--bordered > :last-child, .ds_tabs.ds_tabs--links .ds_tabs__content--bordered > :last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 768px) {
  .ds_tabs.js-initialised .ds_tabs__content--hidden, .ds_tabs.ds_tabs--links .ds_tabs__content--hidden {
    display: none;
  }
}
@media (min-width: 768px) {
  .ds_tabs.ds_tabs--links .ds_tabs__tab.ds_current .ds_tabs__tab-link:hover {
    background-color: inherit;
    color: inherit;
  }
}

/*------------------------------------*\
    TAG
\*------------------------------------*/
.ds_tag {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  background: #0065bd;
  border-radius: 2px;
  color: #ffffff;
  display: inline-block;
  font-weight: 700;
  padding: 0 10px;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .ds_tag {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media screen and (forced-colors: active) and (prefers-contrast: more) {
  .ds_tag {
    outline: 2px solid currentColor !important;
    outline-offset: -2px !important;
  }
}

.ds_reversed .ds_tag {
  background-color: #ffffff;
  color: #0065bd;
}

/*------------------------------------*\
    TASK LIST
\*------------------------------------*/
.ds_task-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.ds_task-list__task {
  border-top: 2px #ebebeb solid;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media (min-width: 768px) {
  .ds_task-list__task {
    padding-top: 1rem;
  }
}
@media (min-width: 768px) {
  .ds_task-list__task {
    padding-bottom: 1rem;
  }
}
.ds_task-list__task:last-child {
  border-bottom: 2px #ebebeb solid;
}
@media (max-width: 479px) {
  .ds_task-list__task {
    padding-bottom: 1.5rem;
    align-items: flex-start;
    flex-direction: column;
  }
}
@media (max-width: 479px) and (min-width: 768px) {
  .ds_task-list__task {
    padding-bottom: 1.5rem;
  }
}
.ds_task-list__task-details {
  max-width: 100%;
}
.ds_task-list__task-heading {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  margin: 0;
}
@media (min-width: 768px) {
  .ds_task-list__task-heading {
    font-size: 1.1875rem;
    line-height: 1.6842105263;
  }
}
.ds_task-list__task-link {
  text-decoration: underline;
}
.ds_task-list__task-summary {
  margin: 0;
  margin-top: 0.5rem;
}
@media (min-width: 768px) {
  .ds_task-list__task-summary {
    margin-top: 0.5rem;
  }
}
.ds_task-list__task-status {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  margin-left: 2rem;
  background-color: #ebebeb;
  font-weight: 700;
  padding: 0.25rem 1rem;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .ds_task-list__task-status {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media (min-width: 768px) {
  .ds_task-list__task-status {
    margin-left: 2.5rem;
  }
}
@media (max-width: 479px) {
  .ds_task-list__task-status {
    margin-left: 0;
    margin-top: 0.5rem;
  }
}
@media (max-width: 479px) and (min-width: 768px) {
  .ds_task-list__task-status {
    margin-top: 0.5rem;
  }
}
.ds_task-list__task-status--complete {
  background: #ffffff;
  color: #428542;
  border: 2px #428542 solid;
  padding: 0.125rem 1rem;
}
.ds_task-list-heading {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  font-weight: 700;
  margin-bottom: 8px;
  display: inline;
}
@media (min-width: 768px) {
  .ds_task-list-heading {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}
.ds_task-list-intro {
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .ds_task-list-intro {
    margin-bottom: 0.5rem;
  }
}
.ds_task-list-heading + .ds_task-list, .ds_task-list-heading + .ds_task-list-intro {
  margin-top: 0.5rem;
}
@media (min-width: 768px) {
  .ds_task-list-heading + .ds_task-list, .ds_task-list-heading + .ds_task-list-intro {
    margin-top: 0.5rem;
  }
}

.ds_task-list-group {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.ds_task-list-group__section, .ds_task-list-group__section:last-child {
  margin: 0;
  padding: 0;
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .ds_task-list-group__section, .ds_task-list-group__section:last-child {
    margin-bottom: 2.5rem;
  }
}
@media (max-width: 479px) {
  .ds_task-list-group__section, .ds_task-list-group__section:last-child {
    margin-bottom: 2.5rem;
  }
}
@media (max-width: 479px) and (min-width: 768px) {
  .ds_task-list-group__section, .ds_task-list-group__section:last-child {
    margin-bottom: 3rem;
  }
}
.ds_task-list-group--ordered {
  list-style-position: inside;
  list-style-type: decimal;
}
.ds_task-list-group--ordered .ds_task-list-group__section::marker {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  font-weight: 700;
}
@media (min-width: 768px) {
  .ds_task-list-group--ordered .ds_task-list-group__section::marker {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}

.ds_task-list-status {
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .ds_task-list-status {
    margin-bottom: 2.5rem;
  }
}
@media (max-width: 479px) {
  .ds_task-list-status {
    margin-bottom: 2.5rem;
  }
}
@media (max-width: 479px) and (min-width: 768px) {
  .ds_task-list-status {
    margin-bottom: 3rem;
  }
}
.ds_task-list-status > p {
  margin-bottom: 0.5rem;
}
@media (min-width: 768px) {
  .ds_task-list-status > p {
    margin-bottom: 0.5rem;
  }
}
.ds_task-list-status-heading {
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  font-weight: 700;
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  .ds_task-list-status-heading {
    font-size: 1.375rem;
    line-height: 1.4545454545;
  }
}

/*------------------------------------*\
    #WARNING TEXT
\*------------------------------------*/
.ds_warning-text {
  border: 1px solid currentColor;
  border-width: 1px 0;
  font-weight: 700;
  padding-left: 72px;
  padding-right: 16px;
  position: relative;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  padding-top: calc(1.5rem + -1px);
  padding-bottom: calc(1.5rem + -1px);
}
@media (min-width: 768px) {
  .ds_warning-text {
    margin-top: 2rem;
  }
}
@media (min-width: 768px) {
  .ds_warning-text {
    margin-bottom: 2rem;
  }
}
.ds_warning-text > :last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ds_warning-text {
    padding-top: calc(2rem + -1px);
  }
}
@media (min-width: 768px) {
  .ds_warning-text {
    padding-bottom: calc(2rem + -1px);
  }
}
.ds_warning-text:first-child {
  margin-top: 0;
}

.ds_warning-text__icon {
  background: #333333;
  border-radius: 50%;
  color: #ffffff;
  display: inline-block;
  height: 32px;
  font-size: 32px;
  font-weight: 700;
  left: 24px;
  line-height: 32px;
  position: absolute;
  text-align: center;
  top: 20px;
  width: 32px;
}
.ds_warning-text__icon::before {
  content: "!";
  display: block;
  height: 28px;
}

.ds_warning-text__text > :last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .ds_warning-text {
    padding-right: 72px;
  }
  .ds_warning-text__icon {
    top: 31px;
  }
}
/* Design System Overrides and additions */
html,
body {
  height: auto;
  background-color: #FFFFFF;
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 18px;
  /*overflow-x: hidden;*/
  color: #002C55;
}

.content-wrapper {
  max-width: 1305px;
  margin: 0 auto;
}

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #002C55;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #FFF;
  display: block;
  font-size: 18px;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

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

.ds_back-to-top {
  z-index: 101;
}

.ds_back-to-top__button {
  background-color: #b6e2d9;
  top: calc(100vh - 112px);
}

.ds_back-to-top__button:hover:not(:focus) {
  background-color: #00A887;
  color: #FFF;
}

.ds_back-to-top__button:focus {
  background-color: #255249;
  color: #FFF;
}

.flexRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flexRowLong {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
}

.flexSpacebetween {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.flexSpaceEvenly {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-evenly;
}

.flexSpaceAround {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-around;
}

.flexColumn {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.flexCol10 {
  width: 10%;
}

.flexCol15 {
  width: 15%;
}

.flexCol18 {
  width: 18%;
}

.flexCol20 {
  width: 20%;
}

.flexCol22 {
  width: 22%;
}

.flexCol24 {
  width: 24%;
}

.flexCol25 {
  width: 25%;
}

.flexCol29 {
  width: 29%;
}

.flexCol30 {
  width: 30%;
}

.flexCol32 {
  width: 32%;
}

.flexCol33 {
  width: 33.3333%;
  position: relative;
}

.flexCol40 {
  width: 40%;
}

.flexCol43 {
  width: 43%;
}

.flexCol45 {
  width: 45%;
}

.flexCol48 {
  width: 48%;
}

.flexCol50 {
  width: 50%;
}

.flexCol60 {
  width: 60%;
}

.flexCol66 {
  width: 66%;
}

.flexCol70 {
  width: 70%;
}

.flexCol75 {
  width: 75%;
}

.flexCol80 {
  width: 80%;
}

.flexCol90 {
  width: 90%;
}

.flexCol100 {
  width: 100%;
}

.flexBottom {
  flex-direction: column;
  align-content: flex-end;
  align-self: flex-end;
  align-items: flex-end;
}

.content570 {
  width: 100%;
  max-width: 570px;
  margin: 0;
}

.content630 {
  width: 100%;
  max-width: 630px;
  margin: 0;
}

.content700 {
  width: 100%;
  max-width: 700px;
  margin: 0;
}

.content800 {
  width: 100%;
  max-width: 800px;
  margin: 0;
}

.content870 {
  width: 100%;
  max-width: 870px;
  margin: 0 auto;
}

.content1170 {
  width: 100%;
  max-width: 1170px;
  margin: 0 auto;
}

.content1305 {
  width: 100%;
  max-width: 1305px;
  margin: 0 auto;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #002D54;
}

.backgroundBlack h1, .backgroundBlack h2, .backgroundBlack h3, .backgroundBlack h4, .backgroundBlack h5, .backgroundBlack h6 {
  color: #FFF;
}

h1 span {
  position: relative;
}

h1 span.underlineOne::after {
  content: "";
  background: url("../images/green-line-one.svg") left bottom no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 5px;
  left: 0;
  width: 103%;
  height: 20px;
}

h1 span.underlineTwo::after {
  content: "";
  background: url("../images/green-line-two.svg") left bottom no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0px;
  left: -10px;
  width: 110%;
  height: 20px;
}

h1 span.underlineThree::after {
  content: "";
  background: url("../images/green-line-three.svg") left bottom no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0px;
  left: -10px;
  width: 110%;
  height: 20px;
}

h1, .h1 {
  font-size: 5em;
  line-height: 90%;
  letter-spacing: 1px;
  font-weight: 800;
}

h2 span {
  position: relative;
}

h2 span.underlineOne::after {
  content: "";
  background: url("../images/green-line-one.svg") left bottom no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0px;
  left: -10px;
  width: 110%;
  height: 20px;
}

h2 span.underlineTwo::after {
  content: "";
  background: url("../images/green-line-two.svg") left bottom no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 5px;
  left: -10px;
  width: 110%;
  height: 20px;
}

h2 span.underlineThree::after {
  content: "";
  background: url("../images/green-line-three.svg") left bottom no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 5px;
  left: -10px;
  width: 110%;
  height: 20px;
}

h2, .h2 {
  font-size: 3.75em;
  line-height: 90%;
  letter-spacing: 0.5px;
}

h3, .h3 {
  font-size: 2.25em;
  line-height: 120%;
  letter-spacing: 0.5px;
}

h4, .h4 {
  font-size: 2em;
  line-height: 140%;
  letter-spacing: 1px;
}

h5, .h5 {
  font-size: 1.625em;
  line-height: 100%;
  letter-spacing: 1px;
}

p, li, a {
  position: relative;
  color: #002D54;
  line-height: 24px;
  font-weight: 400;
  font-size: 1em;
}

strong a {
  font-weight: 600;
}

a:hover, .ds_link:hover {
  outline: 2px solid #E2E8FF;
  outline-offset: 0;
  background-color: #E2E8FF;
  color: #002D54 !important;
  text-decoration: none;
  transition-duration: 0s;
}

a:focus, .ds_link:focus {
  outline: 2px solid #00A887;
  outline-offset: 0;
  background-color: #00A887;
  box-shadow: -2px 5px #002D54, 2px 5px #002D54;
  color: #002D54;
  text-decoration: none;
  transition-duration: 0s;
}

p a[href*="//"]:not([href*="rehab.scot"]),
li a[href*="//"]:not([href*="rehab.scot"])
/*p a[href*="//"]:not([href*="staging03.thegateedinburgh.com"]),
li a[href*="//"]:not([href*="staging03.thegateedinburgh.com"])*/ {
  padding-right: 15px;
  background: url("../../dist/images/arrow-up-right-from-square-solid.svg") top right no-repeat;
  background-size: 12px;
}

p a[href*="//"]:not([href*="rehab.scot"]):hover,
li a[href*="//"]:not([href*="rehab.scot"]):hover
/*p a[href*="//"]:not([href*="staging03.thegateedinburgh.com"]):hover,
li a[href*="//"]:not([href*="staging03.thegateedinburgh.com"]):hover*/ {
  background-color: #E2E8FF;
}

p a[href*="//"]:not([href*="rehab.scot"]):focus,
li a[href*="//"]:not([href*="rehab.scot"]):focus
/*p a[href*="//"]:not([href*="staging03.thegateedinburgh.com"]):focus,
li a[href*="//"]:not([href*="staging03.thegateedinburgh.com"]):focus*/ {
  background-color: #00A887;
}

/*p a[href*="//"]:not([href*="rehab.scot"])::before,
li a[href*="//"]:not([href*="rehab.scot"])::before,
p a[href*="//"]:not([href*="staging03.thegateedinburgh.com"])::before,
li a[href*="//"]:not([href*="staging03.thegateedinburgh.com"])::before{
    position: absolute;
    top: -10px;
    right: -4px;
    content: '\f08e';
    font-family: 'FontAwesome';
    font-size: 0.6rem;
    font-weight: 500;
    color: currentColor;
}*/
p.intro {
  font-size: 1.25rem;
  line-height: 23px;
}

main {
  min-height: calc(100vh - 434px);
}

main ul li,
.STDmultiColumnCont ul li {
  list-style: none;
  position: relative;
  width: fit-content;
  margin: 0 auto;
}

.STDcontWrapperBasic .STDmultiColumnCont ul li {
  width: auto;
}

main ul li:before,
.STDmultiColumnCont ul li::before {
  content: "●";
  position: absolute;
  left: -20px;
  top: 0px;
  font-size: 1em;
  color: #00A887;
}

main ul li ul li:before,
.STDmultiColumnCont ul li ul li::before {
  content: "○";
  position: absolute;
  left: -20px;
  top: 0px;
  font-size: 1em;
}

.StandardContentSection a {
  text-decoration: underline;
  position: relative;
  -webkit-transition: all ease-out 0.25s;
  -o-transition: all ease-out 0.25s;
  transition: all ease-out 0.25s;
}

.StandardContentSection a:hover {
  text-decoration: none;
  background-color: #E2E8FF;
}

/*.StandardContentSection a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 0.1em;
    background-color: #002D54;
	opacity: 1;
	transform: scale(0);
	transform-origin: center;
    transition: opacity 300ms, transform 300ms;
}*/
p strong {
  font-weight: 700;
}

.breadcrumbs {
  border-top: 1px solid #002D54;
  padding: 20px 0;
}

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

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

/* Default Button Style */
.tge_button {
  font-size: 1rem;
  min-height: 48px;
  min-width: 48px;
  width: auto;
  padding: 0 16px;
  background: #002C55;
  border: 1px solid #002C55;
  border-radius: 5px;
  color: #FFF;
  cursor: pointer;
  display: inline-block;
  font-weight: 300;
  line-height: 49px;
  outline: 1px solid transparent;
  outline-offset: -2px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.2s;
}

.tge_button:hover,
.HeaderSection .control button.resetBTN:hover,
.gform_footer input[type=submit]:hover,
.gform_wrapper.gravity-theme .gform_footer button:hover,
.gform_wrapper.gravity-theme .gform_footer input:hover,
.gform_wrapper.gravity-theme .gform_page_footer button:hover,
.gform_wrapper.gravity-theme .gform_page_footer input:hover {
  background: transparent;
  color: #002C55;
  transition: background-color 0.2s;
  outline: 2px solid #002C55;
}

.tge_button:focus,
.HeaderSection .control button.resetBTN:focus,
.gform_footer input[type=submit]:focus,
.HeaderSection .control button.searchBTN:focus,
.gform_wrapper.gravity-theme .gform_footer button:focus,
.gform_wrapper.gravity-theme .gform_footer input:focus,
.gform_wrapper.gravity-theme .gform_page_footer button:focus,
.gform_wrapper.gravity-theme .gform_page_footer input:focus {
  outline: 2px solid #002C55;
  outline-offset: -1px;
  background-color: #00A887;
  font-weight: 500;
  box-shadow: 0px 5px #002C55, 0px 5px #002C55;
  color: #002C55;
  text-decoration: none;
  transition-duration: 0s;
}

.tge_button::after {
  display: none;
}

button.locateBtn {
  background-color: transparent;
  border: 1px solid currentColor;
  width: 45px;
  height: 48px;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  position: absolute;
  margin-left: -1px;
}

button.locateBtn .fa-location-crosshairs {
  font-size: 1.25em;
  color: #00A887;
}

button.locateBtn:hover,
button.locateBtn:focus {
  background-color: #00A887;
  outline: 3px solid #00A887;
  outline-offset: 0;
  box-shadow: inset 0 0 0 2px;
}

button.locateBtn:hover .fa-location-crosshairs,
button.locateBtn:focus .fa-location-crosshairs {
  color: #002C55;
}

section {
  position: relative;
}

/* Header Area */
.ds_site-header--gradient::before {
  background: linear-gradient(to right, #002D54, #00A887);
}

.ds_site-branding__logo {
  font-weight: 700;
  font-size: 1.25em;
  color: #002D54;
  height: 50px;
}

.ds_site-branding__logo::after {
  display: none;
}

.ds_site-header__navigation {
  border: none;
  margin-top: 5px;
}

.ds_site-navigation__list .ds_wrapper {
  padding: 0 8px;
}

.ds_site-header {
  color: #002D54;
  width: 100%;
  border-bottom: none;
  margin-bottom: 0px;
}

.ds_site-navigation a {
  color: #002D54;
  text-decoration: none;
  display: block;
  font-size: 1em;
  font-weight: 600;
  padding: 0 13px;
  line-height: 49px;
}

.ds_site-navigation__link {
  padding: 16px;
}

.tge_site_header .tge_site_branding_logo .siteLogo {
  display: block;
  box-sizing: border-box;
  font-weight: 700;
  font-size: 1.25em;
  width: 193px;
  height: 49px;
  text-decoration: none;
}

.ds_site-header__control:hover:not(:focus) {
  background-color: #E2E8FF;
}

.ds_site-header__control.ds_link:focus {
  box-shadow: 0px 5px #002D54, 0px 5px #002D54;
}

/* Search block */
.ds_site-search__input {
  background: #FFF;
}

.ds_site-search__input:not(:focus) {
  outline: 1px solid #002C55;
  border-radius: 5px;
}

.ds_input:focus {
  border-radius: 5px;
  outline: 2px solid #00A887;
}

.ds_input__wrapper > .ds_button {
  background: #FFF;
  border-left: 1px solid #002C55;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

.ds_input__wrapper > .ds_button > .ds_icon {
  color: #00A887;
}

.ds_input:focus ~ .ds_button,
.ds_input__wrapper > .ds_button:hover {
  background: #00A887;
}

.ds_input:focus ~ .ds_button > .ds_icon,
.ds_input__wrapper > .ds_button:hover > .ds_icon {
  color: #FFF;
}

.ds_input__wrapper > .ds_button .visually-hidden {
  color: #000;
}

/* Make Gravity Form Look like the Design System Form Fields */
.gform_validation_errors {
  display: none;
}

.gfield,
.control {
  /*  	display: grid !important; */
  grid-template-areas: "label" "validation" "inputarea";
}

.control_specific_needs {
  position: relative;
  margin-bottom: 20px;
}

.gfield_label,
.control label,
.control_specific_needs #lblDBXP {
  grid-area: label;
}

.validation_message {
  grid-area: validation;
  background: none !important;
  border: none !important;
  margin: 0px !important;
  padding: 0px !important;
  font-weight: 700;
  font-size: 1em !important;
}

.ginput_container,
.tge_select_wrapper,
#selectedDBXP {
  grid-area: inputarea;
}

.tge_field-group-inline .ginput_container .gfield_radio,
.tge_field-group-inline .ginput_container .gfield_checkbox {
  display: flex;
  flex-direction: row;
}

.gfield a {
  text-decoration: underline;
}

.gfield a:hover,
.gfield a:focus {
  text-decoration: none;
}

.gfield_error {
  border-left: 4px solid #d32205 !important;
  padding-left: 20px !important;
}

/*.gfield_required{
	display: none !important;
}*/
.gform_wrapper .gfield_error label {
  color: #002C55 !important;
}

.gform_wrapper .gfield_error [aria-invalid=true] {
  border: 1px solid #d32205 !important;
  outline-offset: 0;
  box-shadow: inset 0 0 0 1px;
}

.gform_wrapper .gfield_error [aria-invalid=true]:focus {
  border: 2px solid rgba(51, 0, 44, 0.3333333333) 3333 !important;
}

.ginput_container_consent {
  margin-bottom: 24px;
  padding-left: 40px;
  position: relative;
}

.ginput_container_consent input {
  height: 44px;
  left: -2px;
  opacity: 0;
  position: absolute;
  top: 10px;
  width: 44px;
}

.ginput_container_consent .gfield_consent_label {
  display: inline-block;
  padding: 4px 32px 4px 16px;
}

.ginput_container_consent .gfield_consent_label::before {
  background-color: #ffffff;
  border: 2px solid #002C55;
  content: "";
  height: 40px;
  left: 0;
  position: absolute;
  width: 40px;
}

.ginput_container_consent .gfield_consent_label::after {
  width: 40px;
  height: 40px;
  content: "";
  position: absolute;
  bottom: calc(100% - 35px);
  left: 3px;
  right: calc(100% - 35px);
  opacity: 0;
}

.ginput_container_consent .gfield_consent_label::before,
.ginput_container_consent .gfield_consent_label::after {
  top: -4px;
}

@media (min-width: 768px) {
  .ginput_container_consent .gfield_consent_label::before,
  .ginput_container_consent .gfield_consent_label::after {
    top: 15px;
  }
}
.ginput_container_consent input:focus + .gfield_consent_label::before {
  border-width: 4px;
  box-shadow: 0 0 0 3px #00A887;
}

.ginput_container_consent input:checked + .gfield_consent_label::before {
  border-color: #002C55;
}

.ginput_container_consent input:checked + .gfield_consent_label::after {
  opacity: 1;
}

.ginput_container_consent .gfield_consent_label::after {
  background-image: url(../images/icons/icons.stack.svg#checkbox);
}

@supports (-webkit-mask-image: url()) or (mask-image: url()) {
  .ginput_container_consent .gfield_consent_label::after {
    background-color: currentColor;
    background-image: none;
    -webkit-mask-image: url(../images/icons/icons.stack.svg#checkbox);
    mask-image: url(../images/icons/icons.stack.svg#checkbox);
  }
  .ginput_container_consent input:checked + .gfield_consent_label::before {
    background-color: #002C55;
    top: 12px;
  }
  .ginput_container_consent input:focus:checked + .gfield_consent_label::before {
    background-color: #00A887;
  }
  .ginput_container_consent input:focus:checked + .gfield_consent_label::after {
    background-color: #002C55;
  }
}
.gfield_label,
.control label,
.control_specific_needs #lblDBXP {
  color: #002C55;
  display: inline-block;
  font-weight: 800;
  margin-bottom: 8px;
}

.ginput_container_text input,
.ginput_container_email input,
.ginput_container_phone input,
.ginput_address_line_1 input,
.ginput_address_line_2 input,
.ginput_address_city input,
.ginput_address_state input,
.ginput_address_zip input,
.ginput_container_website input,
.gfield_list_cell input,
.ginput_container_textarea textarea {
  border: 1px solid currentColor;
  border-radius: 5px;
  display: block;
  margin-bottom: 24px;
  min-height: 48px;
  padding: 8px;
  width: 100%;
}

.ginput_container_text #pac-input {
  display: inline-block;
  width: calc(100% - 44px);
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.ginput_container_text input:focus,
.ginput_container_email input:focus,
.ginput_container_phone input:focus,
.ginput_address_line_1 input:focus,
.ginput_address_line_2 input:focus,
.ginput_address_city input:focus,
.ginput_address_state input:focus,
.ginput_address_zip input:focus,
.ginput_container_website input:focus,
.gfield_list_cell input:focus,
.ginput_container_textarea textarea:focus {
  outline: 3px solid #00A887;
  outline-offset: 0;
  box-shadow: inset 0 0 0 2px;
}

.ui.selection.dropdown {
  width: 100%;
}

.ginput_container_select select,
.ginput_address_country select,
.sf-field-sort_order select,
.control .tge_select_wrapper select,
.control #selectedDBXP {
  /* A reset of styles, including removing the default dropdown arrow */
  appearance: none;
  /* Additional resets for further consistency */
  background-color: transparent;
  border: none;
  padding: 0 1em 0 0;
  margin: 0;
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  cursor: inherit;
  line-height: inherit;
}

.ginput_container_select select,
.ginput_address_country select,
.sf-field-sort_order select,
.control .tge_select_wrapper select,
.control #selectedDBXP,
.ui.selection.dropdown {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #FFF;
  border-radius: 5px;
  border: 0;
  box-shadow: inset 0 0 0 1px currentColor !important;
  height: 48px;
  outline: 1px solid transparent;
  outline-offset: -1px;
  padding: 8px 49px 8px 8px;
  width: 100%;
}

.ui.selection.active.dropdown .menu,
.ui.selection.active.dropdown:hover .menu {
  border: 1px solid currentColor;
}

.ginput_container_select select:focus,
.ginput_address_country select:focus,
.sf-field-sort_order select:focus,
.control .tge_select_wrapper select:focus,
.control #selectedDBXP:focus,
.ui.selection.dropdown:focus,
.ui.selection.dropdown:focus .menu {
  outline: 3px solid #00A887;
  outline-offset: 0;
  box-shadow: inset 0 0 0 2px currentColor !important;
}

.control #selectedDBXP #DBXPList {
  width: 100%;
  height: 100%;
  text-align: left;
  display: block;
  line-height: 35px;
  overflow: hidden;
}

.ui.selection.dropdown .menu {
  margin: 0;
  min-width: 100%;
  width: 100%;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
}

.ui.dropdown .menu .active.item {
  background: #002C55;
  color: #FFF;
}

.ginput_container_select select,
.ginput_address_country select,
.sf-field-sort_order select,
.control .tge_select_wrapper select,
.control #selectedDBXP,
.ui.selection.dropdown {
  background-color: transparent;
}

.ui.active.selection.dropdown > .dropdown.icon,
.ui.visible.selection.dropdown > .dropdown.icon {
  display: none;
}

.ginput_container_select,
.ginput_address_country,
.sf-field-sort_order,
.control .tge_select_wrapper,
.control #selectedDBXP {
  position: relative;
  /*margin-bottom: 20px;*/
}

.control_nearest_town input {
  margin-bottom: 0px;
}

.control_specific_needs .tge_select_wrapper,
.control_specific_needs #selectedDBXP {
  margin-bottom: 0px;
}

.tge_select-arrow,
.tge_select-location {
  background: #FFF;
  bottom: 0;
  content: "";
  outline: 1px solid #002C55;
  outline-offset: -1px;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  width: 48px;
  border-left: 1px solid #002C55;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

.ginput_container_select select:focus + .tge_select-arrow,
.ginput_address_country select:focus + .tge_select-arrow,
.control .tge_select_wrapper select:focus + .tge_select-arrow,
.control #selectedDBXP:focus .tge_select-arrow,
.chosen-container-active + .tge_select-arrow,
.control .tge_select_wrapper select:focus + .tge_select-location,
.chosen-container-active + .tge_select-location {
  background-color: #00A887;
}

.tge_select-arrow::before {
  bottom: 0;
  color: #00A887;
  position: absolute;
  z-index: 1;
  content: "";
  background-color: transparent;
  border-style: solid;
  border-width: 0px 0px 3px 3px;
  border-top-color: transparent;
  display: inline-block;
  height: 12px;
  width: 12px;
  transform: rotate(-45deg);
  right: 18px;
  top: 15px;
}

.tge_select-location::before {
  bottom: 0;
  color: #00A887;
  position: absolute;
  z-index: 1;
  content: url("../images/location-icon.svg");
  display: inline-block;
  height: 16px;
  width: 16px;
  right: 18px;
  top: 11px;
}

.ginput_container_select select:focus + .tge_select-arrow::before,
.ginput_address_country select:focus + .tge_select-arrow::before,
.control .tge_select_wrapper select:focus + .tge_select-arrow::before,
.control #selectedDBXP:focus .tge_select-arrow::before,
.chosen-container-active + .tge_select-arrow::before,
.control .tge_select_wrapper select:focus + .tge_select-location::before,
.chosen-container-active + .tge_select-location::before {
  color: #002C55;
}

.control .tge_select_wrapper select:focus + .tge_select-location::before,
.chosen-container-active + .tge_select-location::before {
  content: url("../images/location-icon-dark.svg");
}

.ginput_container_select select:focus > option:checked,
.ginput_address_country select:focus > option:checked,
.control .tge_select_wrapper select:focus > option:checked,
.control #selectedDBXP:focus > div input:checked {
  font-weight: normal;
  display: block;
  white-space: nowrap;
  min-height: 48px;
  padding: 8px 49px 8px 8px;
  margin-bottom: 0px;
}

.gfield_checkbox .gchoice,
#choicelist > div {
  margin-bottom: 0px;
  padding-left: 40px;
  position: relative;
}

.gfield_checkbox .gchoice input,
#choicelist > div input {
  height: 44px;
  left: 0px;
  opacity: 0;
  position: absolute;
  top: 10px !important;
  width: 44px;
}

.gfield_checkbox .gchoice label,
#choicelist > div label {
  display: inline-block;
  padding: 12px 32px 4px 16px;
  line-height: 40px;
}

.gfield_checkbox .gchoice label::before,
#choicelist > div label::before {
  background-color: #ffffff;
  border: 2px solid #002C55;
  content: "";
  height: 40px;
  left: 0;
  position: absolute;
  width: 40px;
}

.gfield_checkbox .gchoice label::after,
#choicelist > div label::after {
  width: 40px;
  height: 40px;
  content: "";
  position: absolute;
  bottom: calc(100% - 35px);
  left: 3px;
  right: calc(100% - 35px);
  opacity: 0;
}

.gfield_checkbox .gchoice label::before,
.gfield_checkbox .gchoice label::after,
#choicelist > div label::before,
#choicelist > div label::after {
  top: -4px;
}

@media (min-width: 768px) {
  .gfield_checkbox .gchoice label::before,
  .gfield_checkbox .gchoice label::after,
  #choicelist > div label::before,
  #choicelist > div label::after {
    top: 15px;
  }
}
.gfield_checkbox .gchoice input:focus + label::before,
#choicelist > div input:focus + label::before {
  border-width: 4px;
  box-shadow: 0 0 0 3px #00A887;
}

.gfield_checkbox .gchoice input:checked + label::before,
#choicelist > div input:checked + label::before {
  border-color: #002C55;
}

.gfield_checkbox .gchoice input:checked + label::after,
#choicelist > div input:checked + label::after {
  opacity: 1;
}

.gfield_checkbox .gchoice label::after,
#choicelist > div label::after {
  background-image: url(../images/icons/icons.stack.svg#checkbox);
}

@supports (-webkit-mask-image: url()) or (mask-image: url()) {
  .gfield_checkbox .gchoice label::after,
  #choicelist > div label::after {
    background-color: #FFFFFF;
    background-image: none;
    -webkit-mask-image: url(../images/icons/icons.stack.svg#checkbox);
    mask-image: url(../images/icons/icons.stack.svg#checkbox);
  }
  .gfield_checkbox .gchoice input:checked + label::before,
  #choicelist > div input:checked + label::before {
    background-color: #002C55;
    top: 12px;
  }
  .gfield_checkbox .gchoice input:focus:checked + label::before,
  #choicelist > div input:focus:checked + label::before {
    background-color: #00A887;
  }
  .gfield_checkbox .gchoice input:focus:checked + label::after,
  #choicelist > div input:focus:checked + label::after {
    background-color: #002C55;
  }
}
.gfield_radio .gchoice {
  margin-bottom: 5px;
  padding-left: 30px;
  position: relative;
}

.gfield_radio .gchoice input {
  height: 34px;
  left: -1px;
  opacity: 0;
  position: absolute;
  top: -6px !important;
  width: 34px;
}

.gfield_radio .gchoice label {
  display: inline-block;
  padding: 0px 22px 4px 16px;
  line-height: 25px;
  max-width: none !important;
}

.gfield_radio .gchoice label::before {
  background-color: #ffffff;
  border: 2px solid #002C55;
  border-radius: 100%;
  content: "";
  height: 30px;
  left: 0;
  position: absolute;
  width: 30px;
}

.gfield_radio .gchoice label::after {
  width: 30px;
  height: 30px;
  content: "";
  position: absolute;
  top: 5px;
  bottom: calc(100% - 30px);
  left: 0px;
  right: calc(100% - 30px);
  opacity: 0;
}

.gfield_radio .gchoice label::before,
.gfield_radio .gchoice label::after {
  top: -4px;
}

.gfield_radio .gchoice input:focus + label::before {
  border-width: 4px;
  box-shadow: 0 0 0 3px #00A887;
}

.gfield_radio .gchoice input:checked + label::before {
  border-color: #002C55;
  top: -4px;
}

.gfield_radio .gchoice input:checked + label::after {
  opacity: 1;
}

.gfield_radio .gchoice label::after {
  background-image: url(../images/icons/icons.stack.svg#radio);
}

@supports (-webkit-mask-image: url()) or (mask-image: url()) {
  .gfield_radio .gchoice label::after {
    background-color: currentColor;
    background-image: none;
    -webkit-mask-image: url(../images/icons/icons.stack.svg#radio);
    mask-image: url(../images/icons/icons.stack.svg#radio);
  }
  .gfield_radio .gchoice input:focus:checked + label::after {
    background-color: #002C55;
    top: -4px;
    left: 0px;
  }
}
.gform_wrapper.gravity-theme .description, .gform_wrapper.gravity-theme .gfield_description, .gform_wrapper.gravity-theme .gsection_description, .gform_wrapper.gravity-theme .instruction {
  padding-top: 5px !important;
  padding-bottom: 10px;
  color: #767676;
}

.gform_footer {
  width: 85px;
  margin: 0px;
  padding: 0px;
  text-align: left;
  position: relative;
  right: -1px;
  bottom: 0;
}

.gform_page_footer input[type=submit],
.gform_page_footer input[type=button],
.gform_footer input[type=submit],
.control button.searchBTN,
.control button.resetBTN {
  background: none;
  color: inherit;
  border: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  outline: inherit;
}

.gform_page_footer input[type=submit],
.gform_page_footer input[type=button],
.gform_footer input[type=submit],
.control button.searchBTN,
.control button.resetBTN {
  background: #002C55;
  color: #FFFFFF;
  margin: 0px;
  font-size: 1rem;
  min-height: 48px;
  padding: 10px 16px !important;
  border: 2px solid #002C55;
  border-radius: 0;
  cursor: pointer;
  display: inline-block;
  font-weight: 300;
  line-height: 24px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.2s;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.gform_footer input[type=submit]:hover,
.control button.searchBTN:hover,
.control button.resetBTN:hover {
  background-color: #FFF;
  color: #002C55;
  outline-color: transparent;
  transition-duration: 0.2s;
}

.control button.searchBTN,
.control button.resetBTN {
  width: 100%;
  border-radius: 5px;
  margin-top: 3px;
}

.control button.resetBTN {
  margin-top: 20px;
  background: #00A887;
  color: #002C55;
  border: 2px solid #00A887;
}

.gform_wrapper.gravity-theme .description, .gform_wrapper.gravity-theme .gfield_description, .gform_wrapper.gravity-theme .gsection_description, .gform_wrapper.gravity-theme .instruction,
.gform_wrapper.gravity-theme .ginput_counter {
  color: #002C55 !important;
}

.control_specific_needs fieldset {
  border: none;
  padding-left: 0;
  margin-left: 0;
  position: absolute;
  z-index: 999999;
  background-color: #FFF;
  width: 100%;
  top: 74px;
  max-height: 270px;
  overflow-y: scroll;
}

.control_specific_needs #choicelist {
  border: 1px solid #d6d6d6;
  width: 100%;
  min-width: 200px;
  max-width: 500px;
  border-radius: 2px;
  display: none;
}

.control_specific_needs #choicelist > div {
  padding: 10px 0px 10px 5px;
}

.control_specific_needs #choicelist > div:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

.control_specific_needs label {
  font-weight: bold;
}

.control_specific_needs .fa-chevron-down {
  position: absolute;
  right: 1em;
  top: 0.9em;
  color: #a8a8a8;
  transition: transform 0.2s ease-out, color 0.2s ease-out;
  font-size: 0.85em;
}

.control_specific_needs .fa-chevron-down--open {
  transform: rotate(-180deg) translate(0, 2px);
  color: #404040;
}

#choicelist > div input {
  height: 34px;
  left: 8px;
  top: 13px !important;
  width: 34px;
}

#choicelist > div label {
  padding: 4px 32px 4px 42px;
  line-height: 26px;
  margin-bottom: 0px;
}

#choicelist > div label::before {
  height: 30px;
  left: 10px;
  width: 30px;
}

#choicelist > div label::after {
  width: 30px;
  height: 30px;
  bottom: calc(100% - 25px);
  left: 11px;
  right: calc(100% - 25px);
}

#choicelist > div label::before,
#choicelist > div label::after {
  top: -4px;
}

@media (min-width: 768px) {
  #choicelist > div label::before,
  #choicelist > div label::after {
    top: 12px;
  }
}
/* Custom feedback form */
.feedbackForm {
  margin: 30px 0;
  border: 1px solid #E2E8FF;
  padding: 70px;
}

#gform_1 {
  position: relative;
}

#gform_1 .gform_footer {
  position: absolute;
  right: 8px;
  top: 20px;
  bottom: auto;
}

#gform_1 legend {
  font-size: 1.875em;
}

.gform_wrapper.gravity-theme #gform_1 .gform_footer,
.gform_wrapper.gravity-theme #gform_1 .gform_page_footer {
  margin: 0;
  padding: 0;
}

.gform_wrapper.gravity-theme #gform_1 .gform_footer button,
.gform_wrapper.gravity-theme #gform_1 .gform_footer input,
.gform_wrapper.gravity-theme #gform_1 .gform_page_footer button,
.gform_wrapper.gravity-theme #gform_1 .gform_page_footer input {
  margin-bottom: 0px;
}

/* Content Block Styles */
/* Header Block */
body.home .HeaderSection {
  margin-top: 25px;
}

.HeaderSection .HeaderSectionWrapper {
  position: relative;
  background-color: #E2E8FF;
  box-sizing: border-box;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  padding: 69px 65px 90px 65px;
  margin-bottom: 50px;
}

body.home .HeaderSection .HeaderSectionWrapper {
  padding: 69px 155px 90px 155px;
}

.HeaderSection .HeaderSectionWrapper.HeaderOverlapped {
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
  margin-bottom: 0px;
}

.HeaderSection .HeaderSectionWrapper.HeaderOverlapped::after {
  content: "";
  background-color: #E2E8FF;
  box-sizing: border-box;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  position: absolute;
  bottom: -150px;
  left: 0;
  width: 100%;
  height: 150px;
}

.HeaderSection .flexCol45 {
  width: 100%;
}

.HeaderSection .contCol {
  text-align: center;
}

.HeaderSection .contCol h1 {
  text-align: center;
  max-width: 80%;
  margin: 0 auto 35px auto;
}

.HeaderSection .contCol p {
  text-align: center;
  max-width: 58%;
  margin: 0 auto 35px auto;
}

.HeaderSectionWrapper .contCol a.tge_button {
  margin-bottom: 20px;
}

#headerRehabForm {
  flex-wrap: nowrap;
}

.HeaderSection .buttonsWrapper {
  height: 82%;
}

.HeaderSection .buttonsWrapper .control {
  align-self: center;
}

.HeaderSection .control button.resetBTN {
  margin-top: 0px;
  margin-bottom: 0;
}

.HeaderSection .rehabServicesSearch {
  padding: 25px 30px;
}

.rehabServicesSearch {
  -webkit-box-shadow: 5px 50px 25px -10px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 50px 25px -10px rgba(0, 0, 0, 0.2);
  background-color: #FFF;
  border-radius: 10px;
  padding: 25px 33px;
  position: relative;
}

.rehabServicesSearch::after {
  content: url("../images/green-crown.svg");
  width: 55px;
  height: 55px;
  position: absolute;
  top: -18px;
  right: -16px;
}

.rehabServicesSearch h2 {
  font-size: 1.875em;
  line-height: 35px;
  font-weight: 600;
  margin: 0;
  margin-bottom: 15px;
  letter-spacing: -1px;
}

.rehabServicesSearch .control .searchBTN {
  margin-bottom: 0px;
}

.rehabServicesSearch .control input#pac-input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  opacity: 0;
}

.rehabServicesSearch .control input#pac-input::-moz-placeholder { /* Firefox 19+ */
  opacity: 0;
}

.rehabServicesSearch .control input#pac-input:-ms-input-placeholder { /* IE 10+ */
  opacity: 0;
}

.rehabServicesSearch .control input#pac-input:-moz-placeholder { /* Firefox 18- */
  opacity: 0;
}

.rehabServicesSearch .control .lighterTXT,
.rehabServicesSearch .control #help_with option[value=""][disabled] {
  /*color: #8A8A8A;*/
  text-align: left;
}

body.home #headerRehabForm {
  flex-wrap: wrap;
}

body.home .HeaderSection .contCol {
  text-align: left;
}

body.home .HeaderSection .HeaderSectionWrapper .flexCol45 {
  width: 45%;
  align-self: center;
}

body.home .HeaderSection .HeaderSectionWrapper .contCol h1 {
  margin: 0 0 34px 0;
  text-align: left;
}

body.home .HeaderSection .contCol p {
  text-align: left;
  max-width: 85%;
  margin: 0 0 25px 0;
}

body.home .HeaderSection .HeaderSectionWrapper .contCol a.tge_button {
  margin-top: 20px;
  margin-bottom: 35px;
}

body.home .HeaderSection .HeaderSectionWrapper .flexCol24 {
  position: relative;
  width: 100% !important;
}

body.home .HeaderSection .control {
  display: block;
  margin-right: 0px;
}

body.home .HeaderSection .control summary {
  border: 1px solid var(--lt-gray);
  border-collapse: collapse;
  border-radius: 4px;
  padding: 4px;
  width: 250px;
  background-color: white;
  cursor: pointer;
}

body.home .HeaderSection .control summary:focus,
body.home .HeaderSection .control summary:active {
  box-shadow: 0 0 5px 1px var(--blue);
}

body.home .HeaderSection .control ul {
  list-style: none;
  margin: 0px;
  padding: 0px;
  margin-top: 2px;
  border: 1px solid var(--dk-gray);
  box-shadow: 0 0 5px 1px var(--lt-gray);
}

body.home .HeaderSection .control li {
  margin: 0px;
  padding: 0px;
}

body.home .HeaderSection .control li > label {
  cursor: pointer;
  display: inline-block;
  width: 100%;
}

body.home .HeaderSection .control li > label:hover,
body.home .HeaderSection .control li > label:has(input:checked) {
  background-color: var(--dk-gray);
  color: white;
}

/* Standard Content Blocks */
.StandardContentSection {
  margin: 50px 0;
}

.STDcontWrapper {
  position: relative;
}

.STDcontWrapper::before {
  content: url("../images/blue-crown.svg");
  width: 44px;
  height: 44px;
  position: absolute;
  top: -15px;
  left: -15px;
}

.STDcontWrapper::after {
  content: "";
  background: url("../images/green-arrow-right-down.svg") top left no-repeat;
  background-size: contain;
  width: 125px;
  height: 125px;
  position: absolute;
  bottom: -60px;
  right: 0px;
  transform: rotate(45deg);
  z-index: 1;
}

.mainContent section.StandardContentSection:last-of-type .STDcontWrapper::after {
  display: none;
}

.STDcontWrapper .STDmultiColumnCont {
  display: flex;
  flex-direction: column;
  border-radius: 10px;
  background: #E2E8FF;
  padding: 50px;
  text-align: center;
  height: 100%;
  justify-content: center;
}

.STDmultiColumnCont h2 {
  max-width: 80%;
  margin: 0px auto 25px auto;
  line-height: 80px;
}

.STDmultiColumnCont p {
  max-width: 75%;
  margin: 0 auto;
  margin-bottom: 20px;
  line-height: 22px;
}

.STDmultiColumnCont a.tge_button {
  margin-top: 16px;
  text-decoration: none;
}

.STDmultiColumnCont blockquote {
  margin-left: 20px;
  padding-left: 40px;
  border-left: 8px solid #00A887;
}

.STDmultiColumn .flexCol32 .STDmultiColumnCont h2 {
  max-width: 100%;
  font-size: 2.8125em;
  line-height: 48px;
}

.STDmultiColumn .flexCol32 .STDmultiColumnCont p {
  max-width: 100%;
}

.STDcontWrapperBasic {
  background-color: #FFF;
  margin: -100px auto 0 auto !important;
}

.STDcontWrapperBasic .STDmultiColumn .flexCol32 .STDmultiColumnCont h2 {
  font-size: 3.125em;
  line-height: 48px;
}

/* Rehab Slider Content Block and Journey Listings page Grid */
.slideWrapper,
.journeyWrapper {
  height: 354px;
  min-width: 360px;
  margin: 0 15px;
  border-radius: 5px;
  position: relative;
  overflow: hidden;
  background-color: #002C55 !important;
}

.journeyWrapper {
  margin-bottom: 30px;
}

.slideWrapper .slideContent,
.journeyWrapper .journeyContent {
  padding: 35px;
  width: 100%;
  color: #FFF;
  position: absolute;
  bottom: 0;
  z-index: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.slideWrapper .slideContent h2,
.slideWrapper .slideContent p,
.slideWrapper .slideContent h2 a,
.journeyWrapper .journeyContent h2,
.journeyWrapper .journeyContent p,
.journeyWrapper .journeyContent h2 a {
  margin: 0;
  padding: 0;
  color: #FFF !important;
  text-decoration: none;
  position: unset;
}

.slideWrapper .slideContent h2 a:hover,
.journeyWrapper .journeyContent h2 a:hover {
  background-color: transparent;
  outline: none;
}

.slideWrapper .slideContent h2,
.journeyWrapper .journeyContent h2 {
  font-size: 2.5em;
  line-height: 45px;
  font-weight: 600;
  padding: 15px 0;
}

.slideWrapper .slideContent p,
.journeyWrapper .journeyContent p {
  text-transform: uppercase;
  padding-right: 30px;
}

.slideWrapper .slideContent p.sliderCat,
.journeyWrapper .journeyContent p.journeyCat {
  font-size: 0.875em;
}

.slideWrapper .slideContent p.slideExcerpt,
.journeyWrapper .journeyContent p.journeyExcerpt {
  position: relative;
}

.slideWrapper .slideContent p.slideExcerpt::after,
.journeyWrapper .journeyContent p.journeyExcerpt::after {
  content: "\f061";
  position: absolute;
  right: 0;
  height: 15px;
  width: 20px;
  font-family: "FontAwesome";
  font-size: 1em;
  color: #00A887;
}

.slideWrapper .slideContent:hover p.slideExcerpt::after,
.journeyWrapper .journeyContent:hover p.journeyExcerpt::after {
  animation: shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}

.slideWrapper .slideRollOver,
.journeyWrapper .journeyRollOver {
  width: 100%;
  height: 175%;
  display: block;
  position: absolute;
  bottom: -75%;
  left: 0;
  background: rgb(0, 44, 85);
  background: -moz-linear-gradient(180deg, rgba(0, 44, 85, 0) 0%, rgb(0, 44, 85) 50%, rgb(0, 44, 85) 100%);
  background: -webkit-linear-gradient(180deg, rgba(0, 44, 85, 0) 0%, rgb(0, 44, 85) 50%, rgb(0, 44, 85) 100%);
  background: linear-gradient(180deg, rgba(0, 44, 85, 0) 0%, rgb(0, 44, 85) 50%, rgb(0, 44, 85) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#002c55",endColorstr="#002c55",GradientType=1);
  z-index: 0;
  -webkit-transition: all ease-out 0.25s;
  -o-transition: all ease-out 0.25s;
  transition: all ease-out 0.25s;
}

.slideWrapper:hover .slideRollOver,
.journeyWrapper:hover .journeyRollOver,
.slick-container:focus .slideWrapper .slideRollOver,
.journeyWrapper:focus .journeyRollOver {
  bottom: 0;
  -webkit-transition: all ease-out 0.25s;
  -o-transition: all ease-out 0.25s;
  transition: all ease-out 0.25s;
}

.slick-container:focus .slideWrapper .slideRollOver,
.journeyWrapper:focus .journeyRollOver {
  border: 5px solid #E2E8FF;
}

.slideWrapper .slideContent h2 a::after,
.journeyWrapper .journeyContent h2 a::after {
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0px;
  width: 100%;
  z-index: 1;
  bottom: 0;
  background: transparent;
}

.slick-prev, .slick-next {
  display: none;
}

.sliderFooter {
  margin: 50px 15px 0 15px;
}

.slide-prev-custom, .slide-next-custom {
  width: 60px;
  height: 60px;
  border-radius: 60px;
  border: solid 1px #002C55;
  background: transparent;
  cursor: pointer;
}

.slide-prev-custom {
  margin-right: 15px;
}

.slide-prev-custom i, .slide-next-custom i {
  font-size: 1.25em;
  color: #00A887;
}

.slide-prev-custom:hover, .slide-next-custom:hover {
  background: #002C55;
}

.slide-prev-custom:hover i, .slide-next-custom:hover i,
.slide-prev-custom:focus i, .slide-next-custom:focus i {
  color: #FFF;
}

.slide-prev-custom:focus, .slide-next-custom:focus {
  background: #00A887;
  border: solid 1px #00A887;
  box-shadow: 0px 5px #002C55, 0px 5px #002C55;
}

.sliderpageLink a {
  float: right;
}

/* Rehab Services list/grid */
.rehabServicesList {
  margin: 100px 0;
}

.RSGcontent {
  border-top: 1px solid #E2E8FF;
  margin-bottom: 50px;
}

.RSGcontent h3 {
  font-size: 1.875em;
  font-weight: 400;
  line-height: 35px;
  margin-bottom: 10px;
}

.RSGcontent i {
  color: #00A887;
  font-size: 2em;
}

.RSGfooter {
  text-align: center;
}

/* Image and text block */
.imageTextSection {
  margin-top: 100px;
  margin-bottom: 50px;
}

.imageTextSection .imageTextWrapper {
  background: #E2E8FF;
  border-radius: 10px;
  position: relative;
}

.imageTextSection .imageTextWrapper::before {
  content: "";
  background: url("../images/green-arrow-left-down.svg") top left no-repeat;
  background-size: contain;
  width: 90px;
  height: 90px;
  position: absolute;
  top: -35px;
  left: 70px;
}

.imageTextSection .imageTextWrapper .flexRow {
  min-height: 780px;
}

.imageTextSection .imageTextWrapper .contColWrapper {
  align-self: center;
}

.imageTextSection .imageTextWrapper .contentCol {
  padding: 0 100px;
  text-align: center;
  height: 100%;
}

.imageTextSection .imageTextWrapper .contentCol h2 {
  font-weight: 700;
  margin-top: 0px;
  margin-bottom: 35px;
}

.imageTextSection .imageTextWrapper .contentCol h2 span.underline2 {
  position: relative;
}

.imageTextSection .imageTextWrapper .contentCol h2 span.underline2::after {
  content: "";
  background: url("../images/green-line-two.svg") left bottom no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 5px;
  left: 0;
  width: 103%;
  height: 20px;
}

.imageTextSection .imageTextWrapper .contentCol p {
  line-height: 20px;
  max-width: 85%;
  margin: 0px auto 40px auto;
}

.imageTextSection .imageTextWrapper .imageCol {
  width: 100%;
  height: 100%;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}

/* Animated Counter Content Block */
.AnimatedCounterSection {
  margin-top: 150px;
  margin-bottom: 150px;
}

.AnimatedCounterSection .animCountSecWrapper {
  background: #E2E8FF;
  border-radius: 10px;
  position: relative;
  text-align: center;
  padding: 65px 0 130px 0;
}

.AnimatedCounterSection .animCountSecWrapper h2 {
  font-weight: 700;
  line-height: 80px;
  max-width: 75%;
  margin: 0 auto 35px auto;
}

.AnimatedCounterSection .animCountSecWrapper h2 span.underline3 {
  position: relative;
}

.AnimatedCounterSection .animCountSecWrapper h2 span.underline3::after {
  content: "";
  background: url("../images/green-line-three.svg") left bottom no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 5px;
  left: -5px;
  width: 105%;
  height: 20px;
}

.AnimatedCounterSection .animCountSecWrapper p {
  line-height: 20px;
  max-width: 35%;
  margin: 0px auto 20px auto;
}

/* Actual Number Counter */
#rehabCounter {
  position: absolute;
  max-width: 606px;
  bottom: -100px;
  left: 0;
  right: 0;
  margin: 0 auto;
}

#rehabCounter::before {
  content: url("../images/blue-crown.svg");
  width: 44px;
  height: 44px;
  position: absolute;
  top: -35px;
  left: -35px;
}

.CounterWrapper {
  display: inline-block;
  height: 190px;
  line-height: 140px;
  text-shadow: 0 0 2px #fff;
  font-weight: 700;
  white-space: normal;
  font-size: 120px;
  width: 606px;
  overflow: hidden;
  padding: 0.3em 0.2em;
  text-align: center;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-left: 0.5px solid rgba(255, 255, 255, 0.01);
  background: linear-gradient(330deg, #00A887, #00A887);
  -webkit-box-shadow: 5px 50px 25px -10px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 50px 25px -10px rgba(0, 0, 0, 0.2);
}

.CounterWrapper > div {
  display: inline-block;
  vertical-align: top;
  height: 100%;
}

.CounterWrapper > div > b {
  display: inline-block;
  width: 110px;
  height: 100%;
  margin: 0 0.1em;
  text-align: center;
  text-shadow: 2px 1px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1) inset, -2px -2px 2px rgba(255, 255, 255, 0.12) inset;
  overflow: hidden;
  background: #00A887;
  color: white;
}

.CounterWrapper > div > b::before {
  content: " 0 1 2 3 4 5 6 7 8 9 ";
  display: block;
  word-break: break-all;
  word-break: break-word;
  transition: 0.5s cubic-bezier(0.75, 0.15, 0.6, 1.15), text-shadow 150ms;
}

.CounterWrapper > div > b.blur {
  opacity: 0.8;
  text-shadow: 2px 1px 3px rgba(0, 0, 0, 0.2), 0 0.1em 2px rgba(255, 255, 255, 0.6), 0 0.3em 3px rgba(255, 255, 255, 0.3), 0 -0.1em 2px rgba(255, 255, 255, 0.6), 0 -0.3em 3px rgba(255, 255, 255, 0.3);
}

.CounterWrapper > div > b[data-value="0"]::before {
  margin-top: -10px;
}

.CounterWrapper > div > b[data-value="1"]::before {
  margin-top: -150px;
}

.CounterWrapper > div > b[data-value="2"]::before {
  margin-top: -290px;
}

.CounterWrapper > div > b[data-value="3"]::before {
  margin-top: -430px;
}

.CounterWrapper > div > b[data-value="4"]::before {
  margin-top: -570px;
}

.CounterWrapper > div > b[data-value="5"]::before {
  margin-top: -710px;
}

.CounterWrapper > div > b[data-value="6"]::before {
  margin-top: -850px;
}

.CounterWrapper > div > b[data-value="7"]::before {
  margin-top: -990px;
}

.CounterWrapper > div > b[data-value="8"]::before {
  margin-top: -1130px;
}

.CounterWrapper > div > b[data-value="9"]::before {
  margin-top: -1270px;
}

.CounterWrapper > div:nth-last-child(3n):not(:first-child)::before {
  content: ",";
  display: inline;
  font-size: 60px;
  opacity: 0.6;
  color: white;
}

/* CTA 4 Column Row */
.CTAsection {
  margin: 200px 0 100px;
}

.CTAcolWrapper {
  position: relative;
  background: rgb(0, 44, 85);
  border-radius: 10px;
  padding: 0 22px;
  height: 100%;
  display: flex;
  flex-direction: column;
  border: solid 5px #002C55;
  -webkit-transition: all ease-out 0.25s;
  -o-transition: all ease-out 0.25s;
  transition: all ease-out 0.25s;
}

.CTAcolWrapper:hover {
  background: #E2E8FF;
  border: solid 5px #002C55;
}

.CTAcolWrapper:focus {
  background: rgba(0, 44, 85, 0.9);
  border: solid 5px #00A887;
  -webkit-box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
}

.CTAcolWrapper .blockIcon {
  text-align: center;
  padding-top: 55px;
}

.CTAcolWrapper .blockIcon img {
  height: 100px;
  width: auto;
  text-align: center;
  padding: 0 0 30px 0;
}

.CTAcolWrapper .blockContent {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 20px;
}

.CTAcolWrapper .blockContent h2 {
  margin: 0;
  padding: 0;
  line-height: 1rem !important;
  padding-bottom: 11px;
}

.CTAcolWrapper .blockContent h2 a {
  color: #FFF;
  text-decoration: none;
  font-size: 1.8rem;
  font-weight: 600;
  position: unset;
}

.CTAcolWrapper .blockContent h2 a:hover,
.CTAcolWrapper:hover .blockContent h2 a {
  background-color: transparent;
  outline: none;
  color: #002C55;
  text-decoration: underline;
  box-shadow: none;
}

.CTAcolWrapper .blockContent h2 a:focus {
  background-color: transparent;
  outline: none;
}

.CTAcolWrapper .blockContent h2 a::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.CTAcolWrapper .blockContent h2 a:focus::after {
  background: rgba(0, 44, 85, 0.25);
  border: solid 5px #00A887;
  border-radius: 5px;
  -webkit-box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
}

.CTAcolWrapper .blockContent p {
  color: #FFF;
  margin: 0;
  padding: 0;
}

.CTAcolWrapper:hover .blockContent p {
  background-color: transparent;
  outline: none;
  color: #002C55;
}

/* Rehab centre listings page */
.rehabServicesToggle div {
  display: inline-block;
  margin-right: 20px;
}

.tge_button.active {
  background: #00A887;
  color: #002C55;
  border: 1px solid #00A887;
  transition: background-color 0.2s;
  cursor: default;
}

.rehabServicesGrid {
  margin-top: 50px;
  margin-bottom: 35px;
}

.rehabServicesGrid .flexCol32 {
  margin-bottom: 25px;
}

.rehabServicesGrid .rehabServicesColWrapper {
  position: relative;
  background: #002C55;
  border-radius: 10px;
  padding: 35px;
  height: calc(100% - 70px);
  display: flex;
  flex-direction: column;
  border: solid 5px #002C55;
  -webkit-transition: all ease-out 0.25s;
  -o-transition: all ease-out 0.25s;
  transition: all ease-out 0.25s;
  justify-content: space-between;
}

.rehabServicesGrid h2,
.rehabServicesGrid p,
.rehabServicesGrid a,
.rehabServicesGrid .clinicDistance {
  margin: 0;
  padding: 0;
  color: #FFF;
  text-decoration: none;
  position: unset;
}

.rehabServicesGrid h2 {
  font-size: 1.875em;
  line-height: 40px;
  font-weight: 600;
  padding: 15px 0;
}

.rehabServicesGrid h2 a::after {
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0px;
  width: 100%;
  bottom: 0;
  background: transparent;
  z-index: 100;
}

.rehabServicesGrid p {
  text-transform: uppercase;
}

.rehabServicesGrid p.clinicMeta {
  font-size: 0.875em;
  display: inline-block;
}

.rehabServicesGrid .rehabServicesColWrapper .clinicDistance {
  display: inline-block;
  float: right;
  font-weight: 700;
}

.rehabServicesGrid p.clinicGridExcerpt {
  position: relative;
}

.rehabServicesGrid p.clinicGridExcerpt::after {
  content: "\f061";
  position: absolute;
  right: 0;
  height: 15px;
  width: 20px;
  font-family: "FontAwesome";
  font-size: 1em;
  color: #00A887;
}

.rehabServicesGrid .rehabServicesColWrapper:hover {
  background: #E2E8FF;
  -webkit-box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
}

.rehabServicesGrid .rehabServicesColWrapper:focus {
  background: rgba(0, 44, 85, 0.9);
  border: solid 5px #00A887;
  -webkit-box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
}

.rehabServicesGrid .rehabServicesColWrapper:hover p.clinicGridExcerpt::after {
  animation: shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}

.rehabServicesGrid .rehabServicesColWrapper:hover h2 a,
.rehabServicesGrid .rehabServicesColWrapper:hover p,
.rehabServicesGrid .rehabServicesColWrapper:hover .clinicDistance {
  color: #002C55;
}

.rehabServicesMap {
  display: none;
  margin: 50px 0;
  width: 100%;
  height: auto;
  position: relative;
}
.rehabServicesMap #map {
  width: 100%;
  height: 100%;
  margin-bottom: 50px;
}
.rehabServicesMap .mapInfo {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
  position: absolute;
  width: 370px;
  height: calc(100% - 100px);
  right: 50px;
  top: 50px;
  background: #002C55;
  color: #fff;
  border-radius: 10px;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-box-shadow: 5px 35px 20px -15px rgba(0, 0, 0, 0.65);
  box-shadow: 5px 35px 20px -15px rgba(0, 0, 0, 0.65);
}
.rehabServicesMap .mapInfo.show {
  opacity: 1;
  pointer-events: all;
}
.rehabServicesMap .mapInfo .mapInfoInner {
  position: absolute;
  padding: 35px 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  overflow-y: scroll;
  -webkit-mask-image: linear-gradient(0deg, rgba(0, 44, 85, 0) 0%, rgb(0, 44, 85) 15%, rgb(0, 44, 85) 100%);
  mask-image: linear-gradient(0deg, rgba(0, 44, 85, 0) 0%, rgb(0, 44, 85) 15%, rgb(0, 44, 85) 100%);
  --scrollbar-foreground: rgb(0, 177, 141);
  --scrollbar-background: rgba(0, 177, 141, 0.3);
  scrollbar-color: var(--scrollbar-foreground) var(--scrollbar-background);
  /*.close {
  	border: none;
  	background: transparent;
  	position: absolute;
      right: 35px;
      top: 35px;
  }*/
}
.rehabServicesMap .mapInfo .mapInfoInner::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar-foreground);
}
.rehabServicesMap .mapInfo .mapInfoInner::-webkit-scrollbar-track {
  background-color: var(--scrollbar-background);
}
.rehabServicesMap .mapInfo .mapInfoInner .clinicInfo,
.rehabServicesMap .mapInfo .mapInfoInner .clinicContact,
.rehabServicesMap .mapInfo .mapInfoInner .clinicServices {
  padding: 35px 20px;
  border-bottom: 2px solid #E2E8FF;
}
.rehabServicesMap .mapInfo .mapInfoInner h2, .rehabServicesMap .mapInfo .mapInfoInner h3, .rehabServicesMap .mapInfo .mapInfoInner p, .rehabServicesMap .mapInfo .mapInfoInner .info {
  margin-left: 0px;
  margin-right: 20px;
}
.rehabServicesMap .mapInfo .mapInfoInner ul {
  margin-inline-start: 20px;
  padding-left: 20px;
}
.rehabServicesMap .mapInfo .mapInfoInner ul li {
  width: auto;
}
.rehabServicesMap .mapInfo .mapInfoInner h2, .rehabServicesMap .mapInfo .mapInfoInner h3, .rehabServicesMap .mapInfo .mapInfoInner p, .rehabServicesMap .mapInfo .mapInfoInner a, .rehabServicesMap .mapInfo .mapInfoInner li {
  color: #fff;
}
.rehabServicesMap .mapInfo .mapInfoInner h2 {
  margin-top: 65px;
  font-size: 2rem;
  line-height: 2.2rem;
}
.rehabServicesMap .mapInfo .mapInfoInner h3 {
  font-size: 1.4rem;
  line-height: 1.5rem;
}
.rehabServicesMap .mapInfo .mapInfoInner a {
  text-transform: uppercase;
  text-decoration: none;
}
.rehabServicesMap .mapInfo .mapInfoInner a.moreInfo::after {
  color: #00A887;
  content: "\f061";
  font-family: Fontawesome;
  margin-left: 20px;
}
.rehabServicesMap .mapInfo .mapInfoInner .info {
  text-transform: uppercase;
  font-size: 1rem;
}
.rehabServicesMap .mapInfo .mapInfoInner .clinicContact a {
  text-transform: none;
}
.rehabServicesMap .mapInfo .close {
  background: #E2E8FF;
  color: #002C55;
  border: 2px solid #E2E8FF;
  border-radius: 0 10px;
  position: absolute;
  top: -2px;
  right: -2px;
  width: 40px;
  height: 40px;
  font-size: 1.25rem;
  z-index: 1;
}
.rehabServicesMap .mapInfo .close:hover {
  background: #002C55;
  color: #FFF;
}

#no-results {
  display: none;
  font-size: 1.25em;
  padding-bottom: 100px;
}

/*.rehabServicesMap{
    display: none;
    position: relative;
}
.rehabServicesMap #map{
    min-height: 780px;
    margin-top: 50px;
    margin-bottom: 50px;
}
.rehabServicesMap .mapInfo{
    opacity: 0;
    position: absolute;
    top: 82px;
    right: 100px;
    width: 370px;
    height: 635px;
    border-radius: 10px;
    background: #002C55;
    color: #FFF;
    overflow: hidden;

    -webkit-box-shadow: 5px 35px 20px -15px rgba(0, 0, 0, 0.65);
    box-shadow: 5px 35px 20px -15px rgba(0, 0, 0, 0.65);
}
.rehabServicesMap .mapInfo .mapInfoInner{
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
}
.rehabServicesMap .mapInfo .close{
    background: #E2E8FF;
    color: #002C55;
    border: 2px solid #E2E8FF;
    border-radius: 0 10px;
    position: absolute;
    top: -2px;
    right: -2px;
    width: 40px;
    height: 40px;
    font-size: 1.25rem;
}
.rehabServicesMap .mapInfo .close:hover{
    background: #002C55;
    color: #FFF;
}
.rehabServicesMap .mapInfo .clinicInfo,
.rehabServicesMap .mapInfo .clinicContact,
.rehabServicesMap .mapInfo .clinicServices{
    padding: 35px;
    border-bottom: 2px solid #E2E8FF;
}
.rehabServicesMap .mapInfo .clinicInfo h2,
.rehabServicesMap .mapInfo .clinicInfo p,
.rehabServicesMap .mapInfo .clinicInfo a,
.rehabServicesMap .mapInfo .clinicInfo p a,
.rehabServicesMap .mapInfo .clinicContact p,
.rehabServicesMap .mapInfo .clinicContact a,
.rehabServicesMap .mapInfo .clinicContact p a,
.rehabServicesMap .mapInfo .clinicServices h3,
.rehabServicesMap .mapInfo .clinicServices p,
.rehabServicesMap .mapInfo .clinicServices a,
.rehabServicesMap .mapInfo .clinicServices p a{
    color: #FFF;
}
*/
/* New Simple Grid Content Block */
.simpleGrid {
  margin-top: 50px;
}

.simpleGrid .flexCol32 {
  margin-bottom: 25px;
}

.simpleGrid .simpleGridColWrapper {
  position: relative;
  background: #002C55;
  border-radius: 10px;
  padding: 35px;
  height: 100%;
  display: flex;
  flex-direction: column;
  border: solid 5px #002C55;
  -webkit-transition: all ease-out 0.25s;
  -o-transition: all ease-out 0.25s;
  transition: all ease-out 0.25s;
  justify-content: space-between;
}

.simpleGrid .simpleGridColWrapper i.fa-arrow-up-right-from-square {
  position: absolute;
  width: 14px;
  height: 16px;
  top: 5px;
  right: 5px;
  color: #FFF;
}

.simpleGrid .simpleGridColWrapper:hover i.fa-arrow-up-right-from-square {
  color: #002C55;
}

.simpleGrid h2,
.simpleGrid p,
.simpleGrid a {
  margin: 0;
  padding: 0;
  color: #FFF;
  text-decoration: none;
  position: unset;
}

.simpleGrid h2 {
  font-size: 1.875em;
  line-height: 40px;
  font-weight: 600;
  padding: 0 0 15px 0;
}

.simpleGrid .simpleGridColWrapper.hasLink h2 a::after {
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0px;
  width: 100%;
  bottom: 0;
  background: transparent;
  z-index: 100;
}

.simpleGrid p {
  text-transform: uppercase;
}

.simpleGrid p.simpleGridIntro {
  position: relative;
  word-wrap: break-word;
}

.simpleGrid .simpleGridColWrapper.hasLink p.simpleGridIntro::after {
  content: "\f061";
  position: absolute;
  right: 0;
  height: 15px;
  width: 20px;
  font-family: "FontAwesome";
  font-size: 1em;
  color: #00A887;
}

.simpleGrid .simpleGridColWrapper.hasLink:hover {
  background: #E2E8FF;
  -webkit-box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
}

.simpleGrid .simpleGridColWrapper.hasLink:focus {
  background: rgba(0, 44, 85, 0.9);
  border: solid 5px #00A887;
  -webkit-box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 25px 20px -10px rgba(0, 0, 0, 0.2);
}

.simpleGrid .simpleGridColWrapper.hasLink:hover p.simpleGridIntro::after {
  animation: shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}

.simpleGrid .simpleGridColWrapper.hasLink:hover h2 a,
.simpleGrid .simpleGridColWrapper.hasLink:hover p {
  color: #002C55;
}

.simpleGrid .simpleGridColWrapper.hasLink:hover h2 a {
  background-color: transparent;
  outline: none;
}

/* Journey Page styles */
body.single-journeys footer {
  margin-top: 50px;
}

.journeyIMG {
  position: relative;
  width: 100%;
  min-height: 780px;
  border-radius: 10px;
  background-size: cover !important;
  margin-bottom: 50px;
}

/* Rehab Clinic pages Styles */
body.single-rehab_centres .HeaderSection {
  margin-bottom: 50px;
}

body.single-rehab_centres .HeaderSection .HeaderSectionWrapper {
  border-radius: 10px;
}

body.single-rehab_centres .HeaderSection .HeaderSectionWrapper::after {
  display: none;
}

body.single-rehab_centres .HeaderSection .contCol h1 {
  max-width: none;
}

body.single-rehab_centres .HeaderSection .contCol p {
  margin-bottom: 10px;
}

body.single-rehab_centres .HeaderSection .contCol .buttonsWrapper {
  margin-top: 40px;
}

body.single-rehab_centres .HeaderSection .contCol .buttonsWrapper a {
  margin: 0 10px;
}

body.single-rehab_centres .HeaderSection .contCol .buttonsWrapper a.directionsBTN,
body.single-rehab_centres .HeaderSection .contCol .buttonsWrapper a.websiteBTN {
  position: relative;
  padding-right: 40px;
}

body.single-rehab_centres .HeaderSection .contCol .buttonsWrapper a.directionsBTN::before {
  bottom: 0;
  color: #00A887;
  position: absolute;
  z-index: 1;
  content: url("../images/location-icon.svg");
  display: inline-block;
  height: 16px;
  width: 16px;
  right: 18px;
  top: 12px;
}

body.single-rehab_centres .HeaderSection .contCol .buttonsWrapper a.websiteBTN::before {
  bottom: 0;
  color: #00A887;
  position: absolute;
  z-index: 1;
  content: "\f0ac";
  display: inline-block;
  height: 16px;
  width: 16px;
  right: 18px;
  top: 12px;
  font-family: "FontAwesome";
  font-size: 1.5em;
}

body.single-rehab_centres .rehabServicesWrapper {
  border-radius: 10px;
  background-color: #002C55;
  margin-bottom: 60px;
}

body.single-rehab_centres .rehabServicesWrapper .flexCol29 {
  border-right: 1px solid #FFF;
}

body.single-rehab_centres .rehabServicesWrapper h2 {
  color: #FFF;
  font-size: 2.5em;
  line-height: 45px;
  font-weight: 700;
  margin: 0px;
  padding: 0px;
  padding: 35px 30px 35px 35px;
}

body.single-rehab_centres .rehabServicesWrapper ul {
  padding: 35px;
  display: table;
}

body.single-rehab_centres .rehabServicesWrapper ul li {
  color: #FFF;
  /*display: table-cell;*/
  font-size: 1.875em;
  font-weight: 400;
  margin-right: 35px;
  vertical-align: middle;
}

body.single-rehab_centres .rehabServicesWrapper ul li:first-of-type {
  margin-left: 35px;
}

body.single-rehab_centres .rehabServicesWrapper ul li:last-of-type {
  margin-right: 0px;
}

body.single-rehab_centres .rehabServicesWrapper ul li::before {
  color: #00A887;
  font-size: 0.5em;
}

body.single-rehab_centres aside h2 {
  position: relative;
  font-size: 2.5em;
  line-height: 45px;
  font-weight: 700;
  margin: 0px;
  padding: 0px;
  padding: 35px 30px 35px 0px;
  border-bottom: 1px solid #E2E8FF;
}

body.single-rehab_centres aside h2::after {
  content: "";
  background: url("../dist/images/green-arrow-right-down.svg") top left no-repeat;
  background-size: contain;
  width: 76px;
  height: 76px;
  position: absolute;
  bottom: -40px;
  right: 0px;
}

body.single-rehab_centres aside h3 {
  font-size: 1.875em;
  font-weight: 400;
  margin-bottom: 0;
}

body.single-rehab_centres aside p.bigGreenTXT {
  font-size: 1.875em;
  font-weight: 700;
  font-style: italic;
  color: #00A887;
  margin-top: 0;
}

body.single-rehab_centres aside ul {
  margin-top: 10px;
}

body.single-rehab_centres aside ul li {
  width: 100%;
}

body.single-rehab_centres aside .sidebarButtonWrapper {
  margin-top: 35px;
}

a.socialLink {
  font-size: 2.25em !important;
  width: 40px;
  height: 40px;
  padding: 10px;
  border: 1px solid #00A887;
  color: #00A887;
  text-align: center;
  line-height: 40px;
  border-radius: 100%;
  display: inline-block;
  margin-right: 10px;
  margin-top: 20px;
}

a.socialLink:hover,
a.socialLink:focus {
  background-color: #00A887;
  color: #FFF;
}

.clinic_content {
  padding: 0 120px;
}

.clinic_content p:first-of-type {
  font-size: 1.375em;
  line-height: 26px;
  margin-bottom: 40px;
}

.clinic_content h4 {
  font-size: 1em;
  margin: 0.75em 0;
}

/* Accessible Accordion Block */
.crm-accordion {
  position: relative;
  overflow: visible;
  border-bottom: 1px solid #002C55;
}

.crm-accordion ul li {
  list-style: none;
  position: relative;
  width: auto;
  margin: 15px auto 0;
}

.accordion-controls {
  text-align: right;
  margin-bottom: 10px;
}

button#expand-all-accordions {
  font-size: 1em;
  background: none;
  padding: 10px;
  color: #002C55;
  box-shadow: none;
  cursor: pointer;
  border: none;
}

button#expand-all-accordions:hover {
  background: rgba(0, 168, 135, 0.5);
}

button#expand-all-accordions:focus {
  background: rgb(0, 168, 135);
  border-bottom: 3px solid #002C55;
  color: #FFF;
}

.accordion-content[hidden] {
  display: none;
}

.crm-accordion h2 {
  background: #fff;
  margin: 0;
  position: relative;
}

.accordion-wrap h2 button {
  font-weight: 700;
  padding: 25px 15px;
  font-size: 22px;
}

.accordion-wrap h2 button span {
  padding-right: 25px;
}

.crm-accordion-header {
  border: 0;
  background: none;
  width: 100%;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #002C55;
  box-shadow: none;
}

.crm-accordion-header:focus {
  border-bottom: 3px solid #002C55;
  outline-offset: 0;
}

.crm-accordion-header[aria-expanded=true] i {
  transform: rotate(45deg);
}

.crm-accordion-header[aria-expanded=true] {
  background: #d3d3d3;
  border-bottom: 3px solid #002C55;
}

.crm-accordion-header:hover {
  background: rgba(0, 177, 141, 0.5);
  cursor: pointer;
}

.crm-accordion-header:hover i {
  text-decoration: none;
}

.crm-accordion-header:focus-within {
  background: #002C55;
  color: #FFF;
}

.accordion-wrap.acc-open {
  margin-bottom: 15px;
  overflow: visible;
}

.crm-accordion-header i {
  position: absolute;
  right: 15px;
  top: calc(50% - 10px);
}

.accordion-wrap.main-wrap {
  border-top: 1px solid #002C55;
  overflow: visible;
}

.accordion-content {
  padding: 15px 30px 0;
}

.accordion-content p:last-child {
  margin-bottom: 0px;
}

/* Video content block */
.videoWrapper {
  margin-bottom: 50px;
}

.videoWrapper h2 {
  background: #fff;
  margin: 0;
  position: relative;
}

.videoWrapper h2 button {
  font-weight: 700;
  padding: 15px;
  font-size: 22px;
}

.videoWrapper h2 button span {
  margin-right: 50px;
}

.videoWrapper .transcriptWrapper {
  margin-bottom: 30px;
}

.videoWrapper .transcriptWrapper .accordion-content {
  padding-bottom: 15px;
  border-bottom: 3px solid #002C55;
}

/* Audio style story */
.audioWrapper {
  margin-bottom: 50px;
}

.audioWrapper .journeyIMG {
  margin-bottom: 0px;
}

audio {
  width: 100%;
  margin-top: 20px;
  height: 54px;
}

/* Search results and search results form overrides*/
.search-results main {
  margin-bottom: 50px;
}

.search-results .ds_site-header__search,
.search-no-results .ds_site-header__search {
  float: none;
  margin-bottom: 20px;
}

.search-results .tge_site-search {
  margin-bottom: 20px;
}

.tge_search_results_list {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-bottom: 2rem;
}

.tge_search_result {
  margin: 0;
  padding: 1rem 0 1.5rem 0;
}

.tge_search_result {
  border-top: 1px solid #002C55;
}

.tge_search_result:first-of-type {
  border-top: none;
}

.tge_search_result_title {
  margin-bottom: 0.5rem !important;
  font-size: 1.375rem;
  line-height: 1.4545454545;
}

.tge_search_result_link {
  text-decoration: none;
}

.tge_search_result_link:hover {
  background-color: #00A887;
  color: #FFF;
  outline: 4px solid #00A887;
  transition-duration: 0.1s;
  text-decoration: underline;
}

.tge_search_result_link:focus {
  outline: 0px solid #E2E8FF;
  outline-offset: 0;
  background-color: #E2E8FF;
  box-shadow: 0px 5px #002C55, 0px 5px #002C55;
  color: #002C55;
  text-decoration: none;
  transition-duration: 0s;
  padding: 4px 4px 0 4px;
}

.tge_search_result_summary {
  font-size: 1.1875rem;
  line-height: 1.6842105263;
}

.tge_search_results_footer {
  background: transparent;
  color: #002C55;
  padding: 0px;
}

.tge_search_result .excerpt_part {
  word-break: break-word;
}

.wp-pagenavi a:hover,
.wp-pagenavi span.current {
  color: #000 !important;
}

/* Site Footer */
footer {
  background: #002C55;
  color: #FFF;
  padding: 50px 0;
}

footer .siteLogo {
  height: 49px;
  text-align: left;
}

footer .siteLogo a {
  position: relative;
  display: block;
  box-sizing: border-box;
  font-weight: 700;
  font-size: 1.25em;
  width: 166px !important;
  height: 49px;
  text-decoration: none;
  color: #FFF;
}

footer a {
  position: relative;
}

footer a:hover {
  outline: none;
  background-color: transparent;
  color: #FFF !important;
}

footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

footer ul li {
  display: inline-block;
}

footer ul li a {
  position: relative;
  color: #FFF;
  text-decoration: none;
  display: block;
  font-size: 0.875em;
  font-weight: 600;
  padding: 0 13px;
  line-height: 49px;
}

footer a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.125em;
  background-color: #FFF;
  opacity: 1;
  transform: scale(0);
  transform-origin: center;
  transition: opacity 300ms, transform 300ms;
}

footer ul {
  display: flex;
  margin: 0px;
}

/* Scale underline from center */
a:hover::after,
a:focus::after {
  transform: scale(1);
}

.tge_site-footer_copyright {
  padding-left: 48px;
  position: relative;
  margin-top: 40px;
}

.tge_site-footer_copyright p,
.tge_site-footer_copyright p a {
  color: #FFF;
}

.tge_site-footer_copyright p a:hover {
  background-color: transparent;
}

.tge_site-footer_copyright-logo {
  display: block;
  margin-bottom: 8px;
  width: 32px;
  transition-duration: 0s !important;
  position: absolute;
  left: 0;
  top: 2px;
}

.tge_site-footer_copyright-logo img {
  height: auto;
  width: 100%;
  min-width: 32px;
  padding-bottom: 5px;
}

/*.tge_site-footer_copyright-logo[href*="//"]:not([href*="rehab.scot"]),*/
.tge_site-footer_copyright-logo[href*="//"]:not([href*="staging03.thegateedinburgh.com"]),
.tge_site-footer_copyright a[href*="//"]:not([href*="staging03.thegateedinburgh.com"]) {
  padding-right: 15px;
  background: url("../../dist/images/arrow-up-right-from-square-solid-white.svg") top right no-repeat;
  background-size: 12px;
}

.tge_site-footer_copyright-logo[href*="//"]:not([href*="staging03.thegateedinburgh.com"]):hover,
.tge_site-footer_copyright a[href*="//"]:not([href*="staging03.thegateedinburgh.com"]):hover {
  background-color: transparent;
}

/* Specific page overrides */
body.page-id-14 .StandardContentSection {
  margin-bottom: 0;
}

body.page-id-14 .StandardContentSection .STDmultiColumnCont {
  padding-bottom: 0px;
}

/* 404 page header size overrides */
body.error404 h1,
body.error404 .h1 {
  font-size: 3em;
}

/* New drop down navigation Styles */
.ds_site-navigation ul ul {
  display: none;
  margin-top: 0px;
  margin-left: 25px;
}

.ds_site-navigation ul ul li a {
  font-size: 14px;
  text-transform: none;
  padding: 0;
  margin-bottom: 10px;
  border-bottom: solid 4px transparent;
  padding-bottom: 2px;
}
.ds_site-navigation ul ul li:last-child {
  padding-bottom: 0;
}
.ds_site-navigation ul ul li:last-child a {
  margin-bottom: 0;
}
.ds_site-navigation ul ul li:hover > a {
  background: #EEEEEE;
}

.ds_site-navigation ul ul ul {
  display: none;
  margin-left: 25px;
}

button.dropdown-toggle,
button.menu-button {
  display: inline;
  background-color: transparent;
  border: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  content: "";
}

button.dropdown-toggle {
  width: 30px;
  height: 49px;
  position: absolute;
  right: 0px;
  margin-left: 0px;
  padding: 0px;
  top: 0px;
}

.dropdown-toggle:after,
.dropdown-toggle.toggled-on:after {
  font-size: 1rem;
}

.ds_site-navigation a:focus,
button.dropdown-toggle:focus,
button.menu-button:focus {
  outline: 1px solid #000;
}

/* Plus symbol to expand sub-menu on mobile */
.dropdown-toggle:after {
  content: "\f078";
  font-family: FontAwesome;
  font-weight: normal;
  font-size: 1rem;
  line-height: 49px;
  width: 30px;
  color: #333333;
  position: absolute;
  right: 0px;
  top: 0px;
  transition: all 0.5s ease-in-out;
}

.dropdown-toggle:hover,
.dropdown-toggle.toggled-on {
  background: #00A887;
}

.dropdown-toggle.toggled-on:after {
  transform: rotate(180deg);
  color: #FFF;
}

.dropdown-toggle:hover::after {
  color: #FFF;
}

/* Animations and KeyFrames */
@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }
  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }
  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}
@keyframes shakeVertical {
  10%, 90% {
    transform: translate3d(0, -1px, 0);
  }
  20%, 80% {
    transform: translate3d(0, 2px, 0);
  }
  30%, 50%, 70% {
    transform: translate3d(0, -4px, 0);
  }
  40%, 60% {
    transform: translate3d(0, 4px, 0);
  }
}
@keyframes shotup {
  0% {
    transform: translateY(300%);
    opacity: 0;
  }
  90% {
    transform: translateY(-50px);
  }
  100% {
    transform: translateY(0%);
    opacity: 1;
  }
}
@keyframes slideIn {
  0% {
    width: 0%;
    opacity: 0;
  }
  100% {
    width: 50%;
    opacity: 1;
  }
}