@keyframes a {
    25% {
        background-position: left 15px center;
    }

    40% {
        background-position: left 100px center;
    }

    41% {
        background-position: left 100px top -1000px;
    }

    50% {
        background-position: left -60px top -1000px;
    }

    59% {
        background-position: left -60px center;
    }

    60% {
        background-position: left -60px center;
    }

    75% {
        background-position: 50%;
    }
}

@keyframes b {
    25% {
        background-position: left 50px center;
    }

    40% {
        background-position: left -90px center;
    }

    41% {
        background-position: left -90px top -1000px;
    }

    50% {
        background-position: left 90px top -1000px;
    }

    59% {
        background-position: left 90px center;
    }

    60% {
        background-position: left 90px center;
    }

    75% {
        background-position: 50%;
    }
}

@keyframes c {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }

    to {
        transform: translateY(0);
    }
}
/*! normalize.css v4.0.0 | MIT License | github.com/necolas/normalize.css */ html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
    display: block;
}

audio, canvas, progress, video {
    display: inline-block;
}

    audio:not([controls]) {
        display: none;
        height: 0;
    }

progress {
    vertical-align: baseline;
}

[hidden], template {
    display: none;
}

a {
    background-color: transparent;
}

    a:active, a:hover {
        outline-width: 0;
    }

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
}

b, strong {
    font-weight: inherit;
    font-weight: bolder;
}

dfn {
    font-style: italic;
}

h1 {
    font-size: 2em;
    margin: .67em 0;
}

mark {
    background-color: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -.25em;
}

sup {
    top: -.5em;
}

img {
    border-style: none;
}

svg:not(:root) {
    overflow: hidden;
}

code, kbd, pre, samp {
    font-family: monospace,monospace;
    font-size: 1em;
}

figure {
    margin: 1em 40px;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

button, input, select, textarea {
    font: inherit;
}

optgroup {
    font-weight: 700;
}

button, input, select {
    overflow: visible;
}

button, input, select, textarea {
    margin: 0;
}

button, select {
    text-transform: none;
}

[type=button], [type=reset], [type=submit], button {
    cursor: pointer;
}

[disabled] {
    cursor: default;
}

[type=reset], [type=submit], button, html [type=button] {
    -webkit-appearance: button;
}

    button::-moz-focus-inner, input::-moz-focus-inner {
        border: 0;
        padding: 0;
    }

    button:-moz-focusring, input:-moz-focusring {
        outline: 1px dotted ButtonText;
    }

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em;
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
}

textarea {
    overflow: auto;
}

[type=checkbox], [type=radio] {
    box-sizing: border-box;
    padding: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto;
}

[type=search] {
    -webkit-appearance: textfield;
}

    [type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
        -webkit-appearance: none;
    }

html {
    font-size: 62.5%;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

body {
    font-size: 1.6rem;
    background-color: #fff;
    color: #3a4953;
    font-family: Source Sans Pro,sans-serif;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

::-moz-selection {
    color: #fff;
    background: #009a47;
    text-shadow: none;
}

::-moz-selection, ::selection {
    color: #fff;
    background: #009a47;
    text-shadow: none;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
    vertical-align: middle;
    -ms-interpolation-mode: bicubic;
}

.clearfix:after, .clearfix:before {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.width-full {
    width: 100% !important;
}

.width-auto {
    width: auto !important;
}

.visible-print {
    display: none !important;
}

@media print {
    .print-visible {
        display: block !important;
    }

    .print-hidden {
        display: none !important;
    }
}

.img-responsive {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.hide-mobile {
    display: none !important;
}

@media screen and (min-width:768px) {
    .hide-mobile {
        display: block !important;
    }
}

.visually-hidden {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
}

.invisible {
    visibility: hidden;
}

.top-border:before {
    top: 0;
}

.bottom-border:before, .top-border:before {
    content: "";
    position: absolute;
    height: 18px;
    width: 100%;
    background: linear-gradient(180deg,#009a47 33.333%,#7ebc56 0,#7ebc56 66.666%,#b0c954 0,#b0c954);
    z-index: 400;
}

.bottom-border:before {
    bottom: 0;
}

.bg-white {
    background-color: #fff;
}

.bg-blue {
    background-color: #f7fbfc;
}

    .bg-blue + .bg-blue, .bg-white + .bg-white {
        padding-top: 0;
    }

.bottom-border + .top-border {
    background-color: #ff0;
}

    .bottom-border + .top-border:before {
        content: none !important;
    }

.bg-error-blue {
    background-color: #f0f7fb;
}

.background-overlay {
    position: relative;
}

    .background-overlay:after {
        content: "";
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background-color: #3a4953;
        opacity: .8;
    }

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

.general-image-list-promo__title, .h1, .h2, .h3, .h4, .h5, .umbraco-forms-page .formtitle h2, h1, h2, h3, h4, h5 {
    margin: 0;
    padding: 0;
    color: #3a4953;
    font-weight: 400;
    margin-bottom: 1em;
}

.h1, .umbraco-forms-page .formtitle h2, h1 {
    font-size: 2.4rem;
    line-height: 3rem;
    letter-spacing: .1em;
    margin-bottom: 4rem;
    padding-left: 45px;
    position: relative;
}

@media screen and (min-width:992px) {
    .h1, .umbraco-forms-page .formtitle h2, h1 {
        font-size: 3rem;
        line-height: 4rem;
        margin-bottom: 6rem;
    }
}

.h1:after, .umbraco-forms-page .formtitle h2:after, h1:after {
    content: "";
    width: 24px;
    height: 3px;
    background-color: #e4032c;
    position: absolute;
    top: 1.5rem;
    left: 0;
}

@media screen and (min-width:992px) {
    .h1:after, .umbraco-forms-page .formtitle h2:after, h1:after {
        top: 2rem;
    }
}

.general-image-list-promo__title, .h2, h2 {
    font-size: 2rem;
    letter-spacing: .1em;
    padding-bottom: 1.5rem;
    border-bottom: 2px solid #3a4953;
    display: inline-block;
}

@media screen and (min-width:992px) {
    .general-image-list-promo__title, .h2, h2 {
        font-size: 2.4rem;
    }
}

.h3, h3 {
    font-size: 2rem;
    letter-spacing: 1px;
    padding-bottom: 1.5rem;
    border-bottom: 2px solid #3a4953;
    display: inline-block;
}

.h4, h4 {
    font-size: 1.8rem;
    line-height: 2.4rem;
}

.h4, .h5, h4, h5 {
    font-weight: 600;
}

.h5, h5 {
    font-size: 1.6rem;
}

a {
    text-decoration: none;
}

    a, a:visited {
        color: #3a4953;
    }

        a:focus, a:hover {
            color: #3a4953;
            text-decoration: underline;
        }

        a:focus {
            outline: none;
        }

p {
    margin: 0 0 1rem;
    padding: 0;
}

.red-text, .red-text:visited {
    color: #e4032c;
    font-weight: 600;
}

ol, ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

    ol:not([class]), ul:not([class]) {
        margin: 0 12px 8px 15px;
        list-style-position: outside;
    }

    ol:not([class]) {
        list-style-type: decimal;
    }

    ul:not([class]) {
        list-style-type: disc;
    }

dt {
    font-weight: 700;
    margin-left: 15px;
}

hr {
    height: 1px;
    margin: 1em 0;
    padding: 0;
    display: block;
    border: 0;
    border-top: 1px solid #f6fafc;
}

blockquote {
    margin: 0;
    padding: 0 10px;
    border-left: 5px solid #f6fafc;
}

ins {
    background: #e4032c;
    color: #000;
    text-decoration: none;
}

mark {
    font-style: italic;
    font-weight: 700;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

strong {
    font-weight: 600;
}

sup {
    top: -.4em;
    left: 0;
}

.pagination__item {
    list-style-type: none;
    display: inline-block;
    width: 40px;
    height: 40px;
    border: 1px solid #3a4953;
    text-align: center;
}

.pagination__link {
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 7px;
}

form {
    margin: 0;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

.form__label, label {
    margin: 0 0 5px;
    display: block;
    clear: both;
    font-size: 2rem;
}

button, input, select, textarea {
    font-size: 1.6rem;
    font-family: Source Sans Pro,sans-serif;
}

textarea {
    resize: vertical;
    min-height: 250px;
}

legend {
    white-space: normal;
}

button {
    line-height: normal;
}

input:invalid, textarea:invalid {
    background-color: #f0dddd;
}

::-webkit-input-placeholder {
    color: #3a4953;
    opacity: 1;
}

::-moz-placeholder {
    color: #3a4953;
    opacity: 1;
}

:-ms-input-placeholder {
    color: #3a4953;
    opacity: 1;
}

.form-wrapper {
    width: 210px;
}

@media screen and (min-width:576px) {
    .form-wrapper {
        width: 360px;
    }
}

.form__group {
    width: 210px;
    margin: 0 0 15px;
}

@media screen and (min-width:576px) {
    .form__group {
        width: 360px;
    }
}

.form__group-wrapper {
    overflow: hidden;
    margin-bottom: 1.5em;
}

.validation {
    display: none;
}

.field-validation-error, .has-error, .validation {
    clear: both;
    display: block;
}

input[type=email], input[type=password], input[type=text], select, textarea {
    width: 100%;
    height: auto;
    display: block;
    padding: 1.7rem;
    color: #3a4953;
    background-color: #fff;
    background-image: none;
    border: 1px solid #3a4953;
}

    input[type=email]:disabled, input[type=password]:disabled, input[type=text]:disabled, select:disabled, textarea:disabled {
        background-color: #3a4953;
    }

select {
    background-image: url(../Images/Icons/SVGs/icon-chevron-down-primary.svg);
    background-size: 12px 8px;
    background-repeat: no-repeat;
    background-position: right 15px center;
    padding: 1.2rem .7rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

    select::-ms-expand {
        display: none;
    }

.select-day {
    width: 65px;
    margin: side-values(0 2px 0 0);
}

@media screen and (min-width:576px) {
    .select-day {
        width: 118px !important;
    }
}

.select-month {
    width: 65px;
    margin: side-values(0 2px 0 0);
}

@media screen and (min-width:576px) {
    .select-month {
        width: 118px !important;
    }
}

.select-year {
    width: 74px;
    margin: side-values(0 2px 0 0);
}

@media screen and (min-width:576px) {
    .select-year {
        width: 118px !important;
    }
}

input[type=checkbox], input[type=radio] {
    margin: side-values(0 5px 0 0);
}

.checkbox, .radio {
    clear: both;
    display: block;
}

.checkbox-inline-group, .radio-inline-group {
    display: -ms-flexbox;
    display: flex;
}

.checkbox-inline-group__item, .radio-inline-group__item {
    margin: 0 30px 0 0;
}

@media screen and (min-width:576px) {
    .form--horizontal {
        width: 600px;
    }
}

@media screen and (min-width:576px) {
    .form--horizontal .form__group {
        width: 600px;
        display: -ms-flexbox;
        display: flex;
    }
}

@media screen and (min-width:576px) {
    .form--horizontal .form__label, .form--horizontal label {
        width: 250px;
        margin: side-values(0 10px 0 0);
    }
}

@media screen and (min-width:576px) {
    .form--horizontal .form__item {
        width: 340px;
    }
}

@media screen and (min-width:576px) {
    .form--inline {
        width: 630px;
        display: -ms-flexbox;
        display: flex;
    }
}

.form--inline .form__group {
    margin-bottom: 5px;
}

@media screen and (min-width:576px) {
    .form--inline .form__group {
        width: 150px;
        margin: side-values(0 5px 0 0);
    }
}

@media screen and (min-width:576px) {
    .form--inline .form__item {
        width: 150px;
    }
}

input.uppercase::-moz-placeholder {
    text-transform: none !important;
}

input.uppercase::-webkit-input-placeholder {
    text-transform: none !important;
}

input.uppercase:-ms-input-placeholder {
    text-transform: none !important;
}

.styled-radio-buttons label {
    display: block;
    line-height: 2.5;
    font-size: 1.5em;
}

.styled-radio-buttons [type=radio] {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

    .styled-radio-buttons [type=radio] + span {
        display: block;
    }

        .styled-radio-buttons [type=radio] + span:before {
            content: "";
            display: inline-block;
            width: 1em;
            height: 1em;
            vertical-align: -.25em;
            border-radius: 1em;
            border: .125em solid #fff;
            box-shadow: 0 0 0 .15em #000;
            margin: side-values(0 .75em 0 0);
            transition: all .5s ease;
        }

    .styled-radio-buttons [type=radio]:checked + span:before {
        background: green;
        box-shadow: 0 0 0 .25em #000;
    }

    .styled-radio-buttons [type=radio]:focus + span:after {
        content: "\0020\2190";
        font-size: 1.5em;
        line-height: 1;
        vertical-align: -.125em;
    }

.styled-checkbox label {
    display: block;
    line-height: 2.5;
    font-size: 1.5em;
}

.styled-checkbox [type=checkbox] {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

    .styled-checkbox [type=checkbox] + span {
        display: block;
    }

        .styled-checkbox [type=checkbox] + span:before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            display: inline-block;
            width: 24px;
            height: 24px;
            vertical-align: -.25em;
            border: 1px solid #3a4953;
            margin: side-values(0 .75em 0 0);
            transition: all .5s ease;
        }

    .styled-checkbox [type=checkbox]:checked + span:before {
        background: #7dbb54;
    }

    .styled-checkbox [type=checkbox]:checked + span:after {
        content: "";
        position: absolute;
        top: 7px;
        left: 7px;
        color: #fff;
        background: transparent url(../Images/Icons/SVGs/icon-close-small.svg) no-repeat 0 0;
        width: 10px;
        height: 10px;
    }

    .styled-checkbox [type=checkbox]:focus + span:before {
        border: 3px solid #3a4953;
    }

.default-radio label {
    display: block;
    line-height: 2.5;
    font-size: 1.5em;
}

.default-radio [type=radio] {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

    .default-radio [type=radio] + label:before {
        content: "";
        display: inline-block;
        width: 1em;
        height: 1em;
        vertical-align: -.25em;
        border-radius: 1em;
        border: .125em solid #fff;
        box-shadow: 0 0 0 .15em #000;
        margin: side-values(0 .75em 0 0);
        transition: all .5s ease;
    }

    .default-radio [type=radio]:checked + label:before {
        background: green;
        box-shadow: 0 0 0 .25em #000;
    }

    .default-radio [type=radio]:focus + label:after {
        content: "\0020\2190";
        font-size: 1.5em;
        line-height: 1;
        vertical-align: -.125em;
    }

.default-checkbox label {
    display: block;
    line-height: 2.5;
    font-size: 1.5em;
}

.default-checkbox [type=checkbox] {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

    .default-checkbox [type=checkbox] + label {
        display: block;
    }

        .default-checkbox [type=checkbox] + label:before {
            content: "";
            display: inline-block;
            width: 1em;
            height: 1em;
            vertical-align: -.25em;
            border: .125em solid #fff;
            box-shadow: 0 0 0 .15em #000;
            margin: side-values(0 .75em 0 0);
            transition: all .5s ease;
        }

    .default-checkbox [type=checkbox]:checked + label:before {
        background: green;
        box-shadow: 0 0 0 .25em #000;
    }

    .default-checkbox [type=checkbox]:focus + label:after {
        content: "\0020\2190";
        font-size: 1.5em;
        line-height: 1;
        vertical-align: -.125em;
    }

.form-container:after {
    display: none;
}

@media screen and (min-width:992px) {
    .form-container:after {
        display: block;
    }
}

.umbraco-forms-page {
    max-width: 1000px;
}

@media screen and (min-width:992px) {
    .umbraco-forms-page {
        padding-right: 5rem;
    }
}

.umbraco-forms-page .formtitle h2 {
    margin-bottom: 1rem !important;
}

.umbraco-forms-page .formtitle p span {
    color: #e4032c;
}

.umbraco-forms-page .checkboxlist *, .umbraco-forms-page .radiobuttonlist * {
    display: inline;
    font-weight: 400;
}

.umbraco-forms-page .checkboxlist label, .umbraco-forms-page .radiobuttonlist label {
    font-size: 1.6rem;
}

.umbraco-forms-page [type=checkbox], .umbraco-forms-page [type=radio] {
    position: relative;
    top: 1px;
}

.umbraco-forms-page .input-validation-error {
    border-bottom: 4px solid #e4032c;
}

.umbraco-forms-page .field-validation-error {
    margin-top: .5rem;
    font-weight: 600;
}

    .umbraco-forms-page .field-validation-error span span, .umbraco-forms-page .umbraco-forms-indicator {
        color: #e4032c;
    }

.umbraco-forms-page .umbraco-forms-field {
    margin-bottom: 4rem;
}

.table-responsive {
    width: 100%;
    min-height: .01%;
    margin: 0 0 30px;
    overflow-x: auto;
    overflow-y: hidden;
}

    .table-responsive:focus {
        outline: 2px solid #e4032c;
        outline-offset: 0;
    }

body {
    overflow-x: hidden;
    min-height: 100vh;
}

    body.error-500 {
        background: #f0f7fb;
    }

html {
    min-height: 100vh;
}

    html.nav-active {
        position: fixed;
        width: 100%;
        height: 100%;
        overflow-y: hidden;
    }

@media screen and (min-width:0) and (max-width:991px) {
    html.search-active {
        position: fixed;
        width: 100%;
        height: 100%;
        overflow-y: hidden;
    }
}

.page-wrapper {
    margin: 0 auto;
    overflow-x: hidden;
}

.main {
    margin: 0;
    position: relative;
    clear: both;
}

@media screen and (min-width:0) and (max-width:991px) {
    .container-fluid {
        padding-right: 20px !important;
        padding-left: 20px !important;
    }
}

.container-fluid .container-fluid {
    padding: 0 !important;
}

#svg-poly-target {
    display: none;
}

svg path {
    fill: inherit;
}

.full-width {
    width: 100%;
}

.row--reverse-sm {
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
}

@media screen and (min-width:768px) {
    .row--reverse-sm {
        -ms-flex-direction: inherit;
        flex-direction: inherit;
    }
}

.unstyled-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -1.5rem;
    list-style-type: none;
}

.unstyled-list-item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    width: calc(33.3% - 3rem);
    margin: 0 1.5rem 3rem;
}

.section {
    position: relative;
    padding: 6rem 0;
}

@media screen and (min-width:992px) {
    .section {
        padding: 10rem 0;
    }
}

.section--header {
    position: relative;
    padding: 6rem 0 0;
}

@media screen and (min-width:992px) {
    .section--header {
        padding: 10rem 0 0;
    }
}

.section--small {
    padding: 3rem 0;
}

@media screen and (min-width:992px) {
    .section--small {
        padding: 6rem 0;
    }
}

.section-title, .umbraco-forms-page .formtitle h2 {
    margin-bottom: 6rem;
    border: 0;
}

@media screen and (min-width:992px) {
    .section-title, .umbraco-forms-page .formtitle h2 {
        margin-bottom: 10rem;
    }
}

.section-title a, .umbraco-forms-page .formtitle h2 a {
    color: #1da1f2;
}

.js-reveal .section-title:after, .js-reveal .umbraco-forms-page .formtitle h2:after, .umbraco-forms-page .formtitle .js-reveal h2:after {
    opacity: 0;
    transition: opacity 1.2s ease-in-out,transform 1.2s ease-in-out;
    transform: translateX(-20px);
}

.js-reveal.js-animate .section-title:after, .js-reveal.js-animate .umbraco-forms-page .formtitle h2:after, .no-js .section-title:after, .no-js .umbraco-forms-page .formtitle h2:after, .umbraco-forms-page .formtitle .js-reveal.js-animate h2:after, .umbraco-forms-page .formtitle .no-js h2:after {
    opacity: 1;
    transform: translateX(0);
}

.section-title + .section-description, .umbraco-forms-page .formtitle h2 + .section-description {
    margin-top: -2rem;
}

@media screen and (min-width:992px) {
    .section-title + .section-description, .umbraco-forms-page .formtitle h2 + .section-description {
        margin-top: -5rem;
    }
}

.section-description {
    margin-bottom: 4rem;
    max-width: 930px;
}

@media screen and (min-width:992px) {
    .section-description {
        margin-bottom: 6rem;
    }
}

.js-reveal .section-description, .js-reveal .section-title, .js-reveal .umbraco-forms-page .formtitle h2, .umbraco-forms-page .formtitle .js-reveal h2 {
    opacity: 0;
    transition: all .8s;
}

.js-reveal.js-animate .section-description, .js-reveal.js-animate .section-title, .js-reveal.js-animate .umbraco-forms-page .formtitle h2, .no-js .section-description, .no-js .section-title, .no-js .umbraco-forms-page .formtitle h2, .umbraco-forms-page .formtitle .js-reveal.js-animate h2, .umbraco-forms-page .formtitle .no-js h2 {
    opacity: 1;
}

.js-reveal.js-animate .section-description {
    transition-delay: .2s;
}
/*!
 * Bootstrap Grid v4.0.0 (https://getbootstrap.com)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */ @-ms-viewport {
    width: device-width;
}

html {
    box-sizing: border-box;
    -ms-overflow-style: scrollbar;
}

*, :after, :before {
    box-sizing: inherit;
}

.container {
    width: 100%;
    padding-right: 12px;
    padding-left: 12px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width:576px) {
    .container {
        max-width: 576px;
    }
}

@media (min-width:768px) {
    .container {
        max-width: 768px;
    }
}

@media (min-width:992px) {
    .container {
        max-width: 992px;
    }
}

@media (min-width:1200px) {
    .container {
        max-width: 1200px;
    }
}

.container-fluid {
    width: 100%;
    padding-right: 12px;
    padding-left: 12px;
    margin-right: auto;
    margin-left: auto;
    max-width: 1200px;
}

.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -12px;
    margin-left: -12px;
}

.no-gutters {
    margin-right: 0;
    margin-left: 0;
}

    .no-gutters > .col, .no-gutters > [class*=col-] {
        padding-right: 0;
        padding-left: 0;
    }

.col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col-auto, .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-auto, .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md-auto, .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-auto {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
}

.col {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
}

.col-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
}

.col-1 {
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
}

.col-2 {
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
}

.col-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
}

.col-4 {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
}

.col-5 {
    -ms-flex: 0 0 41.66667%;
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
}

.col-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}

.col-7 {
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
}

.col-8 {
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
}

.col-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
}

.col-10 {
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
}

.col-11 {
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
}

.col-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}

.offset-1 {
    margin-left: 8.33333%;
}

.offset-2 {
    margin-left: 16.66667%;
}

.offset-3 {
    margin-left: 25%;
}

.offset-4 {
    margin-left: 33.33333%;
}

.offset-5 {
    margin-left: 41.66667%;
}

.offset-6 {
    margin-left: 50%;
}

.offset-7 {
    margin-left: 58.33333%;
}

.offset-8 {
    margin-left: 66.66667%;
}

.offset-9 {
    margin-left: 75%;
}

.offset-10 {
    margin-left: 83.33333%;
}

.offset-11 {
    margin-left: 91.66667%;
}

@media (min-width:576px) {
    .col-sm {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-sm-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: none;
    }

    .col-sm-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%;
    }

    .col-sm-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%;
    }

    .col-sm-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-sm-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%;
    }

    .col-sm-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%;
    }

    .col-sm-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-sm-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%;
    }

    .col-sm-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%;
    }

    .col-sm-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-sm-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%;
    }

    .col-sm-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%;
    }

    .col-sm-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .offset-sm-0 {
        margin-left: 0;
    }

    .offset-sm-1 {
        margin-left: 8.33333%;
    }

    .offset-sm-2 {
        margin-left: 16.66667%;
    }

    .offset-sm-3 {
        margin-left: 25%;
    }

    .offset-sm-4 {
        margin-left: 33.33333%;
    }

    .offset-sm-5 {
        margin-left: 41.66667%;
    }

    .offset-sm-6 {
        margin-left: 50%;
    }

    .offset-sm-7 {
        margin-left: 58.33333%;
    }

    .offset-sm-8 {
        margin-left: 66.66667%;
    }

    .offset-sm-9 {
        margin-left: 75%;
    }

    .offset-sm-10 {
        margin-left: 83.33333%;
    }

    .offset-sm-11 {
        margin-left: 91.66667%;
    }
}

