:root {
    --accent: #1ea639;
    --accentLight: #5cbd54;
    --blue: #3a4b5d;
    --dark: #373d44;
    --darkGrey: #555;
    --grey: #a7a7a7;
    --lightGrey: #f2f2f2;
    --black: #222;
    --white: #fff;
    --error: #d9444d;
    --formBG: #fff;
    --mainFormColor: #2e363e;
    --secondaryFormColor: #888;
    --borderColor: #888;
    --checkboxBG: #1ea639;
    --checkboxBorder: #222
}

.pt-140, .py-140 {
    padding-top: 140px !important
}

.pt-120, .py-120 {
    padding-top: 120px !important
}

.pt-100, .py-100 {
    padding-top: 100px !important
}

.pt-80, .py-80 {
    padding-top: 80px !important
}

.pt-64, .py-64 {
    padding-top: 64px !important
}

.pt-56, .py-56 {
    padding-top: 56px !important
}

.pt-48, .py-48 {
    padding-top: 48px !important
}

.pt-40, .py-40 {
    padding-top: 40px !important
}

.pt-32, .py-32 {
    padding-top: 32px !important
}

.pt-24, .py-24 {
    padding-top: 24px !important
}

.pt-20, .py-20 {
    padding-top: 20px !important
}

.pt-16, .py-16 {
    padding-top: 16px !important
}

.pt-12, .py-12 {
    padding-top: 12px !important
}

.pt-8, .py-8 {
    padding-top: 8px !important
}

.pt-4, .py-4 {
    padding-top: 4px !important
}

.pb-140, .py-140 {
    padding-bottom: 140px !important
}

.pb-120, .py-120 {
    padding-bottom: 120px !important
}

.pb-100, .py-100 {
    padding-bottom: 100px !important
}

.pb-80, .py-80 {
    padding-bottom: 80px !important
}

.pb-64, .py-64 {
    padding-bottom: 64px !important
}

.pb-56, .py-56 {
    padding-bottom: 56px !important
}

.pb-48, .py-48 {
    padding-bottom: 48px !important
}

.pb-40, .py-40 {
    padding-bottom: 40px !important
}

.pb-32, .py-32 {
    padding-bottom: 32px !important
}

.pb-24, .py-24 {
    padding-bottom: 24px !important
}

.pb-20, .py-20 {
    padding-bottom: 20px !important
}

.pb-16, .py-16 {
    padding-bottom: 16px !important
}

.pb-12, .py-12 {
    padding-bottom: 12px !important
}

.pb-8, .py-8 {
    padding-bottom: 8px !important
}

.pb-4, .py-4 {
    padding-bottom: 4px !important
}

.pl-140, .px-140 {
    padding-left: 140px !important
}

.pl-120, .px-120 {
    padding-left: 120px !important
}

.pl-100, .px-100 {
    padding-left: 100px !important
}

.pl-80, .px-80 {
    padding-left: 80px !important
}

.pl-64, .px-64 {
    padding-left: 64px !important
}

.pl-56, .px-56 {
    padding-left: 56px !important
}

.pl-48, .px-48 {
    padding-left: 48px !important
}

.pl-40, .px-40 {
    padding-left: 40px !important
}

.pl-32, .px-32 {
    padding-left: 32px !important
}

.pl-24, .px-24 {
    padding-left: 24px !important
}

.pl-20, .px-20 {
    padding-left: 20px !important
}

.pl-16, .px-16 {
    padding-left: 16px !important
}

.pl-12, .px-12 {
    padding-left: 12px !important
}

.pl-8, .px-8 {
    padding-left: 8px !important
}

.pl-4, .px-4 {
    padding-left: 4px !important
}

.pr-140, .px-140 {
    padding-right: 140px !important
}

.pr-120, .px-120 {
    padding-right: 120px !important
}

.pr-100, .px-100 {
    padding-right: 100px !important
}

.pr-80, .px-80 {
    padding-right: 80px !important
}

.pr-64, .px-64 {
    padding-right: 64px !important
}

.pr-56, .px-56 {
    padding-right: 56px !important
}

.pr-48, .px-48 {
    padding-right: 48px !important
}

.pr-40, .px-40 {
    padding-right: 40px !important
}

.pr-32, .px-32 {
    padding-right: 32px !important
}

.pr-24, .px-24 {
    padding-right: 24px !important
}

.pr-20, .px-20 {
    padding-right: 20px !important
}

.pr-16, .px-16 {
    padding-right: 16px !important
}

.pr-12, .px-12 {
    padding-right: 12px !important
}

.pr-8, .px-8 {
    padding-right: 8px !important
}

.pr-4, .px-4 {
    padding-right: 4px !important
}

.mt-140, .my-140 {
    margin-top: 140px !important
}

.mt-120, .my-120 {
    margin-top: 120px !important
}

.mt-100, .my-100 {
    margin-top: 100px !important
}

.mt-80, .my-80 {
    margin-top: 80px !important
}

.mt-64, .my-64 {
    margin-top: 64px !important
}

.mt-56, .my-56 {
    margin-top: 56px !important
}

.mt-48, .my-48 {
    margin-top: 48px !important
}

.mt-40, .my-40 {
    margin-top: 40px !important
}

.mt-32, .my-32 {
    margin-top: 32px !important
}

.mt-24, .my-24 {
    margin-top: 24px !important
}

.mt-20, .my-20 {
    margin-top: 20px !important
}

.mt-16, .my-16 {
    margin-top: 16px !important
}

.mt-12, .my-12 {
    margin-top: 12px !important
}

.mt-8, .my-8 {
    margin-top: 8px !important
}

