@font-face {
	font-family: "RockSolid Icons";
	src: url("../fonts/rocksolid-icons.eot");
	src: url("../fonts/rocksolid-icons.eot?#iefix") format('eot'), url("../fonts/rocksolid-icons.woff") format('woff'), url("../fonts/rocksolid-icons.ttf") format('truetype'), url("../fonts/rocksolid-icons.svg") format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

:root {
    --main-padding-x: 2.66667rem;
    --safe-area-left: 0px;
    --safe-area-right: 0px;
    --safe-area-top: 0px;
    --safe-area-bottom: 0px;
    --page-padding-left: calc(var(--safe-area-left) + var(--main-padding-x));
    --page-padding-right: calc(var(--safe-area-right) + var(--main-padding-x));
    --page-inner-width: calc(100% - var(--page-padding-left) - var(--page-padding-right));
}

@media screen and (max-width: 1280px) {
    :root {
        --main-padding-x: 3.125%;
    }
}

@media screen and (max-width: 900px) {
    :root {
        --main-padding-x: 4.16667%;
    }
}

@supports (padding: calc(constant(safe-area-inset-left, 0px) / 1.5)) {
    :root {
        /* Non-standard iOS 11.1 syntax */ --safe-area-left: calc(constant(safe-area-inset-left, 0px) / 1.5);
        --safe-area-right: calc(constant(safe-area-inset-right, 0px) / 1.5);
        --safe-area-top: constant(safe-area-inset-top, 0px);
        --safe-area-bottom: constant(safe-area-inset-bottom, 0px);
    }
}

@supports (padding: calc(max(0px, env(safe-area-inset-left, 0px) - 14px))) and (padding: calc(max(0px, 1px))) {
    :root {
        /* W3C standard and iOS 11.2 syntax */ --safe-area-left: calc(max(0px, env(safe-area-inset-left, 0px) - 14px));
        --safe-area-right: calc(max(0px, env(safe-area-inset-right, 0px) - 14px));
        --safe-area-top: env(safe-area-inset-top, 0px);
        --safe-area-bottom: env(safe-area-inset-bottom, 0px);
    }
}

html {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font: 15px/1.6 "Open Sans", sans-serif;
    color: #242424;
    -webkit-tap-highlight-color: #004d9e;
}

@media screen and (max-width: 599px) {
    html {
        font-size: 13px;
    }
}

body {
    background: #ffffff none 50% 0 no-repeat scroll;
    background-size: auto;
}

body[class^="icon-"]:before, body[class*=" icon-"]:before {
    /* Ignore icon classes on the body element */
    content: none;
}

body.background-variation-1 {
    background: url("../img/demo/background-boxed.jpg") 50% 0 no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

body.background-variation-2 {
    background-size: cover;
    background-attachment: fixed;
}

*, *:before, *:after {
    -webkit-box-sizing: inherit;
    -moz-box-sizing: inherit;
    box-sizing: inherit;
}

.rs-columns {
    clear: both;
    display: inline-block;
    vertical-align: top;
    width: 100%;
}

.rs-column {
    float: left;
    width: 100%;
    margin-top: 5%;
    margin-right: 5%;
}

.rs-column.-large-first {
    clear: left;
}

.rs-column.-large-last {
    margin-right: -5px;
}

.rs-column.-large-first-row {
    margin-top: 0;
}

.rs-column.-large-col-1-1 {
    width: 100%;
}

.rs-column.-large-col-2-1 {
    width: 47.5%;
}

.rs-column.-large-col-2-2 {
    width: 100%;
}

.rs-column.-large-col-3-1 {
    width: 30%;
}

.rs-column.-large-col-3-2 {
    width: 65%;
}

.rs-column.-large-col-3-3 {
    width: 100.0%;
}

.rs-column.-large-col-4-1 {
    width: 21.25%;
}

.rs-column.-large-col-4-2 {
    width: 47.5%;
}

.rs-column.-large-col-4-3 {
    width: 73.75%;
}

.rs-column.-large-col-4-4 {
    width: 100%;
}

.rs-column.-large-col-5-1 {
    width: 16%;
}

.rs-column.-large-col-5-2 {
    width: 37%;
}

.rs-column.-large-col-5-3 {
    width: 58.0%;
}

.rs-column.-large-col-5-4 {
    width: 79%;
}

.rs-column.-large-col-5-5 {
    width: 100%;
}

.rs-column.-large-col-6-1 {
    width: 12.5%;
}

.rs-column.-large-col-6-2 {
    width: 30%;
}

.rs-column.-large-col-6-3 {
    width: 47.5%;
}

.rs-column.-large-col-6-4 {
    width: 65%;
}

.rs-column.-large-col-6-5 {
    width: 82.5%;
}

.rs-column.-large-col-6-6 {
    width: 100%;
}

.rs-column.-large-col-7-1 {
    width: 10%;
}

.rs-column.-large-col-7-2 {
    width: 25%;
}

.rs-column.-large-col-7-3 {
    width: 40%;
}

.rs-column.-large-col-7-4 {
    width: 55.0%;
}

.rs-column.-large-col-7-5 {
    width: 70%;
}

.rs-column.-large-col-7-6 {
    width: 85%;
}

.rs-column.-large-col-7-7 {
    width: 100%;
}

/* Resetting box model for moo_mediabox and j_colorbox */
#mbCenter, #colorbox {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

::selection {
    background: #004d9e;
    color: #ffffff;
    text-shadow: none !important;
}

::-moz-selection {
    background: #004d9e;
    color: #ffffff;
    text-shadow: none !important;
}

button, input, select, textarea {
    font-family: inherit;
}

table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #dcdcdc;
    background: #ffffff;
}

table th, table td {
    border: solid #f2f2f2;
    border-width: 1px 0 0 1px;
}

table th:first-child, table td:first-child {
    border-left: 0;
}

table > thead > tr:first-child > th, table > thead > tr:first-child > td, table > tbody:first-child > tr:first-child > th, table > tbody:first-child > tr:first-child > td, table > tfoot:first-child + tbody > tr:first-child > th, table > tfoot:first-child + tbody > tr:first-child > td {
    /* First row of the table */
    border-top: 0;
}

table th {
    padding: 0.4em 0.66667em;
    font-weight: bold;
    text-align: left;
}

table td {
    padding: 0.4em 0.66667em;
}

table thead {
    background: rgba(0, 0, 0, 0.02);
}

table tfoot td {
    font-style: italic;
}

strong, b {
    font-weight: bold;
}

a {
    color: #004d9e;
    text-decoration: none;
}

a:hover, a:focus {
    text-decoration: underline;
}

a:hover, a:active {
    outline: 0;
}

a.external-link:after {
    font: 0.86667em/1 "RockSolid Icons";
    content: "\e151";
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: geometricPrecision;
    text-indent: 0;
    display: inline-block;
    position: relative;
    margin-left: 0.26667em;
}

.-highlight-color a {
    color: #000205;
}

/* Icon attribute */
*[data-icon]:before, *[class^="icon-"]:before, *[class*=" icon-"]:before {
    font: 100%/1 "RockSolid Icons";
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: geometricPrecision;
    text-indent: 0;
    display: inline-block;
    position: relative;
    margin-right: 0.26667em;
}

*[data-icon]:before {
    content: attr(data-icon);
}

*[data-icon].after:before {
    content: none;
}

*[data-icon].after:after {
    font: 100%/1 "RockSolid Icons";
    content: attr(data-icon);
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: geometricPrecision;
    text-indent: 0;
    display: inline-block;
    position: relative;
    margin-left: 0.26667em;
}

.clear {
    clear: both;
}

.invisible {
    position: absolute;
    height: 1px !important;
    width: 1px !important;
    clip: rect(0 0 0 0);
    margin: -1px;
    padding: 0 !important;
    overflow: hidden;
    border: 0;
}

.no-border {
    border: 0 !important;
}

.no-margin {
    margin: 0 !important;
}

.no-margin-top {
    margin-top: 0 !important;
}

.no-margin-bottom {
    margin-bottom: 0 !important;
}

.left {
    float: left;
}

.right {
    float: right;
}

.margin-top-none {
    margin-top: 0 !important;
}

@media screen and (max-width: 599px) {
    .margin-top-none {
        margin-top: 0 !important;
    }
}

.margin-right-none {
    margin-right: 0 !important;
}

@media screen and (max-width: 599px) {
    .margin-right-none {
        margin-right: 0 !important;
    }
}

.margin-bottom-none {
    margin-bottom: 0 !important;
}

@media screen and (max-width: 599px) {
    .margin-bottom-none {
        margin-bottom: 0 !important;
    }
}

.margin-left-none {
    margin-left: 0 !important;
}

@media screen and (max-width: 599px) {
    .margin-left-none {
        margin-left: 0 !important;
    }
}

.padding-top-none {
    padding-top: 0 !important;
}

@media screen and (max-width: 599px) {
    .padding-top-none {
        padding-top: 0 !important;
    }
}

.padding-right-none {
    padding-right: 0 !important;
}

@media screen and (max-width: 599px) {
    .padding-right-none {
        padding-right: 0 !important;
    }
}

.padding-bottom-none {
    padding-bottom: 0 !important;
}

@media screen and (max-width: 599px) {
    .padding-bottom-none {
        padding-bottom: 0 !important;
    }
}

.padding-left-none {
    padding-left: 0 !important;
}

@media screen and (max-width: 599px) {
    .padding-left-none {
        padding-left: 0 !important;
    }
}

.margin-top-xxs {
    margin-top: 10px !important;
}

@media screen and (max-width: 599px) {
    .margin-top-xxs {
        margin-top: 5px !important;
    }
}

.margin-right-xxs {
    margin-right: 10px !important;
}

@media screen and (max-width: 599px) {
    .margin-right-xxs {
        margin-right: 5px !important;
    }
}

.margin-bottom-xxs {
    margin-bottom: 10px !important;
}

@media screen and (max-width: 599px) {
    .margin-bottom-xxs {
        margin-bottom: 5px !important;
    }
}

.margin-left-xxs {
    margin-left: 10px !important;
}

@media screen and (max-width: 599px) {
    .margin-left-xxs {
        margin-left: 5px !important;
    }
}

.padding-top-xxs {
    padding-top: 10px !important;
}

@media screen and (max-width: 599px) {
    .padding-top-xxs {
        padding-top: 5px !important;
    }
}

.padding-right-xxs {
    padding-right: 10px !important;
}

@media screen and (max-width: 599px) {
    .padding-right-xxs {
        padding-right: 5px !important;
    }
}

.padding-bottom-xxs {
    padding-bottom: 10px !important;
}

@media screen and (max-width: 599px) {
    .padding-bottom-xxs {
        padding-bottom: 5px !important;
    }
}

.padding-left-xxs {
    padding-left: 10px !important;
}

@media screen and (max-width: 599px) {
    .padding-left-xxs {
        padding-left: 5px !important;
    }
}

.margin-top-xs {
    margin-top: 25px !important;
}

@media screen and (max-width: 599px) {
    .margin-top-xs {
        margin-top: 13px !important;
    }
}

.margin-right-xs {
    margin-right: 25px !important;
}

@media screen and (max-width: 599px) {
    .margin-right-xs {
        margin-right: 13px !important;
    }
}

.margin-bottom-xs {
    margin-bottom: 25px !important;
}

@media screen and (max-width: 599px) {
    .margin-bottom-xs {
        margin-bottom: 13px !important;
    }
}

.margin-left-xs {
    margin-left: 25px !important;
}

@media screen and (max-width: 599px) {
    .margin-left-xs {
        margin-left: 13px !important;
    }
}

.padding-top-xs {
    padding-top: 25px !important;
}

@media screen and (max-width: 599px) {
    .padding-top-xs {
        padding-top: 13px !important;
    }
}

.padding-right-xs {
    padding-right: 25px !important;
}

@media screen and (max-width: 599px) {
    .padding-right-xs {
        padding-right: 13px !important;
    }
}

.padding-bottom-xs {
    padding-bottom: 25px !important;
}

@media screen and (max-width: 599px) {
    .padding-bottom-xs {
        padding-bottom: 13px !important;
    }
}

.padding-left-xs {
    padding-left: 25px !important;
}

@media screen and (max-width: 599px) {
    .padding-left-xs {
        padding-left: 13px !important;
    }
}

.margin-top-s {
    margin-top: 50px !important;
}

@media screen and (max-width: 599px) {
    .margin-top-s {
        margin-top: 25px !important;
    }
}

.margin-right-s {
    margin-right: 50px !important;
}

@media screen and (max-width: 599px) {
    .margin-right-s {
        margin-right: 25px !important;
    }
}

.margin-bottom-s {
    margin-bottom: 50px !important;
}

@media screen and (max-width: 599px) {
    .margin-bottom-s {
        margin-bottom: 25px !important;
    }
}

.margin-left-s {
    margin-left: 50px !important;
}

@media screen and (max-width: 599px) {
    .margin-left-s {
        margin-left: 25px !important;
    }
}

.padding-top-s {
    padding-top: 50px !important;
}

@media screen and (max-width: 599px) {
    .padding-top-s {
        padding-top: 25px !important;
    }
}

.padding-right-s {
    padding-right: 50px !important;
}

@media screen and (max-width: 599px) {
    .padding-right-s {
        padding-right: 25px !important;
    }
}

.padding-bottom-s {
    padding-bottom: 50px !important;
}

@media screen and (max-width: 599px) {
    .padding-bottom-s {
        padding-bottom: 25px !important;
    }
}

.padding-left-s {
    padding-left: 50px !important;
}

@media screen and (max-width: 599px) {
    .padding-left-s {
        padding-left: 25px !important;
    }
}

.margin-top-m {
    margin-top: 75px !important;
}

@media screen and (max-width: 599px) {
    .margin-top-m {
        margin-top: 38px !important;
    }
}

.margin-right-m {
    margin-right: 75px !important;
}

@media screen and (max-width: 599px) {
    .margin-right-m {
        margin-right: 38px !important;
    }
}

.margin-bottom-m {
    margin-bottom: 75px !important;
}

@media screen and (max-width: 599px) {
    .margin-bottom-m {
        margin-bottom: 38px !important;
    }
}

.margin-left-m {
    margin-left: 75px !important;
}

@media screen and (max-width: 599px) {
    .margin-left-m {
        margin-left: 38px !important;
    }
}

.padding-top-m {
    padding-top: 75px !important;
}

@media screen and (max-width: 599px) {
    .padding-top-m {
        padding-top: 38px !important;
    }
}

.padding-right-m {
    padding-right: 75px !important;
}

@media screen and (max-width: 599px) {
    .padding-right-m {
        padding-right: 38px !important;
    }
}

.padding-bottom-m {
    padding-bottom: 75px !important;
}

@media screen and (max-width: 599px) {
    .padding-bottom-m {
        padding-bottom: 38px !important;
    }
}

.padding-left-m {
    padding-left: 75px !important;
}

@media screen and (max-width: 599px) {
    .padding-left-m {
        padding-left: 38px !important;
    }
}

.margin-top-l {
    margin-top: 100px !important;
}

@media screen and (max-width: 599px) {
    .margin-top-l {
        margin-top: 50px !important;
    }
}

.margin-right-l {
    margin-right: 100px !important;
}

@media screen and (max-width: 599px) {
    .margin-right-l {
        margin-right: 50px !important;
    }
}

.margin-bottom-l {
    margin-bottom: 100px !important;
}

@media screen and (max-width: 599px) {
    .margin-bottom-l {
        margin-bottom: 50px !important;
    }
}

.margin-left-l {
    margin-left: 100px !important;
}

@media screen and (max-width: 599px) {
    .margin-left-l {
        margin-left: 50px !important;
    }
}

.padding-top-l {
    padding-top: 100px !important;
}

@media screen and (max-width: 599px) {
    .padding-top-l {
        padding-top: 50px !important;
    }
}

.padding-right-l {
    padding-right: 100px !important;
}

@media screen and (max-width: 599px) {
    .padding-right-l {
        padding-right: 50px !important;
    }
}

.padding-bottom-l {
    padding-bottom: 100px !important;
}

@media screen and (max-width: 599px) {
    .padding-bottom-l {
        padding-bottom: 50px !important;
    }
}

.padding-left-l {
    padding-left: 100px !important;
}

@media screen and (max-width: 599px) {
    .padding-left-l {
        padding-left: 50px !important;
    }
}

.margin-top-xl {
    margin-top: 150px !important;
}

@media screen and (max-width: 599px) {
    .margin-top-xl {
        margin-top: 75px !important;
    }
}

.margin-right-xl {
    margin-right: 150px !important;
}

@media screen and (max-width: 599px) {
    .margin-right-xl {
        margin-right: 75px !important;
    }
}

.margin-bottom-xl {
    margin-bottom: 150px !important;
}

@media screen and (max-width: 599px) {
    .margin-bottom-xl {
        margin-bottom: 75px !important;
    }
}

.margin-left-xl {
    margin-left: 150px !important;
}

@media screen and (max-width: 599px) {
    .margin-left-xl {
        margin-left: 75px !important;
    }
}

.padding-top-xl {
    padding-top: 150px !important;
}

@media screen and (max-width: 599px) {
    .padding-top-xl {
        padding-top: 75px !important;
    }
}

.padding-right-xl {
    padding-right: 150px !important;
}

@media screen and (max-width: 599px) {
    .padding-right-xl {
        padding-right: 75px !important;
    }
}

.padding-bottom-xl {
    padding-bottom: 150px !important;
}

@media screen and (max-width: 599px) {
    .padding-bottom-xl {
        padding-bottom: 75px !important;
    }
}

.padding-left-xl {
    padding-left: 150px !important;
}

@media screen and (max-width: 599px) {
    .padding-left-xl {
        padding-left: 75px !important;
    }
}

.margin-top-xxl {
    margin-top: 200px !important;
}

@media screen and (max-width: 599px) {
    .margin-top-xxl {
        margin-top: 100px !important;
    }
}

.margin-right-xxl {
    margin-right: 200px !important;
}

@media screen and (max-width: 599px) {
    .margin-right-xxl {
        margin-right: 100px !important;
    }
}

.margin-bottom-xxl {
    margin-bottom: 200px !important;
}

@media screen and (max-width: 599px) {
    .margin-bottom-xxl {
        margin-bottom: 100px !important;
    }
}

.margin-left-xxl {
    margin-left: 200px !important;
}

@media screen and (max-width: 599px) {
    .margin-left-xxl {
        margin-left: 100px !important;
    }
}

.padding-top-xxl {
    padding-top: 200px !important;
}

@media screen and (max-width: 599px) {
    .padding-top-xxl {
        padding-top: 100px !important;
    }
}

.padding-right-xxl {
    padding-right: 200px !important;
}

@media screen and (max-width: 599px) {
    .padding-right-xxl {
        padding-right: 100px !important;
    }
}

.padding-bottom-xxl {
    padding-bottom: 200px !important;
}

@media screen and (max-width: 599px) {
    .padding-bottom-xxl {
        padding-bottom: 100px !important;
    }
}

.padding-left-xxl {
    padding-left: 200px !important;
}

@media screen and (max-width: 599px) {
    .padding-left-xxl {
        padding-left: 100px !important;
    }
}

.font-size-xxs {
    font-size: 0.6em !important;
}

@media screen and (max-width: 599px) {
    .font-size-xxs {
        font-size: 0.8em !important;
    }
}

.font-size-xs {
    font-size: 0.8em !important;
}

@media screen and (max-width: 599px) {
    .font-size-xs {
        font-size: 0.9em !important;
    }
}

.font-size-s {
    font-size: 0.9em !important;
}

@media screen and (max-width: 599px) {
    .font-size-s {
        font-size: 0.95em !important;
    }
}

.font-size-m {
    font-size: 1.2em !important;
}

@media screen and (max-width: 599px) {
    .font-size-m {
        font-size: 1.1em !important;
    }
}

.font-size-l {
    font-size: 1.5em !important;
}

@media screen and (max-width: 599px) {
    .font-size-l {
        font-size: 1.25em !important;
    }
}

.font-size-xl {
    font-size: 2em !important;
}

@media screen and (max-width: 599px) {
    .font-size-xl {
        font-size: 1.5em !important;
    }
}

.font-size-xxl {
    font-size: 2.5em !important;
}

@media screen and (max-width: 599px) {
    .font-size-xxl {
        font-size: 1.75em !important;
    }
}

.ce_toplink, .toplink {
    overflow: hidden;
    margin: 1.6em 0;
}

.ce_toplink:after, .toplink:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    height: 0;
    overflow: visible;
    margin: 0 -100% 0 0.66667em;
    border-top: 1px solid #dcdcdc;
}