@media (min-width:768px) {
    .col-md {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-md-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: none;
    }

    .col-md-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%;
    }

    .col-md-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%;
    }

    .col-md-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-md-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%;
    }

    .col-md-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%;
    }

    .col-md-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-md-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%;
    }

    .col-md-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%;
    }

    .col-md-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-md-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%;
    }

    .col-md-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%;
    }

    .col-md-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .offset-md-0 {
        margin-left: 0;
    }

    .offset-md-1 {
        margin-left: 8.33333%;
    }

    .offset-md-2 {
        margin-left: 16.66667%;
    }

    .offset-md-3 {
        margin-left: 25%;
    }

    .offset-md-4 {
        margin-left: 33.33333%;
    }

    .offset-md-5 {
        margin-left: 41.66667%;
    }

    .offset-md-6 {
        margin-left: 50%;
    }

    .offset-md-7 {
        margin-left: 58.33333%;
    }

    .offset-md-8 {
        margin-left: 66.66667%;
    }

    .offset-md-9 {
        margin-left: 75%;
    }

    .offset-md-10 {
        margin-left: 83.33333%;
    }

    .offset-md-11 {
        margin-left: 91.66667%;
    }
}

@media (min-width:992px) {
    .col-lg {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-lg-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: none;
    }

    .col-lg-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%;
    }

    .col-lg-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%;
    }

    .col-lg-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-lg-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%;
    }

    .col-lg-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%;
    }

    .col-lg-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-lg-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%;
    }

    .col-lg-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%;
    }

    .col-lg-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-lg-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%;
    }

    .col-lg-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%;
    }

    .col-lg-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .offset-lg-0 {
        margin-left: 0;
    }

    .offset-lg-1 {
        margin-left: 8.33333%;
    }

    .offset-lg-2 {
        margin-left: 16.66667%;
    }

    .offset-lg-3 {
        margin-left: 25%;
    }

    .offset-lg-4 {
        margin-left: 33.33333%;
    }

    .offset-lg-5 {
        margin-left: 41.66667%;
    }

    .offset-lg-6 {
        margin-left: 50%;
    }

    .offset-lg-7 {
        margin-left: 58.33333%;
    }

    .offset-lg-8 {
        margin-left: 66.66667%;
    }

    .offset-lg-9 {
        margin-left: 75%;
    }

    .offset-lg-10 {
        margin-left: 83.33333%;
    }

    .offset-lg-11 {
        margin-left: 91.66667%;
    }
}

@media (min-width:1200px) {
    .col-xl {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-xl-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: none;
    }

    .col-xl-1 {
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%;
    }

    .col-xl-2 {
        -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
        max-width: 16.66667%;
    }

    .col-xl-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-xl-4 {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%;
    }

    .col-xl-5 {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%;
    }

    .col-xl-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-xl-7 {
        -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
        max-width: 58.33333%;
    }

    .col-xl-8 {
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%;
    }

    .col-xl-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-xl-10 {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%;
    }

    .col-xl-11 {
        -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
        max-width: 91.66667%;
    }

    .col-xl-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .offset-xl-0 {
        margin-left: 0;
    }

    .offset-xl-1 {
        margin-left: 8.33333%;
    }

    .offset-xl-2 {
        margin-left: 16.66667%;
    }

    .offset-xl-3 {
        margin-left: 25%;
    }

    .offset-xl-4 {
        margin-left: 33.33333%;
    }

    .offset-xl-5 {
        margin-left: 41.66667%;
    }

    .offset-xl-6 {
        margin-left: 50%;
    }

    .offset-xl-7 {
        margin-left: 58.33333%;
    }

    .offset-xl-8 {
        margin-left: 66.66667%;
    }

    .offset-xl-9 {
        margin-left: 75%;
    }

    .offset-xl-10 {
        margin-left: 83.33333%;
    }

    .offset-xl-11 {
        margin-left: 91.66667%;
    }
}

.slick-slider {
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list, .slick-slider {
    position: relative;
    display: block;
}

.slick-list {
    overflow: hidden;
    margin: 0;
    padding: 0;
}

    .slick-list:focus {
        outline: none;
    }

    .slick-list.dragging {
        cursor: pointer;
        cursor: hand;
    }

.slick-slider .slick-list, .slick-slider .slick-track {
    transform: translateZ(0);
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

    .slick-track:after, .slick-track:before {
        content: "";
        display: table;
    }

    .slick-track:after {
        clear: both;
    }

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none;
}

[dir=rtl] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

.mfp-bg {
    z-index: 1042;
    overflow: hidden;
    background: #0b0b0b;
    opacity: .8;
}

.mfp-bg, .mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: fixed;
}

.mfp-wrap {
    z-index: 1043;
    outline: none !important;
    -webkit-backface-visibility: hidden;
}

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    box-sizing: border-box;
}

    .mfp-container:before {
        content: "";
        display: inline-block;
        height: 100%;
        vertical-align: middle;
    }

.mfp-align-top .mfp-container:before {
    display: none;
}

.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045;
}

.mfp-ajax-holder .mfp-content, .mfp-inline-holder .mfp-content {
    width: 100%;
    cursor: auto;
}

.mfp-ajax-cur {
    cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: zoom-out;
}

.mfp-zoom {
    cursor: pointer;
    cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
    cursor: auto;
}

.mfp-arrow, .mfp-close, .mfp-counter, .mfp-preloader {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.mfp-loading.mfp-figure {
    display: none;
}

.mfp-hide {
    display: none !important;
}

.mfp-preloader {
    color: #ccc;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -.8em;
    left: 8px;
    right: 8px;
    z-index: 1044;
}

    .mfp-preloader a {
        color: #ccc;
    }

        .mfp-preloader a:hover {
            color: #fff;
        }

.mfp-s-error .mfp-content, .mfp-s-ready .mfp-preloader {
    display: none;
}

button.mfp-arrow, button.mfp-close {
    overflow: visible;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: none;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
}

button::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: .65;
    padding: 0 0 18px 10px;
    color: #fff;
    font-style: normal;
    font-size: 28px;
    font-family: Arial,Baskerville,monospace;
}

    .mfp-close:focus, .mfp-close:hover {
        opacity: 1;
    }

    .mfp-close:active {
        top: 1px;
    }

.mfp-close-btn-in .mfp-close {
    color: #333;
}

.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close {
    color: #fff;
    right: -6px;
    text-align: right;
    padding-right: 6px;
    width: 100%;
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #ccc;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap;
}

.mfp-arrow {
    position: absolute;
    opacity: .65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: transparent;
}

    .mfp-arrow:active {
        margin-top: -54px;
    }

    .mfp-arrow:focus, .mfp-arrow:hover {
        opacity: 1;
    }

    .mfp-arrow:after, .mfp-arrow:before {
        content: "";
        display: block;
        width: 0;
        height: 0;
        position: absolute;
        left: 0;
        top: 0;
        margin-top: 35px;
        margin-left: 35px;
        border: medium inset transparent;
    }

    .mfp-arrow:after {
        border-top-width: 13px;
        border-bottom-width: 13px;
        top: 8px;
    }

    .mfp-arrow:before {
        border-top-width: 21px;
        border-bottom-width: 21px;
        opacity: .7;
    }

