:focus {
    outline: 0
}

* {
    padding: 0;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

body,html {
    border: 0;
    height: 100%;
    scroll-padding-top: 80px
}

body {
    font-size: var(--body-size-mobile);
    font-weight: var(--body-weight);
    line-height: var(--body-line-height-mobile);
    font-family: var(--body-family);
    color: var(--body-color);
    background-color: #fff;
    display: flex;
    flex-direction: column;
    transition: background-color .2s ease;
    min-height: 100vh;
    min-height: -webkit-fill-available
}

body.oc-edit-buttons-visible {
    margin-top: 51px
}

body .small {
    font-size: var(--bodysmall-size-mobile);
    font-weight: var(--bodysmall-weight);
    line-height: var(--bodysmall-line-height-mobile);
    font-family: var(--bodysmall-family);
    color: var(--bodysmall-color)
}

h1,h2,h3,h4,h5,h6 {
    font-family: var(--typeface-main);
    margin: 0;
    line-height: 1.31;
    color: var(--blue);
    font-weight: 400;
    word-break: break-word
}

h1 {
    font-size: var(--h1-size-mobile);
    font-weight: var(--h1-weight);
    line-height: var(--h1-line-height-mobile);
    text-transform: uppercase;
    font-feature-settings: var(--h1-font-feature-settings)
}

h2 {
    font-size: var(--h2-size-mobile);
    font-weight: var(--h2-weight);
    line-height: var(--h2-line-height-mobile);
    text-transform: uppercase
}

h3 {
    font-size: var(--h3-size-mobile);
    font-weight: var(--h3-weight);
    line-height: var(--h3-line-height-mobile)
}

h4 {
    font-size: var(--h4-size-mobile);
    font-weight: var(--h4-weight);
    line-height: var(--h4-line-height-mobile)
}

h1 .hlight,h2 .hlight {
    color: #154dd1
}

.invert h1,.invert h2,.invert h3,.invert h4,.invert h5,.invert h6 {
    color: #fff
}

.font-14 {
    font-size: 14px;
    margin-bottom: 4px
}

.font-18 {
    font-size: 18px!important
}

.font-24 {
    font-size: 24px!important
}

.font-32 {
    font-size: 32px!important
}

.font-40 {
    font-size: 11vw!important;
    overflow-wrap: break-word
}

.font-48 {
    font-size: 15vw!important;
    overflow-wrap: break-word
}

.font-64 {
    font-size: 64px!important
}

.font-80 {
    font-size: 80px!important
}

.p-sm-1 {
    padding: 0 14px
}

.p-sm-2 {
    padding: 2px 14px
}

.p-sm-3 {
    padding: 6px 14px
}

.p-sm-4 {
    padding: 10px 14px
}

.p-sm-5 {
    padding: 14px 14px
}

.p-sm-6 {
    padding: 20px 14px
}

.p-sm-7 {
    padding: 28px 14px
}

.p-sm-8 {
    padding: 44px 14px
}

.p-sm-9 {
    padding: 52px 14px
}

.p-sm-10 {
    padding: 60px 14px
}

.p-sm-11 {
    padding: 68px 14px
}

.p-sm-12 {
    padding: 76px 14px
}

.p-sm-13 {
    padding: 98px 14px
}

.p-sm-14 {
    padding: 114px 14px
}

a {
    font-weight: var(--link-weight);
    font-size: var(--link-size-mobile);
    line-height: var(--link-line-height);
    color: var(--link-color-primary-default);
    text-decoration: none;
    outline: 0
}

input,select,textarea {
    font-family: var(--body-family)
}

input:-webkit-autofill,input:-webkit-autofill:focus textarea:-webkit-autofill,input:-webkit-autofill:hover,select:-webkit-autofill,select:-webkit-autofill:focus,select:-webkit-autofill:hover,textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px #fff inset!important
}

ul {
    list-style: none
}

strong {
    font-weight: 700
}

.uppercase {
    text-transform: uppercase!important
}

.bold {
    font-weight: 500!important
}

.txt-normal {
    font-weight: 300!important
}

.txt-center {
    text-align: center!important
}

.txt-green {
    color: #23cd94!important
}

span.text {
    line-height: 22px
}

a.txt-green:hover {
    color: #259872!important
}

.txt-dark {
    color: #323a48!important
}

a.txt-dark:hover {
    color: #080a0c!important
}

.bg-white {
    background-color: #fff!important
}

.bg-light-blue {
    background-color: var(--dark-blue-25)
}