.mt-4, .my-4 {
    margin-top: 4px !important
}

.mb-140, .my-140 {
    margin-bottom: 140px !important
}

.mb-120, .my-120 {
    margin-bottom: 120px !important
}

.mb-100, .my-100 {
    margin-bottom: 100px !important
}

.mb-80, .my-80 {
    margin-bottom: 80px !important
}

.mb-64, .my-64 {
    margin-bottom: 64px !important
}

.mb-56, .my-56 {
    margin-bottom: 56px !important
}

.mb-48, .my-48 {
    margin-bottom: 48px !important
}

.mb-40, .my-40 {
    margin-bottom: 40px !important
}

.mb-32, .my-32 {
    margin-bottom: 32px !important
}

.mb-24, .my-24 {
    margin-bottom: 24px !important
}

.mb-20, .my-20 {
    margin-bottom: 20px !important
}

.mb-16, .my-16 {
    margin-bottom: 16px !important
}

.mb-12, .my-12 {
    margin-bottom: 12px !important
}

.mb-8, .my-8 {
    margin-bottom: 8px !important
}

.mb-4, .my-4 {
    margin-bottom: 4px !important
}

.ml-140, .mx-140 {
    margin-left: 140px !important
}

.ml-120, .mx-120 {
    margin-left: 120px !important
}

.ml-100, .mx-100 {
    margin-left: 100px !important
}

.ml-80, .mx-80 {
    margin-left: 80px !important
}

.ml-64, .mx-64 {
    margin-left: 64px !important
}

.ml-56, .mx-56 {
    margin-left: 56px !important
}

.ml-48, .mx-48 {
    margin-left: 48px !important
}

.ml-40, .mx-40 {
    margin-left: 40px !important
}

.ml-32, .mx-32 {
    margin-left: 32px !important
}

.ml-24, .mx-24 {
    margin-left: 24px !important
}

.ml-20, .mx-20 {
    margin-left: 20px !important
}

.ml-16, .mx-16 {
    margin-left: 16px !important
}

.ml-12, .mx-12 {
    margin-left: 12px !important
}

.ml-8, .mx-8 {
    margin-left: 8px !important
}

.ml-4, .mx-4 {
    margin-left: 4px !important
}

.mr-140, .mx-140 {
    margin-right: 140px !important
}

.mr-120, .mx-120 {
    margin-right: 120px !important
}

.mr-100, .mx-100 {
    margin-right: 100px !important
}

.mr-80, .mx-80 {
    margin-right: 80px !important
}

.mr-64, .mx-64 {
    margin-right: 64px !important
}

.mr-56, .mx-56 {
    margin-right: 56px !important
}

.mr-48, .mx-48 {
    margin-right: 48px !important
}

.mr-40, .mx-40 {
    margin-right: 40px !important
}

.mr-32, .mx-32 {
    margin-right: 32px !important
}

.mr-24, .mx-24 {
    margin-right: 24px !important
}

.mr-20, .mx-20 {
    margin-right: 20px !important
}

.mr-12, .mr-16, .mx-12, .mx-16 {
    margin-right: 16px !important
}

.mr-8, .mx-8 {
    margin-right: 8px !important
}

.mr-4, .mx-4 {
    margin-right: 4px !important
}

@media (max-width: 1152px) {
    .pt-120, .pt-140, .py-120, .py-140 {
        padding-top: 100px !important
    }

    .pt-100, .py-100 {
        padding-top: 80px !important
    }

    .pt-80, .py-80 {
        padding-top: 64px !important
    }

    .pt-64, .py-64 {
        padding-top: 56px !important
    }

    .pt-48, .py-48 {
        padding-top: 40px !important
    }

    .pt-40, .py-40 {
        padding-top: 32px !important
    }

    .pb-120, .pb-140, .py-120, .py-140 {
        padding-bottom: 100px !important
    }

    .pb-100, .py-100 {
        padding-bottom: 80px !important
    }

    .pb-80, .py-80 {
        padding-bottom: 64px !important
    }

    .pb-64, .py-64 {
        padding-bottom: 56px !important
    }

    .pb-48, .py-48 {
        padding-bottom: 40px !important
    }

    .pb-40, .py-40 {
        padding-bottom: 32px !important
    }

    .pl-120, .pl-140, .px-120, .px-140 {
        padding-left: 100px !important
    }

    .pl-100, .px-100 {
        padding-left: 80px !important
    }

    .pl-80, .px-80 {
        padding-left: 64px !important
    }

    .pl-64, .px-64 {
        padding-left: 56px !important
    }

    .pl-48, .px-48 {
        padding-left: 40px !important
    }

    .pl-40, .px-40 {
        padding-left: 32px !important
    }

    .pr-120, .pr-140, .px-120, .px-140 {
        padding-right: 100px !important
    }

    .pr-100, .px-100 {
        padding-right: 80px !important
    }

    .pr-80, .px-80 {
        padding-right: 64px !important
    }

    .pr-64, .px-64 {
        padding-right: 56px !important
    }

    .pr-48, .px-48 {
        padding-right: 40px !important
    }

    .pr-40, .px-40 {
        padding-right: 32px !important
    }

    .mt-120, .mt-140, .my-120, .my-140 {
        margin-top: 100px !important
    }

    .mt-100, .my-100 {
        margin-top: 80px !important
    }

    .mt-80, .my-80 {
        margin-top: 64px !important
    }

    .mt-64, .my-64 {
        margin-top: 56px !important
    }

    .mt-48, .my-48 {
        margin-top: 40px !important
    }

    .mt-40, .my-40 {
        margin-top: 32px !important
    }

    .mb-120, .mb-140, .my-120, .my-140 {
        margin-bottom: 100px !important
    }

    .mb-100, .my-100 {
        margin-bottom: 80px !important
    }

    .mb-80, .my-80 {
        margin-bottom: 64px !important
    }

    .mb-64, .my-64 {
        margin-bottom: 56px !important
    }

    .mb-48, .my-48 {
        margin-bottom: 40px !important
    }

    .mb-40, .my-40 {
        margin-bottom: 32px !important
    }

    .ml-120, .ml-140, .mx-120, .mx-140 {
        margin-left: 100px !important
    }

    .ml-100, .mx-100 {
        margin-left: 80px !important
    }

    .ml-80, .mx-80 {
        margin-left: 64px !important
    }

    .ml-64, .mx-64 {
        margin-left: 56px !important
    }

    .ml-48, .mx-48 {
        margin-left: 40px !important
    }

    .ml-40, .mx-40 {
        margin-left: 32px !important
    }

    .mr-120, .mr-140, .mx-120, .mx-140 {
        margin-right: 100px !important
    }

    .mr-100, .mx-100 {
        margin-right: 80px !important
    }

    .mr-80, .mx-80 {
        margin-right: 64px !important
    }

    .mr-48, .mx-48 {
        margin-right: 40px !important
    }

    .mr-40, .mx-40 {
        margin-right: 32px !important
    }
}

