@charset "UTF-8";
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary { /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template {
  display: none;
}

[hidden] {
  display: none !important;
}

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  font: inherit; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

@-webkit-viewport {
  width: device-width;
}
@-moz-viewport {
  width: device-width;
}
@-ms-viewport {
  width: device-width;
}
@-o-viewport {
  width: device-width;
}
@viewport {
  width: device-width;
}
* {
  box-sizing: border-box;
}

html {
  background: rgb(255, 255, 255);
  font-size: 100%;
  -webkit-overflow-scrolling: touch;
  -webkit-tap-highlight-color: #f6f5f5;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: transparent;
  font-family: museo-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  color: rgb(71, 63, 63);
  /*@include breakpoint-up-to(large-screens) {
      padding-top: 58px;
  }

  @include breakpoint(large-screens) {
      padding-top: $baselineheight*5.6;
  }*/
}

img {
  max-width: 100%;
}

figure {
  margin: 0;
  padding: 0;
  line-height: 1;
  margin-bottom: 1.5em;
}

blockquote {
  margin: 0;
  padding: 0;
}

a {
  color: rgb(32, 32, 32);
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

iframe {
  margin-bottom: 1.5em;
}

h1, h2, h3, h4, h5, h6 {
  font-family: inherit;
  font-weight: 700;
  color: inherit;
  text-rendering: optimizelegibility;
}
h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
  font-weight: normal;
  line-height: 1;
  color: #8a7b7b;
}

h1,
.h1 {
  display: block;
  font-size: 3.75rem;
  line-height: 1.2;
  margin: 0.4em 0;
}

h2,
.h2 {
  display: block;
  font-size: 3rem;
  line-height: 1;
  margin: 0.5em 0;
}

h3,
.h3 {
  display: block;
  font-size: 2.25rem;
  line-height: 1.35;
  margin: 0.6666666667em 0;
}

h4,
.h4 {
  display: block;
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 1em 0;
}

h5,
.h5 {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
  margin: 1.5em 0;
}

h6,
.h6 {
  display: block;
  font-size: 0.875rem;
  line-height: 1.75;
  margin: 1.7142857143em 0;
  text-transform: uppercase;
}

@media only screen and (max-width: 47.9375em) {
  .h4¬ls {
    display: block;
    font-size: 1.5rem;
    line-height: 1.5;
    margin: 1em 0;
  }
}
@media only screen and (min-width: 62em) {
  .h1\@ls {
    display: block;
    font-size: 3.75rem;
    line-height: 1.2;
    margin: 0.4em 0;
  }
  .h4\@ls {
    display: block;
    font-size: 1.5rem;
    line-height: 1.5;
    margin: 1em 0;
  }
}
.primary {
  display: block;
  font-size: 2.25rem;
  line-height: 1.35;
  margin: 0.6666666667em 0;
}
.primary i {
  display: block;
  display: block;
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 1em 0;
  font-weight: normal;
  letter-spacing: -1px;
  margin-bottom: 0.75em;
}
.primary strong {
  display: block;
  text-transform: uppercase;
}
@media only screen and (min-width: 48em) {
  .primary {
    display: block;
    font-size: 3.75rem;
    line-height: 1.2;
    margin: 0.4em 0;
  }
  .primary i {
    display: block;
    font-size: 2.25rem;
    line-height: 1.35;
    margin: 0.6666666667em 0;
  }
}

.secondary {
  display: block;
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 1em 0;
  margin-top: 0;
  font-weight: 700;
  text-transform: uppercase;
}

.tertiary {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
  margin: 1.5em 0;
  font-weight: normal;
  text-transform: uppercase;
}

.quaternary {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
  margin: 1.5em 0;
  text-transform: uppercase;
  margin-bottom: 0;
}

.lead {
  display: block;
  font-size: 2.25rem;
  line-height: 1.35;
  margin: 0.6666666667em 0;
  margin-top: 0;
  font-weight: 300;
  text-transform: uppercase;
}

.medium {
  display: block;
  display: block;
  font-size: 3.75rem;
  line-height: 1.2;
  margin: 0.4em 0;
  margin-top: 0;
  letter-spacing: -2px;
  font-weight: 400;
}

.large {
  display: block;
  font-size: 5rem;
  margin-bottom: 0.375em;
  letter-spacing: -2px;
  line-height: 1;
  font-weight: 400;
}

.small {
  font-weight: normal;
  font-size: 0.75rem;
}

.large-italic {
  display: block;
  font-size: 5rem;
  font-style: italic;
  font-weight: normal;
  letter-spacing: -2px;
}

.huge-italic {
  display: block;
  font-size: 7.5rem;
  font-style: italic;
  font-weight: normal;
  letter-spacing: -2px;
}

@media only screen and (min-width: 48em) {
  .h4\@ms {
    display: block;
    font-size: 1.5rem;
    line-height: 1.5;
    margin: 1em 0;
  }
}
@media only screen and (min-width: 62em) {
  .h1\@ls {
    display: block;
    font-size: 3.75rem;
    line-height: 1.2;
    margin: 0.4em 0;
  }
  .h3\@ls {
    display: block;
    font-size: 2.25rem;
    line-height: 1.35;
    margin: 0.6666666667em 0;
  }
  .h4\@ls {
    display: block;
    font-size: 1.5rem;
    line-height: 1.5;
    margin: 1em 0;
  }
}
.c-subhead {
  display: block;
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 1em 0;
  margin-bottom: 1.5em;
  text-align: center;
  font-weight: normal;
  text-transform: uppercase;
  font-weight: 300;
  border-bottom: 1px solid #dadada;
}
.c-subhead span {
  position: relative;
  bottom: -0.75em;
  padding: 0 1.5em;
  background-color: rgb(255, 255, 255);
}
@media only screen and (min-width: 48em) {
  .c-subhead {
    display: block;
    font-size: 2.25rem;
    line-height: 1.35;
    margin: 0.6666666667em 0;
    margin-bottom: 3em;
  }
}

.t-theme-lighten .c-subhead span {
  background-color: #f3f3f3;
}

.c-subhead--small {
  margin-bottom: 1.5em;
}
@media only screen and (min-width: 48em) {
  .c-subhead--small {
    margin-bottom: 1.25em;
  }
}

.c-caption {
  line-height: 1.75;
  text-align: center;
  text-transform: uppercase;
  font-weight: 400;
}
.c-caption b {
  display: block;
  margin-bottom: 0.375em;
  color: rgb(174, 112, 175);
  font-size: 1.125rem;
}
.c-caption span {
  display: inline-block;
  padding: 0 0.75em;
  border-top: 1px solid #e6e6e6;
}

p,
ol,
ul,
dl,
address {
  margin-bottom: 1.5em;
}

small {
  font-size: 0.8rem;
}

ul,
ol {
  margin: 0 0 1.5em -24px;
  padding: 0 0 0 24px;
}

li ul,
li ol {
  list-style-type: none;
  margin: 1.5em 0;
}

ul.inline,
ol.inline {
  list-style-type: none;
  margin-left: 0;
}
ul.inline > li,
ol.inline > li {
  display: inline-block;
  padding-left: 12px;
  padding-right: 12px;
}

blockquote {
  font-style: italic;
}
blockquote small:before {
  content: "\A0\2014";
}
blockquote small:after {
  content: "";
}
blockquote cite {
  display: block;
  text-align: right;
  margin-top: 1.5em;
  font-style: normal;
  font-size: 0.8695652174rem;
}

q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

dl,
dd {
  margin-bottom: 1.5em;
}

dt {
  font-weight: bold;
}

abbr[title] {
  border-bottom: 1px dotted #c6bfbf;
  cursor: help;
}

b, strong {
  font-weight: 800;
}

dfn {
  font-style: italic;
}

ins {
  background-color: #8a7b7b;
  color: rgb(71, 63, 63);
  text-decoration: none;
}

mark {
  background-color: #8a7b7b;
  color: rgb(71, 63, 63);
  font-style: italic;
  font-weight: bold;
}

pre,
code,
kbd,
samp {
  font-family: Monaco, Courier New, monospace;
  font-size: 0.8rem;
  line-height: 1.5em;
  color: #484040;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

sub,
sup {
  position: relative;
  font-size: 0.8rem;
  line-height: 0;
  vertical-align: baselineheight;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

select,
textarea,
input[type=text],
input[type=password],
input[type=datetime],
input[type=datetime-local],
input[type=date],
input[type=month],
input[type=time],
input[type=week],
input[type=number],
input[type=email],
input[type=url],
input[type=search],
input[type=tel] {
  padding: 0.75em;
}

select,
textarea,
input[type=text],
input[type=password],
input[type=datetime],
input[type=datetime-local],
input[type=date],
input[type=month],
input[type=time],
input[type=week],
input[type=number],
input[type=email],
input[type=url],
input[type=search],
input[type=tel],
input[type=color] {
  background-color: rgb(255, 255, 255);
  border: 1px solid #c6bfbf;
  border-radius: 0;
}
select:hover,
textarea:hover,
input[type=text]:hover,
input[type=password]:hover,
input[type=datetime]:hover,
input[type=datetime-local]:hover,
input[type=date]:hover,
input[type=month]:hover,
input[type=time]:hover,
input[type=week]:hover,
input[type=number]:hover,
input[type=email]:hover,
input[type=url]:hover,
input[type=search]:hover,
input[type=tel]:hover,
input[type=color]:hover {
  border-color: #aea4a4;
}
select:focus,
textarea:focus,
input[type=text]:focus,
input[type=password]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=time]:focus,
input[type=week]:focus,
input[type=number]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=color]:focus {
  border-color: #8a7b7b;
  outline: 0;
}

.StripeElement {
  padding: 0.75em;
  background-color: rgb(255, 255, 255);
  border: 1px solid #c6bfbf;
  border-radius: 0;
}
.StripeElement.StripeElement--focus {
  border-color: #8a7b7b;
}

select {
  appearance: none;
  margin: 0;
  background: url("/assets/images/arrowdown-big.svg") no-repeat 95% center;
  background-size: 20px;
}

table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1.5em;
  background-color: transparent;
  font-family: museo-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
}
table th,
table td {
  padding: 0.75em;
  vertical-align: middle;
  font-size: 1rem;
  line-height: 1.5em;
  text-align: left;
}
table th {
  font-weight: bold;
}
table tbody + tbody {
  border-top: 2px solid #c6bfbf;
}
.t-theme-primary {
  background-color: rgb(32, 32, 32);
  color: rgb(255, 255, 255);
}
.t-theme-primary a {
  color: rgb(255, 255, 255);
}

.t-theme-secondary {
  background-color: rgb(64, 64, 64);
  color: rgb(255, 255, 255);
}
.t-theme-secondary a {
  color: rgb(255, 255, 255);
}

.t-theme-tertiary {
  background-color: rgb(128, 128, 128);
  color: rgb(255, 255, 255);
}
.t-theme-tertiary a {
  color: rgb(255, 255, 255);
}

.t-theme-quaternary {
  background-color: rgb(192, 192, 192);
}

.t-theme-lighten {
  background-color: #f3f3f3;
}

@media only screen and (min-width: 62em) {
  .t-theme-lighten\@ls {
    background-color: #f3f3f3;
  }
}
.t-theme-gradient-tertiary {
  background: linear-gradient(rgb(128, 128, 128), rgb(255, 255, 255));
}

.c-header {
  position: relative;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1000;
  background-color: rgb(32, 32, 32);
  color: rgb(255, 255, 255);
}
.c-header a {
  color: rgb(255, 255, 255);
  text-decoration: none;
}
@media only screen and (min-width: 62em) {
  .c-header {
    position: sticky;
  }
}

.c-banner {
  position: relative;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1000;
  text-align: center;
}
@media only screen and (min-width: 62em) {
  .c-banner {
    position: sticky;
  }
}

@media only screen and (min-width: 62em) {
  .c-banner + .c-header {
    top: 1.5rem;
  }
}

.c-banner--fixing {
  background-color: rgb(0, 183, 202);
}
.c-banner--fixing a {
  color: rgb(255, 255, 255);
}

.c-nav ul {
  list-style: none;
}
.c-nav li {
  text-transform: uppercase;
}
.c-nav .is-active a,
.c-nav a:hover {
  border-bottom-width: 3px;
  border-bottom-style: solid;
  border-bottom-color: rgb(119, 119, 119);
}
.c-nav .c-dropdown a {
  border-bottom: 3px solid rgb(64, 64, 64);
}
.c-nav .c-dropdown a:hover {
  border-bottom-color: rgb(119, 119, 119);
}

.c-nav__toggler {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 0.5em;
  right: 0.75em;
  font-size: 1.5rem;
  border-bottom: 0 !important;
}
@media only screen and (min-width: 62em) {
  .c-nav__toggler {
    display: none;
  }
}

.c-nav__container {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease-in-out;
}
.c-nav__container.is-open {
  max-height: 50em;
}
@media only screen and (max-width: 61.9375em) {
  .c-nav__container {
    display: flex;
    flex-direction: column;
  }
}
@media only screen and (min-width: 62em) {
  .c-nav__container {
    max-height: none;
    overflow: visible;
  }
}

.c-nav__primary {
  order: 1;
  margin: 0;
  padding: 0;
}
@media only screen and (min-width: 62em) {
  .c-nav__primary {
    background-color: #2d2d2d;
    clear: both;
  }
  .c-nav__primary li {
    font-size: 0.875rem;
  }
}

.c-nav__secondary {
  order: 2;
  margin: 0;
  padding: 0;
}
@media only screen and (min-width: 62em) {
  .c-nav__secondary {
    float: right;
  }
  .c-nav__secondary li {
    font-size: 0.75rem;
  }
}