.ce_toplink > a:before, .toplink > a:before {
    font: 100%/1 "RockSolid Icons";
    content: "\e00c";
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: geometricPrecision;
    text-indent: 0;
    display: inline-block;
    position: relative;
    margin-right: 0.33333em;
}
hr, .headline-hr:before, .headline-hr:after {
    clear: both;
    height: 0;
    overflow: visible;
    margin: 2.4em 0;
    border: 0;
    border-top: 1px solid #dcdcdc;
}

hr.-hr-dotted, .headline-hr.-hr-dotted:before, .headline-hr.-hr-dotted:after {
    border-top-style: dotted;
    border-top-color: #717c8e;
}

hr.-hr-shadow, .headline-hr.-hr-shadow:before, .headline-hr.-hr-shadow:after {
    height: 8px;
    background: -webkit-radial-gradient(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0) 60%);
    background: -moz-radial-gradient(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0) 60%);
    background: -o-radial-gradient(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0) 60%);
    background: radial-gradient(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0) 60%);
    background-size: 100% 16px;
    background-position: 50% -8px;
}

.headline-hr {
    overflow: hidden;
    clear: both;
}

.headline-hr:before, .headline-hr:after {
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    margin: 0 0.66667em 0 calc(-100% - 0.66667em);
}

.headline-hr:after {
    content: "";
    margin: 0 calc(-100% - 0.66667em) 0 0.66667em;
}