.mfp-arrow-left {
    left: 0;
}

    .mfp-arrow-left:after {
        border-right: 17px solid #fff;
        margin-left: 31px;
    }

    .mfp-arrow-left:before {
        margin-left: 25px;
        border-right: 27px solid #3f3f3f;
    }

.mfp-arrow-right {
    right: 0;
}

    .mfp-arrow-right:after {
        border-left: 17px solid #fff;
        margin-left: 39px;
    }

    .mfp-arrow-right:before {
        border-left: 27px solid #3f3f3f;
    }

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px;
}

    .mfp-iframe-holder .mfp-content {
        line-height: 0;
        width: 100%;
        max-width: 900px;
    }

    .mfp-iframe-holder .mfp-close {
        top: -40px;
    }

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%;
}

    .mfp-iframe-scaler iframe {
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        box-shadow: 0 0 8px rgba(0,0,0,.6);
        background: #000;
    }

img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    box-sizing: border-box;
    padding: 40px 0;
    margin: 0 auto;
}

.mfp-figure, img.mfp-img {
    line-height: 0;
}

    .mfp-figure:after {
        content: "";
        position: absolute;
        left: 0;
        top: 40px;
        bottom: 40px;
        display: block;
        right: 0;
        width: auto;
        height: auto;
        z-index: -1;
        box-shadow: 0 0 8px rgba(0,0,0,.6);
        background: #444;
    }

    .mfp-figure small {
        color: #bdbdbd;
        display: block;
        font-size: 12px;
        line-height: 14px;
    }

    .mfp-figure figure {
        margin: 0;
    }

.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto;
}

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #f3f3f3;
    word-wrap: break-word;
    padding-right: 36px;
}

.mfp-image-holder .mfp-content {
    max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer;
}

@media screen and (max-height:300px),screen and (max-width:800px) and (orientation:landscape) {
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0;
    }

    .mfp-img-mobile img.mfp-img {
        padding: 0;
    }

    .mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0;
    }

    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px;
    }

    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0,0,0,.6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        box-sizing: border-box;
    }

        .mfp-img-mobile .mfp-bottom-bar:empty {
            padding: 0;
        }

    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px;
    }

    .mfp-img-mobile .mfp-close {
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0,0,0,.6);
        position: fixed;
        text-align: center;
        padding: 0;
    }
}

@media (max-width:900px) {
    .mfp-arrow {
        transform: scale(.75);
    }

    .mfp-arrow-left {
        transform-origin: 0;
    }

    .mfp-arrow-right {
        transform-origin: 100%;
    }

    .mfp-container {
        padding-left: 6px;
        padding-right: 6px;
    }
}

.header-wrapper {
    background-color: #EB042E;
}

@media screen and (min-width:992px) {
    .header-wrapper {
        display: -ms-flexbox;
        display: flex;
        height: 120px;
        background-color: #fff;
    }
}

.site-logo {
    position: relative;
    background-color: #EB042E;
    width: 120px;
    height: 80px;
    margin: 0;
    display: block;
}

    .site-logo:before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        width: 28px;
        height: 100%;
    }

@media screen and (min-width:992px) {
    .site-logo {
        height: 100%;
        width: 200px;
    }

        .site-logo:before {
            width: 38px;
        }
}

@media screen and (min-width:1200px) {
    .site-logo {
        width: 228px;
    }

        .site-logo:before {
            width: 54px;
        }
}

.site-logo--alt {
    margin: 2rem 0 0;
}

.site-logo__link {
    display: block;
    padding-top: 1.5rem;
    padding-left: .8rem;
    z-index: 1000;
    position: relative;
}

@media screen and (min-width:992px) {
    .site-logo__link {
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 100%;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 0;
    }
}

.site-logo__img {
    width: 110px;
}

@media screen and (min-width:992px) {
    .site-logo__img {
        width: 160px;
    }
}

.navigation-wrapper {
    position: fixed;
    top: 80px;
    bottom: 0;
    left: -100%;
    right: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    border: 0;
    background-color: #fff;
    z-index: 500;
    overflow-y: scroll;
    padding-bottom: 8rem;
    transition: all .4s ease;
}

.nav-active .navigation-wrapper, .search-active .navigation-wrapper {
    left: 0;
}

@media screen and (min-width:992px) {
    .navigation-wrapper {
        position: relative;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex: 1 100%;
        flex: 1 100%;
        left: 0;
        top: 0;
        opacity: 1;
        overflow: visible;
        padding-bottom: 0;
    }
}

footer {
    background-color: #006456;
}

    footer h2, footer h3 {
        color: #fff;
        border: none;
        display: block;
        padding: 0;
        font-size: 2.4rem;
    }

.footer-primary {
    position: relative;
    margin: 0 auto;
    padding: 7.8rem 0 3rem;
}

.footer-primary__col {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    margin: 0 0 2rem;
}

@media screen and (min-width:768px) {
    .footer-primary__col {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%;
    }
}

.footer-primary__col p {
    overflow-wrap: break-word;
    word-break: break-all;
}

.footer-primary__title {
    margin-bottom: 4.1rem;
}

.footer-primary__sub1 {
    margin: 0 0 1.5rem;
}

    .footer-primary__sub1 a, .footer-primary__sub1 a:visited {
        color: #fff;
    }

        .footer-primary__sub1 a:focus, .footer-primary__sub1 a:hover {
            color: #fff;
            text-decoration: underline;
        }

.footer-primary__sub2 {
    padding: 0 0 0 3rem;
    margin: 0 0 1rem;
    color: #fff;
}

.footer-primary__phone {
    position: relative;
    padding: 0 0 0 3rem;
    margin: 0 0 1.5rem;
}

    .footer-primary__phone:before {
        content: "";
        display: block;
        position: absolute;
        top: 3px;
        left: 0;
        height: 20px;
        width: 20px;
        background: url(../Images/Icons/SVGs/phone.svg) no-repeat 50%;
    }

.footer-primary__mail {
    position: relative;
    padding: 0 0 0 3rem;
    margin: 0;
}

    .footer-primary__mail:before {
        content: "";
        display: block;
        position: absolute;
        top: 5px;
        left: 0;
        height: 16px;
        width: 16px;
        background: url(../Images/Icons/SVGs/email.svg) no-repeat 50%;
    }

.footer-primary__locations {
    font-size: 1.6rem;
    position: relative;
    padding: 0 0 0 3rem;
    margin-left: -3rem;
}

    .footer-primary__locations:before {
        content: "";
        display: block;
        position: absolute;
        top: 3px;
        left: 0;
        height: 20px;
        width: 16px;
        background: url(../Images/Icons/SVGs/location.svg) no-repeat 50%;
    }

.footer-nav {
    margin: 0 auto;
    list-style: none;
}

.footer-nav__item {
    position: relative;
    padding: 0 0 0 3rem;
    margin: 0 0 3rem;
}

    .footer-nav__item:before {
        content: "";
        display: block;
        position: absolute;
        top: 5px;
        left: 0;
        height: 17px;
        width: 17px;
        background: url(../Images/Icons/SVGs/arrow.svg) no-repeat 50%;
        background-size: 100%;
    }

.footer-nav__link {
    text-decoration: none;
    color: #fff;
}

    .footer-nav__link:visited {
        color: #fff;
    }

    .footer-nav__link:focus, .footer-nav__link:hover {
        color: #fff;
        text-decoration: underline;
    }

.social-links {
    margin: 0 auto;
    list-style: none;
    display: -ms-inline-flexbox;
    display: inline-flex;
}

.social-links__item {
    margin: 0 1rem 0 0;
}

.social-links__link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 44px;
    height: 44px;
}

    .social-links__link svg {
        transition: all .3s;
        transform: translateY(0);
        fill: #fff;
    }

    .social-links__link:focus {
        box-shadow: 0 4px 0 0 #fff;
    }

        .social-links__link:focus svg {
            transform: translateY(-5px);
        }

.social-links:hover svg {
    opacity: .4;
}

.social-links__item .social-links__link:hover svg {
    opacity: 1;
    transform: translateY(-5px);
}

.footer-secondary {
    margin: 0 auto;
    padding: 0 0 4rem;
}

@media screen and (min-width:992px) {
    .footer-secondary {
        padding: 0 0 6rem;
    }
}

.copyright-notice-wrapper {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    margin: 0;
    font-weight: 700;
    color: #fff;
    font-size: 1.8rem;
    -ms-flex-order: 2;
    order: 2;
}

@media screen and (min-width:992px) {
    .copyright-notice-wrapper {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
        -ms-flex-order: 1;
        order: 1;
    }
}

.footer-links-wrapper {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    -ms-flex-order: 1;
    order: 1;
    margin-bottom: 2rem;
}

@media screen and (min-width:992px) {
    .footer-links-wrapper {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
        -ms-flex-order: 2;
        order: 2;
        margin: 0;
    }
}

.footer-links {
    margin: 0 auto;
    list-style: none;
}

@media screen and (min-width:992px) {
    .footer-links {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
}

.footer-links__item {
    margin: 0 0 1rem;
}

@media screen and (min-width:992px) {
    .footer-links__item {
        margin: 0 0 1rem 5rem;
    }
}

.footer-links__link {
    display: block;
    text-decoration: none;
    color: #fff;
}

    .footer-links__link:visited {
        color: #fff;
    }

    .footer-links__link:focus, .footer-links__link:hover {
        color: #fff;
        text-decoration: underline;
    }

.primary-nav {
    height: auto;
    width: 100%;
}

@media screen and (min-width:992px) {
    .primary-nav {
        padding: 0 0 0 1.5rem;
        display: -ms-flexbox;
        display: flex;
    }
}

.primary-nav-outer.hide {
    display: none;
}

.primary-nav-outer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    z-index: 300;
}

@media screen and (min-width:992px) {
    .search-active .primary-nav-outer {
        display: none;
    }
}

.nav-level-1 {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 3rem;
    list-style: none;
}

.nav-active .nav-level-1 {
    opacity: 1;
}

@media screen and (min-width:992px) {
    .nav-level-1 {
        display: -ms-flexbox;
        display: flex;
        position: relative;
        background-color: transparent;
        padding: 0;
    }
}

@media screen and (min-width:1200px) {
    .nav-level-1 {
        padding: 0 3rem 0 0;
    }
}

.nav-level-1__item {
    margin: 0;
    padding: 0;
    border: 0;
    background-color: #fff;
    position: relative;
    clear: both;
    display: block;
}

    .nav-level-1__item:before {
        display: none;
    }

@media screen and (min-width:992px) {
    .nav-level-1__item {
        margin: 0;
        position: relative;
    }

        .nav-level-1__item:first-child {
            border-left: 0;
        }
}

.nav-level-1__link {
    width: 100%;
    height: 100%;
    min-height: 50px;
    margin: 0;
    padding: 1rem 1.5rem;
    border-bottom: 2px solid #3a4953;
    text-align: center;
    text-decoration: none;
    position: relative;
    display: block;
    color: #212121;
    letter-spacing: 2px;
}

@media screen and (min-width:992px) {
    .nav-level-1__link {
        width: auto;
        background-color: #fff;
        text-indent: 0;
        clear: none;
        border-bottom: 0;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        font-size: 1.4rem;
        padding: 1rem 1.2rem;
    }
}

@media screen and (min-width:1200px) {
    .nav-level-1__link {
        font-size: 1.6rem;
        padding: 1rem 1.5rem;
    }
}

.nav-level-1__link:active, .nav-level-1__link:hover {
    text-decoration: underline;
}

.nav-level-1__link:visited {
    color: #212121;
}

.mobile-nav-icon {
    position: absolute;
    right: 0;
    top: 0;
    width: 80px;
    height: 80px;
    border: none;
    background-color: transparent;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0;
    overflow: hidden;
}

    .mobile-nav-icon:focus {
        outline: 0;
        border: 0;
    }

@media screen and (min-width:992px) {
    .mobile-nav-icon {
        display: none;
    }
}

.mobile-nav-icon:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    background-color: #fff;
    transition: height .25s ease-in 0s;
}

.nav-active .mobile-nav-icon:before, .search-active .mobile-nav-icon:before {
    height: 100%;
}

.mobile-nav-icon .top-burger {
    content: "";
    position: absolute;
    top: 29px;
    left: 25px;
    width: 30px;
    height: 2px;
    background-color: #fff;
    transition: top .25s ease 0s,transform .2s linear 0s,background-color .2s linear 0s;
}

.nav-active .mobile-nav-icon .top-burger, .search-active .mobile-nav-icon .top-burger {
    top: 39px;
    transform: rotate(45deg);
    background-color: #e4032c;
}

.mobile-nav-icon .middle-burger {
    content: "";
    position: absolute;
    top: 39px;
    left: 25px;
    width: 30px;
    height: 2px;
    background-color: #fff;
    transition: opacity .25s ease 0s;
}

.nav-active .mobile-nav-icon .middle-burger, .search-active .mobile-nav-icon .middle-burger {
    opacity: 0;
}

.mobile-nav-icon .bottom-burger {
    content: "";
    position: absolute;
    top: 49px;
    left: 25px;
    width: 30px;
    height: 2px;
    background-color: #fff;
    transition: top .25s ease 0s,transform .2s linear 0s,background-color .2s linear 0s;
}

.nav-active .mobile-nav-icon .bottom-burger, .search-active .mobile-nav-icon .bottom-burger {
    top: 39px;
    transform: rotate(-45deg);
    background-color: #e4032c;
}

.mobile-nav-icon .mobile-nav-icon__text {
    z-index: 1;
    opacity: 0;
    color: #3a4953;
    font-weight: 600;
    font-size: 1.4rem;
    margin-top: 52px;
    transition: opacity .25s ease 0s;
    width: 100%;
}

.nav-active .mobile-nav-icon .mobile-nav-icon__text, .search-active .mobile-nav-icon .mobile-nav-icon__text {
    opacity: 1;
}

.secondary-nav-outer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.secondary-nav-wrapper {
    text-align: right;
    border: 1px solid #3a4953;
    display: none;
}

@media screen and (min-width:992px) {
    .secondary-nav-wrapper {
        border: none;
        display: block;
    }
}

@media screen and (min-width:992px) {
    .secondary-nav-wrapper--social {
        border-right: 1px solid #3a4953;
    }
}

.secondary-nav {
    margin: 0 auto;
    padding: 0 3rem 3rem;
    list-style: none;
    display: none;
}

@media screen and (min-width:992px) {
    .secondary-nav {
        padding: 0;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
}

.secondary-nav--alt, .secondary-nav--social--alt {
    display: block;
}

@media screen and (min-width:992px) {
    .secondary-nav--alt, .secondary-nav--social--alt {
        display: none;
    }
}

.secondary-nav--social--alt {
    text-align: center;
    font-size: 0;
    padding: 0;
}

    .secondary-nav--social--alt .secondary-nav__item {
        display: inline-block;
        border: 1px solid #3a4953;
        border-left: none;
    }

        .secondary-nav--social--alt .secondary-nav__item svg {
            fill: #000;
        }

        .secondary-nav--social--alt .secondary-nav__item:first-child {
            border-left: 1px solid #3a4953;
        }

.secondary-nav__item {
    margin: 0;
    padding: 0;
    background-color: #fff;
    letter-spacing: 2px;
}

@media screen and (min-width:992px) {
    .secondary-nav__item {
        margin: 0;
        border-left: 1px solid #3a4953;
    }
}

.secondary-nav__link {
    width: 100%;
    height: auto;
    min-height: 50px;
    margin: 0;
    padding: 1.3rem 3rem 1rem;
    text-align: center;
    text-decoration: none;
    position: relative;
    display: block;
    color: #232323;
}

    .secondary-nav__link:visited {
        color: #232323;
    }


@media screen and (max-width:1348px) {
    .secondary-nav__link {
        padding: 1.3rem 1rem 1rem;
    }
}

@media screen and (max-width:1080px) {
    .secondary-nav__link {
        padding: 0.3rem 1rem 0.3rem;
    }

    .logreglinks {
        padding-top: 13px;
    }
}

@media screen and (min-width:992px) {
    .secondary-nav__link {
        font-size: 1.4rem;
        border-bottom: 1px solid #3a4953;
        border-top: 1px solid #3a4953;
    }

        .secondary-nav__link:after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 0;
            background-color: #3a4953;
            transition: height .3s;
        }

        .secondary-nav__link:focus:after {
            height: 5px;
        }
}