.c-nav__category-a.is-active a,
.c-nav__category-a a:hover {
  border-bottom-color: rgb(174, 112, 175) !important;
}

.c-nav__category-b.is-active a,
.c-nav__category-b a:hover {
  border-bottom-color: rgb(0, 183, 202) !important;
}

.c-nav__category-c.is-active a,
.c-nav__category-c a:hover {
  border-bottom-color: rgb(63, 179, 79) !important;
}

.c-nav__category-d.is-active a,
.c-nav__category-d a:hover {
  border-bottom-color: rgb(245, 158, 51) !important;
}

.c-nav__category-e.is-active a,
.c-nav__category-e a:hover {
  border-bottom-color: rgb(223, 36, 59) !important;
}

.c-nav__category-f.is-active a,
.c-nav__category-f a:hover {
  border-bottom-color: rgb(214, 204, 180) !important;
}

.c-stripe {
  width: 100%;
  background: rgb(119, 119, 119);
  height: 12px;
}

.c-stripe--a, .c-stripe-content--a {
  background: rgb(119, 119, 119);
}

.c-stripe--b, .c-stripe-content--b {
  background: rgb(174, 112, 175);
}

.c-stripe--c, .c-stripe-content--c {
  background: rgb(0, 183, 202);
}

.c-stripe--d, .c-stripe-content--d {
  background: rgb(63, 179, 79);
}

.c-stripe--e, .c-stripe-content--e {
  background: rgb(245, 158, 51);
}

.c-stripe--f, .c-stripe-content--f {
  background: rgb(223, 36, 59);
}

.c-stripe--g, .c-stripe-content--g {
  background: rgb(214, 204, 180);
}

.c-stripe-content {
  padding-bottom: 12px;
  padding-left: 1.5em;
  padding-right: 1.5em;
  text-align: center;
}
.c-stripe-content a {
  color: white;
}

.c-logo:after {
  content: "";
  display: table;
  clear: both;
}
.c-logo a {
  margin: 0;
  line-height: 0;
  float: left;
}
.c-logo img {
  max-width: 150px;
}
@media only screen and (min-width: 62em) {
  .c-logo {
    float: left;
    position: absolute;
    top: 0.75em;
    left: 1.5em;
  }
  .c-logo img {
    max-width: 80%;
  }
}

.c-action-list li {
  border-bottom: 1px solid rgb(64, 64, 64);
}
.c-action-list li:last-child {
  border-bottom: 0;
}
.c-action-list a,
.c-action-list span {
  display: block;
  padding: 0.75em 0.75em;
}

.c-address-card {
  padding: 0.75em 1.5em;
  background-color: #f3f3f3;
  border-bottom: 1px solid rgb(192, 192, 192);
  font-style: normal;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
}
.c-address-card ul,
.c-address-card ol {
  margin-left: 0;
  margin-bottom: 0;
  padding-left: 0;
  font-size: 0.875rem;
}
.c-address-card li {
  margin-bottom: 0.375em;
}
.c-address-card__title {
  margin-bottom: 0;
  margin-top: 0;
  font-size: 1rem;
}

.c-address-card__subtitle {
  margin-top: 0;
  color: rgb(128, 128, 128);
  font-size: 0.75rem;
}

.c-address-card__subtitle--secondary {
  font-style: italic;
}

ul.c-address-card__links {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: center;
  font-size: 0.6875rem;
  border-top: 1px solid #e6e6e6;
}
ul.c-address-card__links li {
  margin-bottom: 0;
  padding: 0.75em;
}

.c-advanced-filter {
  background: #f6f5f5;
}

.c-advanced-filter__header {
  display: flex;
  padding: 0.75em;
  font-size: 0.8695652174rem;
}
.c-advanced-filter__header b {
  text-transform: uppercase;
}
.c-advanced-filter__header a {
  display: flex;
  align-items: center;
  text-transform: uppercase;
  margin-left: auto;
  font-weight: bold;
}
.c-advanced-filter__header a svg {
  margin-right: 0.25em;
}

.c-advanced-filter__block {
  padding: 0.75em;
  border-top: 1px solid #c6bfbf;
}
.c-advanced-filter__block h5 {
  margin-top: 0;
  grid-column: 1/span 2;
  margin-bottom: 0.75em;
  color: rgb(0, 0, 0);
  font-size: 0.8695652174rem;
}

.c-advanced-filter__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: 1fr;
  gap: 1em;
}

.c-advanced-filter__container--tight {
  gap: 0.6em;
}

.c-advanced-filter__block--double > * {
  grid-column: span 1;
}

.c-advanced-filter__block__opt {
  grid-column: 1/span 2;
}
.c-advanced-filter__block__opt span {
  font-size: 0.8rem;
}

.c-advanced-filter__block__opt--compact {
  grid-column: span 1;
}

.c-advanced-filter__block__legend {
  display: flex;
  justify-content: center;
  text-align: center;
  margin-top: 0.75em;
}
.c-advanced-filter__block__legend > div {
  padding: 0 0.5em;
}
.c-advanced-filter__block__legend span {
  display: block;
  margin-bottom: 0.375em;
  font-size: 0.6666666667rem;
}
.c-advanced-filter__block__legend div + span {
  margin-top: 0.375em;
}
.c-advanced-filter__block__legend input[type=text] {
  max-width: 70px;
  display: block;
  text-align: center;
  padding: 3px;
  border: none;
  border: 1px solid #aea4a4;
  color: #1a1a1a;
  font-size: 0.7518796992rem;
}

.c-advanced-filter__input {
  display: flex;
  align-items: center;
  background: #FFFFFF;
  border: 1px solid;
  border-color: #aea4a4;
}
.c-advanced-filter__input input[type=text] {
  max-width: 70px;
  display: block;
  text-align: center;
  padding: 3px;
  border: none;
  border-right: 1px solid #aea4a4;
  color: #1a1a1a;
  font-size: 0.7518796992rem;
}
.c-advanced-filter__input span {
  display: block;
  padding-left: 4px;
  padding-right: 4px;
  background: #FFFFFF;
  line-height: 1.6;
  min-width: 24px;
}

.c-advanced-filter__block__range {
  padding-left: 1.5em;
  padding-right: 1.5em;
}

.noUi-horizontal {
  margin-top: 2.25em;
  margin-bottom: 1.875em;
  height: 2px !important;
  border: 0 !important;
  /*.noUi-handle-upper {
      right: -6px!important
  }

  .noUi-handle-lower {
      right: -12px!important
  }*/
}
.noUi-horizontal .noUi-target {
  border: 0;
}
.noUi-horizontal .noUi-base {
  background: #e6e6e6;
}
.noUi-horizontal .noUi-connect {
  background: gray;
}
.noUi-horizontal .noUi-handle {
  border: 0;
  box-shadow: none;
  background: transparent;
  outline: none;
  cursor: pointer;
}
.noUi-horizontal .noUi-handle:after, .noUi-horizontal .noUi-handle:before {
  display: none;
}
.noUi-horizontal .noUi-value-large {
  font-size: 0.666rem;
}
.noUi-horizontal .noUi-marker-normal {
  display: none;
}
.noUi-horizontal .noUi-marker-horizontal.noUi-marker-large {
  height: 8px;
  margin-left: 0;
  width: 1px;
}
.noUi-horizontal .noUi-touch-area {
  width: 13px;
  height: 13px;
  background: rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  border-radius: 100%;
  line-height: 0;
  margin: 0;
  padding: 0;
  margin-left: 10px;
  margin-right: 10px;
}
.noUi-horizontal .noUi-tooltip {
  border-radius: 0;
  padding: 4px 8px;
  line-height: 1;
  background: #f6f5f5;
  color: #999999;
  margin-left: -20%;
  font-size: 0.6666666667rem;
}
.noUi-horizontal .noUi-pips-above {
  top: auto;
  bottom: 100%;
  height: 41px;
}
.noUi-horizontal .noUi-pips-above .noUi-marker-large {
  top: 24px;
}
.noUi-horizontal .noUi-pips-above .noUi-value-large {
  transform: translate(-50%, 0);
}

.c-alert {
  display: inline-block;
  padding: 0;
  margin-top: 0.375em;
  border-radius: 2px;
  font-size: 1rem;
  color: rgb(252, 248, 227);
  text-align: left;
  font-weight: bold;
}
.c-alert a {
  color: currentColor;
}

.c-alert--fixed {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
}

.c-alert--info {
  color: rgb(152, 190, 222);
}

.c-alert--success {
  color: rgb(150, 197, 111);
}

.c-alert--warning {
  color: rgb(255, 175, 75);
}

.c-alert--error {
  color: rgb(218, 79, 73);
}

.c-alert__close {
  cursor: pointer;
  float: right;
  text-decoration: none;
}

.c-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 8px 0;
  border-radius: 100px;
  font-size: 0.8695652174rem;
  background-color: rgb(128, 128, 128);
  color: lime;
  color: rgb(255, 255, 255);
}
.c-badge strong {
  font-size: 2.25rem;
  margin-left: 0.375em;
}

.c-badge--full {
  width: 100%;
}

.c-badge--rounded {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4em;
  height: 4em;
  border-radius: 100%;
  text-transform: uppercase;
  font-size: 0.75rem;
}

.c-badge--squared {
  border-radius: 0;
}

.c-badge--tight {
  font-size: 0.6875rem;
}
.c-badge--tight > * {
  line-height: 1;
}

.c-badge--info {
  background-color: rgb(152, 190, 222);
}

.c-badge--trade-show {
  background-color: #00a99d;
}

.c-badge--success {
  background-color: rgb(150, 197, 111);
}

.c-badge--course {
  background-color: #ad70ad;
}

.c-badge--warning {
  background-color: rgb(255, 175, 75);
}

.c-badge--seminar {
  background-color: #707e85;
}