@media (max-width: 767px) {
    .pt-140, .py-140 {
        padding-top: 80px !important
    }

    .pb-140, .py-140 {
        padding-bottom: 80px !important
    }

    .pl-140, .px-140 {
        padding-left: 80px !important
    }

    .pr-140, .px-140 {
        padding-right: 80px !important
    }

    .mt-140, .my-140 {
        margin-top: 80px !important
    }

    .mb-140, .my-140 {
        margin-bottom: 80px !important
    }

    .ml-140, .mx-140 {
        margin-left: 80px !important
    }

    .mr-140, .mx-140 {
        margin-right: 80px !important
    }
}

.h1, h1 {
    font-size: 32px
}

.h1, .h2, .h2-caps, h1, h2 {
    font-weight: 600;
    line-height: 130%
}

.h2, .h2-caps, h2 {
    font-size: 28px
}

.h2-caps {
    text-transform: uppercase
}

.h3, .h3-bold, blockquote, blockquote *, h3 {
    font-size: 24px;
    font-weight: 600;
    line-height: 130%
}

.h3 {
    font-weight: 400
}

.h4, .h4-bold, .h4-caps, h4 {
    font-size: 20px;
    font-weight: 400;
    line-height: 130%
}

.h4-bold, .h4-caps {
    font-weight: 600
}

.h4-caps {
    text-transform: uppercase
}

.body-l, .body-l-bold, .body-l-medium {
    font-size: 18px;
    font-weight: 400;
    line-height: 130%
}

.body-l-medium {
    font-weight: 600
}

.body-l-bold {
    font-weight: 700
}

.body-m, .body-m-bold, .body-m-medium {
    font-size: 16px;
    font-weight: 400;
    line-height: 130%
}

.body-m-medium {
    font-weight: 600
}

.body-m-bold {
    font-weight: 700
}

.body-s, .body-s-bold {
    font-size: 15px;
    font-weight: 400;
    line-height: 130%
}

.body-s-bold {
    font-weight: 600
}

.body-xs, .body-xs-bold {
    font-size: 14px;
    font-weight: 400;
    line-height: 130%
}

.body-xs-bold {
    font-weight: 600
}

.body-xxs {
    font-size: 13px;
    font-weight: 400;
    line-height: 130%
}

a {
    color: var(--accent);
    display: inline;
    text-decoration: none;
    -webkit-transition: color .2s, font-weight .2s;
    -o-transition: color .2s, font-weight .2s;
    transition: color .2s, font-weight .2s
}

@media (max-width: 1152px) {
    .h1, h1 {
        font-size: 28px
    }

    .h2, .h2-caps, h2 {
        font-size: 24px
    }

    .h3, .h3-bold, blockquote, blockquote *, h3 {
        font-size: 20px
    }

    .h4, .h4-bold, .h4-caps, h4 {
        font-size: 18px
    }
}

@media (max-width: 767px) {
    .h1, h1 {
        font-size: 30px
    }
}

body .hs-form-field {
    margin-bottom: 20px;
    position: relative
}

body .hs-form-field > label {
    color: var(--borderColor);
    display: block;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    margin-bottom: 4px
}

.hs-form .hs-richtext.hs-main-font-element {
    margin: 32px 0
}

.hs-form .hs-richtext.hs-main-font-element > * {
    margin-bottom: 8px
}

.hs-form .hs-richtext.hs-main-font-element > :last-child {
    margin-bottom: 0
}

body .hs-error-msgs {
    margin: 0;
    padding: 0
}

.hs-error-msgs label {
    font-size: 10px
}

body .hs-error-msgs li:before {
    content: none
}

body form.hs-form fieldset {
    max-width: 100%
}

body form.hs-form .legal-consent-container {
    margin-bottom: 32px
}

body form.hs-form .legal-consent-container .field.hs-form-field {
    margin: 0
}

body .legal-consent-container .hs-richtext {
    font-size: 13px;
    font-weight: 400;
    line-height: 130%;
    margin-bottom: 12px
}

body .legal-consent-container .hs-richtext:last-child {
    margin-bottom: 0
}

body form.hs-form fieldset .input {
    margin: 0 !important
}

body form.hs-form fieldset .hs-input {
    width: 100% !important
}

fieldset.form-columns-2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 20px
}