.headline-hr.-centered {
    text-align: center;
}

.headline-hr.-centered:before {
    content: "";
}

.headline-hr.-align-right {
    text-align: right;
}

.headline-hr.-align-right:before {
    content: "";
}

.headline-hr.-align-right:after {
    content: none;
}

.icon-hr {
    display: block;
}

.icon-hr:before {
    position: relative;
    display: block;
    bottom: -0.53333em;
    width: 2em;
    margin: 0;
    background: #ffffff;
}

.icon-hr.-centered:before {
    width: 2.4em;
    margin: 0 auto;
    text-align: center;
}

.icon-hr.-align-right:before {
    margin: 0 0 0 auto;
    text-align: right;
}

.icon-hr hr {
    margin: 0;
}

button.-secondary, .button.-secondary, input[type="submit"].-secondary, .main-navigation-search-form button, .feature-box-link.-secondary, .headline-box-link.-secondary, .pricing-table-plan a.-secondary, .feature-box-link, .headline-box-link, .pricing-table-plan a, button, .button, input[type="submit"], input[type="reset"], input[type="button"] {
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: inline-block;
    padding: 1.07143em 1.42857em;
    border: 0;
    outline: none;
    font-size: 0.93333em;
    letter-spacing: 0.1em;
    line-height: 1.42929;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    background: #3685ab;
}

button.-secondary:hover, .button.-secondary:hover, input[type="submit"].-secondary:hover, .main-navigation-search-form button:hover, .feature-box-link:hover, .headline-box-link:hover, .pricing-table-plan a:hover, button.-secondary:focus, .button.-secondary:focus, input[type="submit"].-secondary:focus, .main-navigation-search-form button:focus, .feature-box-link:focus, .headline-box-link:focus, .pricing-table-plan a:focus, button:hover, button:focus, .button:hover, .button:focus, input[type="submit"]:hover, input[type="submit"]:focus, input[type="reset"]:hover, input[type="reset"]:focus, input[type="button"]:hover, input[type="button"]:focus {
    background-color: #2a6784;
    text-decoration: none;
}

button.-secondary:active, .button.-secondary:active, input[type="submit"].-secondary:active, .main-navigation-search-form button:active, .feature-box-link:active, .headline-box-link:active, .pricing-table-plan a:active, button:active, .button:active, input[type="submit"]:active, input[type="reset"]:active, input[type="button"]:active {
    background-color: #307698;
}

button.-small.-secondary, .-small.button.-secondary, input.-small[type="submit"].-secondary, .main-navigation-search-form button.-small, .-small.feature-box-link, .-small.headline-box-link, .pricing-table-plan a.-small, button.-small, .button.-small, input[type="submit"].-small, input[type="reset"].-small, input[type="button"].-small {
    padding: 0.66667em 1em;
    font-size: 0.8em;
    line-height: 1.6675;
}

button.-medium.-secondary, .-medium.button.-secondary, input.-medium[type="submit"].-secondary, .main-navigation-search-form button.-medium, .-medium.feature-box-link, .-medium.headline-box-link, .pricing-table-plan a.-medium, button.-medium, .button.-medium, input[type="submit"].-medium, input[type="reset"].-medium, input[type="button"].-medium {
    padding: 0.75em 1em;
    font-size: 1.2em;
    line-height: 1.11167;
}

