@charset "UTF-8";
/**
 * https://medium.com/codeartisan/breakpoints-and-media-queries-in-scss-46e8f551e2f2
 */
/**
 * @file
 * Fonts imported early and directly.
 *
 * Only include fonts that are known to be used, since each is an asset to load.
 * font-display: swap; is used to prevent text from being hidden on load.
 * We list src in preference order: local, woff2, then woff
 *
 * @see https://google-webfonts-helper.herokuapp.com/fonts
 */
/* montserrat-100 - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 100;
  src: url("../fonts/montserrat/montserrat-v14-latin-100.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Thin"), local("Montserrat-Thin"), url("../fonts/montserrat/montserrat-v14-latin-100.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-100.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-100.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-100.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-100.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-100italic - latin */
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 100;
  src: url("../fonts/montserrat/montserrat-v14-latin-100italic.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Thin Italic"), local("Montserrat-ThinItalic"), url("../fonts/montserrat/montserrat-v14-latin-100italic.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-100italic.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-100italic.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-100italic.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-100italic.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-200 - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/montserrat/montserrat-v14-latin-200.eot"); /* IE9 Compat Modes */
  src: local("Montserrat ExtraLight"), local("Montserrat-ExtraLight"), url("../fonts/montserrat/montserrat-v14-latin-200.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-200.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-200.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-200.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-200.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-200italic - latin */
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 200;
  src: url("../fonts/montserrat/montserrat-v14-latin-200italic.eot"); /* IE9 Compat Modes */
  src: local("Montserrat ExtraLight Italic"), local("Montserrat-ExtraLightItalic"), url("../fonts/montserrat/montserrat-v14-latin-200italic.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-200italic.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-200italic.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-200italic.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-200italic.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-300 - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/montserrat/montserrat-v14-latin-300.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Light"), local("Montserrat-Light"), url("../fonts/montserrat/montserrat-v14-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-300.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-300.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-300.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-300.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-300italic - latin */
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/montserrat/montserrat-v14-latin-300italic.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Light Italic"), local("Montserrat-LightItalic"), url("../fonts/montserrat/montserrat-v14-latin-300italic.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-300italic.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-300italic.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-300italic.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-300italic.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-regular - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/montserrat/montserrat-v14-latin-regular.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Regular"), local("Montserrat-Regular"), url("../fonts/montserrat/montserrat-v14-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-regular.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-regular.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-regular.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-regular.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-italic - latin */
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/montserrat/montserrat-v14-latin-italic.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Italic"), local("Montserrat-Italic"), url("../fonts/montserrat/montserrat-v14-latin-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-italic.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-italic.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-italic.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-italic.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-500 - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/montserrat/montserrat-v14-latin-500.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Medium"), local("Montserrat-Medium"), url("../fonts/montserrat/montserrat-v14-latin-500.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-500.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-500.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-500.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-500.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-500italic - latin */
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 500;
  src: url("../fonts/montserrat/montserrat-v14-latin-500italic.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Medium Italic"), local("Montserrat-MediumItalic"), url("../fonts/montserrat/montserrat-v14-latin-500italic.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-500italic.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-500italic.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-500italic.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-500italic.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-600 - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/montserrat/montserrat-v14-latin-600.eot"); /* IE9 Compat Modes */
  src: local("Montserrat SemiBold"), local("Montserrat-SemiBold"), url("../fonts/montserrat/montserrat-v14-latin-600.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-600.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-600.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-600.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-600.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-600italic - latin */
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/montserrat/montserrat-v14-latin-600italic.eot"); /* IE9 Compat Modes */
  src: local("Montserrat SemiBold Italic"), local("Montserrat-SemiBoldItalic"), url("../fonts/montserrat/montserrat-v14-latin-600italic.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-600italic.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-600italic.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-600italic.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-600italic.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-700 - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/montserrat/montserrat-v14-latin-700.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Bold"), local("Montserrat-Bold"), url("../fonts/montserrat/montserrat-v14-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-700.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-700.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-700.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-700.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-700italic - latin */
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/montserrat/montserrat-v14-latin-700italic.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Bold Italic"), local("Montserrat-BoldItalic"), url("../fonts/montserrat/montserrat-v14-latin-700italic.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-700italic.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-700italic.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-700italic.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-700italic.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-800 - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/montserrat/montserrat-v14-latin-800.eot"); /* IE9 Compat Modes */
  src: local("Montserrat ExtraBold"), local("Montserrat-ExtraBold"), url("../fonts/montserrat/montserrat-v14-latin-800.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-800.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-800.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-800.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-800.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-800italic - latin */
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 800;
  src: url("../fonts/montserrat/montserrat-v14-latin-800italic.eot"); /* IE9 Compat Modes */
  src: local("Montserrat ExtraBold Italic"), local("Montserrat-ExtraBoldItalic"), url("../fonts/montserrat/montserrat-v14-latin-800italic.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-800italic.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-800italic.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-800italic.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-800italic.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-900 - latin */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/montserrat/montserrat-v14-latin-900.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Black"), local("Montserrat-Black"), url("../fonts/montserrat/montserrat-v14-latin-900.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-900.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-900.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-900.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-900.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* montserrat-900italic - latin */
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 900;
  src: url("../fonts/montserrat/montserrat-v14-latin-900italic.eot"); /* IE9 Compat Modes */
  src: local("Montserrat Black Italic"), local("Montserrat-BlackItalic"), url("../fonts/montserrat/montserrat-v14-latin-900italic.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat/montserrat-v14-latin-900italic.woff2") format("woff2"), url("../fonts/montserrat/montserrat-v14-latin-900italic.woff") format("woff"), url("../fonts/montserrat/montserrat-v14-latin-900italic.ttf") format("truetype"), url("../fonts/montserrat/montserrat-v14-latin-900italic.svg#Montserrat") format("svg"); /* Legacy iOS */
}
/* nunito-200 - latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/nunito/nunito-v12-latin-200.eot"); /* IE9 Compat Modes */
  src: local("Nunito ExtraLight"), local("Nunito-ExtraLight"), url("../fonts/nunito/nunito-v12-latin-200.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-200.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-200.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-200.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-200.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-200italic - latin */
@font-face {
  font-family: "Nunito";
  font-style: italic;
  font-weight: 200;
  src: url("../fonts/nunito/nunito-v12-latin-200italic.eot"); /* IE9 Compat Modes */
  src: local("Nunito ExtraLight Italic"), local("Nunito-ExtraLightItalic"), url("../fonts/nunito/nunito-v12-latin-200italic.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-200italic.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-200italic.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-200italic.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-200italic.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-300 - latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/nunito/nunito-v12-latin-300.eot"); /* IE9 Compat Modes */
  src: local("Nunito Light"), local("Nunito-Light"), url("../fonts/nunito/nunito-v12-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-300.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-300.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-300.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-300.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-300italic - latin */
@font-face {
  font-family: "Nunito";
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/nunito/nunito-v12-latin-300italic.eot"); /* IE9 Compat Modes */
  src: local("Nunito Light Italic"), local("Nunito-LightItalic"), url("../fonts/nunito/nunito-v12-latin-300italic.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-300italic.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-300italic.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-300italic.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-300italic.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-regular - latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/nunito/nunito-v12-latin-regular.eot"); /* IE9 Compat Modes */
  src: local("Nunito Regular"), local("Nunito-Regular"), url("../fonts/nunito/nunito-v12-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-regular.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-regular.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-regular.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-regular.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-italic - latin */
@font-face {
  font-family: "Nunito";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/nunito/nunito-v12-latin-italic.eot"); /* IE9 Compat Modes */
  src: local("Nunito Italic"), local("Nunito-Italic"), url("../fonts/nunito/nunito-v12-latin-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-italic.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-italic.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-italic.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-italic.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-600 - latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/nunito/nunito-v12-latin-600.eot"); /* IE9 Compat Modes */
  src: local("Nunito SemiBold"), local("Nunito-SemiBold"), url("../fonts/nunito/nunito-v12-latin-600.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-600.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-600.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-600.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-600.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-600italic - latin */
@font-face {
  font-family: "Nunito";
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/nunito/nunito-v12-latin-600italic.eot"); /* IE9 Compat Modes */
  src: local("Nunito SemiBold Italic"), local("Nunito-SemiBoldItalic"), url("../fonts/nunito/nunito-v12-latin-600italic.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-600italic.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-600italic.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-600italic.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-600italic.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-700 - latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/nunito/nunito-v12-latin-700.eot"); /* IE9 Compat Modes */
  src: local("Nunito Bold"), local("Nunito-Bold"), url("../fonts/nunito/nunito-v12-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-700.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-700.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-700.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-700.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-700italic - latin */
@font-face {
  font-family: "Nunito";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/nunito/nunito-v12-latin-700italic.eot"); /* IE9 Compat Modes */
  src: local("Nunito Bold Italic"), local("Nunito-BoldItalic"), url("../fonts/nunito/nunito-v12-latin-700italic.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-700italic.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-700italic.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-700italic.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-700italic.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-800 - latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/nunito/nunito-v12-latin-800.eot"); /* IE9 Compat Modes */
  src: local("Nunito ExtraBold"), local("Nunito-ExtraBold"), url("../fonts/nunito/nunito-v12-latin-800.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-800.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-800.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-800.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-800.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-800italic - latin */
@font-face {
  font-family: "Nunito";
  font-style: italic;
  font-weight: 800;
  src: url("../fonts/nunito/nunito-v12-latin-800italic.eot"); /* IE9 Compat Modes */
  src: local("Nunito ExtraBold Italic"), local("Nunito-ExtraBoldItalic"), url("../fonts/nunito/nunito-v12-latin-800italic.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-800italic.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-800italic.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-800italic.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-800italic.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-900 - latin */
@font-face {
  font-family: "Nunito";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/nunito/nunito-v12-latin-900.eot"); /* IE9 Compat Modes */
  src: local("Nunito Black"), local("Nunito-Black"), url("../fonts/nunito/nunito-v12-latin-900.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-900.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-900.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-900.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-900.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* nunito-900italic - latin */
@font-face {
  font-family: "Nunito";
  font-style: italic;
  font-weight: 900;
  src: url("../fonts/nunito/nunito-v12-latin-900italic.eot"); /* IE9 Compat Modes */
  src: local("Nunito Black Italic"), local("Nunito-BlackItalic"), url("../fonts/nunito/nunito-v12-latin-900italic.eot?#iefix") format("embedded-opentype"), url("../fonts/nunito/nunito-v12-latin-900italic.woff2") format("woff2"), url("../fonts/nunito/nunito-v12-latin-900italic.woff") format("woff"), url("../fonts/nunito/nunito-v12-latin-900italic.ttf") format("truetype"), url("../fonts/nunito/nunito-v12-latin-900italic.svg#Nunito") format("svg"); /* Legacy iOS */
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 900;
  src: local("Roboto Black"), local("Roboto-Black"), url("../fonts/roboto/roboto-Black.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 900;
  src: local("Roboto Black Italic"), local("Roboto-BlackItalic"), url("../fonts/roboto/Roboto-BlackItalic.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: local("Roboto Bold"), local("Roboto-Bold"), url("../fonts/roboto/Roboto-Bold.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 700;
  src: local("Roboto Bold Italic"), local("Roboto-BoldItalic"), url("../fonts/roboto/Roboto-BoldItalic.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;
  src: local("Roboto Medium"), local("Roboto-Medium"), url("../fonts/roboto/Roboto-Medium.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 500;
  src: local("Roboto Medium Italic"), local("Roboto-MediumItalic"), url("../fonts/roboto/Roboto-MediumItalic.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  src: local("Roboto Regular"), local("Roboto-Regular"), url("../fonts/roboto/Roboto-Regular.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 300;
  src: local("Roboto Light"), local("Roboto-Light"), url("../fonts/roboto/Roboto-Light.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 300;
  src: local("Roboto Light Italic"), local("Roboto-LightItalic"), url("../fonts/roboto/Roboto-LightItalic.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 100;
  src: local("Roboto Thin"), local("Roboto-Thin"), url("../fonts/roboto/Roboto-Thin.ttf") format("truetype");
}
/* roboto */
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 100;
  src: local("Roboto Thin Italic"), local("Roboto-ThinItalic"), url("../fonts/roboto/Roboto-ThinItalic.ttf") format("truetype");
}
/**
 * The HTML wrapping tag takes some very general styles. Normalize some rendering.
 */
html {
  font-size: 100%;
  font-size: calc(1em + 1vw);
}

/**
 * The body tag should take the site's universal styles.
 *
 * rem is based on this font-size dec, so only change if you're sure about the
 * type scale.
 * The body line-height should be one of only a handful of [unitless] line-height
 * declarations in the CSS codebase.
 */
body {
  color: #333;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.375;
}

/**
 * Font family declarations, all in one place and early.
 *
 * Let's keep all font-family calls right here, so it's manageable. Even classes
 * if necessary.
 */
html,
body,
.font-family--primary,
.product-services h3,
.product-related h3,
.product-resources .details-wrapper a,
.horizontal-tabs .horizontal-tab-button a,
.card-style--secondary h3,
.large-text {
  font-family: "Nunito", "Helvetica Neue Light", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
}

/**
 * Often the headings and other sparing elements take a second font family.
 *
 * CSSLint and other tools might squawk at double-declaring <h*> tags, but this
 * puts all the font-family declarations in one place, which feels good.
 */
h1,
h2,
h3,
h4,
h5,
h6,
.font-family--secondary {
  font-family: "Montserrat";
  letter-spacing: 2px;
}

/**
 * Some sites have Monospace text for code samples and the like.
 */
code,
kbd,
pre,
samp,
.font-family--monospace {
  font-family: monospace;
  font-size: 1em;
}

/**
 * @file
 *
 * Tag-level, tables, forms, and other base styling.
 */
/**
 * https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
  min-width: 0;
  min-height: 0;
}

/**
 * The body tag should take the site's universal styles.
 *
 * rem is based on this font-size dec, so only change if you're sure about the
 * type scale.
 * The body line-height should be one of only a handful of [unitless] line-height
 * declarations in the CSS codebase.
 */
body {
  height: 100%;
  margin: 0;
  word-break: break-word;
  color: #333;
  background: #fff;
}

.relative {
  position: relative;
}

/**
 * Links.
 *
 * Links should have set, at a minimum, :link, :visited, :hover, :active, :focus
 *
 * We note to designers that blue links are a good signifier for the affordance.
 * Visited links in a vacuum should look different than unvisited ones.
 * Hover, active, and focus states should look different than stateless links.
 */
a:link {
  color: #141C52;
}

a:visited {
  color: #141C52;
}

a:hover {
  color: #4C47C4;
}

a:active {
  color: #4C47C4;
}

a:focus {
  outline: 0 none;
}

/**
 * Abbreviations, semi-deprecated. Used in Drupal 8 and overridden here.
 */
abbr[title] {
  cursor: help;
  white-space: nowrap;
}

abbr.tabledrag-changed,
abbr.ajax-changed {
  border-bottom: none;
}

/**
 * Address elements are often italicized by the user agent, so this normalizes.
 */
address {
  text-align: left;
  font-style: normal;
}

/**
 * Base blockquotes before classing.
 */
blockquote {
  position: relative;
  margin: 0;
  padding: 1em 3em;
  font-size: 1.4em;
}

blockquote:before,
blockquote:after {
  position: absolute;
  z-index: 1;
  display: block;
  opacity: 0.25;
  font-size: 5em;
  font-weight: bold;
  line-height: 0;
}

blockquote:before {
  top: 0.65em;
  left: 0;
  content: "“";
}

blockquote:after {
  right: 0;
  bottom: 0.65em;
  content: "„";
}

/**
 * The monospace and <pre> elements.
 *
 * The font-family has already been declared above, so this is just the
 * text treatments.
 */
pre {
  overflow: auto;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 10px;
  text-align: left;
  white-space: pre;
  white-space: pre-wrap;
  text-transform: none;
  color: #333;
  border: 1px solid #333;
  background: #efefef;
  font-family: monospace;
  font-size: 12px;
  font-weight: normal;
  line-height: 20px;
  page-break-inside: avoid;
}

/**
 * Definition lists. They're a big waste of time usually.
 */
dd {
  margin: 0 0 0 40px;
}

dfn {
  font-style: italic;
}

/**
 * Figures and their captions.
 *
 * Used as wrapping elements in media-containing components.
 */
figure {
  display: inline-block;
  min-width: 1px;
  max-width: 100%;
  margin: 0;
}

figcaption {
  color: #666;
  font-size: 0.75em;
}

/**
 * Headings h1-h6.
 *
 * Each set has a main declaration (plus a class for use later), then for <h1>
 * and <h2> there are @media queries to reduce their size for mobile, then
 * universal decs that make the links within headings take their color rather
 * than the default link colors.
 * All the heading elements have no margin, so spacer components are used for
 * vertical rhythm.
 */
h1,
.heading--h1 {
  margin: 0;
  font-size: 2.5em;
  font-weight: 300;
  line-height: 1.1;
}

@media all and (max-width: 500px) {
  h1,
  .heading--h1 {
    font-size: 2em;
  }
}
h1 > a:link,
h1 > a:visited {
  text-decoration: inherit;
  color: inherit;
}

/**
 * In practice, <h2> elements on the site are the same size as <h1>, except for
 * the hero on the home page.
 */
h2,
.heading--h2,
.paragraph-media.has--hotspots .field-name--field-title {
  margin: 0;
  font-size: 2em;
  font-weight: 400;
  line-height: 1.1;
}

@media all and (max-width: 500px) {
  h2,
  .heading--h2,
  .paragraph-media.has--hotspots .field-name--field-title {
    font-size: 1.75em;
  }
}
h2 > a:link,
h2 > a:visited {
  text-decoration: inherit;
  color: inherit;
}

h2 > a:hover {
  color: #4C47C4;
}

h3,
.heading--h3,
.paragraph-media .field-name--field-title {
  margin: 0;
  font-size: 1.5em;
  font-weight: 500;
  line-height: 1.1;
}

h3 > a:link,
h3 > a:visited {
  text-decoration: inherit;
  color: inherit;
}

h4,
.heading--h4 {
  margin: 0;
  font-size: 1.3333em;
  font-weight: 400;
  line-height: 1.1;
}

h4 > a:link,
h4 > a:visited {
  text-decoration: inherit;
  color: inherit;
}

h5,
.heading--h5 {
  margin: 0;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.1;
}

h5 > a:link,
h5 > a:visited {
  text-decoration: inherit;
  color: inherit;
}

h6,
.heading--h6 {
  margin: 0;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.1;
}

h6 > a:link,
h6 > a:visited {
  text-decoration: inherit;
  color: inherit;
}

/**
 * Horizontal rules.
 *
 * Link other text-level elements, the <hr> has the minimal amount of acceptable
 * spacing, such that spacer components can be used for vertical rhythm.
 *
 * For cross-browser, the height is set rather than the border.
 */
hr {
  height: 1px;
  margin: 10px 0;
  color: #666;
  border-width: 0;
  background-color: #666;
  line-height: 0;
}

/**
 * iframes.
 *
 * Let's put borders on 'em, unless they don't need them in the theme.
 */
iframe {
  border: 1px solid #ccc;
}

/**
 * Images.
 *
 * Since they have a max-width of 100%, the height: auto is truly important.
 * There's a render prop for old version of IE.
 * And the display and line-height props are normalize-ish for spacing.
 */
img {
  display: block;
  max-width: 100%;
  height: auto !important;
  -ms-interpolation-mode: bicubic;
  border: 0;
  line-height: 0;
}

.img-left {
  float: left;
  margin: 0 30px 30px 0;
}

.img-right {
  float: right;
  margin: 0 0 20px 20px;
}

mark {
  color: #f0ad33;
}

p {
  margin: 1em 0;
}

/**
 * Quotes, non-block.
 *
 * These might not be used in any of our sites ever, so ignore and keep moving.
 */
q {
  quotes: none;
}

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

small {
  font-size: 75%;
}

sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/**
 * A quick normalize for SVG that I don't really understand.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Table */
table {
  width: 100%;
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: collapse;
}
table thead {
  border-bottom: 1px solid #9f9f9f;
}
table td,
table th {
  padding: 1em;
  vertical-align: top;
  color: #363636;
  border-width: 0 0 1px;
}
table td:not([align]),
table th:not([align]) {
  text-align: left;
}
table tbody tr:not(.is-selected):hover {
  background-color: #fafafa;
}
table tbody tr:not(.is-selected):nth-child(even) {
  background-color: #f3f3f3;
}
table tbody tr:not(.is-selected):hover:nth-child(even) {
  background-color: whitesmoke;
}
table tfoot td,
table tfoot th {
  color: #363636;
  border-width: 2px 0 0;
}

.stacktable {
  width: 100%;
}

.st-head-row {
  padding-top: 1em;
}

.st-head-row.st-head-row-main {
  padding-top: 0;
  font-size: 1.5em;
}

.st-key {
  width: 49%;
  padding-right: 1%;
  text-align: right;
}

.st-val {
  width: 49%;
  padding-left: 1%;
}

.stacktable.large-only {
  display: table;
}

.stacktable.small-only {
  display: none;
}

@media (max-width: 768px) {
  .stacktable.large-only {
    display: none;
  }
  .stacktable.small-only {
    display: table;
  }
}
/**
 * Ensure <video> tags are responsive like <img> tags.
 */
video {
  height: auto;
}

/**
 * Core menu class. Common styles for all front-end menus on the site.
 *
 * Same styling applies to header and footer, so only put common styles here.
 */
ul.menu {
  margin: 0;
  padding: 0;
  list-style: none outside;
}

ul.menu li {
  display: inline-block;
}

ul.menu li a {
  display: inline-block;
  margin: 0;
  padding: 16px;
  text-decoration: none;
  font-size: 0.875em;
}

strong {
  font-weight: 700;
}

body.cke_editable {
  padding: 8px;
}

ol,
ul {
  padding: 8px 16px;
}

q {
  quotes: "“" "”" "‘" "’";
  font-family: monospace;
}

/* insert the quotes using pseudo-elements and the `content` property */
q:before {
  content: open-quote;
}

q:after {
  content: close-quote;
}

footer .inner > div {
  width: 100%;
}
@media (max-width: 500px) {
  footer .inner > div .region {
    margin: 0;
  }
}

#block-mainpagecontent .sitemap .sitemap-item--menu-footer div ul, #block-mainpagecontent .sitemap .sitemap-item--menu-utility div ul {
  padding: 8px 16px 8px 0;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-footer div ul li.menu-item, #block-mainpagecontent .sitemap .sitemap-item--menu-utility div ul li.menu-item {
  display: flex;
  flex-direction: column;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-footer div ul li.menu-item a, #block-mainpagecontent .sitemap .sitemap-item--menu-utility div ul li.menu-item a {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.375;
  text-decoration: underline;
  padding: 0;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-footer div ul.menu.menu-level-0, #block-mainpagecontent .sitemap .sitemap-item--menu-utility div ul.menu.menu-level-0 {
  padding-top: 24px;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-footer div ul.menu.menu-level-0 li.menu-item, #block-mainpagecontent .sitemap .sitemap-item--menu-utility div ul.menu.menu-level-0 li.menu-item {
  flex-direction: row;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-footer div ul.menu.menu-level-0 li:before, #block-mainpagecontent .sitemap .sitemap-item--menu-utility div ul.menu.menu-level-0 li:before {
  content: "⦁";
  margin-right: 5px;
  color: black;
  font-size: 1.4em;
  margin-top: -4px;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-main div ul {
  padding: 8px 16px 8px 0;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-main div ul li.menu-item {
  display: flex;
  flex-direction: column;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-main div ul li.menu-item a {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.375;
  text-decoration: underline;
  padding: 0;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-main div ul.menu.menu-level-0 {
  padding-top: 24px;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-main div ul.menu.menu-level-0 li {
  padding-left: 13px;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-main div ul.menu.menu-level-0 li:before {
  content: "⦁";
  color: black;
  font-size: 1.4em;
  width: -moz-min-content;
  width: min-content;
  margin: -5px 0 0 -12px;
  position: absolute;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-main div ul.menu.menu-level-0 ul.menu.menu-level-1 li:before {
  content: "◦";
  font-size: 1em;
  margin: -2px 0 0 -13px;
}
#block-mainpagecontent .sitemap .sitemap-item--menu-main div ul.menu.menu-level-0 ul.menu.menu-level-1 ul.menu.menu-level-2 li:before {
  content: "▪";
  font-size: 1em;
  margin: -2px 0 0 -13px;
}

#block-exposedformcontent-listingteaser-block-filters #views-exposed-form-content-listing-teaser-block-filters .form-select {
  color: #222222;
}

.node--view-mode-modal {
  padding: 40px 10px;
}
.node--view-mode-modal h2 {
  font-weight: 600;
}

/**
 * Baseline form declarations input elements, general styling.
 */
input[type=tel],
input[type=text],
input[type=email],
input[type=password],
input[name=phone],
input[name=date],
select,
textarea {
  display: block;
  max-width: 100%;
  margin: 0;
  padding: 10px;
  color: #333;
  border: 1px solid #ccc;
  border-color: #dbdbdb;
  border-radius: 3px;
  background-color: #fff;
  box-shadow: inset 0 0.0625em 0.125em rgba(10, 10, 10, 0.05);
  width: 100%;
}
@media (max-width: 375px) {
  input[type=tel],
  input[type=text],
  input[type=email],
  input[type=password],
  input[name=phone],
  input[name=date],
  select,
  textarea {
    max-width: 280px;
  }
}

.iti {
  display: block;
}

.chosen-container-active.chosen-with-drop .chosen-single {
  background: #fff;
}

.chosen-container {
  width: 100% !important;
  margin: 0;
  padding: 0;
  background-color: transparent;
  font-size: inherit;
}
.chosen-container .chosen-choices,
.chosen-container .chosen-single {
  width: 100% !important;
  height: auto;
  margin: 0;
  padding: 6px 10px;
  border: 1px solid #ccc;
  border-color: #dbdbdb;
  border-radius: 3px;
  background: #fff;
  box-shadow: inset 0 0.0625em 0.125em rgba(10, 10, 10, 0.05);
}
@media (max-width: 375px) {
  .chosen-container .chosen-choices,
  .chosen-container .chosen-single {
    max-width: 280px;
  }
}
.chosen-container .chosen-drop {
  margin-top: -1px;
  padding: 6px;
  border-radius: 6px;
  box-shadow: 6px 6px 9px 6px rgba(0, 0, 0, 0.1);
}
.chosen-container .chosen-results li.active-result {
  padding: 6px;
  border-radius: 6px;
}
.chosen-container .chosen-results li.active-result.highlighted {
  background: #6F7BDD;
}

.path-user main {
  margin: 40px auto;
}
.path-user .user-form-external-wrap {
  max-width: 600px;
  text-align: center;
  padding: 40px 40px 5px 40px;
  border: 2px solid grey;
  border-radius: 16px;
}
.path-user .user-form-external-wrap h2 {
  font-size: 30px;
}
.path-user .user-form-external-wrap .reg-link {
  margin-top: 35px;
}
.path-user .user-form-external-wrap .form-ext-wrap {
  max-width: 80%;
  margin: 10px auto;
}
.path-user .user-form-external-wrap .user-form-logo {
  background: url(../img/humanetics-logo.svg) no-repeat center;
  padding: 30px 0px;
  margin-bottom: 20px;
}
.path-user .user-form-external-wrap form {
  text-align: initial;
}
.path-user .user-form-external-wrap form .description {
  display: none;
}
.path-user .user-form-external-wrap form input[type=text], .path-user .user-form-external-wrap form input[type=email], .path-user .user-form-external-wrap form input[type=password], .path-user .user-form-external-wrap form select.form-select {
  border: 2px solid gray;
  border-radius: 10px;
  background-color: #fafafa;
  padding: 15px;
}
.path-user .user-form-external-wrap form input[type=submit], .path-user .user-form-external-wrap form button[type=submit], .path-user .user-form-external-wrap form .paragraph-media.has--hotspots .field-name--field-link a[type=submit], .paragraph-media.has--hotspots .field-name--field-link .path-user .user-form-external-wrap form a[type=submit] {
  background-color: #151171;
  margin: 10px auto;
  border-radius: 13px;
  display: block;
}
.path-user .user-form-external-wrap form .caps-lock-txt {
  text-align: right;
  color: red;
  font-weight: 500;
  display: none;
}
.path-user .user-form-external-wrap form.capslock .caps-lock-txt {
  display: block;
}
.path-user .user-form-external-wrap form label, .path-user .user-form-external-wrap a {
  color: #423784;
  font-weight: 600;
}
.path-user .user-form-external-wrap.user-pass-form-wrap .reg-link {
  margin-bottom: 35px;
}
.path-user .user-form-external-wrap.user-reg-form-wrap .form-ext-wrap {
  max-width: unset;
}

.grid {
  display: grid;
}

.gap-10 {
  gap: 0.7rem;
}

.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

@media (min-width: 462px) {
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.description {
  font-size: 0.85em;
}

.form-actions,
.form-item {
  margin: 0 0 10px;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.form-actions {
  margin-top: 20px;
}

.form-checkboxes .form-item,
.form-radios .form-item {
  margin-top: 5px;
  margin-bottom: 5px;
}

.form-required::after {
  display: inline-block;
  margin: 0 0 0 2px;
  content: "*";
  color: #AB2C32;
}

.form-required::after {
  display: inline-block;
  margin: 0 0 0 2px;
  content: "*";
  color: #AB2C32;
}

.search-api-autocomplete-search {
  border-radius: 6px;
  box-shadow: 3px 3px 6px 3px rgba(0, 0, 0, 0.1);
}
.search-api-autocomplete-search .ui-menu-item-wrapper.ui-state-active .search-api-autocomplete-suggestion {
  background: #4C47C4;
}

.search-api-autocomplete-suggestion {
  margin: 6px;
  padding: 6px;
  border-radius: 6px;
}

#block-exposedformsearchpage-1 form {
  margin-bottom: 3em;
}
#block-exposedformsearchpage-1 .form-item {
  float: left;
  margin: 0px;
}
#block-exposedformsearchpage-1 .form-item input {
  border-radius: 6px 0 0 6px;
}
#block-exposedformsearchpage-1 .form-actions {
  float: left;
  margin: 0px;
}
#block-exposedformsearchpage-1 .form-actions button, #block-exposedformsearchpage-1 .form-actions .paragraph-media.has--hotspots .field-name--field-link a, .paragraph-media.has--hotspots .field-name--field-link #block-exposedformsearchpage-1 .form-actions a {
  border-radius: 0 6px 6px 0;
}

.confirm-parent,
.password-parent,
.password-confirm,
.password-field,
.password-strength,
.password-confirm-match {
  max-width: 100%;
  width: 100%;
}

/**
 * Helpers - Poor mans grid system
 */
.flex-basis--1 > * {
  flex-basis: calc(100% - 30px);
  max-width: calc(100% - 30px);
}

.flex-basis--2 > * {
  flex-basis: calc(50% - 30px);
  max-width: calc(50% - 30px);
}

.flex-basis--3 > * {
  flex-basis: calc(33.333333% - 30px);
  max-width: calc(33.333333% - 30px);
}
@media (max-width: 768px) {
  .flex-basis--3 > * {
    flex-basis: calc(50% - 30px);
    max-width: calc(50% - 30px);
  }
}

.flex-basis--4 > * {
  flex-basis: calc(25% - 30px);
  max-width: calc(25% - 30px);
}
@media (max-width: 768px) {
  .flex-basis--4 > * {
    flex-basis: calc(50% - 30px);
    max-width: calc(50% - 30px);
  }
}

.flex-basis--5 > * {
  flex-basis: calc(20% - 30px);
  max-width: calc(20% - 30px);
}

.flex-basis--6 > * {
  flex-basis: calc(16.667% - 30px);
  max-width: calc(16.667% - 30px);
}

.flex-basis--cols {
  display: flex;
  flex-wrap: wrap;
  margin-right: -30px;
}
.flex-basis--cols > * {
  margin-right: 30px;
}
@media (max-width: 375px) {
  .flex-basis--cols > * {
    flex-basis: calc(100% - 30px);
    max-width: 100%;
  }
}

/* CKEditor Styles */
.large-text {
  font-size: 20px;
}

/*!
 * animate.css -https://daneden.github.io/animate.css/
 * Version - 3.7.2
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2019 Daniel Eden
 */
@keyframes bounce {
  from, 20%, 53%, 80%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    transform: translate3d(0, -4px, 0);
  }
}
.bounce {
  animation-name: bounce;
  transform-origin: center bottom;
}
@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
.flash {
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes pulse {
  from {
    transform: scale3d(1, 1, 1);
  }
  50% {
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    transform: scale3d(1, 1, 1);
  }
}
.pulse {
  animation-name: pulse;
}
@keyframes rubberBand {
  from {
    transform: scale3d(1, 1, 1);
  }
  30% {
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    transform: scale3d(1, 1, 1);
  }
}
.rubberBand {
  animation-name: rubberBand;
}
@keyframes shake {
  from, to {
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    transform: translate3d(10px, 0, 0);
  }
}
.shake {
  animation-name: shake;
}
@keyframes headShake {
  0% {
    transform: translateX(0);
  }
  6.5% {
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    transform: translateX(0);
  }
}
.headShake {
  animation-timing-function: ease-in-out;
  animation-name: headShake;
}
@keyframes swing {
  20% {
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
.swing {
  transform-origin: top center;
  animation-name: swing;
}
@keyframes tada {
  from {
    transform: scale3d(1, 1, 1);
  }
  10%, 20% {
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%, 50%, 70%, 90% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%, 60%, 80% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    transform: scale3d(1, 1, 1);
  }
}
.tada {
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes wobble {
  from {
    transform: translate3d(0, 0, 0);
  }
  15% {
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.wobble {
  animation-name: wobble;
}
@keyframes jello {
  from, 11.1%, to {
    transform: translate3d(0, 0, 0);
  }
  22.2% {
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}
.jello {
  animation-name: jello;
  transform-origin: center;
}
@keyframes heartBeat {
  0% {
    transform: scale(1);
  }
  14% {
    transform: scale(1.3);
  }
  28% {
    transform: scale(1);
  }
  42% {
    transform: scale(1.3);
  }
  70% {
    transform: scale(1);
  }
}
.heartBeat {
  animation-name: heartBeat;
  animation-duration: 1.3s;
  animation-timing-function: ease-in-out;
}
@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    transform: scale3d(1, 1, 1);
  }
}
.bounceIn {
  animation-duration: 0.75s;
  animation-name: bounceIn;
}
@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }
  75% {
    transform: translate3d(0, -10px, 0);
  }
  90% {
    transform: translate3d(0, 5px, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.bounceInDown {
  animation-name: bounceInDown;
}
@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }
  75% {
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    transform: translate3d(5px, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.bounceInLeft {
  animation-name: bounceInLeft;
}
@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    transform: translate3d(10px, 0, 0);
  }
  90% {
    transform: translate3d(-5px, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.bounceInRight {
  animation-name: bounceInRight;
}
@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  75% {
    transform: translate3d(0, 10px, 0);
  }
  90% {
    transform: translate3d(0, -5px, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.bounceInUp {
  animation-name: bounceInUp;
}
@keyframes bounceOut {
  20% {
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
.bounceOut {
  animation-duration: 0.75s;
  animation-name: bounceOut;
}
@keyframes bounceOutDown {
  20% {
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}
.bounceOutDown {
  animation-name: bounceOutDown;
}
@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}
.bounceOutLeft {
  animation-name: bounceOutLeft;
}
@keyframes bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}
.bounceOutRight {
  animation-name: bounceOutRight;
}
@keyframes bounceOutUp {
  20% {
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}
.bounceOutUp {
  animation-name: bounceOutUp;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeIn {
  animation-name: fadeIn;
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.fadeInDown {
  animation-name: fadeInDown;
}
@keyframes fadeInDownBig {
  from {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.fadeInDownBig {
  animation-name: fadeInDownBig;
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.fadeInLeft {
  animation-name: fadeInLeft;
}
@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.fadeInLeftBig {
  animation-name: fadeInLeftBig;
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.fadeInRight {
  animation-name: fadeInRight;
}
@keyframes fadeInRightBig {
  from {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.fadeInRightBig {
  animation-name: fadeInRightBig;
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.fadeInUp {
  animation-name: fadeInUp;
}
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.fadeInUpBig {
  animation-name: fadeInUpBig;
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.fadeOut {
  animation-name: fadeOut;
}
@keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
}
.fadeOutDown {
  animation-name: fadeOutDown;
}
@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}
.fadeOutDownBig {
  animation-name: fadeOutDownBig;
}
@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
}
.fadeOutLeft {
  animation-name: fadeOutLeft;
}
@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}
.fadeOutLeftBig {
  animation-name: fadeOutLeftBig;
}
@keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
}
.fadeOutRight {
  animation-name: fadeOutRight;
}
@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}
.fadeOutRightBig {
  animation-name: fadeOutRightBig;
}
@keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
}
.fadeOutUp {
  animation-name: fadeOutUp;
}
@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}
.fadeOutUpBig {
  animation-name: fadeOutUpBig;
}
@keyframes flip {
  from {
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    animation-timing-function: ease-in;
  }
  to {
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    animation-timing-function: ease-in;
  }
}
.animated.flip {
  backface-visibility: visible;
  animation-name: flip;
}
@keyframes flipInX {
  from {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    animation-timing-function: ease-in;
  }
  60% {
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    transform: perspective(400px);
  }
}
.flipInX {
  backface-visibility: visible !important;
  animation-name: flipInX;
}
@keyframes flipInY {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    animation-timing-function: ease-in;
  }
  60% {
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    transform: perspective(400px);
  }
}
.flipInY {
  backface-visibility: visible !important;
  animation-name: flipInY;
}
@keyframes flipOutX {
  from {
    transform: perspective(400px);
  }
  30% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
.flipOutX {
  animation-duration: 0.75s;
  animation-name: flipOutX;
  backface-visibility: visible !important;
}
@keyframes flipOutY {
  from {
    transform: perspective(400px);
  }
  30% {
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
.flipOutY {
  animation-duration: 0.75s;
  backface-visibility: visible !important;
  animation-name: flipOutY;
}
@keyframes lightSpeedIn {
  from {
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    transform: skewX(-5deg);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.lightSpeedIn {
  animation-name: lightSpeedIn;
  animation-timing-function: ease-out;
}
@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }
  to {
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
.lightSpeedOut {
  animation-name: lightSpeedOut;
  animation-timing-function: ease-in;
}
@keyframes rotateIn {
  from {
    transform-origin: center;
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    transform-origin: center;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.rotateIn {
  animation-name: rotateIn;
}
@keyframes rotateInDownLeft {
  from {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    transform-origin: left bottom;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.rotateInDownLeft {
  animation-name: rotateInDownLeft;
}
@keyframes rotateInDownRight {
  from {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    transform-origin: right bottom;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.rotateInDownRight {
  animation-name: rotateInDownRight;
}
@keyframes rotateInUpLeft {
  from {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    transform-origin: left bottom;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.rotateInUpLeft {
  animation-name: rotateInUpLeft;
}
@keyframes rotateInUpRight {
  from {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    transform-origin: right bottom;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
.rotateInUpRight {
  animation-name: rotateInUpRight;
}
@keyframes rotateOut {
  from {
    transform-origin: center;
    opacity: 1;
  }
  to {
    transform-origin: center;
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
.rotateOut {
  animation-name: rotateOut;
}
@keyframes rotateOutDownLeft {
  from {
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
.rotateOutDownLeft {
  animation-name: rotateOutDownLeft;
}
@keyframes rotateOutDownRight {
  from {
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutDownRight {
  animation-name: rotateOutDownRight;
}
@keyframes rotateOutUpLeft {
  from {
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutUpLeft {
  animation-name: rotateOutUpLeft;
}
@keyframes rotateOutUpRight {
  from {
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
.rotateOutUpRight {
  animation-name: rotateOutUpRight;
}
@keyframes hinge {
  0% {
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    transform: rotate3d(0, 0, 1, 80deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  40%, 80% {
    transform: rotate3d(0, 0, 1, 60deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
.hinge {
  animation-duration: 2s;
  animation-name: hinge;
}
@keyframes jackInTheBox {
  from {
    opacity: 0;
    transform: scale(0.1) rotate(30deg);
    transform-origin: center bottom;
  }
  50% {
    transform: rotate(-10deg);
  }
  70% {
    transform: rotate(3deg);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.jackInTheBox {
  animation-name: jackInTheBox;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollIn {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.rollIn {
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
.rollOut {
  animation-name: rollOut;
}
@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
.zoomIn {
  animation-name: zoomIn;
}
@keyframes zoomInDown {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInDown {
  animation-name: zoomInDown;
}
@keyframes zoomInLeft {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInLeft {
  animation-name: zoomInLeft;
}
@keyframes zoomInRight {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInRight {
  animation-name: zoomInRight;
}
@keyframes zoomInUp {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInUp {
  animation-name: zoomInUp;
}
@keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
.zoomOut {
  animation-name: zoomOut;
}
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutDown {
  animation-name: zoomOutDown;
}
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform-origin: left center;
  }
}
.zoomOutLeft {
  animation-name: zoomOutLeft;
}
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    transform: scale(0.1) translate3d(2000px, 0, 0);
    transform-origin: right center;
  }
}
.zoomOutRight {
  animation-name: zoomOutRight;
}
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutUp {
  animation-name: zoomOutUp;
}
@keyframes slideInDown {
  from {
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.slideInDown {
  animation-name: slideInDown;
}
@keyframes slideInLeft {
  from {
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.slideInLeft {
  animation-name: slideInLeft;
}
@keyframes slideInRight {
  from {
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.slideInRight {
  animation-name: slideInRight;
}
@keyframes slideInUp {
  from {
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.slideInUp {
  animation-name: slideInUp;
}
@keyframes slideOutDown {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, 100%, 0);
  }
}
.slideOutDown {
  animation-name: slideOutDown;
}
@keyframes slideOutLeft {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(-100%, 0, 0);
  }
}
.slideOutLeft {
  animation-name: slideOutLeft;
}
@keyframes slideOutRight {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(100%, 0, 0);
  }
}
.slideOutRight {
  animation-name: slideOutRight;
}
@keyframes slideOutUp {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, -100%, 0);
  }
}
.slideOutUp {
  animation-name: slideOutUp;
}

.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

.animated.infinite {
  animation-iteration-count: infinite;
}

.animated.delay-1s {
  animation-delay: 1s;
}

.animated.delay-2s {
  animation-delay: 2s;
}

.animated.delay-3s {
  animation-delay: 3s;
}

.animated.delay-4s {
  animation-delay: 4s;
}

.animated.delay-5s {
  animation-delay: 5s;
}

.animated.fast {
  animation-duration: 800ms;
}

.animated.faster {
  animation-duration: 500ms;
}

.animated.slow {
  animation-duration: 2s;
}

.animated.slower {
  animation-duration: 3s;
}

@media (print), (prefers-reduced-motion: reduce) {
  .animated {
    animation-duration: 1ms !important;
    transition-duration: 1ms !important;
    animation-iteration-count: 1 !important;
  }
}
/* Lightbox */
div.ml_box {
  position: fixed;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  background: rgba(75, 75, 75, 0.95);
}

div.ml_box img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  max-width: 90%;
  max-height: 90%;
  margin: auto;
  cursor: zoom-out;
  vertical-align: middle;
  border: 4px solid #d7d7d7;
  border-radius: 4px;
}

div.ml_box .animated,
div.ml_box.animated {
  animation-duration: 0.5s;
}

.compro-slick--with-thumb-nav img {
  cursor: zoom-in;
}

.animated {
  animation-duration: 0.5s;
}

/**
 * @file
 * property--value CSS mini-library.
 */
.align-content--flex-start {
  align-content: flex-start;
}
.align-content--flex-end {
  align-content: flex-end;
}
.align-content--center {
  align-content: center;
}
.align-content--space-between, .align-content--dave-matthews {
  align-content: space-between;
}
.align-content--space-around {
  align-content: space-around;
}
.align-content--space-evenly {
  /* Use space-around for flexbugs support. */
  align-content: space-evenly;
}
.align-content--stretch {
  align-content: stretch;
}
.align-items--flex-start {
  align-items: flex-start;
}
.align-items--flex-end {
  align-items: flex-end;
}
.align-items--center {
  align-items: center;
}
.align-items--baseline {
  align-items: baseline;
}
.align-items--stretch {
  align-items: stretch;
}
.align-self--flex-start {
  align-self: flex-start;
}
.align-self--flex-end {
  align-self: flex-end;
}
.align-self--center {
  align-self: center;
}
.align-self--baseline {
  align-self: baseline;
}
.align-self--stretch {
  align-self: stretch;
}

.background-attachment--fixed {
  background-attachment: fixed;
}
.background-attachment--local {
  background-attachment: local;
}
.background-attachment--scroll {
  background-attachment: scroll;
}
.background-position-x--left {
  background-position-x: left;
}
.background-position-x--right {
  background-position-x: right;
}
.background-position-x--center {
  background-position-x: center;
}
.background-position-y--top {
  background-position-y: top;
}
.background-position-y--bottom {
  background-position-y: bottom;
}
.background-position-y--center {
  background-position-y: center;
}
.background-repeat--repeat-x {
  background-repeat: repeat-x;
}
.background-repeat--repeat-y {
  background-repeat: repeat-y;
}
.background-repeat--repeat {
  background-repeat: repeat;
}
.background-repeat--space {
  background-repeat: space;
}
.background-repeat--round {
  background-repeat: round;
}
.background-repeat--no-repeat {
  background-repeat: no-repeat;
}
.background-size--auto {
  background-size: auto;
}
.background-size--contain {
  background-size: contain;
}
.background-size--cover {
  background-size: cover;
}

.clear--both {
  clear: both;
}
.clear--left {
  clear: left;
}
.clear--right {
  clear: right;
}
.clear--none {
  clear: none;
}

.display--block {
  display: block;
}
.display--inline {
  display: inline;
}
.display--flex {
  /* https://github.com/philipwalton/flexbugs */
  display: flex;
}
.display--grid {
  display: grid;
}
.display--table {
  display: table;
}
.display--inline-block {
  display: inline-block;
}

.filter--blur {
  filter: blur(1rem);
}
.filter--brightness {
  filter: brightness(50%);
}
.filter--contrast {
  filter: contrast(50%);
}
.filter--grayscale {
  filter: grayscale(100%);
}
.filter--invert {
  filter: invert(100%);
}
.filter--saturate {
  filter: saturate(50%);
}
.filter--sepia {
  filter: sepia(50%);
}

.flex--auto {
  flex: auto;
}
.flex--initial {
  flex: initial;
}
.flex--none {
  flex: none;
}
.flex--1 {
  flex: 1;
  max-width: 780px;
  flex-shrink: 1;
}
.flex--2 {
  flex: 2;
  flex-shrink: 1;
}
.flex--3 {
  flex: 3;
  flex-shrink: 1;
}
.flex--4 {
  flex: 4;
  flex-shrink: 1;
}
.flex--5 {
  flex: 5;
  flex-shrink: 1;
}
.flex--6 {
  flex: 6;
  flex-shrink: 1;
}
.flex-direction--row {
  flex-direction: row;
}
.flex-direction--row-reverse {
  flex-direction: row-reverse;
}
.flex-direction--column {
  flex-direction: column;
}
.flex-direction--column-reverse {
  flex-direction: column-reverse;
}
.flex-wrap--nowrap {
  flex-wrap: nowrap;
}
.flex-wrap--wrap {
  flex-wrap: wrap;
}
.flex-wrap--wrap-reverse {
  flex-wrap: wrap-reverse;
}

.float--left {
  float: left;
}
.float--right {
  float: right;
}

.font-stretch--ultra-condensed {
  font-stretch: ultra-condensed;
}
.font-stretch--extra-condensed {
  font-stretch: extra-condensed;
}
.font-stretch--condensed {
  font-stretch: condensed;
}
.font-stretch--semi-condensed {
  font-stretch: semi-condensed;
}
.font-stretch--normal {
  font-stretch: normal;
}
.font-stretch--semi-expanded {
  font-stretch: semi-expanded;
}
.font-stretch--expanded {
  font-stretch: expanded;
}
.font-stretch--extra-expanded {
  font-stretch: extra-expanded;
}
.font-stretch--ultra-expanded {
  font-stretch: ultra-expanded;
}
.font-style--italic {
  font-style: italic;
}
.font-weight--100, .font-weight--lighter {
  font-weight: 100;
}
.font-weight--200 {
  font-weight: 200;
}
.font-weight--300, .font-weight--light {
  font-weight: 300;
}
.font-weight--400, .font-weight--normal {
  font-weight: 400;
}
.font-weight--500 {
  font-weight: 500;
}
.font-weight--600, .font-weight--bold {
  font-weight: 600;
}
.font-weight--700, .font-weight--bolder {
  font-weight: 700;
}
.font-weight--800 {
  font-weight: 800;
}
.font-weight--900 {
  font-weight: 900;
}

.justify-content--flex-start {
  justify-content: flex-start;
}
.justify-content--flex-end {
  justify-content: flex-end;
}
.justify-content--center {
  justify-content: center;
}
.justify-content--space-between, .justify-content--dave-matthews {
  justify-content: space-between;
}
.justify-content--space-around {
  justify-content: space-around;
}
.justify-content--space-evenly {
  justify-content: space-evenly;
}
.justify-content--stretch {
  justify-content: stretch;
}

.overflow--visible {
  overflow: visible;
}
.overflow--hidden {
  overflow: hidden;
}
.overflow--scroll {
  overflow: scroll;
}
.overflow--auto {
  overflow: auto;
}
.overflow--overlay {
  overflow: auto;
}

.position--static {
  position: static;
}
.position--relative {
  position: relative;
}
.position--absolute {
  position: absolute;
}
.position--sticky {
  position: fixed;
  position: sticky;
}
.position--fixed {
  position: fixed;
}

.text-align--left {
  text-align: left;
}
.text-align--right {
  text-align: right;
}
.text-align--center {
  text-align: center;
}
.text-align--justify {
  text-align: justify;
}
.text-transform--uppercase {
  text-transform: uppercase;
}
.text-transform--lowercase {
  text-transform: lowercase;
}
.text-transform--none {
  text-transform: none;
}
.text-transform--capitalize {
  text-transform: capitalize;
}

.vertical-align--baseline {
  vertical-align: baseline;
}
.vertical-align--sub {
  vertical-align: sub;
}
.vertical-align--super {
  vertical-align: super;
}
.vertical-align--text-top {
  vertical-align: text-top;
}
.vertical-align--text-bottom {
  vertical-align: text-bottom;
}
.vertical-align--middle {
  vertical-align: middle;
}
.vertical-align--top {
  vertical-align: top;
}
.vertical-align--bottom {
  vertical-align: bottom;
}

/**
 * @file
 * Component and class-level styles.
 */
/**
 * Background-color classes for the settings dropdowns. Add here as needed.
 */
.background-color--black {
  background-color: #222;
}

.background-color--black-new {
  background-color: #3C3C3B;
}

.background-color--grey-dark {
  background-color: #4A4A4A;
}

.background-color--grey {
  background-color: #9f9f9f;
}

.background-color--grey-light {
  background-color: #f3f3f3;
}

.background-color--grey-light-new {
  background-color: #9D9D9C;
}

.background-color--white {
  background-color: #fff;
}

.background-color--main,
.background-color--blue {
  background-color: #4C47C4;
}

.background-color--main-dark,
.background-color--blue-dark {
  background-color: #141C52;
}

.background-color--main-light,
.background-color--blue-light {
  background-color: #6F7BDD;
}

.background-color--second {
  background-color: #fad782;
}

.background-color--second-new {
  background-color: #511E84;
}

.background-color--second-dark {
  background-color: #ff9e1b;
}

.background-color--second-dark-new {
  background-color: #44499C;
}

.background-color--second-light {
  background-color: #fce7b3;
}

.background-color--second-light-new {
  background-color: #8E51A8;
}

.background-color--third {
  background-color: #00c1d4;
}

.background-color--third-new {
  background-color: #FBDE40;
}

.background-color--third-dark {
  background-color: #0093a1;
}

.background-color--third-light {
  background-color: #08e9ff;
}

.background-color--accent {
  background-color: #8a1b61;
}

.background-color--purple-gradient {
  background-image: linear-gradient(to right, #2c3f4b 0%, #341426 100%);
}

/**
 * A class for a settings checkbox that hides background images on mobile.
 */
@media (max-width: 375px) {
  .background-image-display-mobile--hide {
    background-image: none !important;
  }
}
/**
 * Blockquote checkbox classes for adding opening and closing quotes as needed.
 *
 * Especially useful if the opening/closing quotes have to look different than
 * the text in some way.
 */
/**
 * Default lines for cards (under image or faux top border).
 */
.card-hr--show {
  height: 4px;
  background-color: #666;
  line-height: 0;
}

.card-hr--hide {
  display: none;
}

/**
 * Allow links component buttons to have selectable backgrounds.
 */
.child-element-background-color--black > *,
.child-links-background-color--black a {
  border-color: #222 !important;
  background-color: #222 !important;
}
.child-element-background-color--black > *:hover,
.child-links-background-color--black a:hover {
  background-color: #555555 !important;
}

.child-element-background-color--black-new > *,
.child-links-background-color--black-new a {
  border-color: #3C3C3B !important;
  background-color: #3C3C3B !important;
}
.child-element-background-color--black-new > *:hover,
.child-links-background-color--black-new a:hover {
  background-color: #6f6f6e !important;
}

.child-element-background-color--grey-dark > *,
.child-links-background-color--grey-dark a {
  border-color: #4A4A4A !important;
  background-color: #4A4A4A !important;
}
.child-element-background-color--grey-dark > *:hover,
.child-links-background-color--grey-dark a:hover {
  background-color: #7d7d7d !important;
}

.child-element-background-color--grey > *,
.child-links-background-color--grey a {
  border-color: #9f9f9f !important;
  background-color: #9f9f9f !important;
}
.child-element-background-color--grey > *:hover,
.child-links-background-color--grey a:hover {
  background-color: #d2d2d2 !important;
}

.child-element-background-color--grey-light > *,
.child-links-background-color--grey-light a {
  border-color: #f3f3f3 !important;
  background-color: #f3f3f3 !important;
}
.child-element-background-color--grey-light > *:hover,
.child-links-background-color--grey-light a:hover {
  background-color: white !important;
}

.child-element-background-color--grey-light-new > *,
.child-links-background-color--grey-light-new a {
  border-color: #9D9D9C !important;
  background-color: #9D9D9C !important;
}
.child-element-background-color--grey-light-new > *:hover,
.child-links-background-color--grey-light-new a:hover {
  background-color: #d0d0cf !important;
}

.child-element-background-color--white > *,
.child-links-background-color--white a {
  border-color: #fff !important;
  background-color: #fff !important;
}
.child-element-background-color--white > *:hover,
.child-links-background-color--white a:hover {
  background-color: white !important;
}

.background-color--main,
.child-element-background-color--main > *,
.child-links-background-color--main a,
.child-element-background-color--blue > *,
.child-links-background-color--blue a {
  border-color: #4C47C4 !important;
  background-color: #4C47C4 !important;
}

.background-color--main-dark,
.child-element-background-color--main-dark > *,
.child-links-background-color--main-dark a,
.child-element-background-color--blue-dark > *,
.child-links-background-color--blue-dark a {
  border-color: #141C52 !important;
  background-color: #141C52 !important;
}

.child-links-background-color--main-dark a:hover {
  color: #fff;
  background-color: #141C52 !important;
}

.background-color--main-light,
.child-element-background-color--main-light > *,
.child-links-background-color--main-light a,
.child-element-background-color--blue-light > *,
.child-links-background-color--blue-light a {
  border-color: #6F7BDD !important;
  background-color: #6F7BDD !important;
}
.background-color--main-light:hover,
.child-element-background-color--main-light > *:hover,
.child-links-background-color--main-light a:hover,
.child-element-background-color--blue-light > *:hover,
.child-links-background-color--blue-light a:hover {
  background-color: #c2c7f0 !important;
}

.child-element-background-color--second > *,
.child-links-background-color--second a {
  border-color: #fad782 !important;
  background-color: #fad782 !important;
}
.child-element-background-color--second > *:hover,
.child-links-background-color--second a:hover {
  background-color: #fef6e4 !important;
}

.child-element-background-color--second-new > *,
.child-links-background-color--second-new a {
  border-color: #511E84 !important;
  background-color: #511E84 !important;
}
.child-element-background-color--second-new > *:hover,
.child-links-background-color--second-new a:hover {
  background-color: #8437d1 !important;
}

.child-element-background-color--second-dark-new > *,
.child-links-background-color--second-dark-new a {
  border-color: #44499C !important;
  background-color: #44499C !important;
}
.child-element-background-color--second-dark-new > *:hover,
.child-links-background-color--second-dark-new a:hover {
  background-color: #7f83c7 !important;
}

.child-element-background-color--second-light-new > *,
.child-links-background-color--second-light-new a {
  border-color: #8E51A8 !important;
  background-color: #8E51A8 !important;
}
.child-element-background-color--second-light-new > *:hover,
.child-links-background-color--second-light-new a:hover {
  background-color: #bb94cb !important;
}

.child-element-background-color--third > *,
.child-links-background-color--third a {
  border-color: #00c1d4 !important;
  background-color: #00c1d4 !important;
}
.child-element-background-color--third > *:hover,
.child-links-background-color--third a:hover {
  background-color: #3bedff !important;
}

.child-element-background-color--third-new > *,
.child-links-background-color--third-new a {
  border-color: #FBDE40 !important;
  background-color: #FBDE40 !important;
}
.child-element-background-color--third-new > *:hover,
.child-links-background-color--third-new a:hover {
  background-color: #fdefa4 !important;
}

.child-element-background-color--third-dark > *,
.child-links-background-color--third-dark a {
  border-color: #0093a1 !important;
  background-color: #0093a1 !important;
}
.child-element-background-color--third-dark > *:hover,
.child-links-background-color--third-dark a:hover {
  background-color: #08e9ff !important;
}

.child-element-background-color--third-light > *,
.child-links-background-color--third-light a {
  border-color: #08e9ff !important;
  background-color: #08e9ff !important;
}
.child-element-background-color--third-light > *:hover,
.child-links-background-color--third-light a:hover {
  background-color: #6ef2ff !important;
}

.child-element-background-color--accent > *,
.child-links-background-color--accent a {
  border-color: #8a1b61 !important;
  background-color: #8a1b61 !important;
}
.child-element-background-color--accent > *:hover,
.child-links-background-color--accent a:hover {
  background-color: #d7349b !important;
}

.child-element-background-color--yellow > *,
.child-links-background-color--yellow a {
  border-color: #FFD500 !important;
  background-color: #FFD500 !important;
}
.child-element-background-color--yellow > *:hover,
.child-links-background-color--yellow a:hover {
  background-color: #ffe666 !important;
}

/**
 * Color classes for the settings dropdowns. Add here as needed.
 */
.color--black:visited,
.color--black:link,
.color--black {
  color: #222;
}

.color--black-new:visited,
.color--black-new:link,
.color--black-new {
  color: #3C3C3B;
}

.color--grey-dark:visited,
.color--grey-dark:link,
.color--grey-dark {
  color: #4A4A4A;
}

.color--grey:visited,
.color--grey:link,
.color--grey {
  color: #9f9f9f;
}

.color--grey-light:visited,
.color--grey-light:link,
.color--grey-light {
  color: #f3f3f3;
}

.color--grey-light-new:visited,
.color--grey-light-new:link,
.color--grey-light-new {
  color: #9D9D9C;
}

.color--white:visited,
.color--white:link,
.color--white {
  color: #fff;
}

.color--main:visited,
.color--main:link,
.color--main,
.color--blue {
  color: #4C47C4;
}

.color--main-dark:visited,
.color--main-dark:link,
.color--main-dark,
.color--blue-dark {
  color: #141C52;
}

.color--main-light:visited,
.color--main-light:link,
.color--main-light,
.color--blue-light:visited,
.color--blue-light:link,
.color--blue-light {
  color: #6F7BDD;
}

.color--second:visited,
.color--second:link,
.color--second {
  color: #fad782;
}

.color--second-new:visited,
.color--second-new:link,
.color--second-new {
  color: #511E84;
}

.color--second-dark:visited,
.color--second-dark:link,
.color--second-dark {
  color: #ff9e1b;
}

.color--second-dark-new:visited,
.color--second-dark-new:link,
.color--second-dark-new {
  color: #44499C;
}

.color--second-light:visited,
.color--second-light:link,
.color--second-light {
  color: #fce7b3;
}

.color--second-light-new:visited,
.color--second-light-new:link,
.color--second-light-new {
  color: #fce7b3;
}

.color--third:visited,
.color--third:link,
.color--third {
  color: #00c1d4;
}

.color--third-new:visited,
.color--third-new:link,
.color--third-new {
  color: #FBDE40;
}

.color--third-dark:visited,
.color--third-dark:link,
.color--third-dark {
  color: #0093a1;
}

.color--third-light:visited,
.color--third-light:link,
.color--third-light {
  color: #08e9ff;
}

.color--accent:visited,
.color--accent:link,
.color--accent {
  color: #AB2C32;
}

.color--alert:visited,
.color--alert:link,
.color--alert {
  color: #AB2C32;
}

.color--success:visited,
.color--success:link,
.color--success {
  color: #15CD72;
}

.color--warning:visited,
.color--warning:link,
.color--warning {
  color: #EDE04D;
}

/**
 * When you need to set text in columns that auto-adjust to their container.
 */
.columnar {
  -moz-column-count: 2;
  column-count: 2;
  -moz-column-gap: 20px;
  column-gap: 20px;
}

.columnar > * {
  -moz-column-break-inside: avoid;
       break-inside: avoid-column;
  page-break-inside: avoid;
}

@media all and (max-width: 768px) {
  .columnar {
    -moz-column-count: 1;
    column-count: 1;
  }
}
/**
 * Since property--value doesn't have enough flex, display, or cursor classes,
 * this fills in for the needed ones.
 */
.cursor--pointer {
  cursor: pointer;
}

/**
 * Spacers.
 *
 * Hide spacers on mobile if they're just holding place in a horizontal layout.
 */
@media all and (max-width: 768px) {
  .paragraph-spacer:only-child {
    display: none;
  }
}
/**
 * Hide RSS icons while leaving them present for discovery.
 */
.feed-icons {
  display: none;
}

/**
 * Override property--value's weird initial/none behavior.
 */
.flex--initial {
  flex: 0;
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  -webkit-flex: 0;
  -ms-flex: 0;
}

/* Oddly-specific override for SVGs and <img>s. max-width to half viewport. */
.flex--initial svg,
.flex--initial img {
  max-width: 780px;
}

/**
 * Override core inline list padding.
 */
ul.inline li:first-child {
  padding: 0 0.5em 0 0;
}

/**
 * Line-heights.
 */
.line-height--1 {
  line-height: 1;
}

/**
 * Max-heights.
 */
.max-height--56px {
  max-height: 56px;
}

/**
 * Min-heights for teaser images and such.
 */
.min-height--160px {
  min-height: 160px;
}

/**
 * Min-width classes for flex wrapping.
 */
@media all and (min-width: 768px) {
  .min-width--280px {
    min-width: 280px;
  }
}
/**
 * Padding classes.
 *
 * Horizontal for column section entities. At the mobile breakpoint the padding
 * zeroes out for consistency.
 *
 * Columns are then vertically spaced using flex classes from property--value.
 */
.padding-horizontal--0 {
  padding-right: 0;
  padding-left: 0;
}

.padding-horizontal--1 {
  padding-right: 5px;
  padding-left: 5px;
}

@media all and (max-width: 768px) {
  .padding-horizontal--1 {
    padding-right: 0;
    padding-left: 0;
  }
}
.padding-horizontal--2 {
  padding-right: 10px;
  padding-left: 10px;
}

@media all and (max-width: 768px) {
  .padding-horizontal--2 {
    padding-right: 0;
    padding-left: 0;
  }
}
.padding-horizontal--4 {
  padding-right: 20px;
  padding-left: 20px;
}

@media all and (max-width: 768px) {
  .padding-horizontal--4 {
    padding-right: 0;
    padding-left: 0;
  }
}
.padding-horizontal--8 {
  padding-right: 40px;
  padding-left: 40px;
}

@media all and (max-width: 768px) {
  .padding-horizontal--8 {
    padding-right: 0;
    padding-left: 0;
  }
}
.padding-horizontal--16 {
  padding-right: 80px;
  padding-left: 80px;
}

@media all and (max-width: 768px) {
  .padding-horizontal--16 {
    padding-right: 0;
    padding-left: 0;
  }
}
.padding-horizontal--32 {
  padding-right: 160px;
  padding-left: 160px;
}

@media all and (max-width: 768px) {
  .padding-horizontal--32 {
    padding-right: 0;
    padding-left: 0;
  }
}
.padding-vertical--0 {
  padding-top: 0;
  padding-bottom: 0;
}

.padding-vertical--1 {
  padding-top: 5px;
  padding-bottom: 5px;
}

.padding-vertical--2 {
  padding-top: 10px;
  padding-bottom: 10px;
}

.padding-vertical--4 {
  padding-top: 20px;
  padding-bottom: 20px;
}

@media all and (max-width: 1037px) {
  .padding-vertical--4 {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
.padding-vertical--8 {
  padding-top: 40px;
  padding-bottom: 40px;
}

@media all and (max-width: 1037px) {
  .padding-vertical--8 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.padding-vertical--16 {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media all and (max-width: 1037px) {
  .padding-vertical--16 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.padding-vertical--32 {
  padding-top: 160px;
  padding-bottom: 160px;
}

@media all and (max-width: 1037px) {
  .padding-vertical--32 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
/**
 * Add stylistic pipes to lists.
 */
.pipe-spaced ul.menu > li > a,
.pipe-spaced ul.menu > li > span {
  padding: 10px 0;
}

.pipe-spaced li::after {
  display: inline-block;
  padding: 0 10px;
  content: "|";
  vertical-align: middle;
  opacity: 0.9;
  font-weight: 300;
}

.pipe-spaced li:last-child::after,
.pipe-spaced li.last::after {
  display: none;
}

/**
 * Utility class for printer page breaks.
 */
.print-break {
  page-break-before: always;
}

/**
 * Skip-to-main-content links for accessibility.
 */
.skip-hide {
  position: relative;
  text-align: center;
  background: #fad782;
}

.skip-hide a {
  position: absolute;
  top: auto;
  left: -10000px;
  display: block;
  overflow: hidden;
  width: 1px;
  height: 1px;
  padding: 10px;
  color: #08e9ff;
}

.skip-hide a:focus {
  position: static;
  width: auto;
  height: auto;
  outline: 0 none;
}

/**
 * The teaser--image area of node and term teasers.
 *
 * Other classes ensure a width of 160 and min-height 160.
 */
.teaser--image {
  position: relative;
  overflow: hidden;
  text-align: center;
  background: #4A4A4A url("../images/placeholder.png") center center scroll no-repeat;
}

@media all and (max-width: 1037px) {
  .teaser--image {
    width: 100% !important;
    margin: 0 0 5px;
  }
}
.teaser--image img,
.teaser--image svg {
  position: absolute;
  width: auto;
  max-width: inherit;
  height: 100% !important;
}

@media all and (max-width: 1037px) {
  .teaser--image img,
  .teaser--image svg {
    min-width: 100% !important;
    height: auto !important;
    min-height: 100%;
  }
}
/**
 * Horizontally center children of the text-align--center class.
 *
 * If a parent has text-align--center while a child has a different text-align
 * class, it may be necessary to override those classes similarly (since the
 * specificity is higher that a bare class).
 */
.text-align--center figure,
.text-align--center img,
.text-align--center p,
.text-align--center picture,
.text-align--center svg,
.text-align--center video,
.text-align--justify figure,
.text-align--justify img,
.text-align--justify p,
.text-align--justify picture,
.text-align--justify svg,
.text-align--justify video {
  margin: 1em auto;
}

.text-align--left figure,
.text-align--left img,
.text-align--left picture,
.text-align--left svg,
.text-align--left video,
.text-align--right figure,
.text-align--right img,
.text-align--right picture,
.text-align--right svg,
.text-align--right video {
  margin: 0;
}

/**
 * Widths for flex elements.
 */
.width--160px {
  width: 160px;
}

@media all and (min-width: 1037px) {
  .width--30p {
    flex: 0 1 30%;
    width: 30%;
  }
}
/**
 * Slick Slider - Default
 */
.slick-slider {
  position: relative;
  display: block;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  position: relative;
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-arrow.slick-hidden {
  display: none;
}

/**
 * Slick Slider - Theme
 */
.slick-loading .slick-list {
  background: #fff url("../img/ajax-loader.gif") center center no-repeat;
}

/* Arrows */
.slick-prev {
  left: 0;
}
.slick-prev::before {
  float: left;
}

.slick-next {
  right: 0;
}
.slick-next::before {
  float: right;
}

.slick-prev,
.slick-next {
  position: absolute;
  z-index: 2;
  top: 50%;
  display: block;
  padding: 0;
  cursor: pointer;
  transform: translate(0, -100%);
  border: none;
  background: transparent;
  font-size: 0;
  line-height: 0;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: 0;
  background: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev:before,
.slick-next:before {
  opacity: 0.75;
  color: #f3f3f3;
  font-size: 60px;
  line-height: 1;
}

/* Dots */
.slick-dots {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: center;
}
.slick-dots li {
  display: inline-block;
  margin: 0 5px;
}
.slick-dots li.slick-active button, .slick-dots li.slick-active .paragraph-media.has--hotspots .field-name--field-link a, .paragraph-media.has--hotspots .field-name--field-link .slick-dots li.slick-active a {
  background-color: #4C47C4;
}
.slick-dots li button, .slick-dots li .paragraph-media.has--hotspots .field-name--field-link a, .paragraph-media.has--hotspots .field-name--field-link .slick-dots li a {
  width: 5px;
  height: 5px;
  padding: 5px;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: 0;
  border-radius: 50%;
  background: #d6d6d6;
  font-size: 0;
  line-height: 0;
}
.slick-dots li button:hover, .slick-dots li .paragraph-media.has--hotspots .field-name--field-link a:hover, .paragraph-media.has--hotspots .field-name--field-link .slick-dots li a:hover, .slick-dots li button:focus, .slick-dots li .paragraph-media.has--hotspots .field-name--field-link a:focus, .paragraph-media.has--hotspots .field-name--field-link .slick-dots li a:focus {
  transform: scale(1.1);
  outline: 0;
  background-color: #3934a4;
}

.slick-dotted.slick-slider {
  margin-bottom: 0;
}

/**
 * Carousel with thumb nav
 */
.compro-slick--with-thumb-nav {
  max-width: 640px;
}
@media (max-width: 768px) {
  .compro-slick--with-thumb-nav {
    max-width: 100%;
  }
}

.slick-nav--for-field-gallery {
  max-width: 640px;
  padding: 0 20px;
}
@media (max-width: 768px) {
  .slick-nav--for-field-gallery {
    max-width: 100%;
  }
}
.slick-nav--for-field-gallery .slick-slide {
  margin: 0 1px;
  cursor: pointer;
}
.slick-nav--for-field-gallery .slick-track .slick-current .media {
  border: 1px solid #9f9f9f;
}

.slick-thumb::before {
  color: #9f9f9f;
  font-size: 30px;
}

/**
 * Paragraph SlideShow
 */
.paragraph-slideshow .paragraph-slide {
  padding: 0 30px;
}
.paragraph-slideshow .slick-next:before,
.paragraph-slideshow .slick-prev:before {
  color: #4C47C4;
}
.paragraph-slideshow .float--right {
  right: 0;
}
.paragraph-slideshow .field-name--field-text {
  position: absolute;
  left: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  margin: inherit;
  padding: 20px;
  transform: translateX(-50%);
}
@media (max-width: 768px) {
  .paragraph-slideshow .field-name--field-text {
    position: inherit;
    display: block;
    width: 100%;
    padding: 20px;
  }
}
.paragraph-slideshow .field-name--field-text.float--right {
  right: 30px;
  transform: none;
}
.paragraph-slideshow .field-name--field-text.float--left {
  left: 30px;
  transform: none;
}

/* Expand Icon */
.compro-slick--with-thumb-nav .media:hover::before {
  transition: all 0.1s;
  transform: scale(1.1);
}
.compro-slick--with-thumb-nav .media:before {
  position: absolute;
  right: 10px;
  bottom: 12px;
  cursor: pointer;
  pointer-events: none;
  color: #9f9f9f;
}

.tippy-box[data-animation=fade][data-state=hidden] {
  opacity: 0;
}

.tippy-iOS {
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent;
}

[data-tippy-root] {
  max-width: calc(100vw - 10px);
}

.tippy-box {
  position: relative;
  transition-property: transform, visibility, opacity;
  color: #fff;
  border-radius: 4px;
  outline: 0;
  background-color: #333;
  font-size: 14px;
  line-height: 1.4;
}

.tippy-box[data-placement^=top] > .tippy-arrow {
  bottom: 0;
}

.tippy-box[data-placement^=top] > .tippy-arrow:before {
  bottom: -7px;
  transform-origin: center top;
  border-width: 8px 8px 0;
  border-top-color: #333;
}

.tippy-box[data-placement^=bottom] > .tippy-arrow {
  top: 0;
}

.tippy-box[data-placement^=bottom] > .tippy-arrow:before {
  top: -7px;
  transform-origin: center bottom;
  border-width: 0 8px 8px;
  border-bottom-color: #333;
}

.tippy-box[data-placement^=left] > .tippy-arrow {
  right: 0;
}

.tippy-box[data-placement^=left] > .tippy-arrow:before {
  right: -7px;
  transform-origin: center left;
  border-width: 8px 0 8px 8px;
  border-left-color: #333;
}

.tippy-box[data-placement^=right] > .tippy-arrow {
  left: 0;
}

.tippy-box[data-placement^=right] > .tippy-arrow:before {
  left: -7px;
  transform-origin: center right;
  border-width: 8px 8px 8px 0;
  border-right-color: #333;
}

.tippy-box[data-inertia][data-state=visible] {
  transition-timing-function: cubic-bezier(0.54, 1.5, 0.38, 1.11);
}

.tippy-arrow {
  width: 16px;
  height: 16px;
}

.tippy-arrow:before {
  position: absolute;
  content: "";
  border-style: solid;
  border-color: transparent;
}

.tippy-content {
  position: relative;
  z-index: 1;
  padding: 5px 9px;
}

.tippy-box[data-theme~=material] {
  background-color: #505355;
  font-weight: 600;
}

.tippy-box[data-theme~=material][data-placement^=top] > .tippy-arrow:before {
  border-top-color: #505355;
}

.tippy-box[data-theme~=material][data-placement^=bottom] > .tippy-arrow:before {
  border-bottom-color: #505355;
}

.tippy-box[data-theme~=material][data-placement^=left] > .tippy-arrow:before {
  border-left-color: #505355;
}

.tippy-box[data-theme~=material][data-placement^=right] > .tippy-arrow:before {
  border-right-color: #505355;
}

.tippy-box[data-theme~=material] > .tippy-backdrop {
  background-color: #505355;
}

.tippy-box[data-theme~=material] > .tippy-svg-arrow {
  fill: #505355;
}

.tippy-box[data-placement^=top] > .tippy-svg-arrow {
  bottom: 0;
}

.tippy-box[data-placement^=top] > .tippy-svg-arrow:after,
.tippy-box[data-placement^=top] > .tippy-svg-arrow > svg {
  top: 16px;
  transform: rotate(180deg);
}

.tippy-box[data-placement^=bottom] > .tippy-svg-arrow {
  top: 0;
}

.tippy-box[data-placement^=bottom] > .tippy-svg-arrow > svg {
  bottom: 16px;
}

.tippy-box[data-placement^=left] > .tippy-svg-arrow {
  right: 0;
}

.tippy-box[data-placement^=left] > .tippy-svg-arrow:after,
.tippy-box[data-placement^=left] > .tippy-svg-arrow > svg {
  top: calc(50% - 3px);
  left: 11px;
  transform: rotate(90deg);
}

.tippy-box[data-placement^=right] > .tippy-svg-arrow {
  left: 0;
}

.tippy-box[data-placement^=right] > .tippy-svg-arrow:after,
.tippy-box[data-placement^=right] > .tippy-svg-arrow > svg {
  top: calc(50% - 3px);
  right: 11px;
  transform: rotate(-90deg);
}

.tippy-box[data-interactive] > .tippy-svg-arrow path {
  pointer-events: auto;
}

.tippy-svg-arrow {
  width: 16px;
  height: 16px;
  pointer-events: none;
  fill: #333;
}

.tippy-svg-arrow,
.tippy-svg-arrow > svg {
  position: absolute;
}

/**
 * Mobile slide menu classes
 */
.slide-menu {
  position: fixed;
  z-index: 1000;
  top: 89px;
  right: 0;
  display: none;
  overflow: hidden;
  overflow-y: auto;
  width: 340px;
  max-width: 100%;
  height: calc(100vh - 89px);
  transition: transform 300ms ease-in-out;
  transform: translateX(100%);
  background: rgba(255, 255, 255, 0.975);
}
@media (max-width: 1130px) {
  .slide-menu {
    top: 54px;
    height: calc(100vh - 54px);
  }
}
.slide-menu .inner {
  position: inherit;
}
.slide-menu .slide-menu__slider {
  width: 100%;
  transition: transform 300ms ease-in-out;
}
.slide-menu .slide-menu__decorator {
  float: right;
}
.slide-menu ul {
  position: relative;
  width: 100%;
  margin: 0;
  padding-left: 0;
  list-style: none;
}
.slide-menu ul ul {
  position: absolute;
  top: 0;
  left: 100%;
  display: none;
}
.slide-menu ul li {
  display: block;
  clear: both;
}
.slide-menu ul a {
  display: block;
}
.slide-menu a {
  cursor: pointer;
}
.slide-menu .slide-menu__backlink {
  text-align: center;
  text-transform: uppercase;
  background: #ebebeb;
}
.slide-menu .slide-menu__backlink .icon, .slide-menu .slide-menu__backlink .paragraph-accordion > summary,
.slide-menu .slide-menu__backlink .product-specifications > summary,
.slide-menu .slide-menu__backlink .product-resources > summary, .slide-menu .slide-menu__backlink .compro-slick--with-thumb-nav .media, .compro-slick--with-thumb-nav .slide-menu .slide-menu__backlink .media {
  float: left;
  padding-right: 8px;
}
.slide-menu .menu .menu-item {
  display: block;
  width: 100%;
  text-align: left;
  font-weight: 600;
}
.slide-menu .menu .menu-item a {
  display: block;
  padding: 16px 28px;
}
.slide-menu .menu .menu-item a:hover {
  background: #f3f3f3;
}
.slide-menu .inner {
  padding: 0;
}
.slide-menu .block-views-exposed-filter-blocksearch-page-1 {
  padding: 0 24px;
}
.slide-menu .block-views-exposed-filter-blocksearch-page-1 .form-item {
  display: table-cell;
}
.slide-menu .block-views-exposed-filter-blocksearch-page-1 .form-actions {
  display: table-cell;
}
.slide-menu .block-views-exposed-filter-blocksearch-page-1 .form--inline {
  padding: 8px 0;
}
.slide-menu .block-views-exposed-filter-blocksearch-page-1 #edit-submit-search {
  position: relative;
  bottom: -2px;
  margin: 0 0 0 0;
  padding: 10px 9px 9px 9px;
  border-radius: 0 6px 6px 0;
}
.slide-menu .block-views-exposed-filter-blocksearch-page-1 input.form-autocomplete {
  border-radius: 6px 0 0 6px;
}
.slide-menu .menu--utility ul {
  text-align: center;
}
.slide-menu .menu--utility .menu-item {
  display: inline-block;
  width: auto;
}
.slide-menu .menu--utility .menu-item a {
  display: inline-block;
  float: left;
  padding: 16px 8px;
}
.slide-menu .menu--utility a {
  position: relative;
  overflow: hidden;
  text-indent: -9999px;
}
.slide-menu .menu--utility a:before {
  float: left;
  width: 20px;
  height: 20px;
  text-indent: 0;
}
.slide-menu .humanetics-group:before {
  width: 120px !important;
  content: url(../img/humanetics-group-logo.svg);
}
.slide-menu .humanetics:before,
.slide-menu .safety:before,
.slide-menu .digital:before,
.slide-menu .sensors:before {
  content: url(../img/humanetics-logo-icon.svg);
}
.slide-menu .fibercore:before {
  content: url(../img/fibercore-logo-icon.svg);
}
.slide-menu .hitec:before {
  content: url(../img/hitec-logo-icon.svg);
}
.slide-menu .optek:before {
  content: url(../img/optek-logo-icon.svg);
}
.slide-menu .human-solutions:before {
  content: url(../img/humansolutions-logo-icon.svg);
}
.slide-menu .menu--account {
  background: #f3f3f3;
}
.slide-menu .menu--account ul {
  text-align: center;
}
.slide-menu .menu--account .menu-item {
  display: inline-block;
  width: auto;
}
.slide-menu .menu--account .menu-item a {
  padding: 16px;
}

.user-logged-in .slide-menu a.register {
  display: none;
}

.overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0.5);
}
.overlay.is-active {
  display: block;
}

@font-face {
  font-family: "Icons";
  src: url("../fonts/icons/Icons.eot");
  src: url("../fonts/icons/Icons.eot?#iefix") format("eot"), url("../fonts/icons/Icons.woff2") format("woff2"), url("../fonts/icons/Icons.woff") format("woff"), url("../fonts/icons/Icons.ttf") format("truetype"), url("../fonts/icons/Icons.svg#Icons") format("svg");
}
.icon:before, .paragraph-accordion[open] > summary:before,
.product-specifications[open] > summary:before,
.product-resources[open] > summary:before, .paragraph-accordion > summary:before,
.product-specifications > summary:before,
.product-resources > summary:before, .compro-slick--with-thumb-nav .media:before {
  font-family: "Icons";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  /* speak: none; only necessary if not using the private unicode range (firstGlyph option) */
  text-decoration: none;
  text-transform: none;
}

.icon-chevron-left-solid:before {
  content: "\e001";
}

.icon-chevron-right-solid:before {
  content: "\e002";
}

.icon-cog-solid:before {
  content: "\e003";
}

.icon-envelope-solid:before {
  content: "\e004";
}

.icon-expand:before, .compro-slick--with-thumb-nav .media:before {
  content: "\e005";
}

.icon-facebook:before {
  content: "\e006";
}

.icon-fax-solid:before {
  content: "\e007";
}

.icon-linkedin:before {
  content: "\e008";
}

.icon-minus-solid:before, .paragraph-accordion[open] > summary:before,
.product-specifications[open] > summary:before,
.product-resources[open] > summary:before {
  content: "\e009";
}

.icon-mobile-alt-solid:before {
  content: "\e00a";
}

.icon-phone-alt-solid:before {
  content: "\e00b";
}

.icon-plus-solid:before, .paragraph-accordion > summary:before,
.product-specifications > summary:before,
.product-resources > summary:before {
  content: "\e00c";
}

.icon-search:before {
  content: "\e00d";
}

.icon-twitter:before {
  content: "\e00e";
}

.icon-youtube:before {
  content: "\e00f";
}

/**
 * @file
 * Main layout for the theme.
 */
.region-splash {
  background: #f3f3f3;
}
.region-splash .page-title {
  overflow: hidden;
  width: 100%;
  max-width: 1260px;
  margin: 0 auto;
  padding: 20px;
}
.region-splash .block-system-breadcrumb-block:first-child {
  padding-top: 30px;
}

.breadcrumb {
  max-width: 1260px;
  margin: 0 auto;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: #333;
  font-size: 12px;
}
@media (max-width: 768px) {
  .breadcrumb {
    display: none;
  }
}
.breadcrumb a {
  text-decoration: none;
  color: #333;
}
.breadcrumb ol {
  margin: 0;
  padding: 10px 20px 10px;
}
.breadcrumb li {
  display: inline-block;
  list-style: none;
}
.breadcrumb li:after {
  display: inline-block;
  margin: 0 10px 0 15px;
  content: "";
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 7px solid #9f9f9f;
}
.breadcrumb li:last-child {
  font-weight: 700;
}
.breadcrumb li:last-child:after {
  display: none;
}

@media (max-width: 768px) {
  #content {
    flex-direction: column;
    flex-basis: 0;
  }
}

.inner {
  width: 100%;
  max-width: 1260px;
  overflow-x: hidden;
  margin: 0 auto;
  padding: 20px;
}
@media (max-width: 375px) {
  .inner {
    padding: 10px;
  }
}
@media (max-width: 768px) {
  .inner {
    position: relative;
    display: block;
  }
}

.inner .paragraph-stripe .inner {
  padding: 0;
}

/**
 * Make the content area tall enough by default that desktops never see the
 * footer super high on the page.
 */
.content-wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  padding-top: 75px;
  transition: transform 300ms ease-in-out;
  transform: translate3d(0, 0, 0);
}
@media (max-width: 1130px) {
  .content-wrap {
    padding-top: 34px;
  }
}
@media (max-width: 768px) {
  .content-wrap {
    padding-top: 44px;
  }
}
.content-wrap.has-menu {
  transform: translate3d(-340px, 0, 0);
}

.content-wrap-inner {
  flex: 1 0 auto;
}

/**
 * Since they're only used for spacing at desktop width, hide empty columns on
 * tablet/mobile.
 */
@media (max-width: 375px) {
  .column--empty {
    display: none;
  }
}
/**
 * Overwrites file icon images
 */
.file--application-pdf {
  display: block;
  padding-left: 32px;
  word-wrap: break-word;
  background-image: url("../img/manual-icon.png");
}
.file--general {
  display: block;
  height: 32px;
  padding-left: 40px;
  background-image: url("../img/software-icon.png");
  line-height: 32px;
}

/**
 * Ensure columns are not allowed to become too narrow, starting at the wrap
 * breakpoint.
 */
@media all and (max-width: 1037px) {
  .paragraph-column {
    min-width: 270px;
  }
}
@media all and (max-width: 768px) {
  .paragraph-column {
    padding-top: 20px;
  }
  .paragraph-column:last-child {
    padding-bottom: 20px;
  }
}
/**
 * By default, stripes should have generous padding.
 *
 * Place the overriding class after it in order for cascade purposes.
 */
.paragraph-stripe {
  position: relative;
  display: block;
}
@media (max-width: 768px) {
  .paragraph-stripe {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
@media (max-width: 768px) {
  .paragraph-stripe.has-field-image-background:before {
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    background-color: rgba(243, 243, 243, 0.5);
  }
}

.child-inner-max-width--inherit > .inner {
  max-width: inherit;
  margin: 0;
}

.paragraph-stripe.padding--0 {
  padding: 0;
}

.paragraph-stripe.padding--0 .inner {
  padding-top: 0;
  padding-bottom: 0;
}

.paragraph-stripe .inner {
  position: relative;
}
.paragraph-stripe > .media--view-mode-stripe-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
  margin: 0;
}
.paragraph-stripe > .media--view-mode-stripe-bg video {
  position: absolute;
  z-index: 0;
  -o-object-fit: cover;
     object-fit: cover;
  right: 0;
  top: 0;
  min-width: 100%;
  min-height: 100%;
  margin: 0;
}

/**
 * Styles specific to the lack of field_hero (body stripes) on a page.
 */
.page-lacks--field-sections .view-mode--full > .node__content {
  font-size: 1.25em;
}

/**
 * Content-top override because the tabs are so close to the main menu dropdown.
 */
.region--content-top {
  position: relative;
  z-index: 3;
}

/**
 * Content region.
 */
.page-lacks--field-sections .region--content > .inner {
  /* @see .page-lacks--field-sections */
  max-width: 960px;
  max-width: 75ch;
  padding: 40px 20px 80px;
}

/**
 * Layout classes for hiding (see below for showing) at various viewports.
 */
@media all and (max-width: 768px) {
  .hide--narrow {
    display: none;
  }
}
@media all and (max-width: 1037px) {
  .hide--medium {
    display: none;
  }
}
@media all and (min-width: 1037px) {
  .hide--wide {
    display: none;
  }
}
/**
 * Author bios.
 */
.submitted a {
  font-weight: 600;
  text-decoration: none;
}

.term--view-mode-bio a:has(h3) {
  text-decoration: none;
}
.term--view-mode-bio .display--flex {
  border-top: 1px solid #ccc;
  padding-top: 2em;
}
.term--view-mode-bio img {
  padding: 0 1em 1em 0;
}

#block-heroorpagetitle .display--flex {
  border: none;
}

.page-node-type-page .term--view-mode-bio .flex--6::before {
  color: #999;
  content: "About Author";
  font-size: 0.875em;
  text-transform: uppercase;
}

/**
 * Layout classes for showing (see above for hiding) at various viewports.
 */
@media all and (max-width: 768px) {
  .show--narrow {
    display: inherit;
  }
}
@media all and (max-width: 1037px) {
  .show--medium {
    display: inherit;
  }
}
@media all and (min-width: 1037px) {
  .show--wide {
    display: inherit;
  }
}
/**
 * Page author date
 */
.submitted {
  padding: 20px 20px 0;
}
.submitted + .paragraph-stripe {
  padding-top: 0;
}

/**
 * product fields
 */
#views-exposed-form-file-listing-files-filter-block {
  margin-bottom: 1em;
}

.media--type-document .field__label {
  padding-right: 4px;
  font-weight: 700;
}
.media--type-document .file--application-pdf {
  margin-bottom: 1em;
}

/**
 * Responsive video.
 */
video {
  /* override other styles to make responsive */
  width: 100% !important;
  height: auto !important;
}

.media--type-video-embed {
  position: relative;
  height: 0;
  padding-bottom: 56.25%; /* 16:9 */
}

.media--type-video-embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/**
 * Width - Subtract the outer padding from max-width
 */
.width--90 {
  max-width: calc(1260px - 40px - 10%);
  margin: 0 auto;
}

.width--80 {
  max-width: calc(1260px - 40px - 20%);
  margin: 0 auto;
}

.width--70 {
  max-width: calc(1260px - 40px - 30%);
  margin: 0 auto;
}

.width--60 {
  max-width: calc(1260px - 40px - 40%);
  margin: 0 auto;
}

.width--50 {
  max-width: calc(1260px - 40px - 50%);
  margin: 0 auto;
}

.width--40 {
  max-width: calc(1260px - 40px - 60%);
  margin: 0 auto;
}

.width--30 {
  max-width: calc(1260px - 40px - 70%);
  margin: 0 auto;
}

.width--20 {
  max-width: calc(1260px - 40px - 80%);
  margin: 0 auto;
}

.width--10 {
  max-width: calc(1260px - 40px - 90%);
  margin: 0 auto;
}

fieldset.captcha {
  border: 0;
}
fieldset.captcha legend {
  display: none;
}

/**
 * Header wrapper. Everything in the header that's not the splash.
 */
header > .inner {
  max-width: 1440px;
  padding: 0 20px;
  min-height: 50px;
}

/**
 * HeadRoom.js sticky header
 */
.headroom {
  position: fixed;
  z-index: 1;
  right: 0;
  left: 0;
  overflow: visible;
  transition: transform 0.3s ease-in;
  background: #fff;
  box-shadow: 0 6px 9px -1px rgba(0, 0, 0, 0.1);
  will-change: transform;
}
.headroom .inner {
  margin: 0 auto;
}

.headroom--pinned {
  transform: translateY(0%);
}

.headroom--unpinned {
  transform: translateY(-100%);
}

@media (min-width: 1130px) {
  .logo {
    display: none;
  }
}
/**
 * Header logo block.
 */
#block-compro-theme-branding {
  display: block;
  float: left;
  width: 230px;
  padding-top: 8px;
}
@media (max-width: 768px) {
  #block-compro-theme-branding {
    max-width: 100%;
  }
}

@media (max-width: 768px) {
  .region-header {
    display: inline-block;
    overflow: auto;
    max-width: 70%;
  }
}

/**
* @file
* Footer styles for the theme.
*/
footer {
  flex-shrink: 0;
  color: #fff;
  background: #000 url(../img/footer-bg.jpg) no-repeat center center;
  background-size: cover;
}
@media (max-width: 768px) {
  footer .flex-basis--3 > div {
    flex-basis: calc(50% - 30px);
    max-width: calc(50% - 30px);
  }
}
@media (max-width: 500px) {
  footer .flex-basis--3 > div {
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media (max-width: 500px) {
  footer .region-footer-col-1 {
    text-align: center;
  }
}
footer .region-footer-col-1 #block-invertedlogo {
  padding-bottom: 20px;
}
@media (max-width: 500px) {
  footer .region-footer-col-1 #block-invertedlogo {
    padding: 0;
    text-align: center;
  }
  footer .region-footer-col-1 #block-invertedlogo img {
    margin: 0 auto;
  }
}
footer .region-footer-col-1 div {
  padding: 4px 0;
}
footer .region-footer-col-1 #block-social a {
  color: #fff;
  font-size: 0;
}
footer .region-footer-col-1 #block-social a:hover {
  color: #4C47C4;
}
footer .region-footer-col-1 #block-social a:before {
  display: inline-block;
  margin-right: 10px;
  font-size: 30px;
}
@media (max-width: 500px) {
  footer .region-footer-col-1 #block-social {
    padding: 0;
  }
}
@media (max-width: 768px) {
  footer .region-footer-col-2 {
    display: none;
  }
}
footer .region-footer-col-2 .inner {
  padding: 0;
}
footer .region-footer-col-2 .menu-1-wrap {
  padding-left: 20px;
}
footer .region-footer-col-2 ul li {
  display: block;
}
footer .region-footer-col-2 ul a {
  padding: 8px 12px;
  background-color: rgba(0, 0, 0, 0.1);
  text-transform: uppercase;
  color: #fff;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.87);
}
footer .region-footer-col-2 ul a:hover {
  color: #6F7BDD;
}
footer .region-footer-col-2 ul .menu-level-1 a {
  text-transform: capitalize;
}
@media (max-width: 500px) {
  footer .region-footer-col-3 {
    padding: 1em;
  }
}
footer .region-footer-col-3 label {
  font-size: 0.875em;
}
footer .region-footer-col-3 ul {
  margin: 2px;
  padding: 0;
}
footer .region-footer-col-3 li {
  list-style-type: none;
}
footer .region-footer-col-3 a {
  text-decoration: none;
}
footer .region-footer-col-3 input[type=checkbox] {
  margin-top: 4px;
}
footer .region-footer-col-3 input[type=email],
footer .region-footer-col-3 input[type=text] {
  width: 100%;
}
footer .region-footer-col-3 .hs_recaptcha {
  margin-bottom: 1em;
}
footer .region-footer-col-3 .hs-error-msg {
  color: #dd7a7e;
}
footer .region-footer-col-3 .submitted-message {
  margin-top: 1em;
}
footer #block-footerutility {
  text-align: center;
  background: #000;
}
footer #block-footerutility li {
  padding: 8px;
  color: #9f9f9f;
  font-size: 0.9em;
}
footer #block-footerutility li a {
  padding: 0;
  color: #9f9f9f;
}
footer #block-footerutility li a:hover {
  color: #fff;
}

.view-content-listing .view-mode--teaser,
.view-mode--search-result {
  margin-bottom: 2em;
  padding-bottom: 1.5em;
  border-bottom: 1px solid #d6d6d6;
}
.view-content-listing .view-mode--teaser h2,
.view-mode--search-result h2 {
  margin-bottom: 0.75em;
  text-align: left;
  font-size: 1.5em;
}
.view-content-listing .view-mode--teaser .field--type-created,
.view-mode--search-result .field--type-created {
  display: block;
  margin-top: -0.75em;
  margin-bottom: 0.75em;
  color: #9f9f9f;
}
.view-content-listing .view-mode--teaser .node__links,
.view-mode--search-result .node__links {
  margin-top: 0.75em;
}
.view-content-listing .view-mode--teaser .node__links a,
.view-mode--search-result .node__links a {
  text-decoration: none;
  color: #4C47C4;
}
.view-content-listing .view-mode--teaser .node__links a:hover,
.view-mode--search-result .node__links a:hover {
  color: #726ed0;
}

.teaser-listing {
  width: 100%;
}
.teaser-listing .submitted {
  max-width: 100%;
  margin-bottom: 1em;
  padding: 0;
}

.bef-exposed-form .form-item {
  margin-right: 16px;
}
.bef-exposed-form .button {
  margin-top: 18px;
  margin-left: 30px;
}

/**
 * Main menu in the header.
 */
header nav.block-menu {
  float: right;
  text-transform: uppercase;
  font-weight: 700;
}
@media (max-width: 1195px) {
  header nav.block-menu {
    display: none;
  }
}
header nav.block-menu a {
  width: 100%;
  margin-right: 20px;
  color: #333;
  letter-spacing: 1px;
}
header nav.block-menu a:hover {
  color: #141C52;
  font-weight: 700;
}
header nav.block-menu.menu--main .menu-div-level-0 > li:first-child:hover > div {
  left: 0;
  transition-delay: 0s, 0s, 0s;
  transition-duration: 150ms, 0s, 150ms;
  transition-property: opacity, left, margin;
  opacity: 1;
}
header nav.block-menu.menu--main .menu-div-level-0 > li:first-child > div {
  position: absolute;
  left: -9999rem;
  width: 100%;
  transition-delay: 0s, 150ms, 0s;
  transition-duration: 150ms, 0s, 150ms;
  transition-property: opacity, left, margin;
  opacity: 0;
  background: #fff;
}
header nav.block-menu.menu--main .menu-div-level-0 > li:first-child .menu-level-1 {
  font-size: 1em;
  display: flex;
}
header nav.block-menu.menu--main .menu-div-level-0 > li:first-child .menu-level-1 li {
  flex-basis: 0;
  flex-grow: 1;
}
header nav.block-menu.menu--main .menu-div-level-0 > li:not(:first-child):hover > div, header nav.block-menu:not(.menu--main) .menu-div-level-0 > li:hover > div {
  position: absolute;
  display: block;
  transition-delay: 0s, 0s, 0s;
  transition-duration: 150ms, 0s, 150ms;
  transition-property: opacity, left, margin;
  opacity: 1;
}
header nav.block-menu.menu--main .menu-div-level-0 > li:not(:first-child) > div, header nav.block-menu:not(.menu--main) .menu-div-level-0 > li > div {
  display: none;
  transition-delay: 0s, 150ms, 0s;
  transition-duration: 150ms, 0s, 150ms;
  transition-property: opacity, left, margin;
  opacity: 0;
  background: #fff;
}
header nav.block-menu.menu--main .menu-div-level-0 > li:not(:first-child) .menu-level-1 li, header nav.block-menu:not(.menu--main) .menu-div-level-0 > li .menu-level-1 li {
  display: block;
}
header nav.block-menu .menu-div-level-0 > li:last-child > div {
  margin-left: -164px;
}
header nav.block-menu .menu-1-wrap {
  border-top: 1px solid #d6d6d6;
  box-shadow: 0 6px 9px -1px rgba(0, 0, 0, 0.1);
}
header nav.block-menu .menu-div-level-1 {
  padding-bottom: 16px;
}
header nav.block-menu .menu-div-level-1 li a {
  padding: 16px 16px 8px;
}
header nav.block-menu .menu-div-level-2 {
  font-weight: 700;
}
header nav.block-menu .menu-div-level-2 li {
  display: block;
}
header nav.block-menu .menu-div-level-2 li a {
  padding: 5px 16px;
  text-transform: none;
}
header nav.block-menu .menu-level-3 {
  font-weight: 400;
  margin-left: 0.25em;
}

/**
 * Humamanetics group logo links.
 * nid 1: Safety
 * nid 222: Digital
 * nid 229: Sensors
 */
.node-id-1 #block-utility .menu li:nth-child(1),
.node-id-222 #block-utility .menu li:nth-child(1),
.node-id-229 #block-utility .menu li:nth-child(1) {
  background: none;
}
.node-id-1 #block-utility .menu li:nth-child(1) a,
.node-id-222 #block-utility .menu li:nth-child(1) a,
.node-id-229 #block-utility .menu li:nth-child(1) a {
  color: #141C52;
  background: url(../img/humanetics-logo-white.svg) no-repeat center;
}

.node-id-1 #block-utility .menu li:nth-child(2) {
  background: #fff;
}
.node-id-1 #block-utility .menu li:nth-child(2) a {
  color: #141C52;
}

.node-id-222 #block-utility .menu li:nth-child(3) {
  background: #fff;
}
.node-id-222 #block-utility .menu li:nth-child(3) a {
  color: #141C52;
}

.node-id-229 #block-utility .menu li:nth-child(4) {
  background: #fff;
}
.node-id-229 #block-utility .menu li:nth-child(4) a {
  color: #141C52;
}

#block-utility {
  float: left;
}
#block-utility .menu li a {
  padding: 10px 20px;
  color: #fff;
  font-size: 1.08em;
  text-transform: uppercase;
}
#block-utility .menu li:nth-child(1) {
  background: #fff;
}
#block-utility .menu li:nth-child(1) a {
  color: #141C52;
  background: url(../img/humanetics-logo.svg) no-repeat center;
}
#block-utility .humanetics {
  margin: 0 20px;
  width: 180px;
  text-indent: -10000px;
}

/**
 * Header utility menu.
 */
.region-utility {
  overflow: hidden;
  background: linear-gradient(to right, #423784, #222);
}
@media (max-width: 1130px) {
  .region-utility {
    display: none;
  }
}
.region-utility .views-exposed-form {
  float: right;
  margin-top: 8px;
}
.region-utility label {
  position: absolute !important;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  word-wrap: normal;
}
.region-utility .form-item {
  display: inline-block;
  height: 27px;
  margin: 0;
  padding: 0;
}
.region-utility .form--inline {
  border: 1px solid #fff;
  border-radius: 27px;
  display: flex;
}
.region-utility .form-autocomplete[type=text] {
  width: 0;
  padding: 0;
  transition: width 0.25s ease;
  color: #fff;
  border: none;
  outline: none;
  border-top-left-radius: 60px;
  border-bottom-left-radius: 60px;
  background: transparent;
}
.region-utility .form-autocomplete[type=text]::-moz-placeholder {
  color: #fff;
}
.region-utility .form-autocomplete[type=text]::placeholder {
  color: #fff;
}
.region-utility .open .form-autocomplete[type=text] {
  width: 200px;
  height: 27px;
  margin: 0;
  padding: 0 10px;
}
.region-utility .form-actions {
  display: inline-block;
  float: right;
  margin: 0;
  padding: 0;
}
.region-utility .form-submit[type=submit] {
  height: 27px;
  margin: 0;
  padding: 0 7px;
  transition: all 0.25s;
  color: #fff;
  border: 0;
  background: transparent;
  box-shadow: none;
  font-family: "Icons";
  font-size: 0.9em;
}
.region-utility .form-submit[type=submit]:hover {
  color: #6F7BDD;
}

.js input.form-autocomplete.ui-autocomplete-loading {
  background-image: url(../img/ajax-loader.gif);
  background-repeat: no-repeat;
  background-position: right;
  background-size: 16px 16px;
}

.user-logged-in #block-useraccountmenu ul.menu li:nth-child(2) a {
  margin-left: 10px;
}
.user-logged-in .register {
  display: none;
}

#block-useraccountmenu {
  float: right;
}
#block-useraccountmenu ul.menu li:last-child a {
  padding-right: 20px;
}
#block-useraccountmenu ul.menu li a {
  padding: 12px 6px 12px 0;
  text-transform: capitalize;
  color: #fff;
  font-size: 0.9em;
}
#block-useraccountmenu ul.menu li a.register {
  margin-left: 10px;
}
#block-useraccountmenu ul.menu li a:before {
  margin-right: 8px;
  content: "|";
}

.child-links--as-buttons a,
.button,
a.button,
button[type=submit],
.paragraph-media.has--hotspots .field-name--field-link a[type=submit],
input[type=button],
input[type=reset],
input[type=submit] {
  display: inline-block;
  padding: 10px 40px 10px;
  cursor: pointer;
  text-decoration: none;
  font-size: 1em;
  font-weight: 400;
  border-radius: 6px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  border: 0;
  transition: background-color 0.5s ease;
  color: #fff;
  background-color: #4C47C4;
}
.child-links--as-buttons a:hover,
.button:hover,
a.button:hover,
button[type=submit]:hover,
.paragraph-media.has--hotspots .field-name--field-link a[type=submit]:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
  background-color: #9794dd;
}

.webform-button--submit {
  color: #fff;
  background-color: #6F7BDD;
}
.webform-button--submit:hover {
  background-color: #726ed0;
}

.paragraph-cards h3 {
  margin: 0.5em 0;
  font-size: 1.0725em;
  font-weight: 700;
}
.paragraph-cards h3 a:hover {
  color: #4C47C4;
}
.paragraph-cards.layout--stats h3 {
  margin: 0;
  color: #141C52;
  font-size: 3.5em;
  font-weight: 400;
}
.paragraph-cards.layout--stats .has-sub-title h3 {
  font-size: 2.5em;
}
.paragraph-cards.layout--stats .has-sub-title h4 {
  color: #141C52;
  font-size: 1.5em;
  line-height: 0.75;
}
.paragraph-cards img {
  margin: 1em auto;
  padding: 0;
}
.paragraph-cards .field-type--link {
  padding: 0 0 1em;
}
.paragraph-cards .field-type--link a {
  text-decoration: none;
  font-weight: 700;
}
.paragraph-cards .icon:before, .paragraph-cards .paragraph-accordion > summary:before,
.paragraph-cards .product-specifications > summary:before,
.paragraph-cards .product-resources > summary:before, .paragraph-cards .compro-slick--with-thumb-nav .media:before, .compro-slick--with-thumb-nav .paragraph-cards .media:before {
  margin-right: 8px;
}

.paragraph-card-contact {
  margin-bottom: 30px;
}

.card-style--secondary img {
  border: 1px solid #d6d6d6;
  width: 100%;
  height: auto;
}
.card-style--secondary img:hover {
  border: 1px solid #141C52;
}

.card-style--tertiary .card-overlay {
  position: relative;
}
.card-style--tertiary .card-overlay h3 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
  font-weight: 400;
  margin: 0 30px 0 0;
  padding: 0.5em;
  width: 100%;
  font-size: 2.5em;
}
@media (max-width: 1037px) {
  .card-style--tertiary .card-overlay h3 {
    font-size: 1.5em;
  }
}

/*!
 * Hamburgers - With customizations
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  display: none;
  overflow: visible;
  margin: 0;
  cursor: pointer;
  transition-timing-function: linear;
  transition-duration: 0.15s;
  transition-property: opacity, filter;
  text-transform: none;
  color: inherit;
  border: 0;
  background-color: transparent;
  font: inherit;
  float: right;
  padding: 12px 6px;
  box-shadow: none;
}
@media (max-width: 1195px) {
  .hamburger {
    display: block;
    margin: 0;
  }
}

.hamburger:hover {
  opacity: 0.7;
  outline: none;
}

.hamburger-box {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 24px;
}

.hamburger-inner {
  top: 50%;
  display: block;
  margin-top: -2px;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  position: absolute;
  width: 40px;
  height: 4px;
  transition-timing-function: ease;
  transition-duration: 0.15s;
  transition-property: transform;
  border-radius: 4px;
  background-color: #4A4A4A;
}

.hamburger-inner::before,
.hamburger-inner::after {
  display: block;
  content: "";
}

.hamburger-inner::before {
  top: -10px;
}

.hamburger-inner::after {
  bottom: -10px;
}

/**
 * Spin
 */
.hamburger--spin .hamburger-inner {
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition-duration: 0.22s;
}

.hamburger--spin .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}

.hamburger--spin .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin.is-active .hamburger-inner {
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: rotate(225deg);
}

.hamburger--spin.is-active .hamburger-inner::before {
  top: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
  opacity: 0;
}

.hamburger--spin.is-active .hamburger-inner::after {
  bottom: 0;
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: rotate(-90deg);
}

/*
 * Spin Reverse
 */
.hamburger--spin-r .hamburger-inner {
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition-duration: 0.22s;
}

.hamburger--spin-r .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}

.hamburger--spin-r .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin-r.is-active .hamburger-inner {
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: rotate(-225deg);
}

.hamburger--spin-r.is-active .hamburger-inner::before {
  top: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
  opacity: 0;
}

.hamburger--spin-r.is-active .hamburger-inner::after {
  bottom: 0;
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: rotate(90deg);
}

/**
 * Set up some defaults
 */
.paragraph-hotspot {
  position: absolute;
}

.has--hotspots {
  position: relative;
}

.js .hotspot-content {
  display: none;
}

.hotspot-anchor {
  overflow: hidden;
  width: 2.5em;
  height: 2.5em;
  padding: 3px;
  cursor: pointer;
  text-decoration: none;
  border-radius: 100%;
  background: #fad782;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}
.hotspot-anchor:hover {
  transition: all 0.3s ease-in-out;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}
.hotspot-anchor:before {
  display: block;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  font-size: 1.5em;
}

.paragraph-media .field-name--field-title {
  margin-bottom: 0.5em;
}

.paragraph-media.has--hotspots .field-name--field-title {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 100px;
  width: 30%;
  transform: translateY(-50%);
  text-align: center;
  text-transform: uppercase;
}
.paragraph-media.has--hotspots .middle {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 45%;
  width: 20%;
  transform: translateY(-50%);
}
/**
 * Core messages.
 */
.messages {
  max-width: 1240px;
  margin: 16px auto;
  padding: 16px;
  font-style: italic;
}
.messages ul {
  margin: 0;
  padding-left: 32px;
}

.messages--error {
  color: #290a11;
  background: #f5d6dd;
}

.messages--status {
  color: #072c24;
  background: #d3f8f0;
}

.messages--warning {
  color: #301f03;
  background: #ff9e1b;
}

/**
 * Core tabs.
 */
#block-tabs,
#block-compro-theme-local-tasks {
  position: absolute;
  z-index: -1;
  top: 120px;
  right: 0;
  box-shadow: 4px 2px 5px 1px rgba(0, 0, 0, 0.2);
}
#block-tabs .tabs.primary,
#block-compro-theme-local-tasks .tabs.primary {
  display: block;
  clear: both;
  overflow: auto;
  margin: 0;
  padding: 0;
  padding: 4px;
  list-style: none;
  background: #4C47C4;
}
@media (max-width: 768px) {
  #block-tabs .tabs.primary,
  #block-compro-theme-local-tasks .tabs.primary {
    font-size: 0.8em;
  }
}
#block-tabs .tabs.primary li,
#block-compro-theme-local-tasks .tabs.primary li {
  display: block;
  float: left;
}
#block-tabs .tabs.primary li a,
#block-compro-theme-local-tasks .tabs.primary li a {
  float: left;
  width: 100%;
  padding: 5px 15px;
  text-decoration: none;
  color: #fff;
}
#block-tabs .tabs.primary li.is-active,
#block-compro-theme-local-tasks .tabs.primary li.is-active {
  background: #6F7BDD;
}
#block-tabs .tabs.primary li:hover:not(.is-active),
#block-compro-theme-local-tasks .tabs.primary li:hover:not(.is-active) {
  background: #141C52;
}

.path-user #block-compro-theme-local-tasks {
  position: inherit;
  max-width: 1260px;
  margin: 0 auto;
}

.horizontal-tabs {
  border: none;
}
.horizontal-tabs .horizontal-tab-button {
  border: none;
  background-color: inherit;
}
.horizontal-tabs .horizontal-tab-button a {
  letter-spacing: 3.64px;
  text-transform: uppercase;
  color: #333;
}
.horizontal-tabs .horizontal-tab-button.selected {
  background-color: #fff;
}
.horizontal-tabs .horizontal-tab-button.selected a {
  color: #141C52;
}
.horizontal-tabs .horizontal-tabs-list {
  display: block;
  overflow: hidden;
  max-width: 1260px;
  margin: -40px auto 0;
  padding: 0 20px;
  border: none;
  background-color: #f3f3f3;
}

.ajax-insert-content.open {
  position: absolute;
  background: white;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: scroll;
}

.view-id-dayforce_careers.view-display-id-search_block .view-content-wrap {
  min-height: 700px;
}
.view-id-dayforce_careers.view-display-id-search_block .view-content-wrap p.field-descr {
  margin: 5px 0 0px 0;
}
.view-id-dayforce_careers.view-display-id-search_block .view-content-wrap .descr {
  margin-top: 30px;
}
.view-id-dayforce_careers.view-display-id-search_block .views-exposed-form {
  background-color: #eeeeee;
  padding: 1px 20px 5px 20px;
}
.view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form--inline {
  display: flex;
  flex-direction: row;
}
@media all and (max-width: 767px) {
  .view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form--inline {
    flex-direction: column;
  }
}
.view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters {
  flex: auto;
  display: flex;
}
@media all and (max-width: 768px) {
  .view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters {
    display: contents;
  }
}
@media all and (min-width: 768px) {
  .view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters {
    max-width: 76%;
  }
}
@media all and (min-width: 940px) {
  .view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters {
    max-width: 84%;
  }
}
@media all and (min-width: 1200px) {
  .view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters {
    max-width: 88%;
  }
}
.view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters .form-item {
  margin: 15px 10px;
  float: none;
  display: inline-flex;
  flex-flow: wrap;
  flex: auto;
}
@media all and (min-width: 768px) {
  .view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters .form-item {
    max-width: 33%;
  }
}
.view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters .form-item input[type=text], .view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters .form-item input[type=email], .view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters .form-item input[type=password], .view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-input-filters .form-item select.form-select {
  height: 40px;
}
.view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .form-actions {
  min-width: 140px;
  text-align: right;
}
.view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .ajax-insert-content-reset {
  text-align: right;
}
.view-id-dayforce_careers.view-display-id-search_block .views-exposed-form .ajax-insert-content-reset a {
  text-decoration: none;
}
.view-id-dayforce_careers.view-display-id-search_block table.views-view-table {
  margin-top: 30px;
}
.view-id-dayforce_careers.view-display-id-search_block table.views-view-table th {
  word-break: auto-phrase;
}
.view-id-dayforce_careers.view-display-id-search_block table.views-view-table tbody > tr {
  border-bottom: 2px solid #4C47C4;
}
.view-id-dayforce_careers.view-display-id-search_block table.views-view-table tbody > tr td {
  padding: 20px 15px;
  word-break: auto-phrase;
}
.view-id-dayforce_careers.view-display-id-search_block .req-id {
  margin-left: 30px;
}

/**
 * Views-specific Styles
 */
/**
 * Accordions.
 *
 * The <details> element has inconsistent browser support and styling, and is
 * not readily animated, so this should only be our accordion solution for simple
 * use cases.
 */
.paragraph-accordion,
.product-specifications,
.product-resources {
  margin: 20px auto 0 auto;
  transition: all 0.2s ease-in;
  text-transform: uppercase;
  color: #333;
  border-bottom: 1px solid #333;
  font-size: 14px;
  font-weight: 600;
}
.paragraph-accordion:last-child,
.product-specifications:last-child,
.product-resources:last-child {
  border-bottom: none;
}
.paragraph-accordion > summary,
.product-specifications > summary,
.product-resources > summary {
  position: relative;
  padding: 0 20px 20px 0;
  cursor: pointer;
  transition: all 0.2s ease-in;
  font-size: 18px;
  font-weight: 700;
}
.paragraph-accordion > summary:before,
.product-specifications > summary:before,
.product-resources > summary:before {
  margin-right: 20px;
  color: #141C52;
}
.paragraph-accordion > summary:focus,
.product-specifications > summary:focus,
.product-resources > summary:focus {
  outline: none;
}
.paragraph-accordion > summary::marker,
.product-specifications > summary::marker,
.product-resources > summary::marker {
  display: none;
  font-size: 0;
}
.paragraph-accordion > summary::-webkit-details-marker,
.product-specifications > summary::-webkit-details-marker,
.product-resources > summary::-webkit-details-marker {
  display: none;
}
.paragraph-accordion > div,
.product-specifications > div,
.product-resources > div {
  padding: 0 20px 20px 30px;
  text-transform: none;
}

/**
 * Core pagers.
 */
.pager {
  margin: 40px auto;
  text-align: center;
  text-transform: uppercase;
  font-weight: 600;
}
.pager ul {
  margin: 0;
  padding: 0;
}
.pager li {
  display: inline-block;
  margin: 0;
  line-height: 1;
}
.pager a {
  padding: 5px 10px;
  text-decoration: none;
  color: #6F7BDD;
}
.pager .is-active a {
  color: #4C47C4;
}

/**
 * @file
 * Product styles for the theme.
 */
.product-description {
  max-width: 550px;
  padding: 0 20px;
}
@media (max-width: 768px) {
  .product-description {
    max-width: 100%;
    padding: 0;
  }
}
.product-description #model-options {
  margin-top: 1em;
}
.product-description #model-options .model-options-default {
  color: #9f9f9f;
}

.product-hero {
  padding-bottom: 80px;
}

.product .product-specifications > div {
  padding-bottom: 0;
}
@media (max-width: 768px) {
  .product .paragraph-stripe {
    padding: 0;
  }
}
.product .paragraph-stripe > .inner {
  padding: 0 0.87em;
}
.product .paragraph-stripe .width-wrap {
  padding: 0 20px 0 30px;
}
.product .paragraph-paragraph-library {
  margin-top: 20px;
}
.product .paragraph-stripe .width-wrap > div {
  margin-top: 20px;
}

.product-resources .details-wrapper {
  display: flex;
  flex-wrap: wrap;
}
.product-resources .details-wrapper > strong {
  flex-basis: 100%;
  padding: 20px 0;
  border-top: 1px solid #9f9f9f;
}
.product-resources .details-wrapper > strong:first-child {
  border-top: none;
}
.product-resources .details-wrapper a {
  display: -webkit-box;
  overflow: hidden;
  min-height: 2.1em;
  text-decoration: none;
  letter-spacing: 3.64px;
  text-transform: uppercase;
  color: #333;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.product-resources .details-wrapper .media {
  display: flex;
  flex-basis: calc(25% - 30px);
  margin-right: -30px;
  margin-right: 30px;
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .product-resources .details-wrapper .media {
    flex-basis: calc(50% - 30px);
    max-width: calc(50% - 30px);
  }
}
@media (max-width: 375px) {
  .product-resources .details-wrapper .media {
    flex-basis: calc(100% - 30px);
    max-width: calc(100% - 30px);
    margin-right: -30px;
  }
}
.product-resources .details-wrapper .media > strong {
  display: none;
}

.product-related {
  padding: 80px 0;
  color: #fff;
  background-image: linear-gradient(to right, #2c3f4b 0%, #341426 100%);
}
.product-related > h3 {
  margin-bottom: 20px;
  text-align: center;
  text-transform: uppercase;
}
.product-related .product--view-mode-card {
  max-width: 300px;
  margin: 0 auto;
}
@media (max-width: 1130px) {
  .product-related .product--view-mode-card {
    padding: 0 15px;
  }
}
.product-related .slick-list {
  max-width: 90%;
  margin: 0 auto;
  background-color: transparent;
}
@media (max-width: 1130px) {
  .product-related .slick-list {
    max-width: 100%;
  }
}

.product-services {
  padding-top: 70px;
  padding-bottom: 70px;
}
.product-services > h3 {
  margin-bottom: 30px;
  text-align: center;
  text-transform: uppercase;
}

@media (max-width: 420px) {
  .product .horizontal-tabs-list {
    display: none;
  }
}
@media (min-width: 421px) {
  .product #edit-group-product-resources-2 {
    display: none;
  }
}
@media (max-width: 420px) {
  .product #edit-group-product-resources {
    display: none !important;
  }
}
@media (max-width: 420px) {
  .product .product-specifications {
    display: block !important;
  }
}
/*# sourceMappingURL=../map/style.min.css.map */