body input[type=color], body input[type=date], body input[type=datetime-local], body input[type=datetime], body input[type=email], body input[type=month], body input[type=number], body input[type=password], body input[type=search], body input[type=tel], body input[type=text], body input[type=time], body input[type=url], body input[type=week], body select, body textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    border: 1px solid var(--borderColor);
    border-radius: 4px;
    color: var(--black);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    outline: unset;
    padding: 19px 17px;
    -webkit-transition: border .2s;
    -o-transition: border .2s;
    transition: border .2s;
    width: 100%
}

body textarea {
    max-width: 100%;
    min-height: 80px;
    width: 100%
}

textarea::-webkit-scrollbar {
    width: 2px
}

textarea::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, .3)
}

textarea::-webkit-scrollbar-thumb {
    background-color: var(--textColor);
    outline: 0 solid
}

body input[type=color]:hover, body input[type=date]:hover, body input[type=datetime-local]:hover, body input[type=datetime]:hover, body input[type=email]:hover, body input[type=month]:hover, body input[type=number]:hover, body input[type=password]:hover, body input[type=search]:hover, body input[type=tel]:hover, body input[type=text]:hover, body input[type=time]:hover, body input[type=url]:hover, body input[type=week]:hover, body textarea:hover {
    cursor: text
}

body select:hover {
    cursor: pointer
}

body input[type=file] {
    color: var(--secondaryFormColor);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    margin-top: 8px
}

body input::file-selector-button {
    display: none
}

body input::-webkit-file-upload-button {
    display: none
}

body input::file-upload-button {
    display: none
}

body .hs_upload_file {
    margin: 0
}

body .hs_upload_file label {
    color: var(--borderColor);
    cursor: pointer;
    padding-left: 40px;
    position: relative
}

body .hs_upload_file label:before {
    content: url("../images/svg/download-accent.svg");
    left: 0;
    position: absolute;
    top: 0
}

body input:-webkit-autofill {
    border: 0;
    border: 1px solid var(--borderColor) !important;
    border-radius: 0 !important;
    -webkit-box-shadow: 0 0 0 40px var(--white) inset !important;
    -webkit-text-fill-color: var(--black) !important
}

body input:autofill {
    border: 0;
    border: 1px solid var(--borderColor) !important;
    border-radius: 0 !important;
    -webkit-box-shadow: 0 0 0 40px var(--white) inset !important;
    -webkit-text-fill-color: var(--black) !important
}

body input.error, body input.invalid {
    border-color: var(--error)
}

body form.hs-form ul.no-list.hs-error-msgs.inputs-list {
    color: var(--error);
    font-size: 12px;
    font-weight: 400;
    line-height: 165%;
    margin: 0;
    padding: 4px 0 0;
    position: relative;
    z-index: 1
}

body form.hs-form .hs-form-field ul.inputs-list li, body form.hs-form li {
    list-style-type: none
}

body form.hs-form .hs_error_rollup {
    display: none
}

input[type=checkbox]:not(checked):not(#globalunsub) {
    opacity: 0;
    position: absolute;
    z-index: -1
}

input[type=checkbox] + span {
    color: var(--mainFormColor);
    cursor: pointer;
    display: inline-block;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 165%;
    margin: 0;
    padding: 0 0 0 44px;
    position: relative
}

input[type=checkbox] + span a {
    color: var(--accent)
}

input[type=checkbox] + span:not(.hs-form-required), input[type=checkbox] + span > p:not(.hs-form-required) {
    display: inline-block;
    margin: 0
}

input[type=checkbox]:not(checked) + span:before {
    background: transparent;
    border: 1px solid var(--checkboxBorder);
    content: "";
    height: 16px;
    left: 0;
    position: absolute;
    top: 0;
    width: 16px
}

input[type=checkbox]:not(checked) + span:after {
    background: var(--checkboxBG);
    content: "";
    height: 10px;
    left: 3px;
    line-height: 0;
    opacity: 0;
    position: absolute;
    top: 3px;
    -webkit-transition: opacity .2s;
    -o-transition: opacity .2s;
    transition: opacity .2s;
    width: 10px
}

input[type=checkbox]:checked + span:after {
    opacity: 1
}

ul.inputs-list.multi-container > li {
    margin-bottom: 20px
}

ul.inputs-list.multi-container > li:last-child {
    margin-bottom: 0
}

ul.inputs-list.multi-container input[type=checkbox] + span:not(.hs-form-required), ul.inputs-list.multi-container input[type=checkbox] + span > p:not(.hs-form-required) {
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%
}

li.hs-form-radio {
    cursor: pointer;
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
    line-height: 165%
}

li.hs-form-radio input {
    display: none
}

li.hs-form-radio input + span {
    color: var(--black);
    cursor: pointer;
    display: block;
    line-height: 24px;
    min-height: 24px;
    padding-left: 40px;
    position: relative
}

li.hs-form-radio input + span:before {
    border-radius: 24px;
    content: "";
    height: 24px;
    left: 0;
    position: absolute;
    top: 0;
    width: 24px
}

li.hs-form-radio input + span:before, li.hs-form-radio input:hover + span:before {
    border: 1px solid var(--checkboxBorder)
}

li.hs-form-radio input + span:after {
    background: var(--checkboxBG);
    border-radius: 16px;
    content: "";
    height: 16px;
    left: 4px;
    opacity: 0;
    position: absolute;
    top: 4px;
    -webkit-transition: opacity .2s;
    -o-transition: opacity .2s;
    transition: opacity .2s;
    width: 16px
}

li.hs-form-radio input:checked + span:after {
    opacity: 1
}