.c-badge--error {
  background-color: rgb(218, 79, 73);
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@media only screen and (min-width: 62em) {
  .c-billboard {
    display: flex;
  }
}

@media only screen and (max-width: 61.9375em) {
  .c-billboard__container {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
  }
}

.c-billboard__primary {
  z-index: 10;
  opacity: 0;
  pointer-events: none;
  border-bottom: 1px solid rgb(255, 255, 255);
  -webkit-backface-visibility: hidden;
}
@media only screen and (max-width: 61.9375em) {
  .c-billboard__primary {
    position: relative;
    flex-shrink: 0;
    width: 100%;
  }
  .c-billboard__primary:nth-child(2) {
    transform: translateX(-100%);
  }
  .c-billboard__primary:nth-child(3) {
    transform: translateX(-200%);
  }
  .c-billboard__primary:nth-child(4) {
    transform: translateX(-300%);
  }
  .c-billboard__primary:nth-child(5) {
    transform: translateX(-400%);
  }
  .c-billboard__primary:nth-child(6) {
    transform: translateX(-500%);
  }
  .c-billboard__primary:nth-child(7) {
    transform: translateX(-600%);
  }
  .c-billboard__primary:nth-child(8) {
    transform: translateX(-700%);
  }
  .c-billboard__primary:nth-child(9) {
    transform: translateX(-800%);
  }
  .c-billboard__primary:nth-child(10) {
    transform: translateX(-900%);
  }
}
@media only screen and (min-width: 62em) {
  .c-billboard__primary {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
}
@media only screen and (min-width: 62em) {
  .c-billboard__primary {
    width: 100%;
    height: 85vh;
    border-bottom: 0;
    border-right: 1px solid rgb(255, 255, 255);
  }
}
.c-billboard__primary.flash-in {
  opacity: 1;
  animation: fade-in 3s;
  pointer-events: all;
}
.c-billboard__primary.flashed-in {
  opacity: 1;
  pointer-events: all;
}
.c-billboard__primary.flash-out {
  opacity: 0;
  animation: fade-out 3s;
}

.c-billboard__secondary {
  border-bottom: 1px solid rgb(255, 255, 255);
}
@media only screen and (min-width: 62em) {
  .c-billboard__secondary {
    height: 42.5vh;
  }
}

@media only screen and (min-width: 62em) {
  .c-billboard__tertiary {
    height: 42.5vh;
  }
}

.c-billboard__next,
.c-billboard__previous {
  width: 50px;
  height: 50px;
  position: absolute;
  bottom: 10px;
  transform: translateY(-50%);
  z-index: 999;
  text-indent: -999em;
  background-size: contain;
  cursor: pointer;
}
@media only screen and (min-width: 62em) {
  .c-billboard__next,
  .c-billboard__previous {
    bottom: auto;
    top: 50%;
  }
}

.c-billboard__previous {
  left: 20px;
  background-image: url("/assets/images/left-chevron-light.svg");
}

.c-billboard__next {
  right: 20px;
  background-image: url("/assets/images/right-chevron-light.svg");
}

.c-box {
  display: block;
  position: relative;
  margin-bottom: 4.5em;
  text-decoration: none;
  color: rgb(64, 64, 64);
}
.c-box h3 {
  word-break: break-word;
}
.c-box figure {
  margin-bottom: 0.75em;
}
.c-box p {
  margin-top: 0;
}
.c-box b {
  font-weight: normal;
  text-transform: uppercase;
  font-size: 0.875rem;
}
.c-box > a {
  display: block;
  text-decoration: none;
}
.c-box > a:hover {
  text-decoration: underline;
}

.c-box.c-box--divisor {
  padding-bottom: 0.75em;
  border-bottom: 2px solid rgb(192, 192, 192);
}

.c-box__title {
  margin-bottom: 0;
}

.c-box__link {
  display: block;
  font-weight: bold;
  text-decoration: none;
  margin-top: 1.5em;
  color: rgb(32, 32, 32);
  font-size: 0.75rem;
  align-self: flex-end;
}
.c-box__link:after {
  display: inline-block;
  margin-left: 0.375em;
  content: ">";
}

.c-box__overlay {
  opacity: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0 2.25em;
  background-color: rgba(32, 32, 32, 0.8);
  transition: all 0.3s;
}
.c-box:hover .c-box__overlay {
  opacity: 1;
}
.c-box__overlay > * {
  margin: 0.75em 0;
}
.c-box__overlay > *:last-child {
  border-bottom: 0;
}
.touchevents .c-box__overlay {
  position: static;
  padding: 0;
  margin: 0 auto 1.5em auto;
  max-width: 200px;
  opacity: 1;
  background-color: transparent;
}
.touchevents .c-box__overlay > * {
  margin: 0 0 1.5em 0;
}

.c-box--tiny p {
  font-size: 0.75rem;
  line-height: 1.75;
}

.c-box--comparable__controls {
  margin-top: 0.75em;
  margin-bottom: 0.75em;
}

.c-breadcrumb {
  list-style: none;
  font-size: 0.75rem;
  margin-left: 0;
  padding-left: 0;
  color: rgb(128, 128, 128);
}
.c-breadcrumb a {
  color: rgb(128, 128, 128);
  text-decoration: underline;
}
.c-breadcrumb a:hover {
  text-decoration: none;
}
.c-breadcrumb li {
  display: inline-block;
}
.c-breadcrumb li:after {
  display: inline-block;
  content: ">";
  margin: 0 0.75em;
}
.c-breadcrumb li:last-child {
  color: rgb(32, 32, 32);
}
.c-breadcrumb li:last-child:after {
  display: none;
}

.c-bulletin li {
  padding: 1.5em;
  border-bottom: 1px solid #e6e6e6;
}
@media only screen and (min-width: 48em) {
  .c-bulletin li {
    padding: 1.5em 3em 4.5em 3em;
  }
}

@media only screen and (min-width: 48em) {
  .c-bulletin--half\@ms li:nth-child(even) {
    border-left: 1px solid #e6e6e6;
  }
  .c-bulletin--half\@ms li:last-child,
  .c-bulletin--half\@ms li:nth-last-child(2) {
    border-bottom: 0;
  }
}
@media only screen and (min-width: 62em) {
  .c-bulletin--fourth\@ls li {
    border-left: 1px solid #e6e6e6;
  }
  .c-bulletin--fourth\@ls li:nth-child(4n+1) {
    border-left: 0;
  }
  .c-bulletin--fourth\@ls li:last-child,
  .c-bulletin--fourth\@ls li:nth-last-child(2),
  .c-bulletin--fourth\@ls li:nth-last-child(3),
  .c-bulletin--fourth\@ls li:nth-last-child(4) {
    border-bottom: 0;
  }
}
.c-button {
  display: inline-block;
  padding: 0.25em 1.5em;
  margin-bottom: 0;
  font-weight: 400;
  font-family: museo-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: 1rem;
  line-height: 1.5em;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  background-color: #f6f5f5;
  color: #8a7b7b;
  border: 1px solid #dedada;
  border-bottom-color: #d2cccc;
  border-radius: 0;
  cursor: pointer;
  min-width: 100px;
}
.c-button:hover, .c-button:active {
  color: #554b4b;
  background-color: #eae7e7;
  text-decoration: none;
}
.c-button.is-disabled {
  opacity: 0.5;
  cursor: default;
  background-color: #f6f5f5;
}

.c-button--primary {
  color: rgb(255, 255, 255);
  background-color: rgb(32, 32, 32);
  border-color: #1b1b1b;
}
.c-button--primary:hover {
  color: rgb(255, 255, 255);
  background-color: #070707;
  border-color: #010101;
}

.c-button--secondary {
  color: rgb(255, 255, 255);
  background-color: rgb(64, 64, 64);
  border-color: #3b3b3b;
}
.c-button--secondary:hover {
  color: rgb(255, 255, 255);
  background-color: #272727;
  border-color: #212121;
}

.c-button--tertiary {
  color: rgb(0, 0, 0);
  background-color: rgba(255, 255, 255, 0.75);
  border: none;
  text-transform: uppercase;
}
.c-button--tertiary:hover {
  color: rgb(0, 0, 0);
  background-color: rgb(255, 255, 255);
}

.c-button--quaternary {
  color: rgb(255, 255, 255);
  background-color: rgb(128, 128, 128);
  border: none;
  text-transform: uppercase;
  font-weight: bold;
}
.c-button--quaternary:hover {
  color: rgb(255, 255, 255);
  background-color: #676767;
}

.c-button--empty {
  color: rgb(0, 0, 0);
  border: 1px solid rgb(192, 192, 192);
  background-color: transparent;
  text-transform: uppercase;
  border-radius: 1.5em;
}

.c-button--palette-a {
  text-transform: uppercase;
  color: rgb(255, 255, 255);
  border: none;
  background-color: rgb(119, 119, 119);
}
.c-button--palette-a:hover {
  color: rgb(255, 255, 255);
  background-color: #5e5e5e;
}

.c-button--palette-b {
  text-transform: uppercase;
  color: rgb(255, 255, 255);
  border: none;
  background-color: rgb(174, 112, 175);
}
.c-button--palette-b:hover {
  color: rgb(255, 255, 255);
  background-color: #965597;
}

.c-button--palette-c {
  text-transform: uppercase;
  color: rgb(255, 255, 255);
  border: none;
  background-color: rgb(0, 183, 202);
}
.c-button--palette-c:hover {
  color: rgb(255, 255, 255);
  background-color: #008997;
}

.c-button--palette-d {
  text-transform: uppercase;
  color: rgb(255, 255, 255);
  border: none;
  background-color: rgb(63, 179, 79);
}
.c-button--palette-d:hover {
  color: rgb(255, 255, 255);
  background-color: #328d3e;
}

.c-button--palette-e {
  text-transform: uppercase;
  color: rgb(255, 255, 255);
  border: none;
  background-color: rgb(245, 158, 51);
}
.c-button--palette-e:hover {
  color: rgb(255, 255, 255);
  background-color: #ea860b;
}

.c-button--palette-f {
  text-transform: uppercase;
  color: rgb(255, 255, 255);
  border: none;
  background-color: rgb(223, 36, 59);
}
.c-button--palette-f:hover {
  color: rgb(255, 255, 255);
  background-color: #b51b2e;
}

.c-button--palette-g {
  text-transform: uppercase;
  color: rgb(255, 255, 255);
  border: none;
  background-color: rgb(214, 204, 180);
}
.c-button--palette-g:hover {
  color: rgb(255, 255, 255);
  background-color: #c4b693;
}

.c-button--small {
  padding: 3px 1.5em;
  font-size: 0.6875rem;
}

.c-button--large {
  padding: 0.5em 1.5em;
  font-size: 1.5rem;
}

.c-button--full {
  width: 100%;
}

.c-button--fat {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
}

@media only screen and (min-width: 62em) {
  .c-button--xlarge\@ls {
    font-size: 2.25rem;
  }
}
.c-button-list {
  list-style: none;
}
.c-button-list li {
  display: inline-block;
  margin: 0 0.75em 0.75em 0;
}

.c-button-list--spaced {
  margin-top: 1.5em;
}

.c-calendar__title {
  margin-top: 0;
  text-transform: uppercase;
}

.c-calendar__month {
  margin: 0;
  padding: 0;
}
.c-calendar__month li {
  display: inline-block;
  font-weight: bold;
}
.c-calendar__month a {
  color: rgb(255, 255, 255);
  text-decoration: none;
}
.c-calendar__month span {
  display: block;
  padding: 0 0.75em;
}
.c-calendar__month abbr {
  display: block;
  margin-bottom: 0.375em;
  border: 0;
  text-decoration: none;
}
.c-calendar__month .c-calendar__day--event {
  background-color: rgb(64, 64, 64);
}
.c-calendar__month .c-calendar__day--event:hover {
  color: rgb(32, 32, 32);
  background-color: rgb(128, 128, 128);
}
.c-calendar__month .is-current {
  background-color: rgb(128, 128, 128);
}
@media only screen and (min-width: 62em) {
  .c-calendar__month span {
    padding-right: 0.25em;
    padding-left: 0.25em;
  }
}

.c-calendar__prev,
.c-calendar__next {
  margin: 0;
  padding: 0;
}
.c-calendar__prev img,
.c-calendar__next img {
  max-width: 50px;
}

.c-calendar__month-selector {
  height: 2.5em;
}

.c-case {
  display: flex;
  flex-direction: column;
  margin-bottom: 1.5em;
}
.c-case h2 {
  margin-top: 0;
  margin-bottom: 0;
}
.c-case hr {
  width: 100%;
  height: 0;
  color: transparent;
  background-color: transparent;
  border: 0;
  border-top: 2px dotted rgb(192, 192, 192);
}
.c-case ul {
  font-size: 0.875rem;
  margin-left: 1.5em;
  padding-left: 0;
}
.c-case em {
  font-size: 0.875rem;
  font-style: normal;
  line-height: 21px;
}

.c-case__title {
  background-color: rgb(32, 32, 32);
  color: rgb(255, 255, 255);
  padding: 0.75em;
  font-size: 0.875rem;
  font-family: inherit;
  text-transform: uppercase;
  font-weight: bold;
}

.c-case__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 1 1 auto;
  align-items: stretch;
  flex-basis: auto;
  background-color: #f8f8f8;
  padding: 0.375em 0.75em;
}

.c-case__description {
  width: 100%;
  flex: 1 1 auto;
  align-self: flex-start;
}

.c-case__details {
  width: 100%;
  align-self: flex-end;
  min-height: 180px;
}

.c-carousel__controls {
  display: flex;
  justify-content: space-between;
  padding-top: 1.5em;
  border-top: 1px solid #dadada;
}
.c-carousel__controls .c-carousel__next,
.c-carousel__controls .c-carousel__prev {
  border-radius: 50%;
  border: 1px solid rgb(192, 192, 192);
  color: rgb(32, 32, 32);
  padding: 12px;
  line-height: 10px;
  text-decoration: none;
}

.c-clock {
  position: relative;
  width: 100px;
  height: 100px;
  margin: 0 auto 1.5em auto;
  border: 2px solid rgb(64, 64, 64);
  border-radius: 120px;
  transition: top 1s;
}

.c-clock__centre {
  background: rgb(64, 64, 64);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  margin-left: -4px;
  border-radius: 12px;
}

.c-clock__hours,
.c-clock__minutes {
  background: rgb(64, 64, 64);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 4px;
  margin-left: -2px;
  border-radius: 2px;
  transition: transform 1s ease;
  transform: translate3d(0, 0, 0);
}

.c-clock__hours {
  height: 30px;
  margin-top: -27px;
  transform-origin: 50% 27px;
}

.c-clock__minutes {
  height: 42px;
  margin-top: -42px;
  transform-origin: 50% 42px;
}

.c-clock__seconds {
  height: 42px;
  width: 2px;
  margin-left: -1px;
  margin-top: -42px;
  background: rgb(64, 64, 64);
  position: absolute;
  left: 50%;
  top: 50%;
  transition: transform 0.8s ease;
  transform: translate3d(0, 0, 0);
  transform-origin: 50% 42px;
}

.c-clock--large {
  width: 150px;
  height: 150px;
}
.c-clock--large .c-clock__hours {
  height: 50px;
  margin-top: -50px;
  transform-origin: 50% 50px;
}
.c-clock--large .c-clock__minutes {
  height: 62px;
  margin-top: -62px;
  transform-origin: 50% 62px;
}
.c-clock--large .c-clock__seconds {
  height: 62px;
  margin-top: -62px;
  transform-origin: 50% 62px;
}

.c-cookie {
  position: fixed;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 1000;
  background-color: rgb(32, 32, 32);
  color: rgb(255, 255, 255);
  font-size: 0.875rem;
  text-align: center;
  padding: 1.5em;
}
.c-cookie a {
  color: rgb(255, 255, 255);
  font-weight: bold;
}
.c-cookie p  {
  margin: 0 !important;
}

.c-cookie-modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1000;
  background-color: rgb(32, 32, 32);
  color: rgb(255, 255, 255);
  font-size: 0.875rem;
  padding: 4.5em;
}
.c-cookie-modal a {
  color: rgb(255, 255, 255);
  font-weight: bold;
}
.c-cookie-modal > div {
  margin-bottom: 1.5em;
}
.c-cookie-modal ul {
  list-style: none;
}

.c-cookie-consent-necessary {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  cursor: pointer;
}

.c-cookie__close {
  position: absolute;
  top: 0.75em;
  right: 0.75em;
  border: 0;
  background: transparent;
  color: rgb(255, 255, 255);
  cursor: pointer;
}
.c-cookie__close:hover {
  text-decoration: underline;
}

.c-course__text p {
  font-size: 12px;
  line-height: 1.5em;
}
.c-course__text ul {
  font-size: 12px;
  line-height: 1.5em;
  margin-left: 0;
}

.c-custom-select {
  display: block;
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 1em 0;
  display: inline-block;
  border: 0;
  text-align: center;
  width: auto !important;
  margin: 0 auto;
  padding: 0 0.75em 0 0;
}
.c-custom-select option {
  text-align: center;
}

.c-custom-select--light {
  background: rgb(32, 32, 32) url("/assets/images/arrowdown-big-light.svg") no-repeat right center;
  background-size: 12px;
  color: rgb(255, 255, 255);
}

.c-divisor {
  display: block;
  width: 100%;
  margin: 3em 0;
  height: 1px;
  background-color: #dadada;
  border: 0;
}