.search-active .secondary-nav__link {
    border-bottom-color: transparent;
}

.secondary-nav--social:hover li svg,
.secondary-nav--social:hover li img {
    opacity: .4;
}

.secondary-nav--social .secondary-nav__link:hover svg,
.secondary-nav--social .secondary-nav__link:hover img {
    opacity: 1;
}

.secondary-nav__social {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    padding: 1.3rem 2rem 1rem;
}

    .secondary-nav__social svg,
    .secondary-nav__social img {
        transition: all .3s;
    }

.skip-link {
    padding: .5rem 1rem 1rem;
    background-color: #fff;
    display: block;
    position: absolute;
    top: -100%;
    left: 2px;
    z-index: 700;
    text-decoration: none !important;
}

    .skip-link:focus {
        top: 2px;
        transition: all .2s ease;
        color: #000;
    }

    .skip-link:visited {
        color: #000;
    }

.mobile-search-icon {
    width: 60px;
    height: 80px;
    border: none;
    background: transparent url(../Images/Icons/SVGs/icon-search.svg) no-repeat 50%;
    text-indent: -9999em;
    text-decoration: none;
    position: absolute;
    right: 80px;
    top: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0;
}

    .mobile-search-icon:focus {
        outline: 0;
        border: 2px solid #e4032c;
    }

@media screen and (min-width:992px) {
    .mobile-search-icon {
        display: none;
    }
}

.nav-active .mobile-search-icon, .no-js .mobile-search-icon, .search-active .mobile-search-icon {
    display: none;
}

.search-display {
    display: none;
    min-width: 70px;
    height: 70px;
    border: none;
    background: #e4032c url(../Images/Icons/SVGs/icon-search.svg) no-repeat 50%;
    text-indent: -9999em;
    text-decoration: none;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0;
    outline: none;
}

/*fixes for recite toolbar*/
button.search-display > .recite-ele-style {
    text-indent: 0;
}

#recite-wrapper .search-display {
    background-image: none;
    background-color: transparent;
}
/*end*/

@media screen and (min-width:992px) {
    .search-display {
        position: relative;
        display: -ms-flexbox;
        display: flex;
    }
}

.close-btn, .no-js .search-display {
    display: none;
}

.close-btn {
    min-width: 70px;
    height: 70px;
    border: none;
    background: #fff url(../Images/Icons/SVGs/icon-close.svg) no-repeat center 15px;
    text-decoration: none;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0;
    border-left: 1px solid #3a4953;
    border-right: 1px solid #3a4953;
    font-size: 1.4rem;
    font-weight: 600;
    padding-top: 3.5rem;
}

@media screen and (min-width:992px) {
    .close-btn {
        display: -ms-flexbox;
        display: flex;
    }
}

.site-search-wrapper.hide {
    display: none;
}