.legal-consent-container .hs-form-required {
    display: none
}

input:-ms-input-placeholder, textarea::-ms-input-placeholder {
    color: var(--secondaryFormColor)
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    color: var(--secondaryFormColor)
}

input::-moz-placeholder, textarea::-moz-placeholder {
    color: var(--secondaryFormColor)
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
    color: var(--formTextSecondary)
}

input::-ms-input-placeholder, textarea::-ms-input-placeholder {
    color: var(--secondaryFormColor)
}

input::placeholder, textarea::placeholder {
    color: var(--secondaryFormColor)
}

body select {
    color: var(--black)
}

.form-dark select {
    color: var(--white)
}

body select option, body select.is-placeholder {
    color: var(--secondaryFormColor)
}

body select option {
    cursor: pointer
}

.hs-fieldtype-select .input {
    position: relative
}

.hs-fieldtype-select .input:after {
    content: url("../images/svg/arrow-down-grey.svg");
    line-height: 0;
    position: absolute;
    right: 16px;
    top: calc(50% - 3px)
}

@media (max-width: 767px) {
    fieldset.form-columns-2 {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 0
    }

    fieldset.form-columns-2 > div {
        width: 100% !important
    }
}

.button, .button-primary, .button-primary-arrow, .button-secondary, form input[type=submit] {
    background: var(--accent);
    border: 1px solid var(--accent);
    border-radius: 100px;
    color: #fff;
    cursor: pointer;
    display: block;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    max-width: 100%;
    outline: 0;
    padding: 19px 47px;
    position: relative;
    text-align: center;
    -webkit-transition: color .2s, background .2s, border .2s;
    -o-transition: color .2s, background .2s, border .2s;
    transition: color .2s, background .2s, border .2s;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.button-primary-arrow.aos-animate, .button-primary.aos-animate, .button-secondary.aos-animate, .button.aos-animate {
    -webkit-transition: color .2s, background .2s, border .2s !important;
    -o-transition: color .2s, background .2s, border .2s !important;
    transition: color .2s, background .2s, border .2s !important
}

.button-primary:active, .button-primary:focus, .button-primary:hover, .button:active, .button:focus, .button:hover, form input[type=submit]:active, form input[type=submit]:focus, form input[type=submit]:hover {
    background: var(--accentLight);
    border-color: var(--accentLight);
    color: var(--white)
}

.button-primary:disabled, .button:disabled {
    opacity: .5
}

.button-primary-arrow {
    padding: 9px 81px 9px 47px
}

.button-primary-arrow:after {
    content: url("../images/svg/arrow-right-white.svg");
    line-height: 0;
    position: absolute;
    right: 51px;
    top: calc(50% - 6px)
}

.button-primary-arrow:active, .button-primary-arrow:focus, .button-primary-arrow:hover {
    background: var(--accentLight);
    border-color: var(--accentLight);
    color: var(--white)
}

.button-primary-arrow:disabled {
    opacity: .5
}

@media (max-width: 1152px) {
    .button-primary-arrow {
        padding: 9px 66px 9px 31px
    }

    .button-primary-arrow:after {
        right: 36px
    }
}

@media (max-width: 767px) {
    .button-primary-arrow {
        padding: 9px 81px 9px 47px
    }

    .button-primary-arrow:after {
        right: 51px
    }
}

.button-secondary {
    background: transparent;
    border-color: var(--accent);
    color: var(--accent)
}

.button-secondary:active, .button-secondary:focus, .button-secondary:hover {
    border-color: var(--black);
    color: var(--black)
}

.button-secondary:disabled {
    opacity: .5
}

.form-container {
    display: block;
    height: 0;
    left: 0;
    opacity: 0;
    overflow: scroll;
    position: fixed;
    top: 0;
    -webkit-transition: visibility .3s, opacity .3s;
    -o-transition: visibility .3s, opacity .3s;
    transition: visibility .3s, opacity .3s;
    visibility: hidden;
    width: 0;
    z-index: 999999
}

.form-container.open {
    height: 100vh;
    opacity: 1;
    visibility: visible;
    width: 100vw
}

.popup-form {
    position: relative;
    z-index: 999999
}

.popup-form__close {
    background: none;
    border: none;
    cursor: pointer;
    position: absolute;
    right: 60px;
    top: 20px;
    z-index: 1
}

.popup-form__container {
    background-color: #fff;
    left: calc(50% - 560px);
    max-width: 1120px;
    padding: 60px;
    position: absolute;
    top: 120px;
    width: 100%;
    z-index: 99999
}

.popup-form__title {
    position: relative
}

.popup-form__subtitle, .popup-form__title {
    color: var(--black);
    max-width: calc(100% - 32px);
    width: 100%
}

.popup-form__subtitle {
    margin-top: 10px
}

.popup-form__form {
    display: block;
    max-width: 100%;
    width: 100%
}

.popup-form__form form > :first-child .hs-richtext {
    margin-top: 0
}

.popup-form__modal-mask {
    background: rgba(0, 0, 0, .8);
    height: 100vh;
    position: fixed;
    width: 100vw
}

.popup-form .hs-submit input[type=submit] {
    display: block;
    margin: 0 auto 0 0;
    max-width: 480px;
    width: 100%
}

.popup-form .submitted-message {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 8px
}

.popup-form .legal-consent-container {
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px
}

.popup-form .legal-consent-container .hs-richtext {
    margin-bottom: 16px
}

.popup-form .legal-consent-container .hs-richtext:last-child {
    margin-bottom: 0
}

@media (max-width: 1152px) {
    .popup-form__container {
        left: calc(50% - 300px);
        max-width: 600px;
        width: calc(100% - 32px)
    }
}

@media (max-width: 776px) {
    .popup-form__container {
        left: 16px;
        margin: 0 auto;
        padding: 64px 16px 32px;
        right: 16px
    }

    .popup-form__close {
        right: 16px;
        top: 32px
    }

    .popup-form__form, .popup-form__subtitle, .popup-form__title {
        max-width: 100%
    }
}

*, :after, :before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

body, html {
    scroll-behavior: smooth
}

body {
    color: var(--black);
    font-family: Open Sans, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    overflow-x: hidden;
    width: 100%;
    word-break: break-word
}

.body-container-wrapper, .page-center {
    position: relative;
    z-index: 1
}

.page-center {
    float: none;
    margin: 0 auto;
    max-width: 1152px;
    padding-left: 16px;
    padding-right: 16px;
    width: 100%
}

.block-scroll {
    bottom: 0;
    left: 0;
    overflow-y: scroll;
    position: fixed;
    right: 0;
    top: 0;
    touch-action: none;
    -ms-touch-action: none
}

.hidded {
    visibility: hidden
}

.hidded, .show {
    -webkit-transition: visibility 1s;
    -o-transition: visibility 1s;
    transition: visibility 1s
}

.show {
    visibility: visible !important
}

a:last-child, p:last-child {
    margin-bottom: 0
}

img {
    display: block
}

.fh {
    padding-top: 84px
}

.slideToggle--mob {
    display: none
}

.slideToggleContainer {
    display: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
    -webkit-transition: height .35s ease-in-out;
    -o-transition: height .35s ease-in-out;
    transition: height .35s ease-in-out
}

.slideToggleContainer.active {
    display: block
}

.slideToggleContainer--mob {
    display: block;
    overflow: visible
}

@media (max-width: 1152px) {
    .module-container {
        margin-left: auto;
        margin-right: auto;
        max-width: 736px !important
    }
}

@media (max-width: 767px) {
    .module-container {
        max-width: 448px !important
    }

    .slideToggleContainer--mob {
        display: none;
        overflow: hidden
    }

    .slideToggle--mob {
        display: block
    }
}

.search-results .hs-search-field__bar > form {
    border: 0;
    border-bottom: 1px solid var(--black);
    border-radius: 0;
    gap: 0 16px;
    max-width: 100%;
    outline: unset;
    padding: 8px 0;
    width: 100%
}

.search-results .hs-search-field__bar > form > .hs-search-field__input {
    background: none;
    border: 0;
    border-radius: 0;
    outline: 0;
    padding: 0
}

.search-results .hs-search-field__bar > form > .hs-search-field__input::-webkit-search-cancel-button {
    -webkit-appearance: none;
    background-image: url("../images/svg/close-xs.svg");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    cursor: pointer;
    height: 20px;
    margin-left: 8px;
    width: 20px
}

.search-results .hs-search-field__button {
    background: none;
    border: 0;
    cursor: pointer
}

.search-results .hs-search-field__button:focus svg, .search-results .hs-search-field__button:hover svg {
    fill: #000
}

.search-results .hs-search-field__button:active svg {
    fill: #000
}

.search-results .hs-search-field__suggestions-container {
    position: absolute;
    top: 44px;
    width: 100%
}

.search-results .hs-search-field__suggestions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    background: #fff;
    border: 0;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px;
    margin: 0;
    padding: 16px;
    position: absolute;
    top: 16px;
    width: 100%
}