.c-dropdown {
  transition: padding-bottom 0.4s;
}
@media only screen and (min-width: 62em) {
  .c-dropdown.is-open {
    padding-bottom: 3em;
  }
}

.c-dropdown__toggler {
  cursor: pointer;
}
.c-dropdown__toggler:after {
  display: inline-block;
  content: "\25BE";
  margin-left: 5px;
  font-size: 1.5rem;
  line-height: 0;
}

.c-dropdown .c-dropdown__content {
  margin: 0;
  padding: 0;
  max-height: 0;
  overflow: hidden;
}
.c-dropdown .c-dropdown__content li {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid rgb(128, 128, 128);
}
.c-dropdown .c-dropdown__content a,
.c-dropdown .c-dropdown__content span {
  display: block;
  background-color: rgb(64, 64, 64);
}
@media only screen and (min-width: 62em) {
  .c-dropdown .c-dropdown__content {
    position: absolute;
    bottom: 12px;
    left: 0;
    right: 0;
    z-index: 100;
    background-color: rgb(64, 64, 64);
  }
  .c-dropdown .c-dropdown__content li {
    padding: 0.75em 1.5em;
    border-bottom: 0;
  }
}

.c-dropdown.is-open .c-dropdown__content {
  max-height: 800px;
  transition: max-height 1s;
}
@media only screen and (min-width: 62em) {
  .c-dropdown.is-open .c-dropdown__content {
    max-height: 3em;
  }
}

@media only screen and (min-width: 62em) {
  .c-dropdown--baloon.is-open {
    padding-bottom: 0;
  }
}

@media only screen and (min-width: 62em) {
  .c-dropdown--baloon .c-dropdown__content {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    bottom: auto;
    background: rgb(32, 32, 32);
  }
  .c-dropdown--baloon .c-dropdown__content li {
    padding: 0;
    border-bottom: 1px solid rgb(64, 64, 64);
  }
  .c-dropdown--baloon .c-dropdown__content a {
    display: block;
    opacity: 0.8;
    padding: 1.5em 1.5em;
    background: rgb(32, 32, 32);
    border-bottom: 0;
  }
  .c-dropdown--baloon .c-dropdown__content a:hover {
    background: rgb(0, 0, 0);
  }
}

@media only screen and (min-width: 62em) {
  .c-dropdown--baloon.is-open .c-dropdown__content {
    max-height: none;
    overflow: inherit;
    transition: none;
  }
}

.c-dropdown-button {
  margin: 0;
  padding: 0;
}

.c-dropdown-button__items {
  display: inline-block;
  cursor: pointer;
  margin: 5px auto;
  padding: 4px 15px 2px 5px;
  font-size: 0.6875rem;
  appearance: none;
  text-align: center;
  text-align-last: center;
  border: 0;
  background: rgba(255, 255, 255, 0.5) url("/assets/images/arrowdown.gif") no-repeat center right;
  background-size: 12px;
}

.c-table--striped-alt .c-dropdown-button__items {
  background: rgba(192, 192, 192, 0.5) url("/assets/images/arrowdown.gif") no-repeat center right;
}

.c-dropzone {
  position: relative;
  padding: 3em;
  background: rgba(32, 32, 32, 0.05);
  border: 1px dashed rgba(32, 32, 32, 0.2);
  text-align: center;
}
.c-dropzone:hover {
  background: rgba(32, 32, 32, 0.15);
}
.c-dropzone label {
  text-indent: -999em;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  cursor: pointer;
}
.c-dropzone__icon {
  display: block;
  margin: 0 auto 0.75em auto;
  width: 40px;
  opacity: 0.2;
}

.c-event {
  display: flex;
  align-items: stretch;
  margin-bottom: 1.5em;
}
.c-event * {
  margin: 0;
}
.c-event figure {
  padding: 1.5em 0;
  margin-bottom: 0;
  line-height: 0;
  text-align: center;
}
.c-event figure img {
  max-height: 300px;
}
@media only screen and (min-width: 62em) {
  .c-event {
    margin-bottom: 3em;
  }
}

.c-event__content {
  display: flex;
  width: 100%;
  justify-content: space-between;
  flex-direction: column;
  border: 1px solid #dadada;
}
.c-event__info {
  background-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
}
.c-event__info > div {
  display: flex;
  justify-content: stretch;
  align-items: center;
}

.c-event__title {
  font-weight: normal;
  line-height: 1.5;
  font-size: 0.75rem;
  text-transform: uppercase;
}
.c-event__title span {
  display: block;
}

.c-event__category {
  width: 100%;
  flex: 1;
  align-self: stretch;
  border-radius: 0;
  padding: 0.25em 0.75em;
}

.c-event__date {
  line-height: 1;
  text-align: right;
  text-transform: lowercase;
  margin-right: 1.5em;
}
.c-event__date b {
  display: block;
  font-size: 2rem;
  letter-spacing: -1px;
}

.c-event__location {
  margin-top: 0.25rem;
  font-weight: 900;
}

.c-resource {
  display: flex;
  align-items: stretch;
  margin-bottom: 1.5em;
}
.c-resource * {
  margin: 0;
}
.c-resource figure {
  padding: 0;
  margin-bottom: 0;
  line-height: 0;
  text-align: center;
}
@media only screen and (min-width: 62em) {
  .c-resource {
    margin-bottom: 3em;
  }
}

.c-resource__content {
  display: flex;
  width: 100%;
  justify-content: space-between;
  flex-direction: column;
  border: 1px solid #dadada;
}
.c-resource__info {
  background-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
}
.c-resource__info > div {
  display: flex;
  justify-content: stretch;
  align-items: center;
}

.c-resource__title {
  font-weight: normal;
  line-height: 1.5;
  font-size: 0.75rem;
  text-transform: uppercase;
}
.c-resource__title span {
  display: block;
}

.c-resource__category {
  width: 100%;
  flex: 1;
  align-self: stretch;
  border-radius: 0;
  padding: 0.25em 0.75em;
}

.c-resource__date {
  line-height: 1;
  text-align: right;
  text-transform: lowercase;
  margin-right: 1.5em;
}
.c-resource__date b {
  display: block;
  font-size: 2rem;
  letter-spacing: -1px;
}

.c-fieldgroup {
  border: 0;
  margin: 0;
  padding: 0;
}
.c-fieldgroup p {
  margin-top: 0;
}
.c-fieldgroup input[type=text],
.c-fieldgroup input[type=tel],
.c-fieldgroup input[type=email],
.c-fieldgroup input[type=password],
.c-fieldgroup input[type=date],
.c-fieldgroup input[type=time],
.c-fieldgroup input[type=number],
.c-fieldgroup select,
.c-fieldgroup textarea {
  width: 100%;
}
.c-fieldgroup label {
  display: block;
  margin-bottom: 0.375em;
}

.c-fieldgroup--inline {
  width: 100%;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}
.c-fieldgroup--inline input {
  width: 100%;
  flex: 1;
}

.c-footer ul {
  margin: 0;
  padding: 0;
  font-size: 0.75rem;
  justify-content: center;
  list-style: none;
}
.c-footer ul a {
  text-transform: uppercase;
  text-decoration: none;
}
.c-footer ul a:hover {
  text-decoration: underline;
}
.c-footer li:before {
  display: inline-block;
  content: "\2022";
  margin-right: 0.375em;
}

.c-footer__socials {
  justify-content: center;
  padding-top: 1.5em;
  display: flex;
  gap: 8px;
}
.c-footer__socials span {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #8a7b7b;
}
.c-footer__socials span:hover {
  background: #030303;
}
.c-footer__socials svg {
  width: 16px;
  height: 16px;
  fill: white;
}

.c-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.c-hero .primary strong {
  text-transform: none;
}
.c-hero hr {
  margin: 0 auto;
  width: 40%;
}
@media only screen and (min-width: 48em) {
  .c-hero hr {
    margin-top: 1.5em;
    margin-bottom: 1.5em;
  }
}

.c-label {
  display: inline-block;
  padding: 0.75em;
  text-transform: uppercase;
  font-size: 1rem;
  background-color: lime;
  color: rgb(255, 255, 255);
}

.c-label--palette-a {
  background-color: rgb(119, 119, 119);
}

.c-label--palette-b {
  background-color: rgb(174, 112, 175);
}

.c-label--palette-c {
  background-color: rgb(0, 183, 202);
}

.c-label--palette-d {
  background-color: rgb(63, 179, 79);
}

.c-label--palette-e {
  background-color: rgb(245, 158, 51);
}

.c-label--palette-f {
  background-color: rgb(223, 36, 59);
}

.c-label--palette-g {
  background-color: rgb(214, 204, 180);
}

.c-layer {
  position: fixed;
  z-index: 110;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(32, 32, 32, 0.8);
}

.c-map {
  box-sizing: border-box;
  position: relative;
}
.c-map .c-address-card {
  background-color: rgb(255, 255, 255);
  margin-right: 4px;
}
.c-map > *, .c-map > *::before, .c-map > *::after {
  box-sizing: inherit;
}

.c-map__container {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  padding: 1.5em;
  height: 100%;
  width: 100%;
  pointer-events: none;
}
@media only screen and (min-width: 48em) {
  .c-map__container {
    width: 500px;
  }
}

.c-map__panel {
  pointer-events: auto;
  position: relative;
  overflow: scroll;
  max-height: calc(100% - 6em);
}

.c-map__search {
  pointer-events: auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: 1.5em;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
}
.c-map__search input {
  flex: 1;
  border: 0;
}
.c-map__search button {
  border: 0;
  padding: 0.75em;
}

.c-map__localize {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 60px;
}
.c-map__localize:hover {
  background-color: #f6f5f5;
}

.c-map__filters {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  padding: 1.5em;
}

.c-map__result__toggler {
  cursor: pointer;
  padding: 0.375em 0.75em;
  font-size: 1.3125rem;
  position: absolute;
  top: 0;
  right: 4px;
  z-index: 30;
  background-color: rgb(255, 255, 255);
  border: 0;
}

.c-map__globe {
  position: relative;
  z-index: 10;
  width: 100%;
  min-height: 75vh;
}

.c-message p {
  font-size: 1.125rem;
}

.c-message--info {
  color: rgb(152, 190, 222);
}

.c-message--success {
  color: rgb(150, 197, 111);
}

.c-message--warning {
  color: rgb(255, 175, 75);
}

.c-message--error {
  color: rgb(218, 79, 73);
}

.c-modal {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
}
.c-modal .c-address-card {
  margin-bottom: 0;
}
.c-modal:target {
  display: block;
}
.c-modal.is-visible {
  display: block;
}

.c-modal__container {
  min-width: 400px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  outline: 3000px solid rgba(0, 0, 0, 0.6);
  background-color: white;
}

.c-modal__container--wide {
  min-width: auto;
  width: 100%;
}
@media only screen and (min-width: 48em) {
  .c-modal__container--wide {
    min-width: 600px;
  }
}
@media only screen and (min-width: 62em) {
  .c-modal__container--wide {
    width: 720px;
  }
}

.c-modal__close {
  cursor: pointer;
  font-size: 1.5rem;
  position: absolute;
  top: 0.75em;
  right: 0.75em;
  line-height: 1;
}

.c-page-modal {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  z-index: 3000;
  width: 100%;
  height: calc(100% - 1.5rem);
  overflow: hidden;
  top: 0;
  padding: 1.5rem;
}

.c-page-modal .back-to-top {
  display: none;
}

.c-page-modal-close {
  position: absolute;
  top: 0.75em;
  right: 0.75em;
  border: 0;
  cursor: pointer;
  background: transparent;
  z-index: 100;
}

.c-page-model-inner {
  background-color: white;
  width: 100vw;
  margin: auto;
  position: relative;
  overflow: hidden;
}

.c-page-modal-content {
  max-height: 100vh;
  overflow: scroll;
}

.c-page-modal-header {
  position: absolute;
  top: 0;
  right: 0;
}

.c-page-modal-overlay {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: black;
  opacity: 0.75;
  z-index: 2000;
}

.c-media-list {
  list-style: none;
}
.c-media-list li {
  padding: 0.75em;
  border-bottom: 1px solid rgb(192, 192, 192);
}
.c-media-list li:last-child {
  border-bottom: 0;
}
.c-media-list a {
  font-weight: bold;
}

.c-net-view {
  position: relative;
}

@media only screen and (min-width: 62em) {
  .c-net-view__header {
    position: absolute;
    top: 1.5em;
    left: 0;
  }
  .c-net-view .c-net-view__container {
    margin-left: 9em;
  }
}
.c-overlay {
  height: 100%;
  position: relative;
  z-index: 50;
}

.c-overlay--primary {
  color: rgb(255, 255, 255);
  background-color: rgba(0, 0, 0, 0.45);
}
.c-overlay--primary a {
  color: rgb(255, 255, 255);
}

.c-overlay__discover {
  display: inline-block;
  width: 40px;
  height: 40px;
  margin-top: 1.5em;
  background: url("../images/bottom-chevron-light.svg") no-repeat;
  background-size: contain;
}

.c-panel {
  padding: 1.5em;
  position: fixed;
  z-index: 200;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgb(255, 255, 255);
  overflow-x: hidden;
}
@media only screen and (min-width: 62em) {
  .c-panel {
    top: 20%;
    right: 20%;
    bottom: 20%;
    left: 20%;
  }
}

.c-panel__close {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  right: 0;
  font-size: 1.3125rem;
  line-height: 0.8;
  width: 1em;
  height: 1em;
  padding: 1.5em;
  text-align: center;
  text-decoration: none;
  background-color: rgb(64, 64, 64);
  color: rgb(255, 255, 255);
}
.c-panel__close:hover {
  background-color: rgb(32, 32, 32);
}