button.-large.-secondary, .-large.button.-secondary, input.-large[type="submit"].-secondary, .main-navigation-search-form button.-large, .-large.feature-box-link, .-large.headline-box-link, .pricing-table-plan a.-large, button.-large, .button.-large, input[type="submit"].-large, input[type="reset"].-large, input[type="button"].-large {
    padding: 0.71429em 0.95238em;
    font-size: 1.4em;
    line-height: 0.95286;
}

button.-super-size.-secondary, .-super-size.button.-secondary, input.-super-size[type="submit"].-secondary, .main-navigation-search-form button.-super-size, .-super-size.feature-box-link, .-super-size.headline-box-link, .pricing-table-plan a.-super-size, button.-super-size, .button.-super-size, input[type="submit"].-super-size, input[type="reset"].-super-size, input[type="button"].-super-size {
    padding: 0.55556em 0.69444em;
    font-size: 2.4em;
    line-height: 1.00028;
}

@media screen and (max-width: 599px) {
    button.-super-size.-secondary, .-super-size.button.-secondary, input.-super-size[type="submit"].-secondary, .main-navigation-search-form button.-super-size, .-super-size.feature-box-link, .-super-size.headline-box-link, .pricing-table-plan a.-super-size, button.-super-size, .button.-super-size, input[type="submit"].-super-size, input[type="reset"].-super-size, input[type="button"].-super-size {
        font-size: 1.86667em;
    }
}

.-highlight-color button.-secondary, .-highlight-color .button.-secondary, .-highlight-color input[type="submit"].-secondary, .-highlight-color .main-navigation-search-form button, .main-navigation-search-form .-highlight-color button, .-highlight-color .feature-box-link, .-highlight-color .headline-box-link, .-highlight-color .pricing-table-plan a, .pricing-table-plan .-highlight-color a, .-highlight-color button, .-highlight-color .button, .-highlight-color input[type="submit"], .-highlight-color input[type="reset"], .-highlight-color input[type="button"] {
    color: #ffffff;
}

button.-small, .button.-small, input[type="submit"].-small {
    padding: 0.41667em 0.83333em;
    font-size: 0.8em;
}

button.-secondary, .button.-secondary, input[type="submit"].-secondary, .main-navigation-search-form button, .feature-box-link.-secondary, .headline-box-link.-secondary, .pricing-table-plan a.-secondary {
    padding: 0.92857em 1.28571em;
    border: 2px solid #242424;
    border-color: currentColor;
    color: inherit;
    background: transparent;
}

button.-secondary:hover, .button.-secondary:hover, input[type="submit"].-secondary:hover, .main-navigation-search-form button:hover, .feature-box-link.-secondary:hover, .headline-box-link.-secondary:hover, .pricing-table-plan a.-secondary:hover, button.-secondary:focus, .button.-secondary:focus, input[type="submit"].-secondary:focus, .main-navigation-search-form button:focus, .feature-box-link.-secondary:focus, .headline-box-link.-secondary:focus, .pricing-table-plan a.-secondary:focus {
    background-color: transparent;
}

button.-secondary:hover:after, .button.-secondary:hover:after, input[type="submit"].-secondary:hover:after, .main-navigation-search-form button:hover:after, .feature-box-link.-secondary:hover:after, .headline-box-link.-secondary:hover:after, .pricing-table-plan a.-secondary:hover:after, button.-secondary:focus:after, .button.-secondary:focus:after, input[type="submit"].-secondary:focus:after, .main-navigation-search-form button:focus:after, .feature-box-link.-secondary:focus:after, .headline-box-link.-secondary:focus:after, .pricing-table-plan a.-secondary:focus:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: currentColor;
    opacity: 0.2;
}

button.-secondary:active, .button.-secondary:active, input[type="submit"].-secondary:active, .main-navigation-search-form button:active, .feature-box-link.-secondary:active, .headline-box-link.-secondary:active, .pricing-table-plan a.-secondary:active {
    background-color: transparent;
}

button.-secondary:active:after, .button.-secondary:active:after, input[type="submit"].-secondary:active:after, .main-navigation-search-form button:active:after, .feature-box-link.-secondary:active:after, .headline-box-link.-secondary:active:after, .pricing-table-plan a.-secondary:active:after {
    opacity: 0.1;
}

button.-large.-secondary, .-large.button.-secondary, input.-large[type="submit"].-secondary, .main-navigation-search-form button.-large, .-large.feature-box-link.-secondary, .-large.headline-box-link.-secondary, .pricing-table-plan a.-large.-secondary, button.-super-size.-secondary, .-super-size.button.-secondary, input.-super-size[type="submit"].-secondary, .main-navigation-search-form button.-super-size, .-super-size.feature-box-link.-secondary, .-super-size.headline-box-link.-secondary, .pricing-table-plan a.-super-size.-secondary {
    border-width: 3px;
}

button.-tertiary, .button.-tertiary, input[type="submit"].-tertiary {
    padding: 0;
    font-size: 1.6em;
    letter-spacing: normal;
    text-align: left;
    text-transform: none;
    background: none;
    color: #004d9e;
}

button.-small.-tertiary, .-small.button.-tertiary, input.-small[type="submit"].-tertiary {
    font-size: 0.93333em;
    line-height: 1.42929;
}

button.-medium.-tertiary, .-medium.button.-tertiary, input.-medium[type="submit"].-tertiary {
    font-size: 1.2em;
    line-height: 1.11167;
}

button.-large.-tertiary, .-large.button.-tertiary, input.-large[type="submit"].-tertiary {
    font-size: 1.4em;
    line-height: 0.95286;
}

button.-super-size.-tertiary, .-super-size.button.-tertiary, input.-super-size[type="submit"].-tertiary {
    font-size: 2.4em;
    line-height: 1.00028;
}

button.-tertiary:before, .button.-tertiary:before, input[type="submit"].-tertiary:before {
    top: -2px;
    font-size: 60%;
}

.-color-inverted button.-tertiary, .-color-inverted .button.-tertiary, .-color-inverted input[type="submit"].-tertiary {
    color: #ffffff;
}

button.-tertiary:hover, .button.-tertiary:hover, input[type="submit"].-tertiary:hover, button.-tertiary:focus, .button.-tertiary:focus, input[type="submit"].-tertiary:focus {
    color: #09427f;
}

.content-wrapper {
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
}

.mega-dropdown-inner, .centered-wrapper-inner, .news-footer > h1, .news-footer > h2, .news-footer > h3, .news-footer-item-inner {
    width: 100%;
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

@media screen and (max-width: 1280px) {
    .mega-dropdown-inner, .centered-wrapper-inner, .news-footer > h1, .news-footer > h2, .news-footer > h3, .news-footer-item-inner {
        width: 93.75%;
        width: var(--page-inner-width);
        max-width: none;
        margin-right: 0;
        margin-left: 3.125%;
        margin-left: var(--page-padding-left);
    }
}

@media screen and (max-width: 900px) {
    .mega-dropdown-inner, .centered-wrapper-inner, .news-footer > h1, .news-footer > h2, .news-footer > h3, .news-footer-item-inner {
        width: 91.66667%;
        width: var(--page-inner-width);
        margin-left: 4.16667%;
        margin-left: var(--page-padding-left);
    }
}


.centered-wrapper {
    zoom: 1; position: relative;
    clear: both;
    background: 50% 50% no-repeat;
    background-size: cover;
}

.centered-wrapper:before {
    content: "";
    display: table;
}

.centered-wrapper:after {
    content: "";
    display: table;
    clear: both;
}

.centered-wrapper.-border-bottom {
    border-bottom: 1px solid #dcdcdc;
}

.centered-wrapper-inner {
    position: relative;
}

.centered-wrapper-inner.-fullwidth {
    width: 100%;
    max-width: none;
    margin: 0;
}

.centered-wrapper-inner.-fullwidth-padded {
    max-width: none;
    padding-right: 2.66667em;
    padding-right: var(--page-padding-right);
    padding-left: 2.66667em;
    padding-left: var(--page-padding-left);
}

@media screen and (max-width: 1280px) {
    .centered-wrapper-inner.-fullwidth-padded {
        padding-right: 0;
        padding-left: 0;
    }
}

@media screen and (max-width: 900px) {
    .centered-wrapper.-no-background-tablet > .centered-wrapper-background, .centered-wrapper.-no-background-tablet > .centered-wrapper-background-2 {
        display: none;
    }
}

@media screen and (max-width: 599px) {
    .centered-wrapper.-no-background-mobile > .centered-wrapper-background, .centered-wrapper.-no-background-mobile > .centered-wrapper-background-2 {
        display: none;
    }
}

h1, h2 {
    line-height: 1.3;
}

h3, h4, h5, h6 {
    line-height: 1.5;
    font-weight: normal;
}

button, input[type="submit"] {
    margin-top: 1.2em;
}

.image_container {
    position: relative;
    display: inline-block;
    vertical-align: top;
    max-width: 100%;
}

.image_container.float_above {
    margin-top: 1.6em;
}

.image_container.float_below {
    margin-bottom: 1.6em;
}

.image_container img {
    display: block;
    width: 100%;
    height: auto;
}

.image_container a {
    position: relative;
    display: block;
    overflow: hidden;
    /* Fixes IE bug */
    text-decoration: none;
}

.image_container a:hover:before, .image_container a:focus:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background: rgba(0, 77, 158, 0.6);
}