.search-results .hs-search-field--open .hs-search-field__suggestions {
    -webkit-box-shadow: 1px 10px 16px -9px hsla(0, 0%, 48%, .75);
    box-shadow: 1px 10px 16px -9px hsla(0, 0%, 48%, .75);
    gap: 16px
}

.search-results .hs-search-field__suggestions .results-for, .search-results .hs-search-field__suggestions a {
    padding: 0
}

.search-results .hs-search-field__suggestions a {
    color: var(--darkGrey);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px
}

.search-results .hs-search-field__suggestions a:hover {
    background: none;
    color: var(--textColor)
}

.search-results button.hs-search-field__button {
    background: none;
    background: url('../images/svg/search.svg');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 26px;
    border: 0;
    height: 42px;
    width: 42px
}

.search-results button.hs-search-field__button span {
    display: none
}

.search-results .hs-search-results__pagination {
    margin-top: 64px
}

.search-results .hs-search-results__pagination__link--active {
    border: 0;
    font-weight: 700
}

@media (max-width: 767px) {
    .search-results .hs-search-results__pagination__link {
        display: none
    }

    .hs-search-results__pagination__link--next, .hs-search-results__pagination__link--prev {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important
    }
}

.control-menu__sorts {
    border-bottom: 1px solid var(--darkGrey);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 32px
}

.control-menu__sort {
    background: none;
    border: 0;
    color: var(--darkGrey);
    cursor: pointer;
    max-width: 202px;
    padding-bottom: 16px;
    text-align: left;
    width: 100%
}

.control-menu__sort.checked {
    border-bottom: 2px solid var(--black);
    color: var(--accent)
}

.blog__content {
    background: var(--white);
    gap: 64px
}

.blog__content, .blog__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

.blog__wrapper {
    gap: 48px;
    padding-top: 64px;
    z-index: 2
}

.blog__body {
    max-width: 736px;
    width: 100%
}

.blog__posts {
    margin-bottom: 64px
}

.blog__post-listing {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 64px 32px
}

.blog__post-item {
    border-bottom: 1px solid #ddd;
    max-width: 202px;
    padding-bottom: 16px;
    position: relative;
    width: 100%
}