.c-profile {
  position: relative;
  background: rgb(0, 0, 0);
  margin-bottom: 0;
  margin-left: 0;
}
.c-profile a:hover {
  border-bottom: 0;
}
@media only screen and (min-width: 62em) {
  .c-profile {
    background: transparent;
    float: right;
    font-size: 0.75rem;
    border-left: 1px solid rgb(64, 64, 64);
  }
}
.c-profile li {
  font-size: 0.75rem;
}

.c-profile__toggler {
  display: block;
  padding: 2.025em;
  text-transform: uppercase;
}
.c-profile__toggler:hover {
  background: rgb(64, 64, 64);
}

@media only screen and (min-width: 48em) {
  .c-rank {
    display: flex;
    align-items: center;
  }
}

.c-rank__step {
  display: block;
  margin-bottom: 0;
}
@media only screen and (min-width: 48em) {
  .c-rank__step {
    float: left;
    padding-right: 0.375em;
    margin-right: 0.375em;
    border-right: 1px solid rgb(128, 128, 128);
  }
}

.c-rank__title {
  display: block;
  margin: 0;
  padding: 0;
}

.c-ribbon-container {
  min-height: 37px;
}

.c-ribbon {
  margin-bottom: 1rem;
  display: inline-block;
  padding: 8px 10px;
  text-align: center;
  border-radius: 5px;
  text-transform: uppercase;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1em;
  letter-spacing: 1px;
}

.c-ribbon--primary {
  margin-top: 1rem;
  color: rgb(255, 255, 255);
  background-color: rgb(32, 32, 32);
}

.c-ribbon--small {
  font-size: 12px;
  padding: 6px 6px;
  margin-bottom: 0.5rem;
}

.c-ribbon--alone {
  margin-top: 0;
  margin-bottom: 0;
}

/*.c-ribbon--inline {
    margin-bottom: 0;
    margin-right: 0.5rem;
}*/
.c-roster {
  margin: 0.75em 0;
  padding: 0.75em;
}

.c-roster__icon {
  line-height: 0;
  overflow: hidden;
}
.c-roster__icon img {
  border: 8px solid rgb(255, 255, 255);
  border-radius: 100%;
}

.c-roster__icon--alt img {
  border-color: #f3f3f3;
}

.c-roster__icon--tiny {
  margin-bottom: 0;
}
.c-roster__icon--tiny img {
  border: 4px solid rgb(255, 255, 255);
}

.c-roster__name {
  display: block;
  text-transform: uppercase;
  color: rgb(71, 63, 63);
  display: block;
  font-size: 1rem;
  line-height: 1.5;
  margin: 1.5em 0;
  margin-top: 0;
  margin-bottom: 0.5em;
}

.c-roster__description {
  display: block;
  text-transform: uppercase;
  font-size: 0.75rem;
  line-height: 1.5;
}
.c-search input {
  border: none;
  flex: 1;
}
.c-search input[type=search] {
  appearance: none;
}
@media only screen and (min-width: 62em) {
  .c-search {
    display: flex;
    justify-content: space-between;
    float: right;
    border-left: 1px solid rgb(64, 64, 64);
    padding-left: 0.75em;
  }
  .c-search input {
    margin: 0 1.5em;
    font-size: 0.75rem;
    padding: 0;
    color: rgb(255, 255, 255);
    background-color: transparent;
    border-bottom: 1px solid rgb(64, 64, 64);
  }
  .c-search button {
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    background-color: transparent;
    color: rgb(255, 255, 255);
    font-size: 0.75rem;
  }
}

.c-search__toggler {
  display: none;
}
.c-search .c-search__toggler:hover {
  border-bottom: 0;
  opacity: 0.2;
}
.c-search__toggler + .is-open {
  max-width: 25em;
}
@media only screen and (min-width: 62em) {
  .c-search__toggler {
    cursor: pointer;
    display: block;
    width: 1em;
    height: 1em;
    background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQ4OC4xMzkgNDg4LjEzOSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDg4LjEzOSA0ODguMTM5OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgd2lkdGg9IjI0cHgiIGhlaWdodD0iMjRweCI+CjxnPgoJPGc+CgkJPGc+CgkJCTxwYXRoIGQ9Ik0yOTAuNTEzLDAuMDA0QzE4MS4zNzgsMC4wMDQsOTIuOTE2LDg4LjQ2Niw5Mi45MTYsMTk3LjZjMCw0Ni45NjcsMTYuNDc3LDkwLjA0Myw0My44MzYsMTI0LjAzICAgICBMNi4xNTYsNDUyLjE5NmMtOC4yMDgsOC4yMzgtOC4yMDgsMjEuNTUzLDAsMjkuNzYxYzguMjA4LDguMjM4LDIxLjU1Myw4LjIzOCwyOS43NjEsMGwxMzAuNTk2LTEzMC41NjYgICAgIGMzMy45MjYsMjcuMzI5LDc3LjAzMiw0My44MDYsMTI0LjAzLDQzLjgwNmMxMDkuMTM0LDAsMTk3LjU5Ny04OC40NjIsMTk3LjU5Ny0xOTcuNTk3UzM5OS42MTYsMC4wMDQsMjkwLjUxMywwLjAwNHogICAgICBNMjkwLjUxMywzNjQuNzk3Yy05Mi4yMzIsMC0xNjcuMTk3LTc0Ljk5Ni0xNjcuMTk3LTE2Ny4xOTdTMTk4LjM0MSwzMC40MDMsMjkwLjUxMywzMC40MDNTNDU3LjcxLDEwNS4zOTksNDU3LjcxLDE5Ny42ICAgICBTMzgyLjcxNCwzNjQuNzk3LDI5MC41MTMsMzY0Ljc5N3oiIGZpbGw9IiNGRkZGRkYiLz4KCQk8L2c+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgoJPGc+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgoJPGc+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgoJPGc+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgoJPGc+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgoJPGc+Cgk8L2c+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==);
    background-repeat: no-repeat;
    background-size: contain;
    text-indent: -9999px;
    opacity: 0.6;
  }
}

.c-search__fields {
  display: flex;
  justify-content: space-between;
}
@media only screen and (min-width: 62em) {
  .c-search__fields {
    max-width: 0;
    overflow: hidden;
    transition: all 0.8s;
  }
}

.c-selector {
  position: relative;
}
.c-selector li a {
  display: block;
  padding: 0.75em 1.5em;
  border-top: 1px solid rgba(0, 0, 0, 0.9);
  background-color: rgb(128, 128, 128);
}
.c-selector li a:hover {
  background-color: rgb(0, 0, 0);
  border-bottom: 0;
}

.c-selector__toggler:after {
  display: inline-block;
  content: "\25BA";
  margin-left: 5px;
  font-size: 0.4375rem;
}

.c-selector__content {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 100;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
  line-height: 1.1;
  outline: 4000px solid rgba(0, 0, 0, 0.8);
  min-width: 200px;
}
.c-selector__content:target, .c-selector__content[data-is-open] {
  display: block;
}
.c-selector__content li {
  display: block !important;
  margin: 0 !important;
}
.c-selector__content li:last-child {
  text-transform: lowercase;
}

.c-simple-filters {
  margin-bottom: 3em;
}

.c-simple-filters__bar {
  display: flex;
  flex-direction: column;
  margin-bottom: 1.5em;
}
@media only screen and (min-width: 62em) {
  .c-simple-filters__bar {
    flex-direction: row;
  }
}

.c-simple-filters__block {
  flex: 1;
  margin-bottom: 0.75em;
  padding: 0 1.5em;
}
.c-simple-filters__block label {
  display: block;
  margin-bottom: 0.375em;
  color: gray;
  font-size: 0.8695652174rem;
}
.c-simple-filters__block input,
.c-simple-filters__block select {
  width: 100%;
}
.c-simple-filters__block select {
  border: 0;
  border-bottom: 1px solid #e6e6e6;
}

.c-slider {
  margin: 1.5em 4.5em;
}
@media only screen and (min-width: 86.375em) {
  .c-slider {
    margin: 0 0 3em 0;
  }
}

.c-slider--bordered {
  border: 1px solid #e6e6e6;
}

.c-slide__wrapper {
  display: flex;
  align-items: center;
  position: relative;
  padding-bottom: 75%;
  margin-bottom: 3em;
}

.c-slider__item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.c-slider__item img {
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  left: 0;
  object-fit: cover;
}

.c-slider__control {
  position: absolute;
  z-index: 100;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: 0;
  cursor: pointer;
}
.c-slider__control img {
  max-width: 50px;
}

.c-slider__control__next {
  right: -4.5em;
}
@media only screen and (min-width: 86.375em) {
  .c-slider__control__next {
    right: -7.5em;
  }
}