.site-search-wrapper {
    top: 80px;
    left: 0;
    height: calc(100% - 80px);
    width: 100%;
    background-color: #fff;
    z-index: 300;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (min-width:992px) {
    .search-active .site-search-wrapper {
        display: block;
    }
}

@media screen and (min-width:992px) {
    .site-search-wrapper {
        position: absolute;
        height: 70px;
        bottom: 0;
        top: auto;
    }
}

.search-close {
    width: 69px;
    height: 69px;
    background: #e4032c url(../Images/Icons/SVGs/icon-search.svg) no-repeat 50%;
}

.search-close, .site-search__btn {
    border: none;
    text-indent: -9999em;
    text-decoration: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0;
}

.site-search__btn {
    width: 40px;
    height: 70px;
    background: #fff url(../Images/Icons/SVGs/icon-search-dark.svg) no-repeat 50%;
    border-bottom: 1px solid #3a4953;
    border-radius: 0;
}

@media screen and (min-width:992px) {
    .site-search__btn {
        background: #e4032c url(../Images/Icons/SVGs/icon-search.svg) no-repeat 50%;
        border-bottom: none;
        min-width: 70px;
    }
}

.site-search {
    width: 100%;
    height: 70px;
    margin: 0;
    display: -ms-flexbox;
    display: flex;
    padding: 0 3rem;
}

@media screen and (min-width:992px) {
    .site-search {
        padding: 0;
        display: none;
    }

    .search-active .site-search {
        display: -ms-flexbox;
        display: flex;
    }

    .navigation-wrapper .site-search:before {
        content: "";
        position: absolute;
        top: -1px;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: #3a4953;
    }
}

.site-search .site-search__term {
    background-color: #fff;
    letter-spacing: 1px;
    border: none;
    border-bottom: 1px solid #3a4953;
    width: 100%;
    border-radius: 0;
}

@media screen and (min-width:992px) {
    .site-search .site-search__term {
        border: none;
        padding-left: 4rem;
    }
}

.breadcrumb-container {
    background-color: #fff;
    min-height: 87px;
    display: block;
    padding-top: 2.4rem;
}

@media screen and (min-width:768px) {
    .breadcrumb-container {
        background-color: #009a47;
        min-height: 83px;
    }
}

.breadcrumb-wrapper {
    display: none;
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
}

@media screen and (min-width:992px) {
    .breadcrumb-wrapper {
        display: block;
        -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
        max-width: 66.66667%;
    }

    .hide-mobile .breadcrumb-wrapper {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
}

.breadcrumb {
    margin: 0;
    list-style: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.breadcrumb__item {
    margin: 0 3rem 0 0;
}

    .breadcrumb__item:last-child:after {
        display: none;
    }

.breadcrumb__link {
    position: relative;
    color: #fff;
}

    .breadcrumb__link:visited {
        color: #fff;
    }

    .breadcrumb__link:focus, .breadcrumb__link:hover {
        text-decoration: none;
        color: #fff;
    }

    .breadcrumb__link:before {
        right: -10px;
        width: 0;
        transition: width .4s ease-in-out;
        transition-delay: .2s;
    }

    .breadcrumb__link:after, .breadcrumb__link:before {
        content: "";
        position: absolute;
        bottom: -15px;
        height: 3px;
        background-color: #fff;
        opacity: .5;
    }

    .breadcrumb__link:after {
        left: 0;
        width: calc(100% + 10px);
        transition: width .4s ease-in-out;
    }

.is-active .breadcrumb__link {
    font-weight: 600;
}

    .is-active .breadcrumb__link:after, .is-active .breadcrumb__link:before {
        opacity: 1;
    }

.breadcrumb__link:not(.breadcrumb__link--disabled):focus:before, .breadcrumb__link:not(.breadcrumb__link--disabled):hover:before {
    width: calc(100% + 10px);
}

.breadcrumb__link:not(.breadcrumb__link--disabled):focus:after, .breadcrumb__link:not(.breadcrumb__link--disabled):hover:after {
    width: 0;
}

.is-active .breadcrumb__link.breadcrumb__link--disabled {
    cursor: default;
}

.btn {
    width: 100%;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    font-family: inherit;
    font-size: 100%;
    letter-spacing: .2em;
    text-align: center;
    cursor: pointer;
    border: 1px solid #3a4953;
    margin: 0;
    padding: 1.7rem calc(60px + 2rem) 1.7rem 2rem;
    background-color: #fff;
    overflow: hidden;
}

@media screen and (min-width:768px) {
    .btn {
        width: calc(50% - 24px);
    }
}

@media screen and (min-width:992px) {
    .btn {
        width: calc(33.333% - 24px);
    }
}

.btn:before {
    top: 0;
    right: 0;
    background: url(../Images/Icons/SVGs/icon-button.svg) no-repeat 50%;
    background-size: 19px 36px;
    background-position: left 20px center;
    overflow: hidden;
    width: 60px;
    height: 100%;
    background-color: #e4032c;
}

.btn:after, .btn:before {
    content: "";
    position: absolute;
}

.btn:after {
    bottom: 0;
    right: 60px;
    width: 0;
    height: 5px;
    background-color: #e4032c;
    transition: width .5s ease;
}

.btn:focus, .btn:hover {
    text-decoration: none;
}

@media screen and (min-width:992px) {
    .btn:focus:before, .btn:hover:before {
        animation: a 1s ease-in-out;
    }
}

@media screen and (min-width:992px) {
    .btn:focus:after, .btn:hover:after {
        width: 100%;
    }
}

.btn--green-dark:after, .btn--green-dark:before {
    background-color: #009a47;
}

.btn--green-mid:after, .btn--green-mid:before {
    background-color: #7ebc56;
}

.btn--green-light:after, .btn--green-light:before {
    background-color: #b0c954;
}

.btn--blue:after, .btn--blue:before {
    background-color: #1da1f2;
}

.btn--full-width {
    width: 100%;
}

.btn--link {
    border: 0;
}

    .btn--link:hover {
        text-decoration: underline;
    }

.btn--block {
    display: block !important;
    width: 100% !important;
}

.btn-scroll-top {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: end;
    align-items: flex-end;
    position: fixed;
    z-index: 500;
    right: 10px;
    bottom: 10px;
    width: 70px;
    height: 70px;
    padding-bottom: 1rem;
    overflow: hidden;
    color: #3b4a54;
    background-color: #fff;
    opacity: 0;
    transition: all .5s ease;
    border: 1px solid #3a4953;
    text-transform: uppercase;
    font-size: 1.4rem;
    transform: perspective(1px) translateY(0);
}

    .btn-scroll-top.is-active {
        opacity: 1;
    }

    .btn-scroll-top:focus, .btn-scroll-top:hover {
        text-decoration: none;
        animation-name: c;
        animation-duration: .5s,2s;
        animation-timing-function: ease-out,ease-in-out;
        animation-fill-mode: forwards;
    }

        .btn-scroll-top:focus:after, .btn-scroll-top:hover:after {
            background: url(../Images/Icons/SVGs/up-arrow-green.svg) no-repeat 50%;
        }

    .btn-scroll-top:after {
        content: "";
        display: block;
        position: absolute;
        top: 12px;
        left: 0;
        right: 0;
        height: 20px;
        width: 20px;
        margin: 0 auto;
        background: url(../Images/Icons/SVGs/up-arrow.svg) no-repeat 50%;
        transition: background .5s ease;
    }

.btn--transparent {
    background-color: transparent;
    color: #fff;
    border-color: #fff;
}

    .btn--transparent:before {
        background-color: transparent;
        border-left: 1px solid #fff;
    }

    .btn--transparent:after {
        background-color: #fff;
    }

    .btn--transparent:hover, .btn--transparent:visited {
        color: #fff;
    }

.button-wrapper {
    width: 100%;
    text-align: center;
}

.card-list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -12px;
    margin-left: -12px;
    list-style-type: none;
}

.card-list, .card-list__item {
    display: -ms-flexbox;
    display: flex;
}

.card-list__item {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    margin: 0 0 3rem;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (min-width:768px) {
    .card-list__item {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
}

@media screen and (min-width:992px) {
    .card-list__item {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%;
        margin: 0 0 4rem;
    }
}

.js-reveal .card-list__item {
    opacity: 0;
    transform: translateY(50px);
}

.js-reveal.js-animate .card-list__item {
    opacity: 1;
    transform: translateY(0);
    transition: all .5s ease-in-out;
}

.filter-index .card-list__item, .no-js .card-list__item {
    opacity: 1;
    transform: translateY(0);
}

.vue-card-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -12px;
    margin-left: -12px;
    list-style-type: none;
}

@media screen and (min-width:992px) {
    .vue-card-list {
        display: -ms-flexbox;
        display: flex;
    }
}

.vue-card-list__item {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    margin: 0 0 3rem;
    display: block;
}

@media screen and (min-width:768px) {
    .vue-card-list__item {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
        margin: 0 0 3rem !important;
        float: left;
    }
}

@media screen and (min-width:1200px) {
    .vue-card-list__item--two-col {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
}

.card {
    position: relative;
    width: 100%;
    background-color: #fff;
    margin-bottom: 0;
    padding: 0;
    transition: box-shadow .4s ease,opacity 1.2s ease,transform 1.2s ease;
}

@media screen and (min-width:768px) {
    .card {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
        min-height: 1px;
        height: 100%;
    }
}

.card-list__item--borders .card {
    border-bottom: 4px solid;
}

    .card-list__item--borders .card:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        height: 0;
        width: 100%;
        background-color: green;
        transition: height .4s ease;
    }

.card + .on-focus, .card:hover {
    box-shadow: 0 2px 14px 0 hsla(235,8%,67%,.7);
}

    .card + .on-focus .card__img, .card:hover .card__img {
        transform: scale(1.1);
    }

    .card + .on-focus .card__btn:before, .card:hover .card__btn:before {
        transform: rotate(90deg);
    }

    .card + .on-focus:after, .card:hover:after {
        height: 6px;
    }

.card.on-focus, .section.bg-white:not(.general-list-block) .card {
    box-shadow: 0 2px 14px 0 hsla(235,8%,67%,.7);
}

    .card.on-focus .card__img {
        transform: scale(1.1);
    }

    .card.on-focus:after {
        height: 6px;
    }

.card-list__item:nth-child(3n+1).card-list__item--borders .card {
    border-color: #a6ca46;
}

    .card-list__item:nth-child(3n+1).card-list__item--backgrounds .card__content, .card-list__item:nth-child(3n+1).card-list__item--backgrounds .card__content:before, .card-list__item:nth-child(3n+1).card-list__item--borders .card:after {
        background-color: #a6ca46;
    }

.card-list__item:nth-child(3n+2).card-list__item--borders .card {
    border-color: #7dbb54;
}

    .card-list__item:nth-child(3n+2).card-list__item--backgrounds .card__content, .card-list__item:nth-child(3n+2).card-list__item--backgrounds .card__content:before, .card-list__item:nth-child(3n+2).card-list__item--borders .card:after {
        background-color: #7dbb54;
    }

.card-list__item:nth-child(3n+3).card-list__item--borders .card {
    border-color: #029945;
}

    .card-list__item:nth-child(3n+3).card-list__item--backgrounds .card__content, .card-list__item:nth-child(3n+3).card-list__item--backgrounds .card__content:before, .card-list__item:nth-child(3n+3).card-list__item--borders .card:after {
        background-color: #029945;
    }

.vue-card-list__item:nth-child(odd).card-list__item--borders .card {
    border-color: #7dbb54;
}

    .vue-card-list__item:nth-child(odd).card-list__item--borders .card:after {
        background-color: #7dbb54;
    }

.vue-card-list__item:nth-child(2n).card-list__item--borders .card {
    border-color: #029945;
}

    .vue-card-list__item:nth-child(2n).card-list__item--borders .card:after {
        background-color: #029945;
    }

.card__content {
    position: relative;
    padding: 3rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

@media screen and (min-width:768px) {
    .card__content {
        padding: 3.5rem;
    }
}

.card-list__item--backgrounds .card__content {
    color: #fff;
}

.card__inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    margin: 0 0 4rem;
}

.card__title {
    -ms-flex-item-align: start;
    align-self: flex-start;
    -ms-flex-order: 2;
    order: 2;
    max-width: 100%;
}

.card-list__item--backgrounds .card__title {
    color: #fff;
    border-color: #fff;
}

.card__date {
    margin: 0 0 1rem;
    display: block;
    font-size: 1.4rem;
    font-weight: 400;
    -ms-flex-order: 1;
    order: 1;
}

@media screen and (min-width:768px) {
    .card__date {
        font-weight: 300;
    }
}

.card__description {
    -ms-flex-order: 3;
    order: 3;
    display: block;
    font-weight: 300;
}

    .card__description p:last-of-type {
        margin: 0;
    }

.card__btn {
    -ms-flex-item-align: start;
    align-self: flex-start;
    display: block;
    padding-left: 3rem;
    position: relative;
}

    .card__btn:after, .card__btn:before {
        content: "";
        background-size: 22px 22px;
        width: 22px;
        height: 22px;
        display: inline-block;
        position: absolute;
        top: 0;
        left: 0;
        transition: all .3s ease;
    }

    .card__btn:before {
        background: transparent url(../Images/Icons/SVGs/icon-plus-small.svg) no-repeat 50%;
    }

    .card__btn:after {
        background: transparent url(../Images/Icons/SVGs/icon-plus-small-border.svg) no-repeat 50%;
    }

.card-list__item--backgrounds .card__btn {
    color: #fff;
}

    .card-list__item--backgrounds .card__btn:before {
        background: transparent url(../Images/Icons/SVGs/icon-plus-small-light.svg) no-repeat 0;
        background-size: 22px 22px;
    }

    .card-list__item--backgrounds .card__btn:after {
        background: transparent url(../Images/Icons/SVGs/icon-plus-small-light-border.svg) no-repeat 0;
        background-size: 22px 22px;
    }

.card__img {
    min-height: 1px;
    transition: transform .4s ease;
}

.card__img-holder {
    width: 100%;
    overflow: hidden;
}

.card-arrow:before, .card__content:before, .image-gallery-block__content:before {
    content: "";
    position: absolute;
    top: -15px;
    left: 30px;
    width: 30px;
    height: 30px;
    background-color: #fff;
    transform: rotate(45deg);
}

@media screen and (min-width:768px) {
    .card-arrow:before, .card__content:before, .image-gallery-block__content:before {
        left: 35px;
    }
}

.preferences-bar {
    margin-bottom: 5rem;
}

@media screen and (min-width:992px) {
    .preferences-bar {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.preferences-bar__title {
    border: 0;
    margin-bottom: 0;
    display: none;
}

@media screen and (min-width:992px) {
    .preferences-bar__title {
        display: block;
    }
}

.preferences-bar__title--mobile {
    display: block;
    margin-bottom: 6rem;
}

@media screen and (min-width:992px) {
    .preferences-bar__title--mobile {
        display: none;
    }
}

.filter-open {
    overflow: hidden;
}

@media screen and (min-width:992px) {
    .filter-open {
        overflow: auto;
    }
}

@media screen and (min-width:0) and (max-width:991px) {
    .filter {
        position: fixed;
        max-height: 0;
        width: 100%;
        height: 100%;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        overflow: scroll;
        z-index: 800;
        transition: max-height .4s;
        background-color: #fff;
    }
}

@media screen and (min-width:992px) {
    .filter {
        position: relative;
        padding: 1rem;
    }
}

@media screen and (min-width:0) and (max-width:991px) {
    .filter-open .filter {
        max-height: 100%;
    }
}

.filter__save-btn {
    display: block;
    margin: 2rem auto;
    width: 100%;
}

@media screen and (min-width:992px) {
    .filter__save-btn {
        display: none;
    }
}

@media screen and (min-width:0) and (max-width:991px) {
    .filter__container {
        padding: 0 2rem;
    }
}

.filter__title {
    font-size: 1.8rem;
}

@media screen and (min-width:0) and (max-width:991px) {
    .filter__header .filter__title {
        color: #fff;
        font-size: 2rem;
        font-weight: 600;
        -ms-flex-item-align: center;
        align-self: center;
    }

        .filter__header .filter__title .red-highlight {
            color: #fff;
        }
}

.filter__title--mobile {
    margin-bottom: 1rem;
    display: block;
}

@media screen and (min-width:992px) {
    .filter__title--mobile {
        display: none;
    }
}

.filter__clear {
    background: transparent;
    border: 0;
    outline: 0;
    padding: 0;
    color: #e4032c;
    font-weight: 600;
}

@media screen and (min-width:0) and (max-width:991px) {
    .filter__clear {
        color: #fff;
        text-decoration: underline;
        padding: 0 2rem;
    }
}

.filter-item {
    padding: 2rem 0 0;
    border-bottom: 1px solid #d7ebf2;
}

.filter-list {
    display: block;
    position: relative;
    width: 100%;
    list-style: none;
    margin: 0 0 2rem;
    padding: 0;
}

    .filter-list label {
        display: inline-block;
    }

.display-filter-btn {
    width: 100%;
    height: 60px;
    display: block;
    padding: 1.7rem 2rem;
}

    .display-filter-btn:after, .display-filter-btn:before {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 15px;
        height: 30px;
        width: 30px;
        display: block;
        background-size: 30px 30px;
    }

    .display-filter-btn:before {
        background: transparent url(../Images/Icons/SVGs/icon-plus-small.svg) no-repeat 0;
    }

    .display-filter-btn:after {
        background: transparent url(../Images/Icons/SVGs/icon-plus-small-border.svg) no-repeat 0;
    }

    .display-filter-btn:focus, .display-filter-btn:hover {
        text-decoration: none;
    }

        .display-filter-btn:focus:before, .display-filter-btn:hover:before {
            animation: none;
        }

        .display-filter-btn:focus:after, .display-filter-btn:hover:after {
            width: 30px;
        }

@media screen and (min-width:992px) {
    .display-filter-btn {
        display: none;
    }
}

.filter__header {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (min-width:0) and (max-width:991px) {
    .filter__header {
        height: 80px;
        background-color: #e4032c;
    }
}

.red-highlight {
    color: #e4032c;
}

.filter-list__label {
    font-weight: 300;
    position: relative;
    padding-left: 4.4rem;
}

.filter-list__item {
    margin-bottom: 2.5rem;
}

@media screen and (min-width:768px) {
    .filter-list__item {
        margin-bottom: 1.5rem;
    }
}

.close-btn--filter {
    display: block;
    border: 0;
    width: 80px;
    height: 80px;
}

@media screen and (min-width:992px) {
    .close-btn--filter {
        display: none;
    }
}

@media screen and (min-width:0) and (max-width:1199px) {
    .filter .styled-checkbox {
        width: 100%;
        margin-right: 0;
    }
}

@media screen and (min-width:0) and (max-width:1199px) {
    .filter .filter-list__label {
        padding-left: 0;
        font-weight: 400;
    }
}

@media screen and (min-width:0) and (max-width:1199px) {
    .filter .styled-checkbox [type=checkbox] + span:before {
        right: 0;
        left: auto;
        margin: 0;
    }
}

@media screen and (min-width:0) and (max-width:991px) {
    .filter .styled-checkbox [type=checkbox]:checked + span:after {
        right: 7px;
        left: auto;
    }
}

.umbraco-form-wrapper {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    margin: 0 0 3rem;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}

@media screen and (min-width:768px) {
    .umbraco-form-wrapper {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
        margin-left: 25%;
    }
}

.umbraco-form-wrapper [class*=col-] {
    margin: 0;
    padding: 0;
}

.umbraco-form-wrapper label {
    display: inline-block;
}

.umbraco-form-wrapper input[type=checkbox], .umbraco-form-wrapper input[type=radio] {
    display: inline;
}

.umbraco-forms-container {
    padding: 0;
}

.umbraco-forms-field {
    margin: 0 0 2rem;
}

.social-share-container {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    overflow: hidden;
}

@media screen and (min-width:768px) {
    .social-share-container {
        -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
        max-width: 41.66667%;
    }
}

@media screen and (min-width:992px) {
    .social-share-container {
        -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
        max-width: 33.33333%;
    }
}

.social-share-container .no-js .social-share-container {
    display: none;
}

.social-share-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (min-width:768px) {
    .social-share-wrapper {
        float: right;
    }
}

.social-share {
    display: -ms-flexbox;
    display: flex;
}

.social-share-title {
    margin: 0;
    font-size: 1.6rem;
    font-weight: 600;
    color: #3a4953;
    border: 0;
    padding-bottom: 0;
}

@media screen and (min-width:768px) {
    .social-share-title {
        color: #fff;
    }
}

.social-share__list {
    display: inline-block;
}

.social-share__link {
    background: none;
    border: none;
    outline: none;
    color: #e4032c;
    text-decoration: underline;
    width: 44px;
    height: 44px;
    padding: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}

    .social-share__link:focus {
        outline: 0;
        border: 4px solid #fff;
    }

@media screen and (min-width:768px) {
    .social-share__link svg {
        fill: #fff;
        transition: all .3s;
        transform: translateY(0);
    }
}

.social-share:hover svg {
    opacity: .4;
}

.social-share__link:hover svg {
    opacity: 1;
    transform: translateY(-5px);
}

.form-container:after, .general-image-list-promo__content:after, .ruler-border:after {
    content: "";
    position: absolute;
    right: -1px;
    top: 0;
    height: 100%;
    width: 33px;
    z-index: 200;
    background: url(../Images/Icons/SVGs/ruler-right-aligned.svg) no-repeat 50%;
    background-size: 33px 36px;
    background-repeat: repeat-y;
}

.form-container:after, .ruler-border--dark:after {
    background: url(../Images/Icons/SVGs/ruler-right-aligned-dark.svg) no-repeat 50%;
    background-size: 33px 36px;
    background-repeat: repeat-y;
    opacity: .5;
}

@media screen and (min-width:0) and (max-width:767px) {
    .header-promo.form-container:after, .header-promo.general-image-list-promo__content:after, .header-promo.ruler-border:after {
        content: none;
    }
}

@media screen and (min-width:0) and (max-width:1199px) {
    .general-list-block.form-container:after, .general-list-block.general-image-list-promo__content:after, .ruler-border.general-list-block:after {
        content: "";
        position: absolute;
        left: 50%;
        top: 0;
        height: 33px;
        width: 50%;
        z-index: 200;
        background: url(../Images/Icons/SVGs/ruler.svg) no-repeat 50%;
        background-size: 36px 33px;
        background-repeat: repeat-x;
        opacity: .5;
    }
}

.ruler-border-horizontal:after {
    left: 50%;
    top: 0;
    width: 50%;
}

.general-image-list-promo__content:after, .ruler-border-horizontal-bottom:after, .ruler-border-horizontal:after {
    content: "";
    position: absolute;
    height: 33px;
    z-index: 200;
    background: url(../Images/Icons/SVGs/ruler.svg) no-repeat 50%;
    background-size: 36px 33px;
    background-repeat: repeat-x;
    opacity: .5;
}

.general-image-list-promo__content:after, .ruler-border-horizontal-bottom:after {
    top: auto;
    left: 0;
    bottom: 70px;
    width: 100%;
    transform: scaleY(-1) rotate(180deg);
    border-top: 1px solid #d7ebf2;
}

.contact-details {
    font-weight: 700;
}

    .contact-details a {
        color: #e4032c;
    }

.contact-details__email, .contact-details__map, .contact-details__tel {
    position: relative;
    display: table;
    padding: 0 0 0 3rem;
    margin: 0 auto;
}

@media screen and (min-width:768px) {
    .contact-details__email, .contact-details__map, .contact-details__tel {
        margin: 0;
    }
}

.contact-details__email:before, .contact-details__map:before, .contact-details__tel:before {
    content: "";
    display: block;
    position: absolute;
    top: 3px;
    left: 0;
    height: 20px;
    width: 20px;
}

.contact-details__map {
    margin-bottom: 3rem;
}

    .contact-details__map:before {
        background: url(../Images/Icons/SVGs/icon-google.svg) no-repeat 50%;
    }

.contact-details__tel:before {
    background: url(../Images/Icons/SVGs/phone-black.svg) no-repeat 50%;
}

.contact-details__email:before {
    background: url(../Images/Icons/SVGs/icon-envelope.svg) no-repeat 50%;
}

.accordion-panel {
    margin: 0;
    width: 100%;
}

.accordion-panel__heading {
    width: 100%;
    margin: 0;
    border: 0;
}

.accordion-panel__button {
    display: block;
    padding: 1rem 4rem 1rem 0;
    position: relative;
    width: 100%;
    text-align: left;
    background-color: transparent;
    border: 0;
    outline: 0;
    font-size: 2.4rem;
}

    .accordion-panel__button:after, .accordion-panel__button:before {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 0;
        height: 22px;
        width: 22px;
        display: block;
        background-size: 22px 22px;
        transition: all .3s ease;
    }

    .accordion-panel__button:before {
        background: transparent url(../Images/Icons/SVGs/icon-plus-small.svg) no-repeat 50%;
    }

    .accordion-panel__button:after {
        background: transparent url(../Images/Icons/SVGs/icon-plus-small-border.svg) no-repeat 50%;
    }

    .accordion-panel__button:focus:before, .accordion-panel__button:hover:before {
        transform: translateY(-50%) rotate(90deg);
        transform-origin: center;
    }

.accordion-panel__content {
    display: none;
    padding: 0;
    margin: 0;
}

    .accordion-panel__content div :last-child {
        margin-bottom: 0;
    }

.no-js .accordion-panel__content {
    display: block;
}

.general-image-list-promo-title {
    position: relative;
    padding: 6rem 0 0;
}

    .general-image-list-promo-title:after {
        display: none;
    }

@media screen and (min-width:768px) {
    .general-image-list-promo-title:after {
        display: block;
    }
}

@media screen and (min-width:992px) {
    .general-image-list-promo-title {
        padding: 10rem 0 0;
    }
}

.general-image-list-promo {
    text-align: center;
    position: relative;
    z-index: 250;
}

@media screen and (min-width:768px) {
    .general-image-list-promo {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-right: -12px;
        margin-left: -12px;
        text-align: left;
    }
}

@media screen and (min-width:768px) {
    .general-image-list-promo__item {
        position: relative;
        width: 100%;
        min-height: 1px;
        padding-right: 12px;
        padding-left: 12px;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.general-image-list-promo__item:last-child {
    border-bottom: 1px solid #d7ebf2;
}

    .general-image-list-promo__item:last-child .general-image-list-promo__content:after, .general-image-list-promo__item:last-child .general-image-list-promo__spacer {
        display: none;
    }

.general-image-list-promo__article {
    display: block;
    text-decoration: none;
    color: inherit;
    position: relative;
    overflow: hidden;
}

@media screen and (min-width:768px) {
    .general-image-list-promo__article {
        display: -ms-flexbox;
        display: flex;
        border-top: 1px solid #d7ebf2;
    }
}

.general-image-list-promo__background {
    width: 100%;
}

@media screen and (min-width:0) and (max-width:767px) {
    .general-image-list-promo__background {
        padding-top: 100%;
    }
}

.general-image-list-promo__background.picturefill {
    padding: 0;
}

.js-reveal .general-image-list-promo__background {
    transform: scale(1.1);
}

.js-reveal.js-animate .general-image-list-promo__background {
    transform: scale(1);
    transition: transform 1.5s ease-in-out;
}

.no-js .general-image-list-promo__background {
    transform: scale(1);
}

.general-image-list-promo__image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: object-fit\: cover;
}

.general-image-list-promo__content {
    position: relative;
    padding: 2rem;
}

@media screen and (min-width:768px) {
    .general-image-list-promo__content:after {
        display: none;
    }
}

@media screen and (min-width:768px) {
    .general-image-list-promo__content {
        width: 45%;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        padding: 8rem 0;
        background-color: #fff;
        z-index: 1;
    }
}

@media screen and (min-width:768px) {
    .bg-blue .general-image-list-promo__content {
        background-color: #f7fbfc;
    }
}

.general-image-list-promo__content-wrapper {
    position: relative;
    z-index: 1;
    padding: 6rem 2rem 13rem;
    margin: -5rem -1rem 0;
    background-color: #fff;
    width: calc(100% + 20px);
}

@media screen and (min-width:768px) {
    .general-image-list-promo__content-wrapper {
        max-width: 645px;
        margin: 0 0 0 -2rem;
        padding: 4rem;
    }
}

@media screen and (min-width:992px) {
    .general-image-list-promo__content-wrapper {
        margin-left: -7.6rem;
        padding: 4rem 10rem;
    }
}

.general-image-list-promo__title {
    color: inherit;
}

.general-image-list-promo__description {
    margin: 0 0 3rem;
}

    .general-image-list-promo__description a {
        color: #e4032c;
        font-weight: 600;
    }

.general-image-list-promo__spacer {
    position: relative;
    height: 150px;
    border-top: 1px solid #d7ebf2;
    transform: scaleX(-1);
    display: none;
}

@media screen and (min-width:768px) {
    .general-image-list-promo__spacer {
        display: block;
    }
}

@media screen and (min-width:992px) {
    .general-image-list-promo__spacer {
        height: 200px;
    }
}

.general-image-list-promo__spacer:before {
    content: "";
    position: absolute;
    left: 45%;
    top: 0;
    height: 100%;
    width: 1px;
    background-color: #d7ebf2;
}

.general-image-list-promo__cta {
    width: 100%;
}

@media screen and (min-width:992px) {
    .general-image-list-promo__cta {
        width: calc(70% - 24px);
    }
}

.contact-details + .general-image-list-promo__cta {
    margin-top: 4rem;
}

@media screen and (min-width:768px) {
    .general-image-list-promo__item--left .general-image-list-promo__content-wrapper {
        float: right;
        margin-left: 0;
        margin-right: -2rem;
    }
}

@media screen and (min-width:992px) {
    .general-image-list-promo__item--left .general-image-list-promo__content-wrapper {
        margin-right: -7.6rem;
    }
}

.general-image-list-promo__item--left .general-image-list-promo__background:after {
    right: auto;
    left: 0;
}

@media screen and (min-width:768px) {
    .general-image-list-promo__item--left .general-image-list-promo__content {
        -ms-flex-order: -1;
        order: -1;
    }
}

.general-image-list-promo__item--left .general-image-list-promo__spacer {
    transform: scaleX(1);
}

.js-reveal .general-image-list-promo__content-wrapper .contact-details, .js-reveal .general-image-list-promo__cta, .js-reveal .general-image-list-promo__description, .js-reveal .general-image-list-promo__title {
    opacity: 0;
    transform: translateY(50px);
}

.js-reveal.js-animate .general-image-list-promo__content-wrapper .contact-details, .js-reveal.js-animate .general-image-list-promo__cta, .js-reveal.js-animate .general-image-list-promo__description, .js-reveal.js-animate .general-image-list-promo__title {
    opacity: 1;
    transform: translateY(0);
    transition: all 1s ease-in-out;
}

.no-js .general-image-list-promo__content-wrapper .contact-details, .no-js .general-image-list-promo__cta, .no-js .general-image-list-promo__description, .no-js .general-image-list-promo__title {
    opacity: 1;
    transform: translateY(0);
}

.general-image-promo-wrapper {
    padding: 0;
}

.general-image-promo {
    position: relative;
    background-color: #009a47;
}

    .general-image-promo .container-fluid {
        position: relative;
        z-index: 200;
    }

.general-image-promo__content {
    text-align: center;
    padding: 11.8rem 0 10rem;
}

@media screen and (min-width:768px) {
    .general-image-promo__content {
        padding: 6.8rem 10% 5rem;
        padding: 6.8rem 0 5rem;
    }
}

.general-image-promo__text-holder {
    padding: 0;
}

@media screen and (min-width:768px) {
    .general-image-promo__text-holder {
        padding: 0 10%;
    }
}

.general-image-promo__inner {
    margin-bottom: 3rem;
}

.general-image-promo__header {
    font-size: 3rem;
    color: #fff;
    border: 0;
    padding: 0;
}

.general-image-promo__text {
    color: #fff;
}

.general-image-promo__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
}

    .general-image-promo__background:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        background-color: rgba(0,154,71,.8);
        width: 100%;
        height: 100%;
    }

.general-list-block__btn {
    margin: 2rem auto 0;
    position: relative;
    display: block;
}

@media screen and (min-width:992px) {
    .general-list-block__btn {
        margin-top: 6rem;
    }
}

.header-promo {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    color: #000;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: #d7ebf2;
    padding-bottom: 1.8rem;
    overflow: hidden;
}

@media screen and (min-width:768px) {
    .header-promo {
        min-height: 608px;
        padding-bottom: 7rem;
        margin-top: auto;
        height: 1px;
    }
}

.header-promo__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 290px;
    z-index: 100;
}

@media screen and (min-width:768px) {
    .header-promo__background {
        height: 100%;
    }
}

.header-promo__header {
    background-color: #fff;
    border-top: 3px solid #e4032c;
    padding: 1.2rem 3rem;
}

    .header-promo__header span {
        font-size: 1.4rem;
        color: #212121;
        letter-spacing: 1px;
    }

.header-promo__content {
    position: relative;
    z-index: 200;
    padding-top: 240px;
}

@media screen and (min-width:0) and (max-width:767px) {
    .header-promo__content {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media screen and (min-width:768px) {
    .header-promo__content {
        padding-top: 0;
        -ms-flex-item-align: end;
        align-self: flex-end;
    }
}

.header-promo__content-wrapper {
    position: relative;
    width: 100%;
}

@media screen and (min-width:768px) {
    .header-promo__content-wrapper {
        width: 70%;
    }
}

@media screen and (min-width:992px) {
    .header-promo__content-wrapper {
        width: 50%;
    }
}

a.header-promo__content-wrapper:focus, a.header-promo__content-wrapper:hover {
    text-decoration: none;
}

    a.header-promo__content-wrapper:focus .header-promo__bg, a.header-promo__content-wrapper:hover .header-promo__bg {
        opacity: 1;
    }

    a.header-promo__content-wrapper:focus .header-promo__cta, a.header-promo__content-wrapper:hover .header-promo__cta {
        border-left: 5px solid #fff;
    }

@media screen and (min-width:992px) {
    a.header-promo__content-wrapper:focus .header-promo__cta:before, a.header-promo__content-wrapper:hover .header-promo__cta:before {
        animation: a 1s ease-in-out;
    }
}

.header-promo__bg {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: -1;
    transition: opacity .4s;
}

@media screen and (min-width:768px) {
    .header-promo__bg {
        background-color: #3a4953;
        opacity: .9;
    }
}

@media screen and (min-width:768px) {
    .header-promo__bg:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #fff;
        opacity: .4;
    }
}

.header-promo__inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    transition: all .6s ease-out;
}

@media screen and (min-width:768px) {
    .js-reveal .header-promo__inner {
        transform: translateY(30px);
        opacity: 0;
    }

    .js-animate .header-promo__inner {
        transform: translateY(0);
        opacity: 1;
    }
}

.header-promo__title {
    color: #3b4a54;
    padding: 0;
    margin-bottom: 1rem;
    display: inline-block;
    letter-spacing: 0;
}

    .header-promo__title:after {
        content: none;
    }

@media screen and (min-width:768px) {
    .header-promo__title {
        color: #fff;
    }
}

.header-promo__text {
    color: #3b4a54;
}

@media screen and (min-width:768px) {
    .header-promo__text {
        color: #fff;
    }
}

.header-promo__flex-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.header-promo__body {
    padding: 3.6rem 2rem;
}

@media screen and (min-width:768px) {
    .header-promo__body {
        padding: 4rem 3rem;
    }
}

.header-promo__cta {
    width: 80px;
    min-width: 80px;
    border-left: 1px solid #fff;
    transition: border .4s;
}

    .header-promo__cta:before {
        content: "";
        position: absolute;
        top: 0;
        right: 10px;
        background: url(../Images/Icons/SVGs/icon-button-dark.svg) no-repeat 50%;
        background-size: 19px 36px;
        overflow: hidden;
        width: 80px;
        height: 100%;
    }

@media screen and (min-width:768px) {
    .header-promo__cta:before {
        background: url(../Images/Icons/SVGs/icon-button.svg) no-repeat 50%;
        background-size: 19px 36px;
        right: 0;
    }
}

@media screen and (min-width:768px) {
    .header-promo--medium.header-promo {
        min-height: 518px;
    }
}

.header-promo--medium.header-promo .header-promo__title {
    position: relative;
    margin-bottom: 3.5rem;
}

    .header-promo--medium.header-promo .header-promo__title:before {
        content: "";
        position: absolute;
        bottom: -15px;
        left: 0;
        height: 2px;
        width: 190px;
        background-color: #3a4953;
    }

@media screen and (min-width:768px) {
    .header-promo--medium.header-promo .header-promo__title:before {
        width: 120px;
        background-color: #fff;
    }
}

.header-promo--standalone.header-promo {
    display: block;
    height: auto;
    min-height: 100px;
    padding: 0;
}

@media screen and (min-width:768px) {
    .header-promo--standalone.header-promo {
        padding: 8rem 0 9.8rem;
    }
}

.header-promo--standalone.header-promo .header-promo__background {
    height: 150px;
}

@media screen and (min-width:768px) {
    .header-promo--standalone.header-promo .header-promo__background {
        height: 100%;
    }
}

.header-promo--standalone.header-promo .header-promo__content {
    position: relative;
    padding-top: 150px;
}

@media screen and (min-width:768px) {
    .header-promo--standalone.header-promo .header-promo__content {
        padding-top: 0;
    }
}

.header-promo--standalone.header-promo .header-promo__title {
    position: relative;
    margin-bottom: 3.5rem;
}

    .header-promo--standalone.header-promo .header-promo__title:before {
        content: "";
        position: absolute;
        bottom: -15px;
        left: 0;
        height: 2px;
        width: 190px;
        background-color: #3a4953;
    }

@media screen and (min-width:768px) {
    .header-promo--standalone.header-promo .header-promo__title:before {
        width: 120px;
        background-color: #fff;
    }
}

@media screen and (min-width:0) and (max-width:767px) {
    .header-promo--video {
        display: block;
    }
}

@media screen and (min-width:768px) {
    .header-promo--video {
        min-height: 600px;
        padding-bottom: 14rem;
        overflow: hidden;
    }
}

@media screen and (min-width:992px) {
    .header-promo--video {
        min-height: 700px;
    }
}

.header-promo--video video {
    height: 100%;
    max-width: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}

.ie11 .header-promo--video video, .isEdge .header-promo--video video {
    height: auto;
}

.header-promo__video-controls {
    position: absolute;
    left: 0;
    top: 180px;
    z-index: 400;
    padding-left: 1rem;
}

@media screen and (min-width:768px) {
    .header-promo__video-controls {
        position: absolute;
        top: auto;
        bottom: 60px;
        background: none;
        transition: opacity .3s ease;
        width: 100%;
        padding-left: 0;
        transition: all .6s ease-out;
        transition-delay: .5s;
    }
}

@media screen and (min-width:768px) {
    .js-reveal .header-promo__video-controls {
        opacity: 0;
    }

    .js-animate .header-promo__video-controls {
        opacity: 1;
    }
}

.header-promo__video-btn {
    margin: 0 auto;
    position: relative;
    background-color: rgba(58,73,83,.75);
    height: 50px;
    width: 50px;
    border-radius: 50%;
    border: none;
    color: #f0f7fb;
    text-indent: 50px;
    outline: 0;
}

    .header-promo__video-btn:before {
        content: "";
        position: absolute;
        top: 17px;
        left: 16px;
        width: 18px;
        height: 18px;
    }

    .header-promo__video-btn:focus, .header-promo__video-btn:hover {
        background-color: #fff;
    }

@media screen and (min-width:768px) {
    .header-promo__video-btn {
        padding-top: 5rem;
        line-height: 35px;
        text-indent: 0;
    }
}

.header-promo__video-btn--play {
    display: none;
}

    .header-promo__video-btn--play:before {
        background: transparent url(../Images/Icons/SVGs/icon-play.svg) no-repeat 50%;
    }

    .header-promo__video-btn--play:focus:before, .header-promo__video-btn--play:hover:before {
        background: transparent url(../Images/Icons/SVGs/icon-play-dark.svg) no-repeat 50%;
    }

.header-promo__video-btn--pause {
    display: block;
}

    .header-promo__video-btn--pause:before {
        background: transparent url(../Images/Icons/SVGs/icon-pause.svg) no-repeat 50%;
    }

    .header-promo__video-btn--pause:focus:before, .header-promo__video-btn--pause:hover:before {
        background: transparent url(../Images/Icons/SVGs/icon-pause-dark.svg) no-repeat 50%;
    }

.header-video--playing .header-promo__video-btn--play {
    display: none;
}

.header-video--paused .header-promo__video-btn--play, .header-video--playing .header-promo__video-btn--pause {
    display: block;
}

.header-video--paused .header-promo__video-btn--pause {
    display: none;
}

.tag-block {
    background-color: #009a47;
    padding: 4.8rem 0 0;
}

@media screen and (min-width:768px) {
    .tag-block {
        padding: 4.8rem 0 1.5rem;
    }
}

@media screen and (min-width:992px) {
    .tag-block {
        padding: 4.8rem 0 1rem;
    }
}

.tag-block__title {
    margin: 0 1rem 3rem 0;
    display: block;
    font-size: 2rem;
    color: #fff;
    font-weight: 400;
}

.tag-block__list {
    margin: 0 auto;
    list-style: none;
}

@media screen and (min-width:576px) {
    .tag-block__list {
        display: inline-block;
    }
}

.tag-block__item {
    display: inline-block;
    width: 100%;
    margin: 0 0 3rem;
}

@media screen and (min-width:768px) {
    .tag-block__item {
        width: auto;
        margin: 0 1.5rem 1.5rem 0;
    }
}

@media screen and (min-width:992px) {
    .tag-block__item {
        width: auto;
        margin: 0 2.5rem 2rem 0;
    }
}

.js-reveal .tag-block__item {
    opacity: 0;
    transform: translateY(50px);
}

.js-reveal.js-animate .tag-block__item {
    opacity: 1;
    transform: translateY(0);
    transition: all .5s ease-in-out;
}

.filter-index .tag-block__item, .no-js .tag-block__item {
    opacity: 1;
    transform: translateY(0);
}

.tag-block__link {
    position: relative;
    display: block;
    border: 1px solid #fff;
    padding: 1.5rem 6rem;
    text-decoration: none;
    color: #fff;
    text-align: center;
    z-index: 1;
    transition: color .4s ease-in-out;
}

    .tag-block__link:visited {
        color: #fff;
    }

    .tag-block__link:focus, .tag-block__link:hover {
        color: #3a4953;
    }

        .tag-block__link:focus:after, .tag-block__link:hover:after {
            width: 100%;
        }

    .tag-block__link:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 0;
        height: 100%;
        background-color: #fff;
        transition: width .4s ease-in-out;
        z-index: -1;
    }

.video-block-wrapper {
    padding: 6rem 0 0;
}

@media screen and (min-width:992px) {
    .video-block-wrapper {
        padding: 10rem 0 0;
    }
}

.video-block-container {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
}

.video-block {
    padding-bottom: 2.5rem;
}

.fluid-width-video-wrapper iframe {
    border: 0;
}

.video-block__description {
    display: block;
    font-weight: 600;
    margin-bottom: 2rem;
}

    .video-block__description p:last-child {
        margin: 0;
    }

@media screen and (min-width:992px) {
    .video-block__description {
        padding-right: 3rem;
    }
}

.transcript {
    margin: 0;
    padding: 0;
}

.video-block__accordion-button {
    width: 150px;
    height: 40px;
    border: 0;
    font-weight: 600;
    font-size: 1.8rem;
    display: block;
    padding: 0 0 0 6rem;
    position: relative;
    text-align: left;
    background: transparent;
}

    .video-block__accordion-button:after, .video-block__accordion-button:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 40px;
        height: 40px;
        transition: all .3s ease;
    }

@media screen and (min-width:992px) {
    .video-block__accordion-button:after, .video-block__accordion-button:before {
        left: auto;
        right: 0;
    }
}

.video-block__accordion-button:before {
    background: transparent url(../Images/Icons/SVGs/icon-plus-large-border.svg) no-repeat 0;
}

.video-block__accordion-button:after {
    background: transparent url(../Images/Icons/SVGs/icon-plus-large.svg) no-repeat 0;
}

@media screen and (min-width:992px) {
    .video-block__accordion-button {
        width: auto;
        padding: 0 6rem 0 0;
    }
}

.video-block__accordion-button:focus, .video-block__accordion-button:hover {
    text-decoration: underline;
}

    .video-block__accordion-button:focus:after, .video-block__accordion-button:hover:after {
        transform: rotate(90deg);
    }

.video-block__accordion-button.is-active:after {
    background: transparent url(../Images/Icons/SVGs/icon-minus-large.svg) no-repeat 0;
    transform: rotate(0deg);
}

.video-block__accordion-button.is-active:focus:after, .video-block__accordion-button.is-active:hover:after {
    transform: rotate(0deg);
}

.transcript-text {
    display: none;
    margin: 0 0 2.5rem;
}

    .transcript-text p:last-child {
        margin: 0;
    }

.no-js .transcript__text {
    display: block;
}

.video-footer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 2.5rem 0 0;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (min-width:992px) {
    .video-footer {
        -ms-flex-direction: row;
        flex-direction: row;
    }
}

.carousel .section-title, .carousel .umbraco-forms-page .formtitle h2, .umbraco-forms-page .formtitle .carousel h2 {
    margin-bottom: 6rem;
}

@media screen and (min-width:992px) {
    .carousel .section-title, .carousel .umbraco-forms-page .formtitle h2, .umbraco-forms-page .formtitle .carousel h2 {
        width: 50%;
    }
}

.carousel .slick-list {
    padding-bottom: 70px;
}

@media screen and (min-width:992px) {
    .carousel .slick-list {
        padding-bottom: 0;
    }
}

.carousel .slick-arrow {
    position: absolute;
    width: 70px;
    height: 70px;
    z-index: 200;
    outline: none;
    border: none;
    text-indent: -9999em;
    bottom: 0;
    left: -1px;
    background: #fff url(../Images/Icons/SVGs/icon-gallery-chevron.svg) no-repeat 50%;
    background-size: 12px 22px;
    transition: all .3s;
}

@media screen and (min-width:992px) {
    .carousel .slick-arrow {
        width: 80px;
        height: 80px;
    }
}

.carousel .slick-arrow:focus, .carousel .slick-arrow:hover {
    background-color: #f7fbfc;
}

@media screen and (min-width:992px) {
    .carousel .slick-arrow:focus, .carousel .slick-arrow:hover {
        animation: b 1s ease-in-out;
    }
}

.carousel .slick-next {
    left: auto;
    right: -1px;
    transform: scaleX(-1);
}

.carousel-holder {
    display: -ms-flexbox;
    display: flex;
}

.carousel-description-col {
    -ms-flex-order: 2;
    order: 2;
}

@media screen and (min-width:992px) {
    .carousel-description-col {
        -ms-flex-order: 1;
        order: 1;
    }
}

.carousel-image-col {
    -ms-flex-order: 1;
    order: 1;
}

@media screen and (min-width:992px) {
    .carousel-image-col {
        -ms-flex-order: 2;
        order: 2;
    }
}

@media screen and (min-width:992px) {
    .carousel-description {
        width: 80%;
        padding-left: 4.5rem;
    }
}

.js-reveal .carousel-description {
    opacity: 0;
    transform: translateY(50px);
}

.js-reveal.js-animate .carousel-description {
    opacity: 1;
    transform: translateY(0);
    transition: all .5s ease-out;
    transition-delay: .2s;
}

.filter-index .carousel-description, .no-js .carousel-description {
    opacity: 1;
    transform: translateY(0);
}

.carousel-image {
    margin-left: -20px;
    margin-right: -20px;
    margin-bottom: 4rem;
}

@media screen and (min-width:992px) {
    .carousel-image {
        margin: -10rem 0 0;
        margin-top: -14rem;
    }
}

.carousel__container {
    margin: 0 auto;
}

.carousel__item {
    position: relative;
}

.carousel__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
}

@media screen and (min-width:0) and (max-width:991px) {
    .carousel-page-indicator {
        position: absolute;
        top: -74px;
        left: 0;
        margin: 0 70px;
        width: calc(100% - 140px);
        transform: translateY(-50%);
    }
}

.carousel-indicator {
    font-size: 0;
    margin-top: 6rem;
}

@media screen and (min-width:0) and (max-width:991px) {
    .carousel-indicator {
        margin: 0;
        text-align: center;
    }
}

.carousel-indicator__item {
    display: inline-block;
    width: 34px;
    height: 5px;
    background-color: #3a4953;
    margin: 0 1.5rem 1rem 0;
}

@media screen and (min-width:0) and (max-width:991px) {
    .carousel-indicator__item {
        margin: .5rem;
    }
}

.carousel-indicator__item.is-active {
    background-color: #b0c954;
}

.carousel-description__content {
    display: none;
}

    .carousel-description__content.is-active {
        display: block;
    }

    .carousel-description__content h3 + .btn, .carousel-description__content p + .btn {
        margin-top: 4rem;
    }

.carousel__img-holder {
    width: 100%;
    overflow: hidden;
}

.js-reveal .carousel-image {
    opacity: 0;
    transform: translateY(50px);
}

.js-reveal.js-animate .carousel-image {
    opacity: 1;
    transform: translateY(0);
    transition: all .5s ease-out;
}

.filter-index .carousel-image, .no-js .carousel-image {
    opacity: 1;
    transform: translateY(0);
}

.image-block-container {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
}

@media screen and (min-width:768px) {
    .image-block-container {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%;
    }
}

@media screen and (min-width:992px) {
    .image-block-container {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
}

.image-block-container.img--center, .image-block-container.img--center .image-block {
    margin: 0 auto;
}

@media screen and (min-width:768px) {
    .image-block-container.img--center {
        margin-left: 8.33333%;
    }
}

@media screen and (min-width:992px) {
    .image-block-container.img--center {
        margin-left: 25%;
    }
}

.image-block-container.img--right, .image-block-container.img--right .image-block {
    margin: 0 0 0 auto;
}

.image-block {
    margin: 0;
}

.image-block__caption {
    padding: .5rem 1rem;
}

.image-gallery-block__counter {
    font-size: 2rem;
    text-align: center;
    margin: 2.5rem 0;
}

.image-gallery-block__pagination {
    position: relative;
    text-align: center;
}

button.image-gallery-block__btn {
    margin: 0 1rem;
    padding: 3.5rem;
    line-height: 0;
    border: none;
    text-indent: -2000px;
    background: #fff url(../Images/Icons/SVGs/icon-gallery-chevron.svg) no-repeat 50%;
    background-size: 12px;
    transition: all .4s ease;
}

    button.image-gallery-block__btn + .on-focus, button.image-gallery-block__btn:hover {
        box-shadow: 0 2px 14px 0 hsla(235,8%,67%,.7);
        transition: all .4s ease;
    }

.image-gallery-block__btn--next {
    transform: scaleX(-1);
}

@media screen and (min-width:768px) {
    .image-gallery-block__container:not(.slick-initialized) .image-gallery-block__slide {
        width: 33%;
        display: inline-block;
        vertical-align: top;
    }
}

.slick-slide:not(.slick-active) .image-gallery-block__slide {
    opacity: .5;
}

.image-gallery-block__item {
    text-align: center;
}

.image-gallery-block__link {
    display: inline-block;
    text-decoration: none;
    color: inherit;
    margin: 0 1rem;
    max-width: calc(100% - 2rem);
    transition: all .4s ease;
}

    .image-gallery-block__link + .on-focus, .image-gallery-block__link:hover {
        outline: none;
        text-decoration: none;
        box-shadow: 0 2px 14px 0 hsla(235,8%,67%,.7);
        transition: all .4s ease;
    }

        .image-gallery-block__link + .on-focus .image-gallery-block__image, .image-gallery-block__link:hover .image-gallery-block__image {
            transform: scale(1.1);
            transition: all .4s ease;
        }

.image-gallery-block__image-frame {
    position: relative;
    overflow: hidden;
}

.image-gallery-block__image, .image-gallery-block__overlay {
    width: 100%;
    transition: all .4s ease;
}

.image-gallery-block__overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    opacity: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 2rem;
    background-color: rgba(0,0,0,.6);
    color: #fff;
}

.image-gallery-block__link:hover .image-gallery-block__overlay {
    opacity: 1;
    transition: all .4s ease;
}

.image-gallery-block__content {
    padding: 2rem;
    background-color: #fff;
    text-align: left;
    min-height: 120px;
    border-bottom: 4px solid #7ebc56;
    transition: border .4s ease;
    position: relative;
}

.image-gallery-block__link:hover .image-gallery-block__content {
    border-width: 10px;
    transition: border .4s ease;
}

.image-gallery-block__description {
    margin: 0;
    font-size: 2rem;
}

.general-link-promo-container {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    text-align: center;
}

.multi-link-block {
    min-height: 300px;
    background-color: #fff;
}

.multi-link-block__inner {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
}

.multi-link-block__item-holder {
    text-align: center;
}

    .multi-link-block__item-holder ul {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: center;
        justify-content: center;
        margin: 0 -12px;
        padding: 0;
        list-style: none;
    }

        .multi-link-block__item-holder ul li {
            margin: 0 1.2rem 3rem;
            width: calc(100% - 24px);
            max-width: calc(100% - 24px);
            -ms-flex-positive: 1;
            flex-grow: 1;
        }

@media screen and (min-width:768px) {
    .multi-link-block__item-holder ul li {
        width: calc(33.33% - 24px);
        max-width: calc(33.33% - 24px);
    }
}

@media screen and (min-width:992px) {
    .multi-link-block__item-holder ul li {
        margin-bottom: 0;
        width: calc(20% - 24px);
        max-width: calc(20% - 24px);
    }
}

.js-reveal .multi-link-block__item-holder ul li {
    opacity: 0;
    transform: translateY(50px);
}

.js-reveal.js-animate .multi-link-block__item-holder ul li {
    opacity: 1;
    transform: translateY(0);
    transition: all .5s ease-in-out;
}

.no-js .multi-link-block__item-holder ul li {
    opacity: 1;
    transform: translateY(0);
}

.multi-link-block__item-holder ul img {
    max-width: 100%;
    max-height: 120px;
    margin: 0 auto 1rem;
    display: block;
}

@media screen and (min-width:768px) {
    .multi-link-block__item-holder ul img {
        margin: 0 auto 2rem;
    }
}

.multi-link-block__link {
    color: #3a4953;
    text-decoration: none;
    font-size: 2rem;
    line-height: 4.5rem;
    border-bottom: 2px solid #3a4953;
    padding-bottom: 1rem;
}

    .multi-link-block__link:focus, .multi-link-block__link:hover {
        background-color: #fff;
        color: #e4032c;
        border-color: #e4032c;
        outline: none;
        text-decoration: none;
    }

.quote-block {
    text-align: center;
    margin: 0 auto;
    padding: 0;
    border: none;
    color: #fff;
    z-index: 1;
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
}

@media screen and (min-width:768px) {
    .quote-block {
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%;
        margin-left: 8.33333%;
    }
}

.js-reveal .quote-block {
    opacity: 0;
    transform: translateY(50px);
}

.js-reveal.js-animate .quote-block {
    opacity: 1;
    transform: translateY(0);
    transition: all 1s ease-in-out;
}

.no-js .quote-block {
    opacity: 1;
    transform: translateY(0);
}

.quote-block__title {
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .1em;
    margin-bottom: 2.5rem;
}

@media screen and (min-width:768px) {
    .quote-block__title {
        font-size: 3rem;
        line-height: 4rem;
    }
}

.quote-block__quote {
    font-size: 1.8rem;
    line-height: 2.4rem;
}

@media screen and (min-width:768px) {
    .quote-block__quote {
        font-size: 3rem;
        line-height: 4rem;
    }
}

.quote-block__quote.quote-block__quote--marks:after, .quote-block__quote.quote-block__quote--marks:before {
    content: '"';
}

.quote-block__cite {
    display: block;
    position: relative;
    margin-top: 3.5rem;
    padding-top: 3.5rem;
}

    .quote-block__cite:before {
        content: "";
        width: 225px;
        height: 3px;
        background-color: #fff;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
    }

.quote-block__author, .quote-block__job-title {
    font-size: 2rem;
    letter-spacing: .1em;
    font-style: normal;
    display: block;
}

@media screen and (min-width:768px) {
    .quote-block__author, .quote-block__job-title {
        font-size: 3rem;
        line-height: 4rem;
    }
}

.quote-block-wrapper {
    background-color: rgba(215,235,242,.2);
    padding: 50px 0;
    overflow: hidden;
}

@media screen and (min-width:768px) {
    .quote-block-wrapper {
        padding: 150px 0;
    }
}

.quote-block-wrapper-v2 {
    padding-top: 25rem;
    position: relative;
    background-color: rgba(215,235,242,.2);
    padding-bottom: 10rem;
    overflow: hidden;
}

@media screen and (min-width:768px) {
    .quote-block-wrapper-v2 {
        padding-top: 30rem;
    }
}

.quote-block-wrapper-v2 .quote-block {
    background-color: #fff;
    color: #3a4953;
    margin-bottom: -10rem;
    padding: 5rem 2rem;
}

@media screen and (min-width:768px) {
    .quote-block-wrapper-v2 .quote-block {
        padding: 6rem 9rem;
    }
}

.quote-block-wrapper-v2 .quote-block__quote {
    letter-spacing: .1em;
    text-align: left;
    font-size: 2rem;
}

@media screen and (min-width:768px) {
    .quote-block-wrapper-v2 .quote-block__quote {
        text-align: center;
        font-size: 3rem;
    }
}

.quote-block-wrapper-v2 .quote-block__description {
    text-align: left;
}

    .quote-block-wrapper-v2 .quote-block__description:before {
        content: "";
        width: 210px;
        left: 0;
        transform: none;
    }

@media screen and (min-width:768px) {
    .quote-block-wrapper-v2 .quote-block__description {
        text-align: center;
    }

        .quote-block-wrapper-v2 .quote-block__description:before {
            content: "";
            width: 225px;
            left: 50%;
            transform: translateX(-50%);
        }
}

.quote-block-background {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 28rem;
}

@media screen and (min-width:768px) {
    .quote-block-background {
        height: calc(100% - 10rem);
    }
}

.quote-block__description {
    position: relative;
    margin-top: 1.5rem;
    padding-top: 2.5rem;
    line-height: 3rem;
}

    .quote-block__description:before {
        content: "";
        width: 225px;
        height: 3px;
        background-color: #3a4953;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
    }

.two-column-general-content-block {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -12px;
    margin-left: -12px;
}

.two-column-general-content-block__col {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    margin-bottom: 2rem;
}

@media screen and (min-width:768px) {
    .two-column-general-content-block__col {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
}

.two-column-general-content-block__col:last-child .wysiwyg-block {
    padding-left: 0;
}

.two-column-general-content-block__col p:last-child {
    margin-bottom: 0;
}

.js-reveal .two-column-general-content-block__col {
    opacity: 0;
    transform: translateY(50px);
}

.js-reveal.js-animate .two-column-general-content-block__col {
    opacity: 1;
    transform: translateY(0);
    transition: all .5s ease-in-out;
}

.no-js .two-column-general-content-block__col {
    opacity: 1;
    transform: translateY(0);
}

.twitter-header {
    position: relative;
    padding: 6rem 0 0;
}

@media screen and (min-width:992px) {
    .twitter-header {
        padding: 10rem 0 0;
    }
}

.twitter-feed-container {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    margin-bottom: 5rem;
}

@media screen and (min-width:768px) {
    .twitter-feed-container {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
        margin-left: 25%;
    }
}

.twitter-body {
    padding: 3.5rem 0 6rem;
}

@media screen and (min-width:992px) {
    .twitter-body {
        padding: 4.5rem 0 10rem;
    }
}

.twitter-feed-wrapper {
    margin: 0 0 2rem;
    background-color: #fff;
}

.twitter-btn {
    display: block;
    margin: 0 auto;
}

@media screen and (min-width:992px) {
    .wysiwyg-block {
        padding-left: 45px;
        max-width: 975px;
    }
}

.wysiwyg-block img {
    height: auto !important;
}

    .wysiwyg-block img[style="float: left;"] {
        margin: 8px 25px 10px 0;
    }

    .wysiwyg-block img[style="float: right;"] {
        margin: 8px 0 10px 25px;
    }

@media screen and (min-width:992px) {
    .umbraco-forms-page .formtitle .wysiwyg-block h2, .wysiwyg-block .h1, .wysiwyg-block .umbraco-forms-page .formtitle h2, .wysiwyg-block h1 {
        margin-left: -45px;
    }
}

.wysiwyg-block .general-image-list-promo__title, .wysiwyg-block .h2, .wysiwyg-block .h3, .wysiwyg-block h2, .wysiwyg-block h3 {
    display: table;
}

    .umbraco-forms-page .formtitle .wysiwyg-block h2, .umbraco-forms-page .formtitle .wysiwyg-block h2.general-image-list-promo__title, .umbraco-forms-page .formtitle .wysiwyg-block h2.h2, .umbraco-forms-page .formtitle .wysiwyg-block h2.h3, .wysiwyg-block .h1.general-image-list-promo__title, .wysiwyg-block .h2.h1, .wysiwyg-block .h3.h1, .wysiwyg-block .umbraco-forms-page .formtitle h2, .wysiwyg-block .umbraco-forms-page .formtitle h2.general-image-list-promo__title, .wysiwyg-block .umbraco-forms-page .formtitle h2.h2, .wysiwyg-block .umbraco-forms-page .formtitle h2.h3, .wysiwyg-block h2.h1, .wysiwyg-block h3.h1 {
        border: none;
    }

.wysiwyg-block p {
    margin-bottom: 2rem;
}

    .wysiwyg-block p:after, .wysiwyg-block p:before {
        content: " ";
        display: table;
    }

    .wysiwyg-block p:after {
        clear: both;
    }

.wysiwyg-block ul {
    list-style: none;
}

    .wysiwyg-block ul li:before {
        content: "";
        background-color: #009a47;
        display: inline-block;
        width: .5em;
        height: .5em;
        margin-left: -1em;
        margin-right: .5em;
    }

.wysiwyg-block a {
    color: #e4032c;
    font-weight: 600;
}

.wysiwyg-image-left {
    float: left;
    margin: 8px 25px 10px 0;
}

.wysiwyg-image-right {
    margin: 8px 0 10px 25px;
    float: right;
}

.information-block .general-image-list-promo__item {
    border: 0;
}

.information-block .general-image-list-promo__article {
    border-top: 0;
}

.information-block .contact-details, .information-block .general-image-list-promo__content-wrapper {
    text-align: left;
}

.information-block .contact-details__email, .information-block .contact-details__map, .information-block .contact-details__tel {
    margin-left: 0;
    margin-right: 0;
}

.filter-index .dropdown-filter label {
    margin: 0;
}

.filter-index .dropdown-filter__label {
    margin-right: 1rem;
    font-size: 1.8rem;
    color: #3a4953;
    width: 100%;
    display: block;
    margin-bottom: 1rem;
}

@media screen and (min-width:992px) {
    .filter-index .dropdown-filter__label {
        width: auto;
        margin-bottom: 0;
        display: inline-block;
    }
}

.filter-index .dropdown-filter__select {
    width: 100%;
    display: inline-block;
    color: #3a4953;
    height: 60px;
    letter-spacing: 3.2px;
    background-position: right 24px center;
    padding: 1.2rem 2rem;
}

    .filter-index .dropdown-filter__select option {
        color: #3a4953;
    }

@media screen and (min-width:992px) {
    .filter-index .dropdown-filter__select {
        width: 250px;
        height: auto;
        color: rgba(58,73,83,.5);
        letter-spacing: normal;
        background-position: right 15px center;
        padding: 1.2rem .7rem;
    }
}

.filter-index .general-list-block {
    margin-bottom: 2rem;
}

.filter-index .card {
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 0;
    padding: 0;
}

.filter-index .card__content {
    padding: 2rem;
}

.filter-col-left {
    background-color: #f6fafc;
    padding: 5.5rem 1.2rem 3.5rem;
}

@media screen and (min-width:992px) {
    .filter-col-left {
        background-color: #fff;
        padding: 10rem 1.2rem;
    }
}

.filter-col-right {
    background-color: #f6fafc;
    padding: 0 1.2rem 6rem;
}

@media screen and (min-width:768px) {
    .filter-col-right {
        padding: 0 1.2rem 6rem;
    }
}

@media screen and (min-width:992px) {
    .filter-col-right {
        padding: 10rem 1.2rem 20rem 7.2rem;
    }
}

.section-filter {
    background: #f6fafc;
}

@media screen and (min-width:992px) {
    .section-filter {
        background: linear-gradient(90deg,#fff 50%,#f6fafc 0,#f6fafc);
    }
}

.no-js .section-filter {
    background: #f6fafc;
}

.btn--filter-index {
    display: block;
    margin: 0 auto;
}

@media screen and (min-width:992px) {
    .btn--filter-index {
        width: calc(50% - 24px);
    }
}

.search-results {
    position: relative;
    padding: 6rem 0 0;
}

@media screen and (min-width:992px) {
    .search-results {
        padding: 10rem 0 0;
    }
}

.search-results-wrapper {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    border-bottom: 1px solid #d7ebf2;
}

.search-results-wrapper--medium {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

@media screen and (min-width:992px) {
    .search-results-wrapper--medium {
        padding-top: 6rem;
        padding-bottom: 6rem;
    }
}

.search-results-wrapper--small {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

@media screen and (min-width:992px) {
    .search-results-wrapper--small {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
}

.search-results-wrapper--no-border {
    border: 0;
}

.search-results-btn-wrapper {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 12px;
    padding-left: 12px;
    text-align: center;
}

.search-results-list .full-width:nth-child(odd) {
    background-color: rgba(215,235,242,.2);
}

.search-results-list--tag .full-width:nth-child(odd) {
    background-color: #fff;
}

.search-results-list--tag .full-width:nth-child(2n) {
    background-color: rgba(215,235,242,.2);
}

.search-result {
    width: 75%;
    margin: 0;
}

@media screen and (min-width:992px) {
    .search-result {
        padding-left: 4rem;
        width: 66.66%;
    }
}

.search-result__term {
    margin: 0 0 2.5rem;
    font-size: 2rem;
    border-bottom: 2px solid #3a4953;
    display: inline-block;
    padding-bottom: 1rem;
    letter-spacing: 1px;
}

@media screen and (min-width:992px) {
    .search-result__term {
        font-size: 2.4rem;
    }
}

.search-result__link {
    margin: 0 0 1rem;
    text-decoration: none;
}

    .search-result__link:focus, .search-result__link:hover {
        color: #3a4953;
        text-decoration: none;
    }

    .search-result__link:visited {
        text-decoration: none;
    }

.search-result__date {
    margin: 0 0 1rem;
    text-transform: uppercase;
    font-weight: 600;
}

.search-result__description {
    margin: 0;
}

.search-result__download {
    margin: 0;
    text-transform: uppercase;
    font-weight: 700;
}

.search-results-wrapper .site-search {
    width: 100%;
    display: block;
    height: auto;
    padding: 0;
}

@media screen and (min-width:992px) {
    .search-results-wrapper .site-search {
        width: 66.66%;
    }
}

.search-results-wrapper .site-search__label {
    font-size: 2rem;
    margin-bottom: 1rem;
}

.search-results-wrapper .search-input-wrapper {
    display: -ms-flexbox;
    display: flex;
}

.search-results-wrapper .site-search__term {
    height: 60px;
    border: 1px solid #3a4953;
    display: inline-block;
    padding: .7rem;
    border-radius: 0;
    -webkit-appearance: none;
}

@media screen and (min-width:992px) {
    .search-results-wrapper .site-search__term {
        padding: .7rem 2rem;
    }
}

.search-results-wrapper .site-search__term::-webkit-input-placeholder {
    color: rgba(58,73,83,.3);
}

.search-results-wrapper .site-search__term:-ms-input-placeholder, .search-results-wrapper .site-search__term::-ms-input-placeholder {
    color: rgba(58,73,83,.3);
}

.search-results-wrapper .site-search__term::placeholder {
    color: rgba(58,73,83,.3);
}

.search-results-wrapper .site-search__btn {
    width: 60px;
    height: 60px;
    min-width: 60px;
    padding: 0;
    display: inline-block;
    border: 0;
    border-radius: 0;
    background: #e4032c url(../Images/Icons/SVGs/icon-search.svg) no-repeat 50%;
    -webkit-appearance: none;
}

.search-result__btn {
    width: 40px;
    height: 40px;
    position: absolute;
    top: 50px;
    right: 12px;
    border: 0;
    display: block;
    background: transparent url(../Images/Icons/SVGs/icon-plus-large-border.svg) no-repeat 50%;
    text-indent: -9999em;
}

@media screen and (min-width:992px) {
    .search-result__btn {
        right: 10%;
        top: 50%;
        transform: translateY(-50%);
    }
}

.search-result__btn:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 40px;
    background: transparent url(../Images/Icons/SVGs/icon-plus-large.svg) no-repeat 50%;
    transition: all .3s ease;
}

.search-result__btn:focus:before, .search-result__btn:hover:before {
    transform: rotate(90deg);
}

.sitemap-container {
    margin: 5rem 0;
}

.sitemap-wrapper {
    margin: 0 0 3rem;
}

@media screen and (min-width:992px) {
    .sitemap-wrapper {
        padding-left: 4rem;
    }
}

.sitemap ul {
    margin-left: 2rem;
}

.sitemap__item {
    list-style: none;
}

.sitemap__link {
    text-decoration: underline;
    font-size: 1.6rem;
    color: #e4032c;
}

    .sitemap__link:focus, .sitemap__link:hover {
        color: #3a4953;
        text-decoration: underline;
    }

    .sitemap__link:visited {
        text-decoration: none;
        color: #e4032c;
    }

@media screen and (min-width:992px) {
    .sitemap__link {
        font-size: 1.8rem;
    }
}

.sitemap__link--primary {
    font-size: 2rem;
    color: #3a4953;
    margin-bottom: 0;
    display: inline-block;
}

    .sitemap__link--primary:visited {
        color: #3a4953;
    }

@media screen and (min-width:992px) {
    .sitemap__link--primary {
        font-size: 2.4rem;
    }
}

.sitemap-secondary {
    margin-top: 2rem;
}

    .sitemap-secondary a {
        display: inline-block;
        margin-bottom: 1rem;
    }

.sitemap-tertiary a {
    font-size: 1.6rem;
}

.sitemap-section, .sitemap .sitemap__item {
    margin-bottom: 2rem;
}

.sitemap-secondary .sitemap__item {
    margin-bottom: 0;
}

.page-error {
    background: #fff;
    padding: 2.5rem 2.75rem 1.5rem;
    margin-top: -7.5rem;
    margin: -7.5rem 0 2.2rem;
}

@media screen and (min-width:992px) {
    .page-error {
        margin: 4rem 0 0;
        padding: 2.5rem 2.75rem 5rem;
    }
}

.main--error-page {
    position: relative;
    z-index: 1;
}

@media screen and (min-width:992px) {
    .main--error-page:after {
        content: "";
        background: #fff;
        position: absolute;
        height: 51%;
        top: 15rem;
        left: 0;
        width: 100%;
        z-index: -1;
    }
}

.main--error-page .page-error__title {
    font-size: 2rem;
    margin-bottom: 2rem;
}

@media screen and (min-width:0) and (max-width:991px) {
    .main--error-page p {
        margin-bottom: 4.5rem;
    }
}

.main--error-page ul {
    list-style: none;
}

    .main--error-page ul li {
        position: relative;
        padding-left: 3.5rem;
        margin-bottom: 2rem;
    }

        .main--error-page ul li:before {
            content: "";
            position: absolute;
            top: .7rem;
            left: 0;
            background-color: #009a47;
            display: block;
            width: 1rem;
            height: 1rem;
        }

.main--error-page a {
    text-decoration: underline;
}

@media screen and (min-width:992px) {
    .error-order-1 {
        -ms-flex-order: 1;
        order: 1;
    }

    .error-order-2 {
        -ms-flex-order: 2;
        order: 2;
    }
}

.navigation-wrapper--error-page {
    display: block;
    text-align: right;
    padding: 3rem 4rem 0 0;
}

    .navigation-wrapper--error-page .btn {
        width: auto;
    }

.error-h2 {
    font-size: 30rem;
    line-height: 30rem;
    border: none;
    color: #f0f7fb;
    font-weight: 700;
    letter-spacing: -1rem;
    margin: 4rem 0 0 -6rem;
    background: #fff;
    width: 150%;
}

@media screen and (min-width:992px) {
    .error-h2 {
        margin: 9rem 0 0 -6rem;
        background: none;
        font-size: 40rem;
        line-height: normal;
        position: relative;
        width: auto;
    }
}

.iframe-wrapper {
    width: 100%;
    margin: 0 0 3rem;
    overflow: auto !important;
    -webkit-overflow-scrolling: touch !important;
    position: relative;
}

    .iframe-wrapper iframe {
        width: 100%;
        height: 100%;
        min-height: 100%;
        min-width: 100%;
        border: 0;
        position: absolute;
        top: 0;
        left: 0;
        display: block !important;
    }

.case-study .general-image-list-promo {
    text-align: left;
}

@media screen and (min-width:768px) {
    .case-study .general-image-list-promo {
        padding-bottom: 10rem;
    }
}

.case-study .general-image-list-promo__item {
    border: 0;
}

.case-study .general-image-list-promo__article {
    border-top: 0;
}

@media screen and (min-width:0) and (max-width:767px) {
    .case-study .general-image-list-promo__content {
        padding-bottom: 5rem;
    }
}

.case-study .general-image-list-promo__description {
    margin-bottom: 0;
    padding: 0 2rem;
}

    .case-study .general-image-list-promo__description p:last-child {
        margin-bottom: 0;
    }

    .case-study .general-image-list-promo__description li {
        padding-bottom: 1rem;
    }

        .case-study .general-image-list-promo__description li:last-child {
            padding-bottom: 0;
        }

@media screen and (min-width:768px) {
    .case-study .general-image-list-promo__description {
        padding: 0;
    }
}

.case-study .general-image-list-promo__description + .contact-details {
    margin-top: 3rem;
}

@media print {
    *, :after, :before {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a, a:visited {
        text-decoration: underline;
    }

        a[href^="#"]:after, a[href^="javascript:"]:after {
            content: "";
        }

    blockquote, pre {
        border: 1px solid #000;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    img, tr {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    h2, h3, p {
        orphans: 3;
        widows: 3;
    }

    h2, h3 {
        page-break-after: avoid;
    }
}