.blog__blog__post-item-link {
    border: 0;
    bottom: 0;
    display: block;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1
}

.blog__post-item-cover {
    aspect-ratio: 1.91/1;
    margin-bottom: 24px;
    max-width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.post-item__title {
    margin-bottom: 16px
}

.post-item__info {
    gap: 16px
}

.post-item__info, .post-item__reading-minutes {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.post-item__reading-minutes {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    -webkit-box-flex: 0;
    color: var(--accent);
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-left: 0;
    padding-right: 12px
}

.post-item__reading-minutes:after {
    background: var(--black);
    content: "";
    height: 100%;
    line-height: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 1px
}

.post-item__author {
    color: rgba(0, 0, 0, .5)
}

.blog-pagination {
    color: #012c4b;
    gap: 24px
}

.blog-pagination, .pagination-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.pagination-button {
    background: none;
    border: 0;
    cursor: pointer;
    height: 16px;
    width: 16px
}

.pagination-button:disabled {
    opacity: .35
}

.pagination-button svg {
    pointer-events: none
}

.blog__subscribe {
    background: var(--white);
    border: 1px solid var(--black);
    padding: 48px 32px
}

.blog__subscribe .hs-richtext.hs-main-font-element {
    margin: 0 0 32px
}

.blog__subscribe .hs_cos_wrapper_type_blog_subscribe {
    max-width: 544px;
    width: 100%
}

.blog__subscribe form {
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    width: 100%
}

.blog__subscribe form input[type=submit] {
    background: var(--accent);
    border-color: var(--accent);
    color: var(--white);
    max-width: 100% !important;
    width: 100% !important
}

.blog__subscribe form input[type=submit]:hover {
    background: transparent !important;
    border-color: var(--accent) !important;
    color: var(--accent) !important
}

.blog__subscribe .submitted-message > * {
    margin-bottom: 8px
}

.blog__subscribe .submitted-message > :last-child {
    margin-bottom: 0
}

.blog__content .blog__subscribe-container, .blog__nav-mob, .blog__subscribe--mob {
    display: none
}

@media (max-width: 1152px) {
    .control-menu__sort {
        max-width: 226px
    }

    .blog__post-listing {
        gap: 32px 16px
    }

    .blog__post-item {
        max-width: 224px
    }

    .blog__subscribe--mob {
        border: 0;
        display: flex;
        gap: 32px;
        margin-bottom: 56px;
        padding: 0
    }

    .blog__subscribe--mob > * {
        max-width: 352px;
        width: 100%
    }

    .blog__subscribe--mob form {
        border: 1px solid var(--black);
        padding: 48px 32px
    }

    .blog__nav-mob {
        display: block;
        margin-bottom: 20px
    }

    .blog__nav-mob .module-container {
        display: flex;
        flex-direction: column
    }

    .blog__nav-mob-head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        gap: 20px;
        justify-content: flex-end
    }

    .blog__nav-mob-button {
        align-items: center;
        background: none;
        border: 1px solid var(--darkGrey);
        display: flex;
        height: 48px;
        justify-content: center;
        transition: background .2s, border .2s;
        width: 48px
    }

    .blog__nav-mob-button * {
        pointer-events: none
    }

    .blog__nav-mob-button.open {
        background: var(--accent);
        border: 1px solid var(--accent)
    }

    .blog__nav-mob-button path {
        transition: fill .2s
    }

    .blog__nav-mob-button.open path {
        fill: #fff
    }

    .blog__nav-mob-search, .blog__nav-mob-tags {
        height: 0;
        opacity: 0;
        padding: 0;
        -webkit-transition: visibility .2s, opacity .2s, height .2s, padding .2s;
        -o-transition: visibility .2s, opacity .2s, height .2s, padding .2s;
        transition: visibility .2s, opacity .2s, height .2s, padding .2s;
        visibility: hidden
    }

    .blog__nav-mob-search.open, .blog__nav-mob-tags.open {
        height: auto;
        opacity: 1;
        padding-top: 20px;
        visibility: visible
    }

    .blog__subscribe-container {
        max-width: 448px;
        width: 100%
    }

    .blog__content {
        flex-direction: column;
        gap: 0
    }

    .blog__content .blog__subscribe-container {
        display: block
    }

    .blog__content .blog__subscribe--mob {
        margin-top: 0
    }
}

@media (max-width: 767px) {
    .control-menu__sort {
        max-width: 50%
    }

    .blog__post-item {
        max-width: 100%
    }

    .blog__subscribe--mob form {
        padding: 48px 16px
    }

    .blog__subscribe--mob > img {
        display: none
    }
}

.blog__author {
    max-width: 736px;
    width: 100%
}

.author-posts.blog__post-listing {
    gap: 48px 32px;
    margin-left: auto;
    max-width: 736px;
    width: 100%
}

.author-posts .blog__post-item {
    max-width: 224px
}

@media (max-width: 1152px) {
    .author-posts.blog__post-listing {
        margin-right: auto
    }
}

@media (max-width: 767px) {
    .author-posts.blog__post-listing {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 24px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .author-posts .blog__post-item {
        max-width: 448px
    }
}

.blog-post__breadcrumb {
    margin-bottom: 20px
}

.blog-post__back-link, .blog-post__breadcrumb-post {
    color: var(--grey);
    display: inline-block;
    position: relative
}

.blog-post__breadcrumb-post {
    color: var(--black)
}

.blog-post__back-link:hover {
    color: var(--accent)
}

.blog-post__body-wrapper {
    max-width: 736px;
    width: 100%
}

.blog-post__head h1 {
    color: var(--blue)
}

.blog-post__tags {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 12px;
    list-style: none
}

.blog-post__tag a {
    background: transparent;
    border: 1px solid var(--black);
    border-radius: 16px;
    color: var(--black);
    display: block;
    font-size: 14px;
    line-height: 10px;
    padding: 10px 15px;
    -webkit-transition: color .2s, background .2s, border .2s;
    -o-transition: color .2s, background .2s, border .2s;
    transition: color .2s, background .2s, border .2s
}

.blog-post__tag a:active, .blog-post__tag a:focus, .blog-post__tag a:hover {
    background: var(--accent);
    border-color: var(--accent);
    color: var(--white)
}

.blog-post__head {
    background: var(--white);
    padding: 40px 32px
}

.blog-post__head-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 32px
}

.blog-post__author, .blog-post__head-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.blog-post__author {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px
}

.blog-post__author-img {
    border-radius: 64px;
    max-width: 64px;
    overflow: hidden;
    width: 100%
}

.blog-post__author-name {
    color: var(--black);
    display: block
}

.blog-post__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 12px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.blog-post__date {
    color: var(--grey)
}

.blog-post__reading-minutes {
    position: relative;
    -webkit-box-flex: 0;
    color: var(--grey);
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-left: 36px
}

.blog-post__reading-minutes:after {
    content: url("../images/svg/time-grey.svg");
    height: 17px;
    left: 12px;
    line-height: 0;
    position: absolute;
    top: calc(50% - 8.5px);
    width: 17px
}

.blog-post__reading-minutes:before {
    background: var(--grey);
    content: "";
    height: 100%;
    left: 0;
    line-height: 0;
    position: absolute;
    top: 0;
    width: 1px
}

.blog-post__featured-image {
    margin-top: 8px;
    max-width: 100%;
    width: 100%
}

.blog-post__body {
    background: var(--lightGrey)
}

.blog-post__body > .page-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 64px;
    position: relative
}