.c-slider__control__prev {
  left: -4.5em;
}
@media only screen and (min-width: 86.375em) {
  .c-slider__control__prev {
    left: -7.5em;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.c-slideshow {
  position: relative;
}

.c-slideshow__item {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 40;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  -webkit-backface-visibility: hidden;
}
.c-slideshow__item.flash-in {
  opacity: 1;
  animation: fade-in 3s;
  pointer-events: all;
}
.c-slideshow__item.flashed-in {
  opacity: 1;
  pointer-events: all;
}
.c-slideshow__item.flash-out {
  opacity: 0;
  animation: fade-out 3s;
}

.c-table {
  border-collapse: collapse;
}
.c-table caption {
  text-align: left;
  margin-bottom: 1.5em;
}

.c-table--condensed th,
.c-table--condensed td {
  padding: 0.375em;
}

.c-table--bordered {
  border: 1px solid #c6bfbf;
}
.c-table--bordered th,
.c-table--bordered td {
  border-left: 1px solid #c6bfbf;
}
.c-table--bordered caption + thead tr:first-child th,
.c-table--bordered caption + tbody tr:first-child th,
.c-table--bordered caption + tbody tr:first-child td,
.c-table--bordered colgroup + thead tr:first-child th,
.c-table--bordered colgroup + tbody tr:first-child th,
.c-table--bordered colgroup + tbody tr:first-child td,
.c-table--bordered thead:first-child tr:first-child th,
.c-table--bordered tbody:first-child tr:first-child th,
.c-table--bordered tbody:first-child tr:first-child td {
  border-top: 0;
}

.c-table--striped tbody tr:nth-child(odd) td,
.c-table--striped tbody tr:nth-child(odd) th {
  background-color: #f6f5f5;
}

.c-table--striped-alt tbody tr:nth-child(odd) td,
.c-table--striped-alt tbody tr:nth-child(odd) th {
  background-color: #f6f5f5;
}

.c-table--striped-dark tbody tr:nth-child(odd) td,
.c-table--striped-dark tbody tr:nth-child(odd) th {
  background-color: rgb(192, 192, 192);
}

.c-table__top {
  vertical-align: top;
}

.c-table--codes {
  width: 100%;
  table-layout: fixed;
  empty-cells: hide;
  scroll-margin: 8rem;
}
.c-table--codes thead tr th {
  background-color: #f6f5f5;
  border-bottom: 1px solid #c6bfbf;
  vertical-align: top;
  text-align: center;
}
.c-table--codes tbody tr td {
  text-align: center;
}
.c-table--codes thead tr th:first-child, .c-table--codes tbody tr th:first-child {
  text-align: left;
}
.c-table--codes tbody tr:nth-child(even) td,
.c-table--codes tbody tr:nth-child(even) th {
  background-color: #f6f5f5;
}
.c-table--codes tbody tr:nth-child(odd) td,
.c-table--codes tbody tr:nth-child(odd) th {
  background-color: white;
}
.c-table--codes thead tr td, .c-table--codes thead tr th {
  width: 90px;
}
.c-table--codes thead tr td:first-child, .c-table--codes thead tr th:first-child {
  width: 130px;
}
.c-table--codes th:first-child, .c-table--codes td:first-child {
  position: sticky;
  left: 0px;
  z-index: 1;
}
.c-table--codes tbody tr:target td, .c-table--codes tbody tr:target th {
  background-color: #FFFACD !important;
}

.c-table--stripes {
  width: 100%;
  empty-cells: hide;
  scroll-margin: 8rem;
}
.c-table--stripes a {
  text-decoration: underline;
}
.c-table--stripes thead tr th {
  background-color: #f6f5f5;
  border-bottom: 1px solid #c6bfbf;
  vertical-align: top;
}
.c-table--stripes thead tr th:first-child, .c-table--stripes tbody tr th:first-child {
  text-align: left;
}
.c-table--stripes tbody tr:nth-child(even) td,
.c-table--stripes tbody tr:nth-child(even) th {
  background-color: #f6f5f5;
}
.c-table--stripes tbody tr:nth-child(odd) td,
.c-table--stripes tbody tr:nth-child(odd) th {
  background-color: white;
}

.c-table--show-diff .is-different {
  background: #f2f2f2;
  border-bottom: 5px solid rgb(255, 255, 255);
}

.c-table--show-diff__head th {
  width: 20%;
  padding: 1.5em 1.5em 1.5em 0;
  background: #f6f5f5;
}
.c-table--show-diff__head .c-box {
  margin-bottom: 0;
  padding: 1.5em;
  background: rgb(255, 255, 255);
}

th.c-table--show-diff__controls {
  padding-right: 1.5em;
  padding-left: 1.5em;
  vertical-align: bottom;
}

.c-table--line-divisor tr {
  border-bottom: 1px solid #c6bfbf;
}

.c-tabs {
  margin: 0;
  padding: 0;
  margin-bottom: 4.5em;
  text-transform: uppercase;
  font-size: 0.75rem;
  /*@include breakpoint-up-to(medium-screens) {

      border-bottom: 0;
      overflow: hidden;
      position: relative;
      background: $secondarycolor;

      &::after {
          content: "☰";
          position: absolute;
          top: $baselineheight/4;
          right: 15px;
          z-index: 2;
          pointer-events: none;
          color: $white;
          @include font-size(16);
      }

      &.is-open {

          a {
              position: relative;
              display: block;
          }

      }

      li {
          display: block;
      }

      a {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          padding: $baselineheight/2;

          &.is-active {
              color: $white;
              border: 0;
              z-index: 1;
              background: $secondarycolor;
          }

      }

  }*/
}
.c-tabs li {
  display: inline-block;
  margin: 0 0.75em;
}
.c-tabs a {
  display: inline-block;
  padding: 0 0.375em;
  text-decoration: none;
  color: rgb(128, 128, 128);
}
.c-tabs a.is-active {
  color: rgb(32, 32, 32);
  border-bottom: 1px solid rgb(32, 32, 32);
  font-weight: bold;
  position: relative;
}
.c-tabs a:hover {
  color: rgb(64, 64, 64);
}

.c-timetable {
  border-collapse: collapse;
}
.c-timetable td {
  padding: 1.5em;
  vertical-align: top;
  border-bottom: 1px solid #e6e6e6;
}
.c-timetable tr:last-child td {
  border-bottom: 0;
}

.c-timetable__divisor td {
  border-bottom: 0;
}
.c-timetable__divisor .c-timetable__label {
  margin-left: -2.475em;
}

.c-timetable__content {
  border-left: 1px solid rgb(174, 112, 175);
  padding-left: 1.5em;
}

.c-timetable__title {
  font-size: 1rem;
  text-transform: uppercase;
  margin-bottom: 0.25em;
}
.c-timetable__title img {
  display: block;
  margin-top: 0.75em;
  max-width: 50px;
}

.c-timetable__description {
  opacity: 0.8;
}

.c-timetable__time {
  font-size: 1.125rem;
  color: rgb(174, 112, 175);
  font-weight: 700;
  text-align: right;
  white-space: nowrap;
}
.c-timetable__time span {
  display: block;
}

.c-timetable__label {
  min-width: 80px;
  text-align: center;
  position: relative;
  display: inline-block;
  padding: 0 0.25em;
  color: rgb(255, 255, 255);
  background-color: rgb(174, 112, 175);
  text-transform: uppercase;
}
.c-timetable__label:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -6px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 6px 0 6px;
  border-color: rgb(174, 112, 175) transparent transparent transparent;
}

.c-tooltip {
  font-size: 0.75rem;
  position: relative;
  display: inline-block;
}

.c-tooltip__info {
  display: inline-block;
  color: white;
  font-family: serif;
  background-color: black;
  width: 18px;
  height: 18px;
  border-radius: 9px;
  text-align: center;
  font-size: 18px;
  line-height: 18px;
}

.c-tooltip__info--small {
  width: 14px;
  height: 14px;
  border-radius: 7px;
  font-size: 12px;
  line-height: 14px;
}

.c-tooltip--absolute-left {
  position: absolute;
  transform: translate(-28px, 3px);
}

.c-tooltip--iframe {
  position: absolute;
  transform: translate(148px, 3px);
}

.c-tooltip__toggler {
  cursor: pointer;
}
.c-tooltip__toggler:hover + .c-tooltip__content {
  display: block;
}

.c-tooltip__content {
  display: none;
  position: absolute;
  top: 100%;
  margin-top: 10px;
  left: -150px;
  z-index: 100;
  min-width: 300px;
  padding: 0.75em 1.5em;
  border-radius: 2px;
  font-style: normal;
  background-color: rgb(64, 64, 64);
  color: rgb(255, 255, 255);
}
.c-tooltip__content:before {
  position: absolute;
  top: -10px;
  left: 50%;
  margin-left: -5px;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent rgb(64, 64, 64) transparent;
}

.c-infobox {
  padding: 12px;
  display: block;
  text-align: center;
  margin: 2.5rem 0 0 0;
}

.c-infobox--success {
  color: rgb(150, 197, 111);
}

.c-infobox--warning {
  color: rgb(255, 175, 75);
}

.c-infobox--error {
  color: rgb(218, 79, 73);
}

.c-steps {
  list-style: none;
  padding: 0;
  margin: 0;
}
.c-steps > * {
  display: flex;
  align-items: center;
  flex: 1;
  margin-bottom: 0.5rem;
  position: relative;
}
.c-steps > *:after {
  display: block;
  content: "";
  width: 2px;
  height: 100%;
  background: rgb(192, 192, 192);
  position: absolute;
  bottom: 50%;
  left: 24px;
}
.c-steps :first-child:after {
  display: none;
}
.c-steps .is-active .c-steps__number {
  background: rgb(32, 32, 32);
  color: rgb(255, 255, 255);
}
.c-steps .is-active .c-steps__desc {
  display: block;
  color: rgb(32, 32, 32);
}
.c-steps .is-active:after {
  background: rgb(32, 32, 32);
}
@media only screen and (min-width: 48em) {
  .c-steps {
    display: flex;
  }
  .c-steps > * {
    display: block;
    text-align: center;
    margin-bottom: 0;
  }
  .c-steps > *:after {
    width: 100%;
    height: 2px;
    left: -50%;
    top: 24px;
  }
}

.c-steps__number {
  display: inline-flex;
  flex-direction: column;
  text-align: center;
  justify-content: center;
  line-height: 1em;
  height: 3em;
  width: 3em;
  border-radius: 50%;
  background: rgb(192, 192, 192);
  font-weight: bold;
  position: relative;
  z-index: 10;
  margin-right: 1rem;
}
@media only screen and (min-width: 48em) {
  .c-steps__number {
    margin-bottom: 0.5rem;
    margin-right: 0;
  }
}

.c-steps__desc {
  display: block;
  color: rgb(128, 128, 128);
}

.c-world {
  position: relative;
}
.c-world svg {
  max-height: 70vh;
}

.c-world__miniature {
  cursor: pointer;
  border: 1px solid rgb(32, 32, 32);
  background-color: rgb(255, 255, 255);
}
.c-world__miniature.is-empty {
  display: none;
}
.c-world__miniature .c-world__continent:hover,
.c-world__miniature .c-world__region:hover {
  fill: #dadada;
}
.c-world__miniature > *:first-child {
  display: none;
}
.c-world__miniature > *:last-child {
  display: block;
}
@media only screen and (min-width: 62em) {
  .c-world__miniature {
    position: absolute;
    top: 0;
    left: 0;
    width: 160px;
    height: 160px;
    padding: 20px;
  }
  .c-world__miniature svg {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
  }
}
@media only screen and (min-width: 86.375em) {
  .c-world__miniature {
    width: 250px;
    height: 250px;
  }
}

.c-world__continent,
.c-world__region {
  cursor: pointer;
  fill: #dadada;
  stroke: rgb(255, 255, 255);
  transition: all 0.3s;
}
.c-world__continent:hover,
.c-world__region:hover {
  fill: rgb(64, 64, 64);
}
.c-world__continent:hover > *,
.c-world__region:hover > * {
  fill: rgb(64, 64, 64);
}

.o-column {
  column-gap: 3em;
}

@media only screen and (min-width: 48em) {
  .o-column-half\@ms {
    column-count: 2;
  }
  .o-column-half\@ms > * {
    margin-top: 0;
  }
}
.o-constrained {
  margin: 0 auto;
  max-width: 90em;
}

.o-constrained-medium {
  margin: 0 auto;
  max-width: 60em;
}

.o-constrained-narrow {
  margin: 0 auto;
  max-width: 45em;
}

.o-constrained-tight {
  margin: 0 auto;
  max-width: 22.5em;
}

.o-grid {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.o-grid:after {
  content: "";
  display: table;
  clear: both;
}
.o-grid > * {
  width: 100%;
}
.o-grid > li {
  list-style-type: none;
}

.o-grid--half > * {
  width: 50%;
}

.o-grid--third > * {
  width: 33.333%;
}

.o-grid--fourth > * {
  width: 25%;
}

.o-grid--fifth > * {
  width: 20%;
}

@media only screen and (min-width: 48em) {
  .o-grid--half\@ms > * {
    width: 50%;
  }
  .o-grid--third\@ms > * {
    width: 33.333%;
  }
  .o-grid--fourth\@ms > * {
    width: 25%;
  }
  .o-grid--fifth\@ms > * {
    width: 20%;
  }
  .o-grid--guttered\@ms {
    margin: 0;
    padding: 0;
    margin-left: -1.5em;
    margin-right: -1.5em;
  }
  .o-grid--guttered\@ms > * {
    padding: 0 1.5em 0;
  }
  .o-grid--bordered-vertical\@ms > * {
    border-right: 1px solid rgb(128, 128, 128);
  }
  .o-grid--bordered-vertical\@ms > :last-child {
    border-right: 0;
  }
  .o-grid--bordered-vertical\@ms.o-grid--row-reverse > :last-child {
    border-right: 1px solid rgb(128, 128, 128);
  }
  .o-grid--bordered-vertical\@ms.o-grid--row-reverse > :first-child {
    border-left: 0;
    border-right: 0;
  }
}
@media only screen and (min-width: 62em) {
  .o-grid--half\@ls > * {
    width: 50%;
  }
  .o-grid--third\@ls > * {
    width: 33.333%;
  }
  .o-grid--fourth\@ls > * {
    width: 25%;
  }
  .o-grid--fifth\@ls > * {
    width: 20%;
  }
  .o-grid--guttered\@ls {
    margin: 0;
    padding: 0;
    margin-left: -1.5em;
    margin-right: -1.5em;
  }
  .o-grid--guttered\@ls > * {
    padding: 0 1.5em 0;
  }
}
@media only screen and (max-width: 61.9375em) {
  .o-grid--column-reverse¬ls {
    flex-direction: column-reverse;
  }
}
.o-grid--liquid {
  justify-content: center;
}
.o-grid--liquid > * {
  width: auto;
}

.o-grid--guttered {
  margin: 0;
  padding: 0;
  margin-left: -1.5em;
  margin-right: -1.5em;
}
.o-grid--guttered > * {
  padding: 0 1.5em 0;
}

.o-grid--guttered-double {
  margin: 0;
  padding: 0;
  margin-left: -3em;
  margin-right: -3em;
}
.o-grid--guttered-double > * {
  padding: 0 3em 0;
}

.o-grid--bordered-vertical > * {
  border-right: 1px solid rgb(128, 128, 128);
}
.o-grid--bordered-vertical > :last-child {
  border-right: 0;
}
.o-grid--bordered-vertical.o-grid--row-reverse > :last-child {
  border-right: 1px solid rgb(128, 128, 128);
}
.o-grid--bordered-vertical.o-grid--row-reverse > :first-child {
  border-left: 0;
  border-right: 0;
}

.o-grid--row-reverse {
  flex-direction: row-reverse;
}

.o-grid--align-end {
  align-items: flex-end;
}

@media only screen and (min-width: 62em) {
  .o-grid--guttered-double\@ls {
    margin: 0;
    padding: 0;
    margin-left: -3em;
    margin-right: -3em;
  }
  .o-grid--guttered-double\@ls > * {
    padding: 0 3em 0;
  }
}
.no-flexbox .o-grid > * {
  display: block;
  float: left;
  width: 100%;
}
.no-flexbox .o-grid--half > *,
.no-flexbox [class^=o-grid--half] > *,
.no-flexbox [class*=" o-grid--half"] > * {
  width: 50%;
}
.no-flexbox .o-grid--third > *,
.no-flexbox [class^=o-grid--third] > *,
.no-flexbox [class*=" o-grid--third"] > * {
  width: 33.333%;
}
.no-flexbox .o-grid--fourth > *,
.no-flexbox [class^=o-grid--fourth] > *,
.no-flexbox [class*=" o-grid--fourth"] > * {
  width: 25%;
}
.no-flexbox .o-grid--fifth > *,
.no-flexbox [class^=o-grid--fifth] > *,
.no-flexbox [class*=" o-grid--fifth"] > * {
  width: 20%;
}

.o-grid-domino {
  padding: 0;
  margin: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}
@media only screen and (min-width: 62em) {
  .o-grid-domino {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
  }
}

.o-grid-domino__item {
  margin-bottom: 3em;
}
@media only screen and (min-width: 62em) {
  .o-grid-domino__item {
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 62em) {
  .o-grid-domino__item--1 {
    grid-area: 1/1;
  }
  .o-grid-domino__item--2 {
    grid-area: 2/1;
  }
  .o-grid-domino__item--3 {
    grid-area: 1/4;
  }
  .o-grid-domino__item--4 {
    grid-area: 2/4;
  }
  .o-grid-domino__item--5 {
    grid-area: 1/2;
    grid-column: span 2;
    grid-row: span 2;
  }
}
.o-grid-domino__title {
  display: block;
  font-weight: bold;
  font-size: 1.125rem;
  margin-bottom: 0.75em;
}

.o-grid-domino__subtitle {
  display: flex;
  gap: 0 1.5em;
  align-items: center;
  font-size: 1rem;
  margin-bottom: 0.75em;
  margin-top: 0;
}
@media only screen and (min-width: 62em) {
  .o-grid-domino__subtitle {
    margin-bottom: 1.5em;
  }
}

.o-icon-item {
  margin: 0;
  padding: 0;
}
.o-icon-item img {
  margin-right: 5px;
  max-width: 22px;
  vertical-align: bottom;
}
.o-icon-item a {
  color: rgb(32, 32, 32);
  text-decoration: none;
}
.o-icon-item a:hover {
  text-decoration: underline;
}

.o-inline-list {
  display: flex;
}
.o-inline-list li {
  display: inline-block;
  margin-right: 1.5em;
}
.o-inline-list li:last-child {
  margin-right: 0;
}

.o-inline-list__spacer {
  margin-left: auto;
}

.o-inline-list__end {
  order: 100;
}

.o-inline-list__reverse {
  justify-content: flex-end;
}

.o-inline-list--justify-center {
  justify-content: center;
}

.o-inline-list--bordered li {
  border-right: 1px solid #999999;
  margin: 0;
  padding: 0 0.75em;
}
.o-inline-list--bordered li:last-child {
  border-right: 0;
}

@media only screen and (min-width: 62em) {
  .o-inline-list\@ls {
    display: flex;
  }
  .o-inline-list\@ls li {
    display: inline-block;
    margin-right: 1.5em;
  }
  .o-inline-list\@ls li:last-child {
    margin-right: 0;
  }
}
.o-island {
  padding: 1.5em;
}

.o-island-half {
  padding: 0.75em;
}

.o-island-double {
  padding: 3em;
}

.o-island-triple {
  padding: 4.5em;
}

@media only screen and (min-width: 48em) {
  .o-island\@ms {
    padding: 1.5em;
  }
  .o-island-double\@ms {
    padding: 3em;
  }
}
@media only screen and (min-width: 62em) {
  .o-island\@ls {
    padding: 1.5em;
  }
  .o-island-double\@ls {
    padding: 3em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .o-island¬ms {
    padding: 1.5em;
  }
}
@media only screen and (max-width: 61.9375em) {
  .o-island-half¬ls {
    padding: 0.75em;
  }
}
.o-bridge-horizontal {
  padding-top: 1.5em;
  padding-bottom: 1.5em;
}

.o-bridge-horizontal-double {
  padding-top: 3em;
  padding-bottom: 3em;
}

.o-bridge-horizontal-triple {
  padding-top: 4.5em;
  padding-bottom: 4.5em;
}

.o-bridge-vertical {
  padding-right: 1.5em;
  padding-left: 1.5em;
}

.o-bridge-vertical-half {
  padding-right: 0.75em;
  padding-left: 0.75em;
}

@media only screen and (min-width: 48em) {
  .o-bridge-horizontal-double\@ms {
    padding-top: 3em;
    padding-bottom: 3em;
  }
}
@media only screen and (min-width: 62em) {
  .o-bridge-horizontal\@ls {
    padding-top: 1.5em;
    padding-bottom: 1.5em;
  }
  .o-bridge-horizontal-double\@ls {
    padding-top: 3em;
    padding-bottom: 3em;
  }
  .o-bridge-horizontal-triple\@ls {
    padding-top: 4.5em;
    padding-bottom: 4.5em;
  }
  .o-bridge-vertical-half\@ls {
    padding-right: 0.75em;
    padding-left: 0.75em;
  }
  .o-bridge-vertical-double\@ls {
    padding-right: 3em;
    padding-left: 3em;
  }
  .o-bridge-vertical-triple\@ls {
    padding-right: 4.5em;
    padding-left: 4.5em;
  }
}
@media only screen and (max-width: 61.9375em) {
  .o-bridge-vertical¬ls {
    padding-right: 1.5em;
    padding-left: 1.5em;
  }
  .o-bridge-vertical-half¬ls {
    padding-right: 0.75em;
    padding-left: 0.75em;
  }
}
.o-coast-top {
  padding-top: 1.5em;
}

.o-coast-top-double {
  padding-top: 3em;
}

.o-coast-bottom-triple {
  padding-bottom: 4.5em;
}

.o-coast-bottom {
  padding-bottom: 1.5em;
}

@media only screen and (min-width: 48em) {
  .o-coast-bottom-double\@ms {
    padding-bottom: 3em;
  }
  .o-coast-bottom-triple\@ms {
    padding-bottom: 4.5em;
  }
  .o-coast-bottom\@ms {
    padding-bottom: 1.5em;
  }
  .o-coast-top\@ms {
    padding-top: 1.5em;
  }
  .o-coast-top-none\@ms {
    padding-top: 0;
  }
}
@media only screen and (min-width: 62em) {
  .o-coast-top\@ls {
    padding-top: 1.5em;
  }
  .o-coast-bottom\@ls {
    padding-bottom: 1.5em;
  }
  .o-coast-left\@ls {
    padding-left: 1.5em;
  }
  .o-coast-top-double\@ls {
    padding-top: 3em;
  }
  .o-coast-left-double\@ls {
    padding-left: 3em;
  }
  .o-coast-right-double\@ls {
    padding-right: 3em;
  }
}
.o-highlight {
  font-weight: bold;
  color: #F5A43F;
}

.o-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
}

.o-pile-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.o-pile-list--wide {
  line-height: 2;
  font-size: 0.875rem;
}

@media only screen and (max-width: 61.9375em) {
  .o-stacked-list¬ls {
    display: block;
  }
  .o-stacked-list¬ls li {
    display: block;
    border-bottom: 1px solid rgb(64, 64, 64);
  }
  .o-stacked-list¬ls a,
  .o-stacked-list¬ls span {
    display: block;
    padding: 0.5em 0.75em;
  }
  .o-stacked-list¬ls ul a {
    padding-left: 1.5em;
  }
  .o-stacked-list¬ls a:hover,
  .o-stacked-list¬ls span:hover {
    background-color: rgb(64, 64, 64);
  }
}
.industry {
  font-family: "Industry", sans-serif;
  text-transform: uppercase;
}

.normal {
  font-weight: 300;
}

.semisemibold {
  font-weight: 400;
}

.semibold {
  font-weight: 500;
}

.light {
  font-weight: 300;
}

.bold {
  font-weight: 600;
}

.font-xl {
  font-size: 4.5rem;
}

.font-lll {
  font-size: 2.5rem;
}

.font-llll {
  font-size: 3rem;
}

.font-ll {
  font-size: 2rem;
}

.font-l {
  font-size: 1.75rem;
}

.font-m {
  font-size: 1.5rem;
}

.font-ssm {
  font-size: 1.25rem;
}

.font-sm {
  font-size: 1.125rem;
}

.font-def {
  font-size: 1rem;
}

@media only screen and (min-width: 48em) {
  .font-xl\@ms {
    font-size: 4.5rem;
  }
  .font-llll\@ms {
    font-size: 3rem;
  }
  .font-ll\@ms {
    font-size: 2rem;
  }
  .font-l\@ms {
    font-size: 1.75rem;
  }
  .font-m\@ms {
    font-size: 1.5rem;
  }
  .font-ssm\@ms {
    font-size: 1.25rem;
  }
  .font-sm\@ms {
    font-size: 1.125rem;
  }
}
.text-color-light {
  color: rgb(128, 128, 128);
}

.margin-none {
  margin: 0;
}

.margin-bottom {
  margin-bottom: 1.5em;
}

.line-height-min {
  line-height: 1em;
}

.line-height-narrow {
  line-height: 1.25em;
}

.product-header {
  display: grid;
  grid-template-rows: auto auto auto auto;
}
@media only screen and (min-width: 62em) {
  .product-header {
    grid-template-rows: auto auto 1fr;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 48px;
  }
}

.product-header__title {
  grid-row-start: 1;
  display: flex;
  flex-direction: column-reverse;
}
@media only screen and (min-width: 62em) {
  .product-header__title {
    grid-column-start: 2;
  }
}

.product-header__gallery {
  grid-row-start: 2;
}
@media only screen and (min-width: 62em) {
  .product-header__gallery {
    grid-row: 1/span 3;
    grid-column-start: 1;
    align-self: start;
  }
}

.product-header__gallery-image {
  padding-bottom: 71%;
  position: relative;
  margin-bottom: 0 !important;
}
.product-header__gallery-image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}

.product-header__gallery-thumb {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 1.5em 0 0 0;
  margin: 0;
}

.product-header__description {
  grid-row-start: 3;
}
@media only screen and (min-width: 62em) {
  .product-header__description {
    grid-row-start: 2;
    grid-column-start: 2;
  }
}

.product-header__footer {
  grid-row-start: 4;
}
@media only screen and (min-width: 62em) {
  .product-header__footer {
    grid-row-start: 3;
    grid-column-start: 2;
    align-self: end;
    margin-top: 60px;
  }
}

iframe {
  display: block;
  margin-bottom: 0;
}

.product-header__footer {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.product-header__certifications {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.product-header__certifications span {
  font-size: 11px;
  line-height: 1.1em;
  white-space: nowrap;
  display: block;
  text-align: center;
}
.product-header__certifications > * {
  margin-right: 12px;
}

.product-header__certs-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 12px;
}
.product-header__certs-row .cert, .product-header__certs-row .cert-wide {
  display: flex;
  flex-direction: column;
  justify-items: center;
  max-height: 60px;
}
.product-header__certs-row .cert > svg, .product-header__certs-row .cert-wide > svg {
  display: block;
  width: 100%;
  height: 100%;
}
.product-header__certs-row .cert > img, .product-header__certs-row .cert-wide > img {
  display: block;
}

.product-header__certs-row + .product-header__certs-row {
  padding-top: 12px;
}

.product-header__certification-img {
  width: 50px;
  height: 50px;
  display: block;
  margin: 0 auto;
  padding-bottom: 5px;
}
@media only screen and (min-width: 48em) {
  .product-header__certification-img {
    width: 50px;
    height: 50px;
  }
}

.product-header__certification-full {
  max-width: 110px;
}

.product-header__certification-giordano {
  max-width: 120px;
}

.product-header__certification-sintef {
  max-height: 110px;
  max-width: none;
}

.product-header__quicklinks {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.product-header__quicklinks > * {
  margin-left: 6px;
}
.product-header__quicklinks img {
  width: 50px;
  height: 50px;
}
@media only screen and (min-width: 48em) {
  .product-header__quicklinks > * {
    margin-left: 12px;
  }
  .product-header__quicklinks img {
    width: 70px;
    height: 70px;
  }
}

.product-nav {
  display: none;
}
@media only screen and (min-width: 62em) {
  .product-nav {
    position: sticky;
    background: white;
    top: 148px;
    display: flex;
    align-items: center;
    list-style: none;
    margin: 36px 0 0 0;
    padding: 0;
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    z-index: 900;
    overflow: auto;
    transition: top 0.3s ease-in-out;
  }
  .product-nav.pagebuilder {
    position: relative;
    top: 0;
    z-index: 1;
  }
}
.product-nav ul {
  list-style: none;
  padding-top: 0;
  padding-bottom: 0;
  display: flex;
  align-items: center;
  width: 100%;
}
.product-nav ul > :first-child {
  padding-left: 0;
}
.product-nav ul > * {
  margin: 10px 0;
  position: relative;
  padding: 0 24px 0 24px;
  line-height: 1em;
}
.product-nav ul > *:before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  border-right: 1px solid black;
  top: 0;
  left: 0;
}
.product-nav ul > *:first-child:before {
  display: none;
}

@media only screen and (min-width: 62em) {
  .dropdown-open .product-nav {
    top: 190px;
  }
}

@media only screen and (min-width: 62em) {
  body:has(.c-banner) .product-nav {
    top: 172px;
  }
}

@media only screen and (min-width: 62em) {
  body.dropdown-open:has(.c-banner) .product-nav {
    top: 214px;
  }
}

.product-ctas :last-child {
  margin-top: 12px;
}
@media only screen and (min-width: 48em) {
  .product-ctas {
    display: flex;
  }
  .product-ctas :first-child {
    margin-right: 12px;
  }
  .product-ctas :last-child {
    margin-top: 0;
    margin-left: 12px;
  }
}

.product-description h2, .product-description h3, .product-description h4 {
  line-height: 1.25em;
  font-weight: 500;
}
.product-description h2 {
  display: block;
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 1em 0;
}
.product-description h3 {
  display: block;
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 1em 0;
}
.product-description h4 {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
  margin: 1.5em 0;
}
.product-description p {
  font-weight: 300;
  color: rgb(128, 128, 128);
}
@media only screen and (max-width: 61.9375em) {
  .product-description h3 {
    margin-top: 0;
  }
  .product-description h4 {
    margin-top: 0;
  }
}
@media only screen and (min-width: 48em) {
  .product-description h2, .product-description h3, .product-description h4 {
    line-height: 1.25em;
  }
  .product-description p {
    font-size: 1.125rem;
  }
}

.specs-table {
  border-spacing: 0;
}
.specs-table th, .specs-table td {
  border: 0px solid transparent;
  border-bottom: 1px solid black;
}
.specs-table th {
  padding-left: 0;
  vertical-align: top;
  text-transform: uppercase;
}
.specs-table td {
  padding-right: 0;
}
.specs-table tr:last-child th, .specs-table tr:last-child td {
  border-bottom: none;
}

.related-products li:last-child .related-product {
  border-bottom: none;
}
@media only screen and (min-width: 62em) {
  .related-products li:nth-last-child(2) .related-product {
    border-bottom: none;
  }
}
@media only screen and (min-width: 48em) {
  .related-products {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 0 24px;
  }
}

@media only screen and (min-width: 62em) {
  .product-specs-docs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    grid-gap: 0 24px;
    padding-bottom: 0;
  }
  .product-specs-docs > :last-child {
    grid-column: 1/3;
    padding-bottom: 3em;
  }
}

.related-product {
  display: flex;
  align-items: center;
  padding: 12px 0 12px 0;
  border-bottom: 1px solid black;
}
.related-product > div:first-child {
  width: 120px;
  padding-right: 12px;
}
.related-product > div:last-child {
  flex: 1;
}
.related-product:hover {
  text-decoration: none;
}
.related-product h5 {
  margin: 0;
}
.related-product p {
  margin: 0;
}

.product-videos {
  display: flex;
  gap: 1rem;
  /*@include breakpoint(large-screens) {
      grid-template-columns: auto auto;
  }*/
}
@media only screen and (min-width: 48em) {
  .product-videos {
    margin: 0 auto;
    max-width: 50%;
    /*> * {
        width: 50%;
        flex: 1;
    }*/
  }
}

.product-video-double {
  flex-direction: column;
}
@media only screen and (min-width: 48em) {
  .product-video-double {
    flex-direction: row;
    margin: 0 auto;
    max-width: 100%;
  }
}

.o-aspect-16-9 {
  position: relative;
  padding-bottom: 56%;
}
.o-aspect-16-9 > * {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  object-fit: cover;
}

.o-aspect-4-3 {
  padding-bottom: 75%;
}

.navigation-anchor {
  position: absolute;
  top: -194px;
}

.back-to-top {
  display: none;
}

@media only screen and (min-width: 48em) {
  .back-to-top {
    display: block;
    position: fixed;
    bottom: 32px;
    right: 32px;
    width: 60px;
    height: 60px;
    z-index: 910;
  }
}
.product-homepage {
  position: fixed;
  padding: 10px 15px;
  top: 180px;
  right: 0;
  color: white;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  background: rgb(223, 36, 59);
  z-index: 910;
  text-align: center;
  transform: rotate(-90deg);
  transform-origin: bottom right;
}
.product-homepage:hover {
  text-decoration: none;
}
.product-homepage :first-child {
  font-weight: bold;
  font-size: 1.15em;
  line-height: 1.5em;
}
.product-homepage :last-child {
  text-transform: uppercase;
  line-height: 1.1em;
}

.product-homepage-fixing {
  background: rgb(0, 183, 202);
}

.product-codes {
  display: grid;
  grid-gap: 1.5em;
}
.product-codes *:last-child {
  order: -1;
}
.product-codes img, .product-codes svg {
  max-height: 650px;
}
@media only screen and (min-width: 48em) {
  .product-codes {
    grid-template-columns: 5fr 2fr;
  }
  .product-codes *:last-child {
    order: 2;
  }
}

.product-codes-vertical {
  display: grid;
  grid-gap: 1.5em;
}
.product-codes-vertical *:last-child {
  order: -1;
}
.product-codes-vertical img, .product-codes-vertical svg {
  max-width: 625px;
  margin: 0 auto;
  display: block;
}

.small-select {
  padding: 0.25rem;
  font-size: 0.875rem;
}

.u-width-100 {
  width: 100%;
}

.u-width-80 {
  width: 80%;
}

.u-width-70 {
  width: 70%;
}

.u-width-20 {
  width: 20%;
}

.u-width-30 {
  width: 30%;
}

@media only screen and (min-width: 62em) {
  .u-width-20\@ls {
    width: 20% !important;
  }
  .u-width-25\@ls {
    width: 25% !important;
  }
  .u-width-30\@ls {
    width: 30% !important;
    flex: 0 0 30% !important;
  }
  .u-width-40\@ls {
    width: 40% !important;
    flex: 0 0 40% !important;
  }
  .u-width-60\@ls {
    width: 60% !important;
    flex: 0 0 60% !important;
  }
  .u-width-70\@ls {
    width: 70% !important;
    flex: 0 0 70% !important;
  }
  .u-width-75\@ls {
    width: 75% !important;
  }
  .u-width-80\@ls {
    width: 80% !important;
  }
}
@media only screen and (min-width: 48em) {
  .u-max-width-70\@ms {
    max-width: 70%;
  }
}
.u-hidden {
  display: none !important;
}

.u-centered {
  text-align: center !important;
}

.u-bordered {
  border: 1px solid #dad9d9;
}

@media only screen and (min-width: 48em) {
  .u-centered\@ms {
    text-align: center !important;
  }
}
.u-left {
  text-align: left !important;
}

.u-right {
  text-align: right !important;
}

.u-relative {
  position: relative !important;
}

.u-inline {
  display: inline !important;
  width: auto !important;
}

.u-inline-block {
  display: inline-block !important;
}

.u-vertical-centered {
  display: flex !important;
  justify-content: center !important;
  flex-direction: column !important;
  align-items: center !important;
}

.u-vertical-bottom {
  display: flex !important;
  justify-content: flex-end !important;
  flex-direction: column !important;
  align-items: center !important;
}

.u-flex-center {
  align-items: center;
}

.u-circle {
  overflow: hidden;
  border-radius: 100% !important;
}

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

@media only screen and (max-width: 61.9375em) {
  .u-margin-top-none¬ls {
    margin-top: 0 !important;
  }
}
.u-padding-top {
  padding-top: 1.5em !important;
}

.u-margin-bottom {
  margin-bottom: 1.5em !important;
}

.u-margin-bottom-half {
  margin-bottom: 0.75em !important;
}

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

.u-margin-auto {
  margin: 0 auto !important;
}

.u-visuallyhidden {
  overflow: hidden;
  position: absolute;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

.u-uppercase {
  text-transform: uppercase;
}

.u-m85vh {
  min-height: 85vh;
}

.u-35vh {
  height: 35vh;
}

.u-85vh {
  height: 85vh;
}

.u-flex {
  display: flex;
}

.u-space-between {
  justify-content: space-between;
}

.u-justify-end {
  justify-content: flex-end;
}

.u-flex-1 {
  flex: 1;
}

.u-padding-right-half {
  padding-right: 0.75em;
}

.u-padding-left-half {
  padding-left: 0.75em;
}

.u-width-100 {
  width: 100%;
}

@media only screen and (min-width: 48em) {
  .u-flex\@ms {
    display: flex;
  }
}
.u-flex-reverse {
  display: flex;
  flex-direction: column-reverse;
}

.u-justify-between {
  justify-content: space-between;
}

.u-justify-center {
  justify-content: center;
}

@media only screen and (min-width: 48em) {
  .u-hidden\@ms {
    display: none !important;
  }
  .u-centered\@ms {
    text-align: center !important;
  }
}
@media only screen and (min-width: 62em) {
  .u-hidden\@ls {
    display: none !important;
  }
  .u-35vh\@ls {
    height: 35vh;
  }
  .u-55vh\@ls {
    height: 55vh;
  }
  .u-85vh\@ls {
    height: 85vh;
  }
  .u-90vh\@ls {
    height: 90vh;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-hidden¬ms {
    display: none !important;
  }
}
@media only screen and (max-width: 61.9375em) {
  .u-compensate-header¬ls {
    padding-top: 58px !important;
  }
  .u-centered¬ls {
    text-align: center !important;
  }
  .u-hidden¬ls {
    display: none !important;
  }
  .u-visuallyhidden¬ls {
    overflow: hidden;
    position: absolute;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
  }
}
[v-cloak] {
  display: none;
}

[x-cloak] {
  display: none !important;
}

.u-block {
  display: block;
}

.u-unindent-lists ul, .u-unindent-lists ol {
  margin: 0 0 1.5em 0;
}

.trans-opacity {
  transition: opacity 0.3s ease-in-out;
}

.pointer-none {
  pointer-events: none;
}

.opacity-0 {
  opacity: 0;
}

.opacity-1 {
  opacity: 1;
}

.awesomplete [hidden] {
  display: none;
}

.awesomplete .visually-hidden {
  position: absolute;
  clip: rect(0, 0, 0, 0);
}

.awesomplete {
  display: inline-block;
  position: relative;
  width: 100%;
}

.awesomplete > input {
  display: block;
}

.awesomplete > ul {
  position: absolute;
  left: 0;
  z-index: 1;
  min-width: 100%;
  box-sizing: border-box;
  list-style: none;
  padding: 0;
  margin: 0;
  background: #fff;
}

.awesomplete > ul:empty {
  display: none;
}

.awesomplete > ul {
  border-radius: 0.3em;
  margin: 0.2em 0 0;
  background: hsla(0, 0%, 100%, 0.9);
  background: linear-gradient(to bottom right, white, hsla(0, 0%, 100%, 0.8));
  border: 1px solid rgba(0, 0, 0, 0.3);
  box-shadow: 0.05em 0.2em 0.6em rgba(0, 0, 0, 0.2);
  text-shadow: none;
}

@supports (transform: scale(0)) {
  .awesomplete > ul {
    transition: 0.3s cubic-bezier(0.4, 0.2, 0.5, 1.4);
    transform-origin: 1.43em -0.43em;
  }
  .awesomplete > ul[hidden],
  .awesomplete > ul:empty {
    opacity: 0;
    transform: scale(0);
    display: block !important;
    transition-timing-function: ease;
  }
}
/* Pointer */
.awesomplete > ul:before {
  content: "";
  position: absolute;
  top: -0.43em;
  left: 1em;
  width: 0;
  height: 0;
  padding: 0.4em;
  background: white;
  border: inherit;
  border-right: 0;
  border-bottom: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.awesomplete > ul > li {
  position: relative;
  padding: 0.2em 0.5em;
  cursor: pointer;
}

.awesomplete > ul > li:hover {
  background: hsl(200, 40%, 80%);
  color: black;
}

.awesomplete > ul > li[aria-selected=true] {
  background: hsl(205, 40%, 40%);
  color: white;
}

.awesomplete mark {
  background: hsl(65, 100%, 50%);
}

.awesomplete li:hover mark {
  background: hsl(68, 100%, 41%);
}

.awesomplete li[aria-selected=true] mark {
  background: hsl(86, 100%, 21%);
  color: inherit;
}

/*! nouislider - 14.6.3 - 11/19/2020 */
/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-target {
  position: relative;
}

.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

/* Wrapper for all connect elements.
 */
.noUi-connects {
  overflow: hidden;
  z-index: 0;
}

.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}

.noUi-connect {
  height: 100%;
  width: 100%;
}

.noUi-origin {
  height: 10%;
  width: 10%;
}

/* Offset direction
 */
.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
  left: 0;
  right: auto;
}

/* Give origins 0 height/width so they don't interfere with clicking the
 * connect elements.
 */
.noUi-vertical .noUi-origin {
  width: 0;
}

.noUi-horizontal .noUi-origin {
  height: 0;
}

.noUi-handle {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: absolute;
}

.noUi-touch-area {
  height: 100%;
  width: 100%;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  -webkit-transition: transform 0.3s;
  transition: transform 0.3s;
}

.noUi-state-drag * {
  cursor: inherit !important;
}

/* Slider size and handle placement;
 */
.noUi-horizontal {
  height: 18px;
}

.noUi-horizontal .noUi-handle {
  width: 34px;
  height: 28px;
  right: -17px;
  top: -6px;
}

.noUi-vertical {
  width: 18px;
}

.noUi-vertical .noUi-handle {
  width: 28px;
  height: 34px;
  right: -6px;
  top: -17px;
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
  left: -17px;
  right: auto;
}

/* Styling;
 * Giving the connect element a border radius causes issues with using transform: scale
 */
.noUi-target {
  background: #FAFAFA;
  border-radius: 4px;
  border: 1px solid #D3D3D3;
  box-shadow: inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB;
}

.noUi-connects {
  border-radius: 3px;
}

.noUi-connect {
  background: #3FB8AF;
}

/* Handles and cursors;
 */
.noUi-draggable {
  cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}

.noUi-handle {
  border: 1px solid #D9D9D9;
  border-radius: 3px;
  background: #FFF;
  cursor: default;
  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB;
}

.noUi-active {
  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB;
}

/* Handle stripes;
 */
.noUi-handle:before,
.noUi-handle:after {
  content: "";
  display: block;
  position: absolute;
  height: 14px;
  width: 1px;
  background: #E8E7E6;
  left: 14px;
  top: 6px;
}

.noUi-handle:after {
  left: 17px;
}

.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
  width: 14px;
  height: 1px;
  left: 6px;
  top: 14px;
}

.noUi-vertical .noUi-handle:after {
  top: 17px;
}

/* Disabled state;
 */
[disabled] .noUi-connect {
  background: #B8B8B8;
}

[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
  cursor: not-allowed;
}

/* Base;
 *
 */
.noUi-pips,
.noUi-pips * {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-pips {
  position: absolute;
  color: #999;
}

/* Values;
 *
 */
.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center;
}

.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}

/* Markings;
 *
 */
.noUi-marker {
  position: absolute;
  background: #CCC;
}

.noUi-marker-sub {
  background: #AAA;
}

.noUi-marker-large {
  background: #AAA;
}

/* Horizontal layout;
 *
 */
.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%;
}

.noUi-value-horizontal {
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
  -webkit-transform: translate(50%, 50%);
  transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 15px;
}

/* Vertical layout;
 *
 */
.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%;
}

.noUi-value-vertical {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
}

.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
  width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
  width: 15px;
}

.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #D9D9D9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  top: 50%;
  right: 120%;
}

.noUi-horizontal .noUi-origin > .noUi-tooltip {
  -webkit-transform: translate(50%, 0);
  transform: translate(50%, 0);
  left: auto;
  bottom: 10px;
}

.noUi-vertical .noUi-origin > .noUi-tooltip {
  -webkit-transform: translate(0, -18px);
  transform: translate(0, -18px);
  top: auto;
  right: 28px;
}

@media print {
  * {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  @page {
    margin: 0.5cm;
  }
  h2, h3 {
    orphans: 3;
    widows: 3;
    page-break-after: avoid;
  }
  p {
    orphans: 3;
    widows: 3;
  }
  pre, blockquote {
    border: 1px solid #666;
    page-break-inside: avoid;
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a, a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }
  img {
    max-width: 100% !important;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr {
    page-break-inside: avoid;
  }
}