.bg-dark-blue {
    background-color: var(--dark-blue-100)
}

.bg-grey {
    background-color: #f6f8fe!important
}

.bg-dark-grey {
    background-color: #323a48!important
}

.bg-clear-blue {
    background-color: #eef3fd!important
}

.bg-blue {
    background-color: #154dd1!important
}

.bg-green {
    background-color: #23cd94!important
}

.bg-dark div:not([class^=opencms]),.bg-dark h1,.bg-dark h2,.bg-dark h3,.bg-dark h4,.bg-dark p,.bg-dark span:not([class^=opencms]) {
    color: #fff
}

.bg-royalblue {
    background-color: #193f9a!important
}

.kicker {
    color: var(--blue);
    font-family: var(--typeface-main);
    font-size: var(--body-size-desktop);
    line-height: var(--link-size-desktop);
    text-transform: uppercase
}

.kicker.bold {
    font-weight: 700
}

.hidden {
    display: none!important
}

.transparent {
    opacity: 0;
    pointer-events: none
}

span[class^=opencms] {
    color: #474747!important
}

main {
    flex: 1 0 auto;
    overflow: hidden;
    /*padding: 96px 12px 48px*/
}

main img,main video {
    max-width: 100%;
    height: auto;
    display: block;
    -webkit-mask-image: -webkit-radial-gradient(white,#000);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden
}

main img.left {
    transform: rotateZ(180deg)
}

.mce-floatpanel.mce-menu,.mce-floatpanel.mce-popover {
    position: fixed
}

@media screen and (min-width: 768px) {
    /*main {
        padding-top:128px;
        padding-left: 40px;
        padding-right: 40px
    }*/

    body .small {
        font-size: var(--bodysmall-size-desktop);
        line-height: var(--bodysmall-line-height-desktop)
    }

    .p-md-1 {
        padding: 0 20px
    }

    .p-md-2 {
        padding: 2px 20px
    }

    .p-md-3 {
        padding: 6px 20px
    }

    .p-md-4 {
        padding: 10px 20px
    }

    .p-md-5 {
        padding: 14px 20px
    }

    .p-md-6 {
        padding: 20px 20px
    }

    .p-md-7 {
        padding: 28px 20px
    }

    .p-md-8 {
        padding: 44px 20px
    }

    .p-md-9 {
        padding: 52px 20px
    }

    .p-md-10 {
        padding: 60px 20px
    }

    .p-md-11 {
        padding: 68px 20px
    }

    .p-md-12 {
        padding: 76px 20px
    }

    .p-md-13 {
        padding: 98px 20px
    }

    .p-md-14 {
        padding: 114px 20px
    }
}

@media screen and (min-width: 400px) {
    .font-40 {
        font-size:40px!important
    }

    .font-48 {
        font-size: 48px!important
    }
}

@media screen and (min-width: 1200px) {
    main .container {
        max-width:1376px;
        margin: 0 auto
    }

    body {
        font-size: var(--body-size-desktop);
        line-height: var(--body-line-height-desktop)
    }

    h1 {
        font-size: var(--h1-size-desktop);
        line-height: var(--h1-line-height-desktop)
    }

    h2 {
        font-size: var(--h2-size-desktop);
        line-height: var(--h2-line-height-desktop)
    }

    h3 {
        font-size: var(--h3-size-desktop);
        line-height: var(--h3-line-height-desktop)
    }

    h4 {
        font-size: var(--h4-size-desktop);
        line-height: var(--h4-line-height-desktop)
    }

    .p-lg-1 {
        padding: 0 24px
    }

    .p-lg-2 {
        padding: 4px 24px
    }

    .p-lg-3 {
        padding: 8px 24px
    }

    .p-lg-4 {
        padding: 12px 24px
    }

    .p-lg-5 {
        padding: 16px 24px
    }

    .p-lg-6 {
        padding: 24px 24px
    }

    .p-lg-7 {
        padding: 32px 24px
    }

    .p-lg-8 {
        padding: 48px 24px
    }

    .p-lg-9 {
        padding: 56px 24px
    }

    .p-lg-10 {
        padding: 64px 24px
    }

    .p-lg-11 {
        padding: 72px 24px
    }

    .p-lg-12 {
        padding: 80px 24px
    }

    .p-lg-13 {
        padding: 104px 24px
    }

    .p-lg-14 {
        padding: 120px 24px
    }
}

_:-ms-fullscreen,:root body {
    min-height: 100vh
}