.blog-post__content {
    background: var(--white);
    padding-bottom: 80px;
    padding-left: 32px;
    padding-right: 32px;
    width: 100%
}

.blog-post__content img {
    height: auto;
    max-width: 100%
}

.blog-post__content h1, .blog-post__content h2, .blog-post__content h3, .blog-post__content img {
    margin-bottom: 40px;
    margin-top: 40px
}

.blog-post__content h4, .blog-post__content h5 {
    margin-bottom: 20px
}

.blog-post__content h6 {
    margin-bottom: 8px
}

.blog-post__content ol, .blog-post__content ul {
    margin-bottom: 20px;
    margin-top: 20px;
    position: relative
}

.blog-post__content ol {
    padding-left: 20px
}

.blog-post__content li {
    margin-bottom: 12px;
    position: relative
}

.blog-post__content ol > li {
    list-style-position: outside
}

.blog-post__content ul > li {
    list-style: none;
    padding-left: 24px
}

.blog-post__content ul > li:before {
    background: var(--black);
    border-radius: 6px;
    content: "";
    height: 6px;
    left: 0;
    position: absolute;
    top: 7px;
    width: 6px
}

.blog-post__content li:last-child {
    margin-bottom: 0
}

.blog-post__content blockquote {
    background: var(--lightGrey);
    color: var(--accent);
    display: block;
    margin-bottom: 40px;
    margin-top: 40px;
    padding: 80px 32px 32px;
    position: relative
}

.blog-post__content blockquote:before {
    content: url("../images/svg/blockquote.svg");
    left: 32px;
    line-height: 0;
    position: absolute;
    top: 32px
}

.blog-post__content p {
    margin-bottom: 8px
}

.blog-post__content p:last-child {
    margin-bottom: 0
}

.blog-post__content .hs-cta-wrapper {
    display: block;
    margin-bottom: 40px;
    margin-top: 40px
}

.blog-post__content #hs_cos_wrapper_post_body > :first-child {
    margin-top: 0
}

.blog-post__content #hs_cos_wrapper_post_body > :last-child {
    margin-bottom: 0
}

.blog-post__side-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 64px;
    height: calc(100vh - 116px);
    margin: 0 -16px;
    max-width: 352px;
    overflow: scroll;
    padding: 0 16px;
    position: sticky;
    top: 100px;
    width: 100%;
    -ms-overflow-style: none;
    scrollbar-width: none
}

.blog-post__side-nav::-webkit-scrollbar {
    display: none
}

.post-bottom {
    background: #fff
}

.post-rec__title {
    margin-bottom: 40px
}

.post-rec__button {
    margin-top: 40px
}

@media (max-width: 1152px) {
    .blog-post__body-wrapper {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        gap: 100px;
        margin-left: auto;
        margin-right: auto;
        max-width: 736px
    }

    .blog-post__head .page-center {
        padding-top: 64px
    }

    .blog-post__head-container {
        gap: 32px
    }

    .blog-post__button {
        max-width: 332px
    }

    .blog-post__side-nav {
        display: none
    }

    .blog-post__content {
        max-width: 100%;
        padding-bottom: 56px
    }
}

@media (max-width: 767px) {
    .blog-post__body {
        background: var(--white);
        padding-bottom: 80px
    }

    .blog-post__body-wrapper {
        max-width: 448px
    }

    .blog-post__head {
        padding-left: 0;
        padding-right: 0;
        padding-top: 0
    }

    .post-rec {
        padding-top: 48px
    }

    .post-rec__title {
        margin-bottom: 48px
    }

    .blog-post__content {
        padding-bottom: 0;
        padding-left: 0;
        padding-right: 0
    }

    .blog-post__content blockquote {
        padding: 80px 32px 32px
    }
}