.image_container a:hover:after, .image_container a:focus:after {
    font: 1.6em/1 "RockSolid Icons";
    content: "\e0cb";
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: geometricPrecision;
    text-indent: 0;
    display: inline-block;
    position: relative;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    margin: -0.5em;
    color: #ffffff;
}

.image_container figcaption, .image_container .caption {
    /* overwrite elements style attribute */
    width: 100% !important;
    padding: 0.42857em 0 0;
    font-size: 0.93333em;
    color: #98a0ab;
}

.image_container.float_right, .image_container.float_left {
    float: right;
    width: 31.25% !important;
    margin: 0.53333em 0 1.06667em 6.25%;
}

@media screen and (max-width: 599px) {
    .image_container.float_right, .image_container.float_left {
        margin-left: 0;
        float: none !important;
        width: auto !important;
        width: auto !important;
    }
}

.oneo-no-sidebar .image_container.float_right, .oneo-no-sidebar .image_container.float_left {
    margin: 0.53333em 0 1.06667em 3.33333%;
    width: 16.66667% !important;
}

@media screen and (max-width: 900px) {
    .oneo-no-sidebar .image_container.float_right, .oneo-no-sidebar .image_container.float_left {
        margin-left: 6.25%;
        width: 31.25% !important;
    }
}

@media screen and (max-width: 599px) {
    .oneo-no-sidebar .image_container.float_right, .oneo-no-sidebar .image_container.float_left {
        margin-left: 0;
        width: auto !important;
    }
}

.no-resize .image_container.float_right, .oneo-no-sidebar .no-resize .image_container.float_right, .image_container.float_right.no-resize, .oneo-no-sidebar .image_container.float_right.no-resize, .no-resize .image_container.float_left, .oneo-no-sidebar .no-resize .image_container.float_left, .image_container.float_left.no-resize, .oneo-no-sidebar .image_container.float_left.no-resize {
    width: auto !important;
}

.image_container.float_left {
    float: left;
    margin: 0.53333em 6.25% 1.06667em 0;
}

@media screen and (max-width: 599px) {
    .image_container.float_left {
        margin-right: 0;
    }
}

.oneo-no-sidebar .image_container.float_left {
    margin: 0.53333em 3.84615% 1.06667em 0;
}

@media screen and (max-width: 900px) {
    .oneo-no-sidebar .image_container.float_left {
        margin-right: 6.25%;
    }
}

@media screen and (max-width: 599px) {
    .oneo-no-sidebar .image_container.float_left {
        margin-right: 0;
    }
}

.no-resize .image_container:not(.float_right):not(.float_left) img, .image_container:not(.float_right):not(.float_left).no-resize img {
    width: auto;
    max-width: 100%;
}

.video_container video, .audio_container audio {
    display: block;
    width: 100%;
}

.video_container video {
    height: auto;
}

.video_container {
    margin: 1.6em 0;
}

.video_container iframe {
    border: 0;
}

.video_container .responsive {
    position: relative;
    padding-bottom: 56.25%;
}

.video_container .responsive.ratio-169 {
    padding-bottom: 56.25%;
}

.video_container .responsive.ratio-1610 {
    padding-bottom: 62.5%;
}

.video_container .responsive.ratio-219 {
    padding-bottom: 42.85714%;
}

.video_container .responsive.ratio-43 {
    padding-bottom: 75%;
}

.video_container .responsive.ratio-32 {
    padding-bottom: 66.66667%;
}

.video_container .responsive iframe, .video_container .responsive img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.feature-box {
    zoom: 1; position: relative;
    overflow: hidden;
}

.feature-box:before {
    content: "";
    display: table;
}

.feature-box:after {
    content: "";
    display: table;
    clear: both;
}

.feature-box.-image-centered {
    text-align: center;
}

.feature-box.-vertical-centered {
    display: table;
    table-layout: fixed;
    /* Fixes IE bug */
    width: 100%;
}

@media screen and (max-width: 599px) {
    .feature-box.-vertical-centered {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
}

.feature-box.-small {
    min-height: 300px;
}

.feature-box.-small.-vertical-centered {
    height: 300px;
}

@media screen and (max-width: 599px) {
    .feature-box.-small {
        min-height: 200px;
    }

    .feature-box.-small.-vertical-centered {
        height: auto;
    }
}

.feature-box.-medium {
    min-height: 600px;
}

.feature-box.-medium.-vertical-centered {
    height: 600px;
}

@media screen and (max-width: 599px) {
    .feature-box.-medium {
        min-height: 400px;
    }

    .feature-box.-medium.-vertical-centered {
        height: auto;
    }
}

.feature-box.-large {
    min-height: 900px;
}

.feature-box.-large.-vertical-centered {
    height: 900px;
}

@media screen and (max-width: 599px) {
    .feature-box.-large {
        min-height: 600px;
    }

    .feature-box.-large.-vertical-centered {
        height: auto;
    }
}

.feature-box-text {
    position: relative;
    z-index: 1;
    margin: 6.66667em 46.66667% 6.66667em 0;
    color: #98a0ab;
}

@media screen and (max-width: 900px) {
    .feature-box-text {
        margin-right: 37.5%;
    }
}

@media screen and (max-width: 599px) {
    .feature-box-text {
        margin: 2.4em 0;
    }
}

.-image-left > .feature-box-text {
    margin-right: 0;
    margin-left: 46.66667%;
}

@media screen and (max-width: 900px) {
    .-image-left > .feature-box-text {
        margin-left: 37.5%;
    }
}

@media screen and (max-width: 599px) {
    .-image-left > .feature-box-text {
        margin-left: 0;
    }
}

.-image-centered > .feature-box-text {
    margin-right: 16.66667%;
    margin-left: 16.66667%;
}

@media screen and (max-width: 900px) {
    .-image-centered > .feature-box-text {
        margin-right: 0;
        margin-left: 0;
    }
}

.-image-centered > .feature-box-text + .feature-box-image {
    margin-top: -2.4em;
}

@media screen and (max-width: 599px) {
    .-image-centered > .feature-box-text + .feature-box-image {
        margin-top: 0;
    }
}

.-vertical-centered > .feature-box-text {
    display: table-cell;
    vertical-align: middle;
    width: 56.66667%;
    margin: 0;
    padding: 4.8em 3.33333% 4.8em 0;
}

@media screen and (max-width: 900px) {
    .-vertical-centered > .feature-box-text {
        width: 68.75%;
    }
}

@media screen and (max-width: 599px) {
    .-vertical-centered > .feature-box-text {
        display: block;
        width: auto;
        padding-right: 0;
    }
}

.-vertical-centered.-image-left > .feature-box-text {
    padding-right: 0;
    padding-left: 3.33333%;
}

@media screen and (max-width: 599px) {
    .-vertical-centered.-image-left > .feature-box-text {
        padding-left: 0;
    }
}

.-vertical-centered.-image-centered > .feature-box-text {
    width: 100%;
    padding-right: 20%;
    padding-left: 20%;
}

@media screen and (max-width: 900px) {
    .-vertical-centered.-image-centered > .feature-box-text {
        padding-right: 0;
        padding-left: 0;
    }
}

.-vertical-centered.-large-image > .feature-box-text {
    width: 40%;
}

@media screen and (max-width: 900px) {
    .-vertical-centered.-large-image > .feature-box-text {
        width: 68.75%;
    }
}

@media screen and (max-width: 599px) {
    .-vertical-centered.-large-image > .feature-box-text {
        width: auto;
    }
}

.-no-image > .feature-box-text {
    width: 100%;
}

.-color-inverted .feature-box-text {
    color: #ffffff;
}

.no-margin .feature-box-text {
    margin: 0;
    padding: 0;
}

.no-margin-top .feature-box-text {
    margin-top: 0;
    padding-top: 0;
}

.no-margin-bottom .feature-box-text {
    margin-bottom: 0;
    padding-bottom: 0;
}

.feature-box-text h1, .feature-box-text h2, .feature-box-text h3 {
    margin: 0;
    color: #242424;
    font-size: 1.86667em;
    font-weight: normal;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.feature-box-text h1.-small, .feature-box-text h2.-small, .feature-box-text h3.-small {
    font-size: 1.4em;
}

@media screen and (max-width: 599px) {
    .feature-box-text h1.-small, .feature-box-text h2.-small, .feature-box-text h3.-small {
        font-size: 1.2em;
    }
}

.feature-box-text h1.-medium, .feature-box-text h2.-medium, .feature-box-text h3.-medium {
    font-size: 2.4em;
}

@media screen and (max-width: 599px) {
    .feature-box-text h1.-medium, .feature-box-text h2.-medium, .feature-box-text h3.-medium {
        font-size: 1.86667em;
    }
}

.feature-box-text h1.-large, .feature-box-text h2.-large, .feature-box-text h3.-large {
    font-size: 3.2em;
}

@media screen and (max-width: 599px) {
    .feature-box-text h1.-large, .feature-box-text h2.-large, .feature-box-text h3.-large {
        font-size: 2.4em;
    }
}

.feature-box-text h1.-super-size, .feature-box-text h2.-super-size, .feature-box-text h3.-super-size {
    font-size: 4em;
}

@media screen and (max-width: 599px) {
    .feature-box-text h1.-super-size, .feature-box-text h2.-super-size, .feature-box-text h3.-super-size {
        font-size: 3.2em;
    }
}

.feature-box-text h1 + a, .feature-box-text h2 + a, .feature-box-text h3 + a {
    margin-top: 1.6em;
}

.-color-inverted .feature-box-text h1, .-color-inverted .feature-box-text h2, .-color-inverted .feature-box-text h3 {
    color: #ffffff;
}

.feature-box-text p {
    font-size: 1.2em;
    margin: 1.33333em 0;
}

.feature-box-text p:before {
    content: "";
    display: block;
    width: 4em;
    height: 2px;
    margin: 0.8em 0;
    background: #004d9e;
}

.-image-centered .feature-box-text p:before {
    width: 5.71429em;
    margin-left: auto;
    margin-right: auto;
}

.feature-box-text .feature-box-subheadline {
    margin-top: 0.28571em;
    font-size: 1.4em;
    color: #004d9e;
}

.feature-box-image {
    display: block;
    float: right;
    width: 43.33333%;
    margin: 3.2em 0 3.2em 3.33333%;
}

@media screen and (max-width: 900px) {
    .feature-box-image {
        width: 31.25%;
    }
}

@media screen and (max-width: 599px) {
    .feature-box-image {
        width: 100%;
    }
}

.-image-left > .feature-box-image {
    float: left;
    margin-right: 3.33333%;
    margin-left: 0;
}

@media screen and (max-width: 599px) {
    .-image-left > .feature-box-image {
        float: none;
        margin-right: 0;
    }
}

.-image-centered > .feature-box-image {
    float: none;
    width: 60%;
    margin-right: auto;
    margin-left: auto;
}

@media screen and (max-width: 900px) {
    .-image-centered > .feature-box-image {
        width: 100%;
    }
}

.-image-centered > .feature-box-image + .feature-box-text {
    margin-top: 3.2em;
}

.-image-top > .feature-box-image {
    margin-top: 0;
}

.-image-bottom > .feature-box-image {
    position: absolute;
    bottom: 0;
    right: 0;
    margin: 0;
}

@media screen and (max-width: 599px) {
    .-image-bottom > .feature-box-image {
        position: static;
        margin-bottom: 3.2em;
    }
}

.-image-bottom.-image-left > .feature-box-image {
    right: auto;
    left: 0;
}

.-vertical-centered > .feature-box-image {
    display: table-cell;
    vertical-align: middle;
    float: none;
    margin: 0;
    padding: 3.2em 0;
}

@media screen and (max-width: 599px) {
    .-vertical-centered > .feature-box-image {
        display: block;
        padding-top: 1.6em;
        padding-bottom: 1.6em;
    }
}

.-image-rounded > .feature-box-image img {
    border-radius: 99em;
}

.-large-image .feature-box-image {
    width: 60%;
}

@media screen and (max-width: 900px) {
    .-large-image .feature-box-image {
        width: 31.25%;
    }
}

@media screen and (max-width: 599px) {
    .-large-image .feature-box-image {
        width: 100%;
    }
}

.-image-centered.-large-image .feature-box-image {
    width: 73.33333%;
}

@media screen and (max-width: 900px) {
    .-image-centered.-large-image .feature-box-image {
        width: 62.5%;
    }
}

@media screen and (max-width: 599px) {
    .-image-centered.-large-image .feature-box-image {
        width: 100%;
    }
}

.not-in-view > .feature-box-text.-fade, .not-in-view > .feature-box-image.-fade {
    opacity: 0;
}

.not-in-view > .feature-box-text.-move, .not-in-view > .feature-box-image.-move {
    -webkit-transform: translate(100%, 0);
    -moz-transform: translate(100%, 0);
    -ms-transform: translate(100%, 0);
    -o-transform: translate(100%, 0);
    transform: translate(100%, 0);
}

.not-in-view > .feature-box-text.-move-right, .not-in-view > .feature-box-image.-move-right {
    -webkit-transform: translate(-100%, 0);
    -moz-transform: translate(-100%, 0);
    -ms-transform: translate(-100%, 0);
    -o-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
}

.not-in-view > .feature-box-text.-move-top, .not-in-view > .feature-box-image.-move-top {
    -webkit-transform: translate(0, 100%);
    -moz-transform: translate(0, 100%);
    -ms-transform: translate(0, 100%);
    -o-transform: translate(0, 100%);
    transform: translate(0, 100%);
}

.not-in-view > .feature-box-text.-move-bottom, .not-in-view > .feature-box-image.-move-bottom {
    -webkit-transform: translate(0, -100%);
    -moz-transform: translate(0, -100%);
    -ms-transform: translate(0, -100%);
    -o-transform: translate(0, -100%);
    transform: translate(0, -100%);
}

.in-view > .feature-box-text, .in-view > .feature-box-image {
    -webkit-transition: opacity 0.6s linear, -webkit-transform 0.6s ease-out;
    -moz-transition: opacity 0.6s linear, -moz-transform 0.6s ease-out;
    -o-transition: opacity 0.6s linear, -o-transform 0.6s ease-out;
    transition: opacity 0.6s linear, transform 0.6s ease-out;
}

.in-view > .feature-box-text.-fade, .in-view > .feature-box-image.-fade {
    opacity: 1;
}

.in-view > .feature-box-text.-move, .in-view > .feature-box-image.-move {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}

.feature-box-text img, .feature-box-image img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.fading-boxes {
    zoom: 1; margin: 2.66667em 0;
}

.fading-boxes:before {
    content: "";
    display: table;
}

.fading-boxes:after {
    content: "";
    display: table;
    clear: both;
}

.fading-boxes > h1, .fading-boxes > h2, .fading-boxes > h3, .fading-boxes > h4, .fading-boxes > h5, .fading-boxes > h6 {
    margin-top: 0;
    margin-bottom: 1.06667em;
}

.fading-boxes-item {
    position: relative;
    z-index: 0;
    color: #ffffff;
    -webkit-transition: -webkit-transform 0.2s linear;
    -moz-transition: -moz-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    transition: transform 0.2s linear;
}

.fading-boxes-item.-with-link:hover, .fading-boxes-item.-with-link.is-hovered {
    -webkit-transform: translate3d(0, -2.33333em, 0);
    -moz-transform: translate3d(0, -2.33333em, 0);
    -ms-transform: translate3d(0, -2.33333em, 0);
    -o-transform: translate3d(0, -2.33333em, 0);
    transform: translate3d(0, -2.33333em, 0);
}

.fading-boxes-item:hover, .fading-boxes-item.is-hovered {
    z-index: 1;
}

.fading-boxes-item-image {
    position: relative;
    z-index: 1;
    background: #004d9e no-repeat;
    background-size: cover;
}

.-highlight-color .fading-boxes-item-image {
    background: #3685ab no-repeat;
}

.fading-boxes-item-image:before {
    position: absolute;
    top: 2.875em;
    right: 50%;
    z-index: 1;
    margin: -0.5em;
    font-size: 2.66667em;
    -webkit-transition: top 0.2s linear, right 0.2s linear, font-size 0.2s linear;
    -moz-transition: top 0.2s linear, right 0.2s linear, font-size 0.2s linear;
    -o-transition: top 0.2s linear, right 0.2s linear, font-size 0.2s linear;
    transition: top 0.2s linear, right 0.2s linear, font-size 0.2s linear;
}

.fading-boxes-item:hover .fading-boxes-item-image:before, .fading-boxes-item.is-hovered .fading-boxes-item-image:before {
    top: 1.25em;
    right: 1.125em;
    font-size: 2.13333em;
    /* IE8 and IE9 calculate em's wrong */
    font-size: 32px \9;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .fading-boxes-item:hover .fading-boxes-item-image:before, .fading-boxes-item.is-hovered .fading-boxes-item-image:before {
        /* IE10 and IE11 calculate em's wrong */
        font-size: 32px;
    }
}

.fading-boxes-item-image:after {
    content: attr(data-headline);
    position: absolute;
    top: 5.17857em;
    left: 5%;
    width: 90%;
    font-size: 1.86667em;
    text-align: center;
    -webkit-transition: opacity 0.1s linear;
    -moz-transition: opacity 0.1s linear;
    -o-transition: opacity 0.1s linear;
    transition: opacity 0.1s linear;
    -webkit-transition-delay: 0.1s;
    -moz-transition-delay: 0.1s;
    -o-transition-delay: 0.1s;
    transition-delay: 0.1s;
}

.fading-boxes-item:hover .fading-boxes-item-image:after, .fading-boxes-item.is-hovered .fading-boxes-item-image:after {
    opacity: 0;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
}

.-has-text-shadow .fading-boxes-item-image:after {
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.fading-boxes-item-text {
    min-height: 19.28571em;
    /* clearfix */
    overflow: hidden;
    padding: 0 1.42857em;
    font-size: 0.93333em;
    background: rgba(0, 77, 158, 0.8);
    opacity: 0;
    -webkit-transition: opacity 0.2s linear;
    -moz-transition: opacity 0.2s linear;
    -o-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
}

.fading-boxes-item:hover .fading-boxes-item-text, .fading-boxes-item.is-hovered .fading-boxes-item-text {
    opacity: 1;
}

.fading-boxes-item-text h3 {
    margin: 1em 0 -0.29167em;
    font-size: 1.71429em;
    font-weight: normal;
    color: inherit;
}

.fading-boxes-item-text p {
    margin: 1.5em 0;
}

.fading-boxes-item-text a {
    color: inherit;
    text-decoration: underline;
}

.fading-boxes-item-text a:hover {
    text-decoration: none;
}

.fading-boxes-item-link {
    visibility: hidden;
    margin: -5.33333em 0 1.33333em;
    padding: 1em 1.33333em;
    background: #004d9e;
    -webkit-transition: margin 0.2s linear, visibility 0s;
    -webkit-transition-delay: 0s, 0.2s;
    -moz-transition: margin 0.2s linear, visibility 0s 0.2s;
    -o-transition: margin 0.2s linear, visibility 0s 0.2s;
    transition: margin 0.2s linear, visibility 0s 0.2s;
}

.fading-boxes-item:hover .fading-boxes-item-link, .fading-boxes-item.is-hovered .fading-boxes-item-link {
    visibility: visible;
    margin-top: 0;
    margin-bottom: -4em;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
}

.fading-boxes-item-link .button {
    display: block;
}

.area-navigation {
    z-index: 1;
    position: fixed;
    top: 0;
    right: 30px;
    right: calc(30px + var(--safe-area-right));
    height: 100%;
    display: table;
}

@media screen and (max-width: 1280px) {
    .area-navigation {
        right: 1.5625%;
        right: calc(1.5625% + var(--safe-area-right));
        margin-right: -12px;
    }
}

@media screen and (max-width: 900px) {
    .area-navigation {
        right: 2.08333%;
        right: calc(2.08333% + var(--safe-area-right));
    }
}

@media screen and (max-width: 599px) {
    .area-navigation {
        display: none;
    }
}

.area-navigation ul {
    display: table-cell;
    vertical-align: middle;
    padding: 0;
    width: 24px;
}

.area-navigation li {
    margin: 4px 0;
    text-align: center;
}

.area-navigation a {
    position: relative;
    display: inline-block;
    width: 18px;
    height: 18px;
    margin: 0;
    padding: 4px;
    outline: none;
    color: #717c8e;
    text-decoration: none;
}

.area-navigation a:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border: 2px solid rgba(113, 124, 142, 0);
    border-radius: 100%;
    background-color: #717c8e;
    background-clip: padding-box;
}

.area-navigation a:hover:after, .area-navigation a.active:after {
    border-color: #717c8e;
    background-color: rgba(113, 124, 142, 0.25);
}

.area-navigation a.prev, .area-navigation a.next {
    width: 24px;
    height: 24px;
    padding: 5px;
    border: 2px solid currentColor;
    border-radius: 100%;
    -webkit-transition: -webkit-transform 0.1s;
    -moz-transition: -moz-transform 0.1s;
    -o-transition: -o-transform 0.1s;
    transition: transform 0.1s;
}

@media screen and (max-width: 1280px) {
    .area-navigation a.prev, .area-navigation a.next {
        display: none;
    }
}

.area-navigation a.prev:after, .area-navigation a.next:after {
    font: 10px/1 "RockSolid Icons";
    content: "\e01a";
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: geometricPrecision;
    text-indent: 0;
    display: inline-block;
    position: relative;
    display: block;
}

.area-navigation a.prev:after, .area-navigation a.prev:hover:after, .area-navigation a.next:after, .area-navigation a.next:hover:after {
    color: inherit;
    background-color: transparent;
    border: 0;
}

.area-navigation a.prev:hover, .area-navigation a.next:hover {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
}

.area-navigation a.prev.is-disabled, .area-navigation a.next.is-disabled {
    visibility: hidden;
    pointer-events: none;
}

.area-navigation a.prev > span, .area-navigation a.next > span {
    display: none;
}

.area-navigation a.next:after {
    content: "\e015";
}

.area-navigation a > span {
    position: absolute;
    top: 50%;
    right: 100%;
    max-width: 0;
    overflow: hidden;
    margin: -0.5em 0.5em 0 0;
    font-size: 0.93333em;
    line-height: 1;
    white-space: nowrap;
    -webkit-transition: max-width 0.3s cubic-bezier(0, 1, 1, 1);
    -moz-transition: max-width 0.3s cubic-bezier(0, 1, 1, 1);
    -o-transition: max-width 0.3s cubic-bezier(0, 1, 1, 1);
    transition: max-width 0.3s cubic-bezier(0, 1, 1, 1);
}

.area-navigation a:hover > span {
    max-width: 999px;
    -webkit-transition: max-width 0.6s cubic-bezier(0.75, 0, 1, 1);
    -moz-transition: max-width 0.6s cubic-bezier(0.75, 0, 1, 1);
    -o-transition: max-width 0.6s cubic-bezier(0.75, 0, 1, 1);
    transition: max-width 0.6s cubic-bezier(0.75, 0, 1, 1);
}

.area-navigation.-invert-controls a {
    color: #ffffff;
}

.area-navigation.-invert-controls a:after {
    border-color: rgba(255, 255, 255, 0);
    background-color: #ffffff;
}

.area-navigation.-invert-controls a:hover:after, .area-navigation.-invert-controls a.active:after {
    border-color: #ffffff;
    background-color: rgba(255, 255, 255, 0.25);
}

.area-navigation.-invert-controls a.prev:hover, .area-navigation.-invert-controls a.prev.active, .area-navigation.-invert-controls a.next:hover, .area-navigation.-invert-controls a.next.active {
    color: #ffffff;
}

.area-navigation.-invert-controls a.prev:after, .area-navigation.-invert-controls a.prev:hover:after, .area-navigation.-invert-controls a.next:after, .area-navigation.-invert-controls a.next:hover:after {
    background-color: transparent;
}

.headline-box {
    margin: 2.4em 0;
    text-align: center;
}

.headline-box.-align-left {
    text-align: left;
}

.headline-box.-align-left:before {
    text-align: left;
    margin-left: 0;
}

.headline-box.-align-right {
    text-align: right;
}

.headline-box.-align-right:before {
    text-align: right;
    margin-right: 0;
}

.headline-box.-no-underline:after {
    content: none;
}

.headline-box.-small {
    margin: 1.6em 0;
}

.headline-box.-small:before {
    font-size: 1.6em;
    margin-bottom: 0.25em;
}

.headline-box.-no-tracking h2 {
    letter-spacing: normal;
    text-transform: none;
}

.headline-box:before {
    display: block;
    width: 1.95455em;
    height: 1.95455em;
    margin: 0 auto 0.27273em auto;
    border-radius: 100%;
    font-size: 2.93333em;
    font-weight: normal;
    line-height: 2.00023;
    text-align: center;
    background: #ffffff;
    background: rgba(255, 255, 255, 0.6);
    color: #004d9e;
}

.-color-inverted .headline-box:before {
    background: #353d47;
    background: rgba(53, 61, 71, 0.6);
    color: #ffffff;
}

.headline-box:after {
    content: "";
    display: inline-block;
    width: 8em;
    height: 2px;
    background: #004d9e;
}

.-highlight-color .headline-box:after {
    background: #3685ab;
}

.headline-box.-button-only:after {
    display: none;
}

.headline-box h2 {
    margin: 0.11111em 0;
    font-size: 2.4em;
    font-weight: normal;
    letter-spacing: 0.1em;
    color: inherit;
    text-transform: uppercase;
}

@media screen and (max-width: 599px) {
    .headline-box h2 {
        font-size: 1.86667em;
    }
}

.headline-box h2.-bold {
    font-weight: bold;
}

.headline-box h2.-small {
    font-size: 1.6em;
}

.headline-box h2.-medium {
    font-size: 2.13333em;
}

@media screen and (max-width: 599px) {
    .headline-box h2.-medium {
        font-size: 1.6em;
    }
}

.headline-box h2.-large {
    font-size: 2.8em;
}

@media screen and (max-width: 599px) {
    .headline-box h2.-large {
        font-size: 2.13333em;
    }
}

.headline-box h2.-super-size {
    font-size: 3.46667em;
}

@media screen and (max-width: 599px) {
    .headline-box h2.-super-size {
        font-size: 2.4em;
    }
}

.headline-box h3 {
    margin: 0;
    font-size: 0.93333em;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.5;
    color: #98a0ab;
    text-transform: uppercase;
}

.-color-inverted.-highlight-color .headline-box h3 {
    color: #3685ab;
}

.-color-inverted .headline-box h3 {
    color: #dcdcdc;
}

.headline-box h3.-small {
    font-size: 0.86667em;
}

.headline-box h3.-medium {
    font-size: 1.06667em;
}

@media screen and (max-width: 599px) {
    .headline-box h3.-medium {
        font-size: 0.93333em;
    }
}

.headline-box h3.-large {
    font-size: 1.2em;
}

@media screen and (max-width: 599px) {
    .headline-box h3.-large {
        font-size: 1.06667em;
    }
}

.headline-box h3.-super-size {
    font-size: 1.4em;
}

@media screen and (max-width: 599px) {
    .headline-box h3.-super-size {
        font-size: 1.2em;
    }
}

.headline-box.-button-inline h2, .headline-box.-button-inline h3 {
    display: inline;
}

@media screen and (max-width: 599px) {
    .headline-box.-button-inline h2, .headline-box.-button-inline h3 {
        display: block;
    }
}

h2 + .headline-box-link, h3 + .headline-box-link {
    margin-top: 1.92857em;
}

.-align-left > .headline-box-link {
    float: right;
    margin: -0.14286em 0 0 3.14286em;
}

@media screen and (max-width: 599px) {
    .-align-left > .headline-box-link {
        float: none;
        margin: 0 0 1em;
    }
}

.-align-right > .headline-box-link {
    float: left;
    margin: -0.14286em 3.14286em 0 0;
}

@media screen and (max-width: 599px) {
    .-align-right > .headline-box-link {
        float: none;
        margin: 0 0 1em;
    }
}

.-button-inline > .headline-box-link {
    margin: 0 0 0 2.14286em;
}

@media screen and (max-width: 599px) {
    .-button-inline > .headline-box-link {
        margin: 1em 0 0;
    }
}

.teaser-boxes {
    zoom: 1; }

.teaser-boxes:before {
    content: "";
    display: table;
}

.teaser-boxes:after {
    content: "";
    display: table;
    clear: both;
}

.teaser-boxes-item {
    text-align: center;
}

.teaser-boxes-item .no-image {
    display: block;
    padding-top: 75%;
    background: #f2f2f2;
}

.teaser-boxes-item .teaser-boxes-label {
    display: inline-block;
    margin-bottom: 1.11111em;
    padding: 0 0.44444em;
    color: #004d9e;
    border: 2px solid #004d9e;
    border-radius: 99em;
    font-size: 1.2em;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.05556em;
}

@media screen and (max-width: 599px) {
    .teaser-boxes-item .teaser-boxes-label {
        font-size: 0.9em;
    }
}

.teaser-boxes-item .teaser-boxes-label + .teaser-boxes-content > h3 {
    margin-top: 0;
}

.teaser-boxes-item.-align-left {
    text-align: left;
}

.teaser-boxes-item.-align-right {
    text-align: right;
}

.-boxed > .teaser-boxes-item {
    overflow: hidden;
    padding: 1.42857em;
    border: 1px solid #dcdcdc;
    border-radius: 2px;
    outline: none;
    background-color: #ffffff;
}

.teaser-boxes-content > h3 {
    font-size: 1.2em;
    font-weight: bold;
}

.teaser-boxes-image {
    display: block;
    margin-bottom: 1.6em;
}

.teaser-boxes-image > img {
    display: block;
    margin: 0 auto;
}

.teaser-boxes-image.-image-circle {
    border-radius: 99em;
    overflow: hidden;
    /* Fixes hover in Chrome */
    opacity: 0.99;
    outline: none;
}

.teaser-boxes-image.-image-circle > img {
    /* Fixes android bug with border-radius and overflow */
    border-radius: 99em;
}

.teaser-boxes-image.-has-hover:hover img, .teaser-boxes-image.-has-hover:focus img {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
}

/* ===== Anpassungen Contao 5 (2026-10-17) ===== */

/* Fehler 1: Footer "Adressdaten" - Telefon/Fax/Mail-Icons.
   Odd 3 ersetzt <i class="fas ..."> per fontawesome/js/all.min.js (FA 5.3.1) durch SVG.
   Fallback per Webfont, falls das Skript (noch) nicht gelaufen ist / blockiert wird.
   Greift nur auf <i>-Elemente; nach SVG-Ersetzung wirkungslos. */
@font-face {
	font-family: "GC Font Awesome 5 Solid";
	font-style: normal; font-weight: 900; font-display: block;
	src: url("/bundles/contaothemesnetoddtheme/fontawesome/webfonts/fa-solid-900.woff2") format("woff2"),
	     url("/bundles/contaothemesnetoddtheme/fontawesome/webfonts/fa-solid-900.woff") format("woff");
}
@font-face {
	font-family: "GC Font Awesome 5 Regular";
	font-style: normal; font-weight: 400; font-display: block;
	src: url("/bundles/contaothemesnetoddtheme/fontawesome/webfonts/fa-regular-400.woff2") format("woff2"),
	     url("/bundles/contaothemesnetoddtheme/fontawesome/webfonts/fa-regular-400.woff") format("woff");
}
.ce_ct_featureElement .icon i.fas,
.ce_ct_featureElement .icon i.far {
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	line-height: 1;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
}
.ce_ct_featureElement .icon i.fas { font-family: "GC Font Awesome 5 Solid"; font-weight: 900; }
.ce_ct_featureElement .icon i.far { font-family: "GC Font Awesome 5 Regular"; font-weight: 400; }
.ce_ct_featureElement .icon i.fa-phone::before    { content: "\f095"; }
.ce_ct_featureElement .icon i.fa-fax::before      { content: "\f1ac"; }
.ce_ct_featureElement .icon i.fa-envelope::before { content: "\f0e0"; }
footer .ce_ct_featureElement .icon i { color: #fff; font-size: 1rem; }

/* Fehler 2: Startseite "Messen und Veranstaltungen" (Artikel 281/378) zentrieren */
#messen + .ce_ct_wrapperStart.row {
	justify-content: center;
}
.mod_article.max-1400 {
	margin-left: auto;
	margin-right: auto;
}
.mod_article.max-1400 .ce_image figure,
.mod_article.max-1400 .ce_image img {
	margin-left: auto;
	margin-right: auto;
}
