﻿html {
    background: #fff;
    color: #5e5d5d;
    font: 400 16px/1.5 aktiv-grotesk,sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

a {
    background: transparent
}

    a[href^='tel'] {
        color: inherit;
        text-decoration: none
    }

    a:active, a:hover {
        outline: 0
    }

a, .f-link {
    color: #009390;
    cursor: pointer;
    text-decoration: none
}

    a:hover, .f-link:hover {
        color: #00605e;
        text-decoration: none
    }

abbr[title] {
    border-bottom: 1px dotted
}

b, strong {
    font-weight: 700
}

:not(pre) > code, :not(pre) > kbd, :not(pre) > samp {
    background-color: #eee;
    border: 1px solid #d5d4d4;
    color: #d05;
    font-family: Consolas,monospace,serif;
    font-size: 14px;
    padding: 0 4px;
    white-space: nowrap
}

em {
    color: inherit
}

ins {
    background: #ffa;
    color: #444;
    text-decoration: none
}

mark {
    background: #ffa;
    color: #444
}

q {
    font-style: italic
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

audio, canvas, iframe, img, svg, video {
    vertical-align: middle
}

audio, canvas, img, svg, video {
    box-sizing: border-box;
    max-width: 100%
}

    audio, canvas, img, svg:not([height]), video {
        height: auto
    }

.f-img-preserve, .f-img-preserve audio, .f-img-preserve canvas, .f-img-preserve img, .f-img-preserve svg, .f-img-preserve video {
    max-width: none
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

blockquote, figure {
    margin: 0
}

p, ul, ol, dl, blockquote, pre, address, fieldset, figure {
    margin: 0 0 20px
}

* + p, * + ul, * + ol, * + dl, * + blockquote, * + pre, * + address, * + fieldset, * + figure {
    margin-top: 20px
}

h1, h2, h3, h4, h5, h6 {
    color: #444;
    font-family: aktiv-grotesk,sans-serif;
    font-weight: normal;
    margin: 0 0 20px;
    text-transform: none
}

    h1 > .material-icons, h2 > .material-icons, h3 > .material-icons, h4 > .material-icons, h5 > .material-icons, h6 > .material-icons {
        font-size: inherit
    }

* + h1, * + h2, * + h3, * + h4, * + h5, * + h6 {
    margin-top: 30px
}

h1, .f-h1 {
    font-size: 1.625rem;
    line-height: 1.2
}

@media screen and (min-width: 480px) {
    h1, .f-h1 {
        font-size: calc(26px + 10 * (100vw - 480px) / 740)
    }
}

@media screen and (min-width: 1220px) {
    h1, .f-h1 {
        font-size: 2.25rem
    }
}

h2, .f-h2 {
    font-size: 1.25rem;
    line-height: 1.3
}

@media screen and (min-width: 480px) {
    h2, .f-h2 {
        font-size: calc(20px + 4 * (100vw - 480px) / 740)
    }
}

@media screen and (min-width: 1220px) {
    h2, .f-h2 {
        font-size: 1.5rem
    }
}

h3, .f-h3 {
    font-size: 1.125rem;
    line-height: 1.4
}

h4, .f-h4, .form-page .form-panel legend {
    font-size: 1rem;
    line-height: 1.4
}

h5, .f-h5 {
    font-size: .875rem;
    line-height: 1.4
}

h6, .f-h6 {
    font-size: .75rem;
    line-height: 1.5
}

ul, ol {
    padding-left: 30px
}

    ul > li > ul, ul > li > ol, ol > li > ol, ol > li > ul {
        margin: 0
    }

dt {
    font-weight: 700
}

dd {
    margin-left: 0
}

hr {
    border: 0;
    border-top: 1px solid #eee;
    box-sizing: content-box;
    height: 0;
    margin: 20px 0
}

address {
    font-style: normal
}

blockquote {
    border-left: 5px solid #eee;
    font-size: 16px;
    font-style: italic;
    line-height: 22px;
    padding-left: 10px
}

pre {
    background: #eee;
    color: #444;
    font: 400 12px/18px Consolas,monospace,serif;
    overflow: auto;
    padding: 10px;
    tab-size: 4
}

::-moz-selection {
    background: #009390;
    color: #fff;
    text-shadow: none
}

::selection {
    background: #009390;
    color: #fff;
    text-shadow: none
}

article, aside, details, figcaption, figure, footer, header, main, nav, section, summary {
    display: block
}

progress {
    vertical-align: baseline
}

audio:not([controls]) {
    display: none
}

[hidden], template {
    display: none
}

iframe {
    border: 0
}

@media screen and (max-width: 400px) {
    @-ms-viewport {
        width: device-width
    }
}

.f-cover-background {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover
}

.f-cover {
    overflow: hidden
}

.f-cover-object {
    height: auto;
    left: 50%;
    max-width: none;
    min-height: 100%;
    min-width: 100%;
    position: relative;
    top: 50%;
    transform: translate(-50%, -50%);
    width: auto
}

[data-f-cover] {
    left: 50%;
    position: relative;
    top: 50%;
    transform: translate(-50%, -50%)
}

.f-flex {
    display: flex
}

    .f-flex > .f-container {
        width: 100%
    }

    .f-flex:before, .f-flex:after {
        display: none !important
    }

.f-flex-inline {
    display: inline-flex
}

    .f-flex > *, .f-flex-inline > * {
        -ms-flex-negative: 1
    }

.f-flex-top {
    align-items: flex-start
}

.f-flex-middle {
    align-items: center
}

.f-flex-bottom {
    align-items: flex-end
}

.f-flex-center {
    justify-content: center
}

.f-flex-right {
    justify-content: flex-end
}

.f-flex-space-between {
    justify-content: space-between
}

.f-flex-space-around {
    justify-content: space-around
}

.f-flex-self-bottom {
    align-self: flex-end
}

.f-flex-self-top {
    align-self: flex-start
}

.f-flex-self-middle {
    align-self: center
}

.f-flex-self-baseline {
    align-self: baseline
}

.f-flex-self-left {
    margin-right: auto
}

.f-flex-self-right {
    margin-left: auto
}

.f-flex-self-to-top {
    margin-bottom: auto
}

.f-flex-self-to-bottom {
    margin-top: auto
}

.f-flex-row-reverse {
    flex-direction: row-reverse
}

.f-flex-column {
    flex-direction: column
}

.f-flex-column-reverse {
    flex-direction: column-reverse
}

.f-flex-nowrap {
    flex-wrap: nowrap
}

.f-flex-wrap {
    flex-wrap: wrap
}

.f-flex-wrap-reverse {
    flex-wrap: wrap-reverse
}

.f-flex-wrap-top {
    align-content: flex-start
}

.f-flex-wrap-middle {
    align-content: center
}

.f-flex-wrap-bottom {
    align-content: flex-end
}

.f-flex-wrap-space-between {
    align-content: space-between
}

.f-flex-wrap-space-around {
    align-content: space-around
}

.f-flex-grow > * {
    flex-grow: 1
}

.f-flex-order-first {
    order: -1
}

.f-flex-order-last {
    order: 99
}

@media screen and (max-width: 766.99px) {
    .f-flex-order-first-small {
        order: -1
    }

    .f-flex-order-last-small {
        order: 99
    }
}

@media screen and (min-width: 768px) and (max-width: 960px) {
    .f-flex-order-first-medium {
        order: -1
    }

    .f-flex-order-last-medium {
        order: 99
    }
}

@media screen and (min-width: 960px) and (max-width: 1220px) {
    .f-flex-order-first-large {
        order: -1
    }

    .f-flex-order-last-large {
        order: 99
    }
}

@media screen and (min-width: 1220px) {
    .f-flex-order-first-xlarge {
        order: -1
    }

    .f-flex-order-last-xlarge {
        order: 99
    }
}

.f-flex-item-none {
    flex: none
}

.f-flex-item-auto {
    flex: auto;
    -ms-flex-negative: 1
}

.f-flex-item-1 {
    flex: 1 1 auto
}

.ie9 .f-flex-fix {
    display: table;
    table-layout: fixed;
    width: 100%
}

.ie9 .f-flex:not(.f-container), .ie9 .f-flex-inline:not(.f-container) {
    display: table-row
}

    .ie9 .f-flex:not(.f-container) > *, .ie9 .f-flex-inline:not(.f-container) > * {
        display: table-cell
    }

.f-container {
    box-sizing: border-box;
    max-width: 100%;
    padding: 0 10px
}

    .f-container:before, .f-container:after {
        content: '';
        display: table
    }

    .f-container:after {
        clear: both
    }

@media (min-width: 1220px) {
    .f-container {
        max-width: 1340px;
        padding: 0 30px
    }
}

.f-container-center {
    margin-left: auto;
    margin-right: auto
}

.f-grid {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    margin-left: -20px;
    padding: 0
}

    .f-grid:before, .f-grid:after {
        content: '';
        display: block;
        overflow: hidden
    }

    .f-grid:after {
        clear: both
    }

    .f-grid.f-grid-auto {
        margin-top: -20px
    }

        .f-grid.f-grid-auto > * {
            padding-top: 20px
        }

    .f-grid > * {
        flex: none;
        float: left;
        margin: 0;
        padding-left: 20px
    }

        .f-grid > * > * > :last-child {
            margin-bottom: 0
        }

        .f-grid + .f-grid, .f-grid-margin, .f-grid > * > .f-panel + .f-panel {
            margin-top: 20px
        }

@media (min-width: 1220px) {
    .f-grid {
        margin-left: -30px
    }

        .f-grid.f-grid-auto {
            margin-top: -30px
        }

            .f-grid.f-grid-auto > * {
                padding-top: 30px
            }

        .f-grid > * {
            padding-left: 30px
        }

            .f-grid + .f-grid, .f-grid-margin, .f-grid > * > .f-panel + .f-panel {
                margin-top: 30px
            }
}

.f-grid-collapse {
    margin-left: 0
}

    .f-grid-collapse.f-grid-auto {
        margin-top: 0
    }

        .f-grid-collapse.f-grid-auto > * {
            padding-top: 0
        }

    .f-grid-collapse > * {
        padding-left: 0
    }

        .f-grid-collapse + .f-grid-collapse, .f-grid-collapse > .f-grid-margin, .f-grid-collapse > * > .f-panel + .f-panel {
            margin-top: 0
        }

.f-grid-small {
    margin-left: -10px
}

    .f-grid-small.f-grid-auto {
        margin-top: -10px
    }

        .f-grid-small.f-grid-auto > * {
            padding-top: 10px
        }

    .f-grid-small > * {
        padding-left: 10px
    }

        .f-grid-small + .f-grid-small, .f-grid-small > .f-grid-margin, .f-grid-small > * > .f-panel + .f-panel {
            margin-top: 10px
        }

.f-grid-medium {
    margin-left: -20px
}

    .f-grid-medium.f-grid-auto {
        margin-top: -20px
    }

        .f-grid-medium.f-grid-auto > * {
            padding-top: 20px
        }

    .f-grid-medium > * {
        padding-left: 20px
    }

.f-grid-large {
    margin-left: -40px
}

@media screen and (min-width: 1600px) {
    .f-grid-large {
        margin-left: -60px
    }
}

.f-grid-large.f-grid-auto {
    margin-top: -40px
}

@media screen and (min-width: 1600px) {
    .f-grid-large.f-grid-auto {
        margin-top: -60px
    }
}

.f-grid-large.f-grid-auto > * {
    padding-top: 40px
}

@media screen and (min-width: 1600px) {
    .f-grid-large.f-grid-auto > * {
        padding-top: 60px
    }
}

.f-grid-large > * {
    padding-left: 40px
}

@media screen and (min-width: 1600px) {
    .f-grid-large > * {
        padding-left: 60px
    }
}

.f-grid-medium + .f-grid-medium, .f-grid-medium > .f-grid-margin, .f-grid-medium > * > .f-panel + .f-panel {
    margin-top: 20px
}

.f-grid-auto + .f-grid-auto {
    margin-top: 0
}

@media (min-width: 768px) {
    .f-grid-divider:not(:empty) {
        margin-left: -20px;
        margin-right: -20px
    }

    .f-grid-divider > * {
        padding-left: 20px;
        padding-right: 20px
    }

    .f-grid-divider:not(.f-grid-auto) > [class*='f-width-1-']:not(.f-width-1-1):nth-child(n+2), .f-grid-divider:not(.f-grid-auto) > [class*='f-width-2-']:nth-child(n+2), .f-grid-divider:not(.f-grid-auto) > [class*='f-width-3-']:nth-child(n+2), .f-grid-divider:not(.f-grid-auto) > [class*='f-width-4-']:nth-child(n+2), .f-grid-divider:not(.f-grid-auto) > [class*='f-width-5-']:nth-child(n+2), .f-grid-divider:not(.f-grid-auto) > [class*='f-width-6-']:nth-child(n+2), .f-grid-divider:not(.f-grid-auto) > [class*='f-width-7-']:nth-child(n+2), .f-grid-divider:not(.f-grid-auto) > [class*='f-width-8-']:nth-child(n+2), .f-grid-divider:not(.f-grid-auto) > [class*='f-width-9-']:nth-child(n+2) {
        border-left: 1px solid #eee
    }

    .f-grid-divider:not(.f-grid-auto) > [class*='f-width-medium-']:not(.f-width-medium-1-1):nth-child(n+2) {
        border-left: 1px solid #eee
    }

    .f-grid-divider.f-grid-auto > [class*='f-width-1-']:not(.f-width-1-1):nth-child(n+2), .f-grid-divider.f-grid-auto > [class*='f-width-2-']:nth-child(n+2), .f-grid-divider.f-grid-auto > [class*='f-width-3-']:nth-child(n+2), .f-grid-divider.f-grid-auto > [class*='f-width-4-']:nth-child(n+2), .f-grid-divider.f-grid-auto > [class*='f-width-5-']:nth-child(n+2), .f-grid-divider.f-grid-auto > [class*='f-width-6-']:nth-child(n+2), .f-grid-divider.f-grid-auto > [class*='f-width-7-']:nth-child(n+2), .f-grid-divider.f-grid-auto > [class*='f-width-8-']:nth-child(n+2), .f-grid-divider.f-grid-auto > [class*='f-width-9-']:nth-child(n+2), .f-grid-divider.f-grid-auto > [class*='f-width-medium-']:not(.f-width-medium-1-1):nth-child(n+2) {
        position: relative
    }

        .f-grid-divider.f-grid-auto > [class*='f-width-1-']:not(.f-width-1-1):nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-2-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-3-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-4-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-5-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-6-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-7-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-8-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-9-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-medium-']:not(.f-width-medium-1-1):nth-child(n+2):before {
            border-left: 1px solid #eee;
            content: '';
            height: calc(100% - 20px);
            left: 0;
            position: absolute;
            top: 20px
        }
}

@media (min-width: 960px) {
    .f-grid-divider:not(.f-grid-auto) > [class*='f-width-large-']:not(.f-width-large-1-1):nth-child(n+2) {
        border-left: 1px solid #eee
    }

    .f-grid-divider.f-grid-auto > [class*='f-width-large-']:not(.f-width-large-1-1):nth-child(n+2) {
        position: relative
    }

        .f-grid-divider.f-grid-auto > [class*='f-width-large-']:not(.f-width-large-1-1):nth-child(n+2):before {
            border-left: 1px solid #eee;
            content: '';
            height: calc(100% - 20px);
            left: 0;
            position: absolute;
            top: 20px
        }
}

@media (min-width: 1220px) {
    .f-grid-divider:not(:empty) {
        margin-left: -30px;
        margin-right: -30px
    }

    .f-grid-divider > * {
        padding-left: 30px;
        padding-right: 30px
    }

    .f-grid-divider:empty {
        margin-bottom: 30px;
        margin-top: 30px
    }

    .f-grid-divider.f-grid-auto > [class*='f-width-1-']:not(.f-width-1-1):nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-2-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-3-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-4-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-5-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-6-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-7-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-8-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-9-']:nth-child(n+2):before, .f-grid-divider.f-grid-auto > [class*='f-width-medium-']:not(.f-width-medium-1-1):nth-child(n+2):before {
        height: calc(100% - 30px);
        top: 30px
    }
}

.f-grid-divider:empty {
    border-top: 1px solid #eee;
    margin-bottom: 20px;
    margin-top: 20px
}

.f-grid-match > * {
    display: flex;
    flex-wrap: wrap
}

    .f-grid-match > * > * {
        box-sizing: border-box;
        flex: none;
        width: 100%
    }

[class*='f-grid-width'] > * {
    box-sizing: border-box;
    width: 100%
}

[class*='f-width'] {
    box-sizing: border-box;
    width: 100%
}

[class*='f-push-'], [class*='f-pull-'] {
    position: relative
}

.f-grid-width-1-1 > * {
    width: 100%
}

.f-grid-width-1-2 > * {
    width: 50%
}

.f-grid-width-1-3 > * {
    width: 33.3333333333%
}

.f-grid-width-2-3 > * {
    width: 66.6666666667%
}

.f-grid-width-1-4 > * {
    width: 25%
}

.f-grid-width-3-4 > * {
    width: 75%
}

.f-grid-width-1-10 > * {
    width: 10%
}

.f-grid-width-2-10 > * {
    width: 20%
}

.f-grid-width-3-10 > * {
    width: 30%
}

.f-grid-width-4-10 > * {
    width: 40%
}

.f-grid-width-6-10 > * {
    width: 60%
}

.f-grid-width-7-10 > * {
    width: 70%
}

.f-grid-width-8-10 > * {
    width: 80%
}

.f-grid-width-9-10 > * {
    width: 90%
}

.f-width-1-1 {
    width: 100%
}

.f-width-1-2 {
    width: 50%
}

.f-width-1-3 {
    width: 33.3333333333%
}

.f-width-2-3 {
    width: 66.6666666667%
}

.f-width-1-4 {
    width: 25%
}

.f-width-3-4 {
    width: 75%
}

.f-width-1-10 {
    width: 10%
}

.f-width-2-10 {
    width: 20%
}

.f-width-3-10 {
    width: 30%
}

.f-width-4-10 {
    width: 40%
}

.f-width-6-10 {
    width: 60%
}

.f-width-7-10 {
    width: 70%
}

.f-width-8-10 {
    width: 80%
}

.f-width-9-10 {
    width: 90%
}

@media (min-width: 480px) {
    .f-grid-width-small-1-1 > * {
        width: 100%
    }

    .f-grid-width-small-1-2 > * {
        width: 50%
    }

    .f-grid-width-small-1-3 > * {
        width: 33.3333333333%
    }

    .f-grid-width-small-2-3 > * {
        width: 66.6666666667%
    }

    .f-grid-width-small-1-4 > * {
        width: 25%
    }

    .f-grid-width-small-3-4 > * {
        width: 75%
    }

    .f-grid-width-small-1-10 > * {
        width: 10%
    }

    .f-grid-width-small-2-10 > * {
        width: 20%
    }

    .f-grid-width-small-3-10 > * {
        width: 30%
    }

    .f-grid-width-small-4-10 > * {
        width: 40%
    }

    .f-grid-width-small-6-10 > * {
        width: 60%
    }

    .f-grid-width-small-7-10 > * {
        width: 70%
    }

    .f-grid-width-small-8-10 > * {
        width: 80%
    }

    .f-grid-width-small-9-10 > * {
        width: 90%
    }
}

@media (min-width: 768px) {
    .f-grid-width-medium-1-1 > * {
        width: 100%
    }

    .f-grid-width-medium-1-2 > * {
        width: 50%
    }

    .f-grid-width-medium-1-3 > * {
        width: 33.3333333333%
    }

    .f-grid-width-medium-2-3 > * {
        width: 66.6666666667%
    }

    .f-grid-width-medium-1-4 > * {
        width: 25%
    }

    .f-grid-width-medium-3-4 > * {
        width: 75%
    }

    .f-grid-width-medium-1-10 > * {
        width: 10%
    }

    .f-grid-width-medium-2-10 > * {
        width: 20%
    }

    .f-grid-width-medium-3-10 > * {
        width: 30%
    }

    .f-grid-width-medium-4-10 > * {
        width: 40%
    }

    .f-grid-width-medium-6-10 > * {
        width: 60%
    }

    .f-grid-width-medium-7-10 > * {
        width: 70%
    }

    .f-grid-width-medium-8-10 > * {
        width: 80%
    }

    .f-grid-width-medium-9-10 > * {
        width: 90%
    }
}

@media (min-width: 960px) {
    .f-grid-width-large-1-1 > * {
        width: 100%
    }

    .f-grid-width-large-1-2 > * {
        width: 50%
    }

    .f-grid-width-large-1-3 > * {
        width: 33.3333333333%
    }

    .f-grid-width-large-2-3 > * {
        width: 66.6666666667%
    }

    .f-grid-width-large-1-4 > * {
        width: 25%
    }

    .f-grid-width-large-3-4 > * {
        width: 75%
    }

    .f-grid-width-large-1-10 > * {
        width: 10%
    }

    .f-grid-width-large-2-10 > * {
        width: 20%
    }

    .f-grid-width-large-3-10 > * {
        width: 30%
    }

    .f-grid-width-large-4-10 > * {
        width: 40%
    }

    .f-grid-width-large-6-10 > * {
        width: 60%
    }

    .f-grid-width-large-7-10 > * {
        width: 70%
    }

    .f-grid-width-large-8-10 > * {
        width: 80%
    }

    .f-grid-width-large-9-10 > * {
        width: 90%
    }
}

@media (min-width: 1220px) {
    .f-grid-width-xlarge-1-1 > * {
        width: 100%
    }

    .f-grid-width-xlarge-1-2 > * {
        width: 50%
    }

    .f-grid-width-xlarge-1-3 > * {
        width: 33.3333333333%
    }

    .f-grid-width-xlarge-2-3 > * {
        width: 66.6666666667%
    }

    .f-grid-width-xlarge-1-4 > * {
        width: 25%
    }

    .f-grid-width-xlarge-3-4 > * {
        width: 75%
    }

    .f-grid-width-xlarge-1-10 > * {
        width: 10%
    }

    .f-grid-width-xlarge-2-10 > * {
        width: 20%
    }

    .f-grid-width-xlarge-3-10 > * {
        width: 30%
    }

    .f-grid-width-xlarge-4-10 > * {
        width: 40%
    }

    .f-grid-width-xlarge-6-10 > * {
        width: 60%
    }

    .f-grid-width-xlarge-7-10 > * {
        width: 70%
    }

    .f-grid-width-xlarge-8-10 > * {
        width: 80%
    }

    .f-grid-width-xlarge-9-10 > * {
        width: 90%
    }
}

@media (min-width: 480px) {
    .f-width-small-1-1 {
        width: 100%
    }

    .f-width-small-1-2 {
        width: 50%
    }

    .f-width-small-1-3 {
        width: 33.3333333333%
    }

    .f-width-small-2-3 {
        width: 66.6666666667%
    }

    .f-width-small-1-4 {
        width: 25%
    }

    .f-width-small-3-4 {
        width: 75%
    }

    .f-width-small-1-10 {
        width: 10%
    }

    .f-width-small-2-10 {
        width: 20%
    }

    .f-width-small-3-10 {
        width: 30%
    }

    .f-width-small-4-10 {
        width: 40%
    }

    .f-width-small-6-10 {
        width: 60%
    }

    .f-width-small-7-10 {
        width: 70%
    }

    .f-width-small-8-10 {
        width: 80%
    }

    .f-width-small-9-10 {
        width: 90%
    }
}

@media (min-width: 768px) {
    .f-width-medium-1-1 {
        width: 100%
    }

    .f-width-medium-1-2 {
        width: 50%
    }

    .f-width-medium-1-3 {
        width: 33.3333333333%
    }

    .f-width-medium-2-3 {
        width: 66.6666666667%
    }

    .f-width-medium-1-4 {
        width: 25%
    }

    .f-width-medium-3-4 {
        width: 75%
    }

    .f-width-medium-1-10 {
        width: 10%
    }

    .f-width-medium-2-10 {
        width: 20%
    }

    .f-width-medium-3-10 {
        width: 30%
    }

    .f-width-medium-4-10 {
        width: 40%
    }

    .f-width-medium-6-10 {
        width: 60%
    }

    .f-width-medium-7-10 {
        width: 70%
    }

    .f-width-medium-8-10 {
        width: 80%
    }

    .f-width-medium-9-10 {
        width: 90%
    }
}

@media (min-width: 960px) {
    .f-width-large-1-1 {
        width: 100%
    }

    .f-width-large-1-2 {
        width: 50%
    }

    .f-width-large-1-3 {
        width: 33.3333333333%
    }

    .f-width-large-2-3 {
        width: 66.6666666667%
    }

    .f-width-large-1-4 {
        width: 25%
    }

    .f-width-large-3-4 {
        width: 75%
    }

    .f-width-large-1-10 {
        width: 10%
    }

    .f-width-large-2-10 {
        width: 20%
    }

    .f-width-large-3-10 {
        width: 30%
    }

    .f-width-large-4-10 {
        width: 40%
    }

    .f-width-large-6-10 {
        width: 60%
    }

    .f-width-large-7-10 {
        width: 70%
    }

    .f-width-large-8-10 {
        width: 80%
    }

    .f-width-large-9-10 {
        width: 90%
    }
}

@media (min-width: 1220px) {
    .f-width-xlarge-1-1 {
        width: 100%
    }

    .f-width-xlarge-1-2 {
        width: 50%
    }

    .f-width-xlarge-1-3 {
        width: 33.3333333333%
    }

    .f-width-xlarge-2-3 {
        width: 66.6666666667%
    }

    .f-width-xlarge-1-4 {
        width: 25%
    }

    .f-width-xlarge-3-4 {
        width: 75%
    }

    .f-width-xlarge-1-10 {
        width: 10%
    }

    .f-width-xlarge-2-10 {
        width: 20%
    }

    .f-width-xlarge-3-10 {
        width: 30%
    }

    .f-width-xlarge-4-10 {
        width: 40%
    }

    .f-width-xlarge-6-10 {
        width: 60%
    }

    .f-width-xlarge-7-10 {
        width: 70%
    }

    .f-width-xlarge-8-10 {
        width: 80%
    }

    .f-width-xlarge-9-10 {
        width: 90%
    }
}

[class*='f-push-'], [class*='f-pull-'] {
    position: relative
}

.f-nav, .f-nav ul {
    list-style: none;
    margin: 0;
    padding: 0
}

    .f-nav li > a, .f-nav > a {
        display: block;
        text-decoration: none
    }

    .f-nav > li > a, .f-nav > a {
        padding: 5px 15px
    }

    .f-nav ul {
        padding-left: 15px
    }

        .f-nav ul a {
            padding: 2px 0
        }

    .f-nav li > a > div {
        font-size: .75rem;
        line-height: 18px
    }

.f-nav-header {
    font-size: .75pxrem;
    font-weight: bold;
    padding: 5px 15px;
    text-transform: uppercase
}

    .f-nav-header:not(:first-child) {
        margin-top: 15px
    }

.f-nav-divider > hr {
    margin: 9px 15px
}

ul.f-nav-sub {
    padding: 5px 0 5px 15px
}

    ul.f-nav-sub .f-nav-header {
        padding-left: 0
    }

.f-nav-parent-icon > .f-parent > a:after {
    font-size: 1.25rem;
    content: "";
    float: right;
    font-family: Material Icons;
    line-height: 1.4;
    margin-right: -10px;
    text-align: center;
    transform: rotate(0deg);
    transition: transform .2s ease-out;
    width: 20px
}

.f-nav-parent-icon > .f-parent.f-open > a:after {
    transform: rotate(-90deg)
}

.ie9 .f-nav-parent-icon > .f-parent.f-open > a:after {
    content: ""
}

.f-nav-parent-icon > .f-parent-link.f-open > a:after {
    font-size: 1.125rem;
    color: #009390;
    content: "";
    transform: rotate(-45deg);
    transition: none
}

.f-nav-side > li > a {
    color: #444;
    transition: background-color .2s linear, color .2s linear
}

    .f-nav-side > li > a:hover, .f-nav-side > li > a:focus {
        background: rgba(0,0,0,0.05);
        color: #444;
        outline: none
    }

.f-nav-side > li.f-active > a {
    background: #009390;
    color: #fff
}

.f-nav-side .f-nav-header {
    color: #444
}

.f-nav-side .f-nav-divider > hr {
    border-color: #eee
}

.f-nav-side ul a {
    color: #009390
}

    .f-nav-side ul a:hover {
        color: #00605e
    }

.f-nav-dropdown > li > a {
    color: #444;
    transition: background-color .2s linear, color .2s linear
}

    .f-nav-dropdown > li > a .material-icons {
        font-size: 1rem
    }

    .f-nav-dropdown > li > a:hover, .f-nav-dropdown > li > a:focus {
        background: #009390;
        color: #fff;
        outline: none
    }

.f-nav-dropdown .f-nav-header {
    color: #999
}

.f-nav-dropdown .f-nav-divider > hr {
    border-color: #eee
}

.f-nav-dropdown ul a {
    color: #009390
}

    .f-nav-dropdown ul a:hover {
        color: #00605e
    }

.f-nav-navbar > li > a {
    color: #444;
    transition: background-color .2s linear, color .2s linear
}

    .f-nav-navbar > li > a:hover, .f-nav-navbar > li > a:focus {
        background: #009390;
        color: #fff;
        outline: none
    }

.f-nav-navbar .f-nav-header {
    color: #999
}

.f-nav-navbar .f-nav-divider > hr {
    border-color: #eee
}

.f-nav-navbar ul a {
    color: #009390
}

    .f-nav-navbar ul a:hover {
        color: #00605e
    }

.f-nav-offcanvas > li > a {
    color: #eee;
    padding: 10px 15px
}

.f-nav-offcanvas > .f-open > a, html:not(.f-touch) .f-nav-offcanvas > li > a:hover, html:not(.f-touch) .f-nav-offcanvas > li > a:focus {
    background: #404040;
    color: #fff;
    outline: none
}

html .f-nav.f-nav-offcanvas > li.f-active > a {
    background: #444;
    color: #fff
}

.f-nav-offcanvas .f-nav-header {
    color: #999
}

.f-nav-offcanvas .f-nav-divider > hr {
    border-color: #444
}

.f-nav-offcanvas ul a {
    color: #eee
}

html:not(.f-touch) .f-nav-offcanvas ul a:hover {
    color: #fff
}

.f-navbar {
    background: #eee;
    color: #444
}

    .f-navbar.f-navbar-padded {
        padding: 15px 0
    }

    .f-navbar:before, .f-navbar:after {
        content: '';
        display: table
    }

    .f-navbar:after {
        clear: both
    }

.f-navbar-nav {
    float: left;
    list-style: none;
    margin: 0;
    padding: 0
}

    .f-navbar-nav > li {
        float: left;
        position: relative
    }

        .f-navbar-nav > li.f-active > a {
            background-color: #009390;
            color: #fff
        }

        .f-navbar-nav > li > a {
            font-size: .875rem;
            box-sizing: border-box;
            color: #444;
            display: block;
            font-family: aktiv-grotesk,sans-serif;
            font-weight: 400;
            height: 40px;
            line-height: 40px;
            padding: 0 15px;
            text-decoration: none;
            transition: background-color .2s linear, color .2s linear
        }

            .f-navbar-nav > li > a[href='#'] {
                cursor: text
            }

            .f-navbar-nav > li > a:active {
                background-color: #eee;
                color: #444
            }

    .f-navbar-nav .f-navbar-nav-subtitle {
        line-height: 28px
    }

    .f-navbar-nav > li:hover > a, .f-navbar-nav > li > a:focus, .f-navbar-nav > li.f-open > a {
        background-color: #00c6c2;
        color: #fff;
        outline: none
    }

.f-navbar-nav-subtitle > div {
    font-size: .625pxrem;
    line-height: 12px;
    margin-top: -6px
}

.f-navbar-content, .f-navbar-brand, .f-navbar-toggle {
    box-sizing: border-box;
    display: block;
    float: left;
    height: 40px;
    padding: 0 15px
}

    .f-navbar-content > .material-icons, .f-navbar-brand > .material-icons, .f-navbar-toggle > .material-icons {
        top: 0
    }

    .f-navbar-content:before, .f-navbar-brand:before, .f-navbar-toggle:before {
        content: '';
        display: inline-block;
        height: 100%;
        vertical-align: middle
    }

    .f-navbar-content + .f-navbar-content:not(.f-navbar-center) {
        padding-left: 0
    }

    .f-navbar-content > a:not([class]) {
        color: #009390
    }

        .f-navbar-content > a:not([class]):hover {
            color: #00605e
        }

.f-navbar-brand {
    font-size: 1.125rem;
    color: #444;
    text-decoration: none
}

    .f-navbar-brand:hover, .f-navbar-brand:focus {
        color: #444;
        outline: none;
        text-decoration: none
    }

.f-navbar-toggle {
    font-size: 1.125rem;
    color: #444;
    text-decoration: none
}

    .f-navbar-toggle > .material-icons {
        line-height: 40px
    }

    .f-navbar-toggle:hover, .f-navbar-toggle:focus {
        color: #444;
        outline: none;
        text-decoration: none
    }

.f-navbar-center {
    float: none;
    margin-left: auto;
    margin-right: auto;
    max-width: 50%;
    text-align: center
}

.f-navbar-flip {
    float: right
}

.f-pagination {
    font-size: .0000625rem;
    list-style: none;
    padding: 0;
    text-align: center
}

    .f-pagination:before, .f-pagination:after {
        content: '';
        display: table
    }

    .f-pagination:after {
        clear: both
    }

    .f-pagination > .f-active > span {
        background: #009390;
        color: #fff
    }

    .f-pagination > .f-disabled > span {
        background-color: #eee;
        color: #999
    }

    .f-pagination .material-icons {
        font-size: 1rem
    }

    .f-pagination > li {
        font-size: 1rem;
        display: inline-block;
        vertical-align: top
    }

        .f-pagination > li:nth-child(n+2) {
            margin-left: 5px
        }

        .f-pagination > li > a {
            background-color: #eee;
            color: #444;
            transition: background-color .2s linear, color .2s linear
        }

            .f-pagination > li > a:active {
                background-color: #eee;
                color: #444
            }

        .f-pagination > li > a, .f-pagination > li > span {
            box-sizing: content-box;
            display: inline-block;
            line-height: 30px;
            min-width: 16px;
            padding: 3px 5px;
            text-align: center;
            text-decoration: none
        }

            .f-pagination > li > a:hover, .f-pagination > li > a:focus {
                background-color: #999;
                color: #444;
                outline: none
            }

.f-pagination-previous {
    float: left
}

.f-pagination-next {
    float: right
}

.f-pagination-left {
    text-align: left
}

.f-pagination-right {
    text-align: right
}

input, select, textarea {
    font-size: 1rem
}

.f-form input, .f-form select, .f-form textarea {
    border-radius: 0;
    box-sizing: border-box;
    font-family: aktiv-grotesk,sans-serif;
    margin: 0
}

.f-form select {
    -webkit-appearance: none;
    cursor: pointer;
    text-transform: none
}

.f-form optgroup {
    font: inherit;
    font-weight: 700
}

.f-form input::-moz-focus-inner {
    border: 0;
    padding: 0
}

.f-form input[type='checkbox'], .f-form input[type='radio'] {
    padding: 0
}

    .f-form input[type='checkbox']:not(:disabled), .f-form input[type='radio']:not(:disabled) {
        cursor: pointer
    }

.f-form textarea, .f-form input:not([type]), .f-form input[type='text'], .f-form input[type='password'], .f-form input[type='email'], .f-form input[type='url'], .f-form input[type='search'], .f-form input[type='tel'], .f-form input[type='number'], .f-form input[type='datetime'] {
    -webkit-appearance: none
}

    .f-form input[type='search']::-webkit-search-cancel-button, .f-form input[type='search']::-webkit-search-decoration {
        -webkit-appearance: none
    }

    .f-form input[type='number']::-webkit-inner-spin-button, .f-form input[type='number']::-webkit-outer-spin-button {
        height: auto
    }

.f-form fieldset {
    border: 0;
    margin: 0;
    padding: 0
}

.f-form textarea {
    overflow: auto;
    vertical-align: top
}

.f-form ::-moz-placeholder {
    color: #999;
    opacity: 1
}

.f-form :invalid {
    box-shadow: none
}

.f-form input:not([type='radio']):not([type='checkbox']), .f-form select {
    vertical-align: middle
}

.f-form > :last-child {
    margin-bottom: 0
}

.f-form select, .f-form textarea, .f-form input:not([type]), .f-form input[type='text'], .f-form input[type='password'], .f-form input[type='datetime'], .f-form input[type='datetime-local'], .f-form input[type='date'], .f-form input[type='month'], .f-form input[type='time'], .f-form input[type='week'], .f-form input[type='number'], .f-form input[type='email'], .f-form input[type='url'], .f-form input[type='search'], .f-form input[type='tel'], .f-form input[type='color'] {
    background-color: #fff;
    border: solid 1px rgba(155,155,155,0.5);
    color: #444;
    height: 30px;
    max-width: 100%;
    padding: 4px 6px;
    transition: color linear .2s, background-color linear .2s, border-color linear .2s
}

    .f-form select:focus, .f-form textarea:focus, .f-form input:not([type]):focus, .f-form input[type='text']:focus, .f-form input[type='password']:focus, .f-form input[type='datetime']:focus, .f-form input[type='datetime-local']:focus, .f-form input[type='date']:focus, .f-form input[type='month']:focus, .f-form input[type='time']:focus, .f-form input[type='week']:focus, .f-form input[type='number']:focus, .f-form input[type='email']:focus, .f-form input[type='url']:focus, .f-form input[type='search']:focus, .f-form input[type='tel']:focus, .f-form input[type='color']:focus {
        background-color: #ebf7fd;
        border-color: #009390;
        color: #444;
        outline: 0
    }

    .f-form select:disabled, .f-form textarea:disabled, .f-form input:not([type]):disabled, .f-form input[type='text']:disabled, .f-form input[type='password']:disabled, .f-form input[type='datetime']:disabled, .f-form input[type='datetime-local']:disabled, .f-form input[type='date']:disabled, .f-form input[type='month']:disabled, .f-form input[type='time']:disabled, .f-form input[type='week']:disabled, .f-form input[type='number']:disabled, .f-form input[type='email']:disabled, .f-form input[type='url']:disabled, .f-form input[type='search']:disabled, .f-form input[type='tel']:disabled, .f-form input[type='color']:disabled {
        background-color: #eee;
        border-color: #eee;
        color: #999
    }

    .f-form select:not([multiple]) {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='9' viewBox='0 0 15 9'%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M1.907.34a1.087 1.087 0 0 0-1.58 0 1.207 1.207 0 0 0 0 1.652L6.71 8.659a1.087 1.087 0 0 0 1.58 0l6.384-6.667a1.207 1.207 0 0 0 0-1.651 1.087 1.087 0 0 0-1.581 0L7.498 6.186 1.908.341z'/%3E%3C/svg%3E");
        background-position: right 6px top 50%;
        background-repeat: no-repeat;
        background-size: 15px 9px;
        padding-right: 30px
    }

        .f-form select:not([multiple]):disabled {
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='9' viewBox='0 0 15 9'%3E%3Cpath fill='%23aaa' fill-rule='evenodd' d='M1.907.34a1.087 1.087 0 0 0-1.58 0 1.207 1.207 0 0 0 0 1.652L6.71 8.659a1.087 1.087 0 0 0 1.58 0l6.384-6.667a1.207 1.207 0 0 0 0-1.651 1.087 1.087 0 0 0-1.581 0L7.498 6.186 1.908.341z'/%3E%3C/svg%3E")
        }

    .f-form select::-ms-expand {
        display: none
    }

.f-form :-ms-input-placeholder {
    color: #999 !important
}

.f-form ::-webkit-input-placeholder {
    color: #999
}

.f-form :disabled:-ms-input-placeholder {
    color: #999 !important
}

.f-form :disabled::-moz-placeholder {
    color: #999
}

.f-form :disabled::-webkit-input-placeholder {
    color: #999
}

.f-form legend {
    border: 0;
    font-size: 18px;
    line-height: 30px;
    padding: 0;
    padding-bottom: 20px;
    width: 100%
}

    .f-form legend:after {
        border-bottom: 1px solid #eee;
        content: '';
        display: block;
        width: 100%
    }

select.f-form-small, .f-form-small select, textarea.f-form-small, .f-form-small textarea, input[type].f-form-small, .f-form-small input[type]:not([type='submit']):not([type='radio']):not([type='checkbox']), input:not([type]).f-form-small, .f-form-small input:not([type]) {
    font-size: 12px;
    height: 25px;
    padding: 3px 3px
}

select.f-form-large, .f-form-large select, textarea.f-form-large, .f-form-large textarea, input[type].f-form-large, .f-form-large input[type]:not([type='submit']):not([type='radio']):not([type='checkbox']), input:not([type]).f-form-large, .f-form-large input:not([type]) {
    font-size: 16px;
    height: 40px;
    padding: 8px 6px
}

.f-form-large .f-form-icon {
    max-height: 40px
}

    .f-form-large .f-form-icon > .material-icons {
        font-size: 24px;
        margin-top: -12px;
        width: 40px
    }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    select.f-form-small, .f-form-small select, select.f-form-large, .f-form-large select {
        padding-right: 30px
    }
}

.f-form textarea, .f-form select[multiple], .f-form select[size] {
    height: auto
}

.f-form-danger {
    background-color: #fff1f0 !important;
    border-color: #b72138 !important;
    color: #da314b !important
}

.f-form-success {
    background-color: #f2fae3 !important;
    border-color: #72a12e !important;
    color: #8ec73b !important
}

.f-form-blank {
    background-color: transparent !important;
    border-color: transparent !important;
    border-style: dashed !important
}

    .f-form-blank:focus {
        border-color: #eee !important
    }

input.f-form-width-mini {
    width: 40px
}

select.f-form-width-mini {
    width: 65px
}

.f-form-width-small {
    width: 130px
}

.f-form-width-medium {
    width: 200px
}

.f-form-width-large {
    width: 500px
}

.f-form-row:before, .f-form-row:after {
    content: '';
    display: table
}

.f-form-row.f-grid:before, .f-form-row.f-grid:after {
    content: '';
    display: block;
    overflow: hidden
}

.f-form-row + .f-form-row {
    margin-top: 20px
}

.f-form-row:after {
    clear: both
}

.f-form-help-inline {
    display: inline-block;
    margin: 0 0 0 10px
}

.f-form-help-block {
    margin: 5px 0 0
}

.f-form-controls > :first-child {
    margin-top: 0
}

.f-form-controls > :last-child {
    margin-bottom: 0
}

.f-form-controls-condensed {
    margin: 5px 0
}

.f-form-stacked .f-form-label {
    display: block;
    font-weight: 700;
    margin-bottom: 5px
}

@media (max-width: 959px) {
    .f-form-horizontal .f-form-label {
        display: block;
        font-weight: 700;
        margin-bottom: 5px
    }
}

@media (min-width: 960px) {
    .f-form-horizontal .f-form-label {
        float: left;
        margin-top: 5px;
        width: 200px
    }

    .f-form-horizontal .f-form-controls {
        margin-left: 215px
    }

    .f-form-horizontal .f-form-controls-text {
        padding-top: 5px
    }
}

.f-form-icon {
    display: inline-block;
    max-height: 30px;
    max-width: 100%;
    position: relative
}

    .f-form-icon > .material-icons {
        color: #999;
        font-size: 16px;
        margin-top: -8px;
        pointer-events: none;
        position: absolute;
        text-align: center;
        top: 50%;
        width: 30px
    }

    .f-form-icon:not(.f-form-icon-flip) > input {
        padding-left: 30px !important
    }

.f-form-icon-flip > .material-icons {
    right: 0
}

.f-form-icon-flip > input {
    padding-right: 30px !important
}

    .f-form-icon-flip > input::-ms-clear {
        display: none
    }

.f-btn.f-stepper {
    padding-left: 6px;
    padding-right: 6px
}

    .f-btn.f-stepper i {
        font-size: 1rem
    }

.f-form-large .f-btn.f-stepper i {
    font-size: 1.375rem
}

.f-list {
    list-style: none;
    padding: 0
}

    .f-list > li:before, .f-list > li:after {
        content: '';
        display: table
    }

    .f-list > li:after {
        clear: both
    }

    .f-list > li > :last-child {
        margin-bottom: 0
    }

    .f-list ul {
        list-style: none;
        margin: 0;
        padding-left: 20px
    }

.f-list-line > li:nth-child(n+2) {
    border-top: 1px solid #eee;
    margin-top: 5px;
    padding-top: 5px
}

.f-list-striped > li {
    padding: 5px 5px
}

    .f-list-striped > li:nth-of-type(odd) {
        background: #eee
    }

.f-list-space > li:nth-child(n+2) {
    margin-top: 20px
}

.f-list-space.f-list-line > li:nth-child(n+2) {
    padding-top: 20px
}

.f-list-inline {
    margin-left: 0;
    padding-left: 0
}

    .f-list-inline > li {
        display: inline-block;
        margin: 0 10px
    }

        .f-list-inline > li:first-child {
            margin-left: 0
        }

        .f-list-inline > li:last-child {
            margin-right: 0
        }

.f-form input[type='radio'], .f-form input[type='checkbox'] {
    -moz-appearance: none;
    -webkit-appearance: none;
    background-color: #eee;
    border: 1px solid #999;
    display: inline-block;
    height: 30px;
    margin-top: -4px;
    outline: 0;
    overflow: hidden;
    vertical-align: middle;
    width: 30px;
    transition: background-color linear .2s, border-color linear .2s
}

    .f-form input[type='radio']:focus, .f-form input[type='checkbox']:focus {
        background-color: #ebf7fd;
        border-color: #009390
    }

    .f-form input[type='checkbox']:checked:before, .f-form input[type='radio']:checked:before {
        display: block
    }

.f-form input[type='radio'] {
    border-radius: 50%
}

    .f-form input[type='radio']:before {
        background: #009390;
        border-radius: 50%;
        content: '';
        height: 11px;
        margin: 8.5px auto 0;
        opacity: 0;
        transition: opacity .3s linear;
        width: 11px
    }

    .f-form input[type='radio']:checked:before {
        opacity: 1
    }

.f-form input[type='checkbox'] {
    background-color: #fff
}

    .f-form input[type='checkbox']:before {
        color: #009390;
        content: "";
        display: block;
        font-family: Material Icons;
        font-size: 16px;
        -webkit-font-smoothing: antialiased;
        font-weight: 700;
        line-height: 28px;
        opacity: 0;
        text-align: center;
        transition: opacity .3s linear
    }

    .f-form input[type='checkbox']:checked:before {
        opacity: 1
    }

    .f-form input[type='radio']:disabled, .f-form input[type='checkbox']:disabled {
        border-color: #eee
    }

        .f-form input[type='radio']:disabled:checked:before {
            background-color: #999
        }

        .f-form input[type='checkbox']:disabled:checked:before {
            color: #999
        }

.f-form input.f-placeholder::-webkit-input-placeholder {
    left: 0;
    position: relative;
    top: 0;
    transform-origin: left top;
    transition: transform .2s ease-in-out
}

.f-form input.f-placeholder::placeholder {
    left: 0;
    position: relative;
    top: 0;
    transform-origin: left top;
    transition: transform .2s ease-in-out
}

.f-form input.f-placeholder.f-placeholder-up::-webkit-input-placeholder[style*='hidden'] {
    opacity: 1;
    transform: translateY(-32px) scale(0.8);
    visibility: visible !important
}

.f-form input.f-placeholder.f-placeholder-down::-webkit-input-placeholder[style*='hidden'] {
    opacity: 1;
    transform: translateY(32px) scale(0.8);
    visibility: visible !important
}

.f-input-toggle {
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
    display: inline-block;
    position: relative;
    vertical-align: middle
}

    .f-input-toggle input[type='radio'], .f-input-toggle input[type='checkbox'] {
        display: none
    }

        .f-input-toggle input[type='radio'][disabled] + *, .f-input-toggle input[type='checkbox'][disabled] + * {
            opacity: .5
        }

    .f-input-toggle input + * {
        background-color: #fff;
        border: solid 2px #e6e6e6;
        border-radius: 15px;
        box-sizing: border-box;
        content: ' ';
        cursor: pointer;
        display: inline-block;
        height: 30px;
        margin-right: 5px;
        pointer-events: none;
        transition: background-color .3s ease-in-out, border .3s ease-in-out;
        vertical-align: middle;
        width: 50px
    }

        .f-input-toggle input + *:before {
            background-color: #fff;
            border-radius: 13px;
            box-shadow: 0 2px 7px rgba(0,0,0,0.25),0 1px 1px rgba(0,0,0,0.15);
            content: '';
            display: block;
            height: 26px;
            position: absolute;
            transition: background-color 0.3s cubic-bezier(0, 1.1, 1, 1.1),transform 0.3s cubic-bezier(0, 1.1, 1, 1.1);
            width: 26px
        }

    .f-input-toggle input:checked + * {
        background-color: #009390;
        border-color: #009390
    }

        .f-input-toggle input:checked + *:before {
            transform: translate3d(20px, 0, 0)
        }

    .f-input-toggle.f-input-toggle-success input:checked + * {
        background-color: #8ec73b;
        border-color: #8ec73b
    }

    .f-input-toggle.f-input-toggle-danger input:checked + * {
        background-color: #faa732;
        border-color: #faa732
    }

    .f-input-toggle.f-input-toggle-warning input:checked + * {
        background-color: #da314b;
        border-color: #da314b
    }

    .f-input-toggle.f-input-toggle-small input + * {
        border-radius: 12.5px;
        height: 25px;
        width: 40px
    }

        .f-input-toggle.f-input-toggle-small input + *:before {
            border-radius: 10.5px;
            height: 21px;
            width: 21px
        }

    .f-input-toggle.f-input-toggle-small input:checked + *:before {
        transform: translate3d(15px, 0, 0)
    }

    .f-input-toggle.f-input-toggle-large input + * {
        border-radius: 20px;
        height: 40px;
        width: 70px
    }

        .f-input-toggle.f-input-toggle-large input + *:before {
            border-radius: 18px;
            height: 36px;
            width: 36px
        }

    .f-input-toggle.f-input-toggle-large input:checked + *:before {
        transform: translate3d(30px, 0, 0)
    }

[class*='f-animation-'] {
    animation-duration: .5s;
    animation-fill-mode: both;
    animation-timing-function: ease-out
}

@media screen {
    [data-f-scrollspy*='f-animation-']:not([data-f-scrollspy*='target']) {
        opacity: 0
    }
}

.f-animation-fade {
    animation-duration: .8s;
    animation-name: f-fade;
    animation-timing-function: linear !important
}

.f-animation-scale-up {
    animation-name: f-fade-scale-02
}

.f-animation-scale-up-over {
    animation-name: f-fade-scale-over
}

.f-animation-scale-down {
    animation-name: f-fade-scale-18
}

.f-animation-slide-top {
    animation-name: f-fade-top
}

.f-animation-slide-bottom {
    animation-name: f-fade-bottom
}

.f-animation-slide-left {
    animation-name: f-fade-left
}

.f-animation-slide-right {
    animation-name: f-fade-right
}

.f-animation-slide-top-small {
    animation-name: f-fade-top-small
}

.f-animation-slide-bottom-small {
    animation-name: f-fade-bottom-small
}

.f-animation-scale {
    animation-name: f-scale-12
}

.f-animation-shake {
    animation-name: f-shake
}

.f-animation-reverse {
    animation-direction: reverse;
    animation-timing-function: ease-in
}

.f-animation-10 {
    animation-duration: 10s
}

.f-animation-15 {
    animation-duration: 15s
}

.f-animation-top-left {
    transform-origin: 0 0
}

.f-animation-top-center {
    transform-origin: 50% 0
}

.f-animation-top-right {
    transform-origin: 100% 0
}

.f-animation-middle-left {
    transform-origin: 0 50%
}

.f-animation-middle-right {
    transform-origin: 100% 50%
}

.f-animation-bottom-left {
    transform-origin: 0 100%
}

.f-animation-bottom-center {
    transform-origin: 50% 100%
}

.f-animation-bottom-right {
    transform-origin: 100% 100%
}

.f-animation-hover:not(:hover), .f-animation-hover:not(:hover) [class*='f-animation-'], .f-touch .f-animation-hover:not(.f-hover), .f-touch .f-animation-hover:not(.f-hover) [class*='f-animation-'], .f-animation:not(.f-animation-click)[class*='f-animation-'] {
    animation-name: none
}

.ie9 .f-scrollspy-init-inview {
    opacity: 1
}

@keyframes f-fade {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes f-fade-top {
    0% {
        opacity: 0;
        transform: translateY(-100%)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes f-fade-bottom {
    0% {
        opacity: 0;
        transform: translateY(100%)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes f-fade-left {
    0% {
        opacity: 0;
        transform: translateX(-100%)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes f-fade-right {
    0% {
        opacity: 0;
        transform: translateX(100%)
    }

    100% {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes f-fade-top-small {
    0% {
        opacity: 0;
        transform: translateY(-20px)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes f-fade-bottom-small {
    0% {
        opacity: 0;
        transform: translateY(20px)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes f-fade-scale-02 {
    0% {
        opacity: 0;
        transform: scale(0.2)
    }

    100% {
        opacity: 1;
        transform: scale(1)
    }
}

@keyframes f-fade-scale-over {
    0% {
        opacity: 0;
        transform: scale(0.2)
    }

    70% {
        opacity: .7;
        transform: scale(1.2)
    }

    90% {
        opacity: .9;
        transform: scale(0.95)
    }

    100% {
        opacity: 1;
        transform: scale(1)
    }
}

@keyframes f-fade-scale-15 {
    0% {
        opacity: 0;
        transform: scale(1.5)
    }

    100% {
        opacity: 1;
        transform: scale(1)
    }
}

@keyframes f-fade-scale-18 {
    0% {
        opacity: 0;
        transform: scale(1.8)
    }

    100% {
        opacity: 1;
        transform: scale(1)
    }
}

@keyframes f-slide-left {
    0% {
        transform: translateX(-100%)
    }

    100% {
        transform: translateX(0)
    }
}

@keyframes f-slide-right {
    0% {
        transform: translateX(100%)
    }

    100% {
        transform: translateX(0)
    }
}

@keyframes f-slide-left-33 {
    0% {
        transform: translateX(33%)
    }

    100% {
        transform: translateX(0)
    }
}

@keyframes f-slide-right-33 {
    0% {
        transform: translateX(-33%)
    }

    100% {
        transform: translateX(0)
    }
}

@keyframes f-scale-12 {
    0% {
        transform: scale(1.2)
    }

    100% {
        transform: scale(1)
    }
}

@keyframes f-rotate {
    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(359deg)
    }
}

@keyframes f-shake {
    0%,100% {
        transform: translateX(0)
    }

    10% {
        transform: translateX(-9px)
    }

    20% {
        transform: translateX(8px)
    }

    30% {
        transform: translateX(-7px)
    }

    40% {
        transform: translateX(6px)
    }

    50% {
        transform: translateX(-5px)
    }

    60% {
        transform: translateX(4px)
    }

    70% {
        transform: translateX(-3px)
    }

    80% {
        transform: translateX(2px)
    }

    90% {
        transform: translateX(-1px)
    }
}

@keyframes f-slide-top-fixed {
    0% {
        opacity: 0;
        transform: translateY(-10px)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes f-slide-bottom-fixed {
    0% {
        opacity: 0;
        transform: translateY(10px)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

.f-btn::-moz-focus-inner {
    border: 0;
    padding: 0
}

.f-btn {
    font-size: 1.125rem;
    -webkit-appearance: none;
    background: #eee;
    border: 0;
    box-sizing: border-box;
    color: #fff;
    display: inline-block;
    font: inherit;
    font-weight: 800;
    line-height: 1.3;
    margin: 0;
    overflow: visible;
    padding: 4px 12px;
    text-align: center;
    text-decoration: none;
    text-transform: none;
    vertical-align: middle;
    transition: background-color .2s linear, color .2s linear, border .2s linear
}

    .f-btn:not(:disabled) {
        cursor: pointer
    }

    .f-btn:hover, .f-btn:focus {
        background-color: #444;
        color: #fff;
        outline: none;
        text-decoration: none
    }

    .f-btn:active, .f-btn.f-active {
        background-color: #999
    }

    .f-btn.f-btn-icon {
        padding: 2px
    }

        .f-btn.f-btn-icon.f-btn-small {
            padding: 2px 6px
        }

    .f-btn.f-icon-left > .material-icons {
        margin-left: -8px
    }

    .f-btn.f-icon-right > .material-icons {
        margin-right: -8px
    }

    .f-btn.f-btn-transparent {
        background-color: transparent;
        border: 1px solid #009390
    }

        .f-btn.f-btn-transparent:hover {
            background-color: #009390;
            border: 1px solid #009390
        }

    .f-btn.f-btn-transparent-inverted {
        background-color: #009390;
        border: 1px solid #009390
    }

        .f-btn.f-btn-transparent-inverted:hover {
            background-color: transparent;
            border: 1px solid #009390
        }

.f-btn-primary {
    background-color: #009390;
    border-color: #009390;
    color: #fff
}

    .f-btn-primary.f-active {
        background-color: #00605e;
        color: #00605e
    }

    .f-btn-primary:focus, .f-btn-primary:hover {
        background-color: #00605e;
        border-color: #009390;
        color: #fff
    }

.f-form .f-btn-primary {
    color: #fff
}

    .f-form .f-btn-primary:focus, .f-form .f-btn-primary:hover {
        color: #fff
    }

.f-btn-success {
    background-color: #8ec73b;
    border-color: #8ec73b;
    color: #fff
}

    .f-btn-success.f-active {
        background-color: #72a12e;
        color: #72a12e
    }

    .f-btn-success:focus, .f-btn-success:hover {
        background-color: #72a12e;
        border-color: #8ec73b;
        color: #fff
    }

.f-form .f-btn-success {
    color: #fff
}

    .f-form .f-btn-success:focus, .f-form .f-btn-success:hover {
        color: #fff
    }

.f-btn-warning {
    background-color: #faa732;
    border-color: #faa732;
    color: #fff
}

    .f-btn-warning.f-active {
        background-color: #f39106;
        color: #f39106
    }

    .f-btn-warning:focus, .f-btn-warning:hover {
        background-color: #f39106;
        border-color: #faa732;
        color: #fff
    }

.f-form .f-btn-warning {
    color: #fff
}

    .f-form .f-btn-warning:focus, .f-form .f-btn-warning:hover {
        color: #fff
    }

.f-btn-danger {
    background-color: #da314b;
    border-color: #da314b;
    color: #fff
}

    .f-btn-danger.f-active {
        background-color: #b72138;
        color: #b72138
    }

    .f-btn-danger:focus, .f-btn-danger:hover {
        background-color: #b72138;
        border-color: #da314b;
        color: #fff
    }

.f-form .f-btn-danger {
    color: #fff
}

    .f-form .f-btn-danger:focus, .f-form .f-btn-danger:hover {
        color: #fff
    }

.f-btn:disabled {
    background-color: #eee;
    color: #999
}

.f-btn-link, .f-btn-link:hover, .f-btn-link:focus, .f-btn-link:active, .f-btn-link.f-active, .f-btn-link:disabled {
    background: none;
    border-color: transparent
}

.f-btn-link {
    color: #00605e
}

    .f-btn-link:hover, .f-btn-link:focus, .f-btn-link:active, .f-btn-link.f-active {
        color: #009390;
        text-decoration: underline
    }

    .f-btn-link:disabled {
        color: #eee
    }

    .f-btn-link:focus {
        outline: 1px dotted
    }

.f-btn-faux {
    background: none;
    border: 0;
    cursor: pointer;
    padding: 0
}

.f-btn-mini {
    font-size: 11px;
    line-height: 1.3;
    padding: 2px 6px
}

    .f-btn-mini.f-button-transparent, .f-btn-mini.f-button-transparent-inverted {
        padding: 0px 4px
    }

    .f-btn-mini .material-icons {
        font-size: 11px
    }

.f-btn-small {
    font-size: 12px;
    line-height: 1.3;
    padding: 4px 10px
}

    .f-btn-small.f-button-transparent, .f-btn-small.f-button-transparent-inverted {
        padding: 2px 8px
    }

    .f-btn-small .material-icons {
        font-size: 12px
    }

.f-btn-large, .f-btn-xlarge {
    font-size: 16px;
    line-height: 1.3;
    padding: 8px 15px
}

    .f-btn-large.f-button-transparent, .f-btn-large.f-button-transparent-inverted, .f-btn-xlarge.f-button-transparent, .f-btn-xlarge.f-button-transparent-inverted {
        padding: 6px 13px
    }

    .f-btn-large .material-icons, .f-btn-xlarge .material-icons {
        font-size: 16px
    }

@media screen and (min-width: 960px) {
    .f-btn-xlarge {
        font-size: 20px;
        line-height: 1.3;
        padding: 11px 20px
    }

        .f-btn-xlarge.f-button-transparent, .f-btn-xlarge.f-button-transparent-inverted {
            padding: 9px 18px
        }

        .f-btn-xlarge .material-icons {
            font-size: 20px
        }
}

.f-btn-caret.f-btn-mini, .f-btn-caret.f-btn-small, .f-btn-caret.f-btn, .f-btn-caret.f-btn-large {
    padding-left: 6px;
    padding-right: 6px
}

    .f-btn-caret.f-btn-mini > .material-icons, .f-btn-caret.f-btn-small > .material-icons, .f-btn-caret.f-btn > .material-icons, .f-btn-caret.f-btn-large > .material-icons {
        margin: 0
    }

.f-btn-caret.f-btn-mini {
    padding-left: 4px;
    padding-right: 4px
}

.f-btn-caret.f-btn-large {
    padding-left: 8px;
    padding-right: 8px
}

    .f-btn-caret.f-btn-large > .material-icons {
        font-size: 1.5rem
    }

.f-btn-caret .material-icons {
    display: block;
    top: 0
}

.f-btn-group {
    font-size: .0000625rem;
    display: inline-block;
    position: relative;
    vertical-align: middle;
    white-space: nowrap
}

    .f-btn-group > * {
        display: inline-block
    }

    .f-btn-group .f-btn {
        vertical-align: top
    }

.f-btn-dropdown {
    display: inline-block;
    position: relative;
    vertical-align: middle
}

.f-btn-secondary, .newsletter-section *[type='submit'] {
    background-color: #94c947
}

    .f-btn-secondary:hover, .newsletter-section :hover[type='submit'], .f-btn-secondary:focus, .newsletter-section :focus[type='submit'] {
        background-color: #7aab32
    }

.f-close::-moz-focus-inner {
    border: 0;
    padding: 0
}

.f-close {
    -webkit-appearance: none;
    background-color: transparent;
    border: 0;
    box-sizing: content-box;
    color: inherit;
    display: inline-block;
    font: inherit;
    line-height: 1;
    margin: 0;
    opacity: .3;
    overflow: visible;
    padding: 0;
    text-align: center;
    text-transform: none;
    vertical-align: middle;
    transition: opacity .2s linear
}

    .f-close:hover, .f-close:focus {
        color: inherit;
        cursor: pointer;
        opacity: .5;
        outline: none;
        text-decoration: none
    }

.f-close-alt {
    background: #eee;
    border-radius: 50%;
    line-height: 1;
    opacity: 1;
    padding: 5px
}

    .f-close-alt i {
        display: block;
        opacity: .5
    }

    .f-close-alt:hover, .f-close-alt:focus {
        opacity: 1
    }

        .f-close-alt:hover i, .f-close-alt:focus i {
            opacity: .8
        }

.f-overlay {
    display: inline-block;
    margin: 0;
    max-width: 100%;
    overflow: hidden;
    position: relative;
    -webkit-transform: translateZ(0);
    vertical-align: middle
}

    .f-overlay.f-border-circle {
        -webkit-mask-image: -webkit-radial-gradient(circle, #fff 100%, #000 100%)
    }

    .f-overlay > :first-child {
        margin-bottom: 0
    }

.f-overlay-panel {
    bottom: 0;
    box-sizing: border-box;
    color: #fff;
    left: 0;
    padding: 20px;
    position: absolute;
    right: 0;
    top: 0
}

    .f-overlay-panel a:not([class]) {
        color: inherit;
        text-decoration: underline
    }

    .f-overlay-panel a[class*='f-icon-']:not(.f-icon-button) {
        color: inherit
    }

    .f-overlay-panel > :last-child, .f-overlay-panel.f-flex > * > :last-child {
        margin-bottom: 0
    }

    .f-overlay-panel h1, .f-overlay-panel h2, .f-overlay-panel h3, .f-overlay-panel h4, .f-overlay-panel h5, .f-overlay-panel h6 {
        color: inherit
    }

.f-overlay-hover:not(:hover):not(.f-hover) .f-overlay-panel:not(.f-ignore) {
    opacity: 0
}

.f-overlay-active :not(.f-active) > .f-overlay-panel:not(.f-ignore) {
    opacity: 0
}

.f-overlay-background {
    background: rgba(0,0,0,0.5)
}

.f-overlay-image {
    padding: 0
}

.f-overlay-top {
    bottom: auto
}

.f-overlay-bottom {
    top: auto
}

.f-overlay-left {
    right: auto
}

.f-overlay-right {
    left: auto
}

.f-overlay-icon > i {
    font-size: 3.125rem;
    color: #fff;
    height: 50px;
    left: 50%;
    line-height: 1;
    margin-left: -25px;
    margin-top: -25px;
    position: absolute;
    text-align: center;
    top: 50%;
    width: 50px
}

.f-overlay-fade, .f-overlay-scale, .f-overlay-spin, .f-overlay-grayscale, .f-overlay-blur, [class*='f-overlay-slide'] {
    transition-duration: .3s;
    transition-property: opacity, transform, filter;
    transition-timing-function: ease-out
}

.f-overlay-active .f-overlay-fade, .f-overlay-active .f-overlay-scale, .f-overlay-active .f-overlay-spin, .f-overlay-active [class*='f-overlay-slide'] {
    transition-duration: .8s
}

.f-overlay-fade {
    opacity: .7
}

.f-overlay-hover:hover .f-overlay-fade, .f-overlay-active .f-active > .f-overlay-fade {
    opacity: 1
}

.f-overlay-scale {
    transform: scale(1)
}

.f-overlay-hover:hover .f-overlay-scale, .f-overlay-active .f-active > .f-overlay-scale {
    transform: scale(1.1)
}

.f-overlay-spin {
    transform: scale(1) rotate(0deg)
}

.f-overlay-hover:hover .f-overlay-spin, .f-overlay-active .f-active > .f-overlay-spin {
    transform: scale(1.1) rotate(3deg)
}

.f-overlay-grayscale {
    filter: grayscale(100%)
}

.f-overlay-hover:hover .f-overlay-grayscale, .f-overlay-active .f-active > .f-overlay-grayscale {
    filter: grayscale(0%)
}

[class*='f-overlay-slide'] {
    opacity: 0
}

.f-overlay-slide-top {
    transform: translateY(-100%)
}

.f-overlay-slide-bottom {
    transform: translateY(100%)
}

.f-overlay-slide-left {
    transform: translateX(-100%)
}

.f-overlay-slide-right {
    transform: translateX(100%)
}

.f-overlay-hover:hover [class*='f-overlay-slide'], .f-overlay-active .f-active > [class*='f-overlay-slide'] {
    opacity: 1;
    transform: translateX(0) translateY(0)
}

.f-text-small {
    font-size: 12px;
    line-height: 1.2
}

.f-text-large {
    font-size: 18px;
    font-weight: normal;
    line-height: 1.4
}

.f-text-hairline {
    font-weight: 200
}

.f-text-light {
    font-weight: 300
}

.f-text-regular {
    font-weight: 400
}

.f-text-medium {
    font-weight: 500
}

.f-text-bold {
    font-weight: 700
}

.f-text-muted {
    color: #999 !important
}

.f-text-primary {
    color: #009390 !important
}

.f-text-primary-dark {
    color: #175c61 !important
}

.f-text-base-color {
    color: #5e5d5d !important
}

.f-text-grey {
    color: #404048 !important
}

.f-text-success {
    color: #8ec73b !important
}

.f-text-warning {
    color: #faa732 !important
}

.f-text-danger {
    color: #da314b !important
}

.f-text-contrast {
    color: #fff !important
}

.f-text-left {
    text-align: left !important
}

.f-text-right {
    text-align: right !important
}

.f-text-center {
    text-align: center !important
}

.f-text-justify {
    text-align: justify !important
}

.f-text-top {
    vertical-align: top !important
}

.f-text-middle {
    vertical-align: middle !important
}

.f-text-bottom {
    vertical-align: bottom !important
}

@media (min-width: 768px) {
    .f-text-center-medium {
        text-align: center !important
    }

    .f-text-left-medium {
        text-align: left !important
    }

    .f-text-right-medium {
        text-align: right !important
    }
}

@media (min-width: 960px) {
    .f-text-center-large {
        text-align: center !important
    }

    .f-text-left-large {
        text-align: left !important
    }

    .f-text-right-large {
        text-align: right !important
    }
}

.f-text-nowrap {
    white-space: nowrap
}

.f-text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.f-text-break {
    hyphens: auto;
    word-wrap: break-word
}

.f-text-upper {
    text-transform: uppercase
}

.f-clearfix:before {
    content: '';
    display: table-cell
}

.f-clearfix:after {
    clear: both;
    content: '';
    display: table
}

.f-nbfc {
    overflow: hidden
}

.f-nbfc-alt {
    display: table-cell;
    width: 10000px
}

.f-float-left {
    float: left
}

.f-float-right {
    float: right
}

[class*='f-float-'] {
    max-width: 100%
}

[class*='f-align-'] {
    display: block;
    margin-bottom: 15px
}

.f-align-left {
    float: left;
    margin-right: 15px
}

.f-align-right {
    float: right;
    margin-left: 15px
}

.f-align-center {
    margin-left: auto;
    margin-right: auto
}

@media (min-width: 768px) {
    .f-align-medium-left {
        float: left;
        margin-right: 15px
    }

    .f-align-medium-right {
        float: right;
        margin-left: 15px
    }
}

.f-vertical-align {
    font-size: .0000625rem
}

    .f-vertical-align:before {
        content: '';
        display: inline-block;
        height: 100%;
        vertical-align: middle
    }

.f-vertical-align-middle, .f-vertical-align-bottom {
    display: inline-block;
    font-size: 1rem;
    max-width: 100%
}

.f-vertical-align-middle {
    vertical-align: middle
}

.f-vertical-align-bottom {
    vertical-align: bottom
}

[class*='f-height'] {
    box-sizing: border-box
}

.f-height-1-1 {
    height: 100%
}

.f-height-viewport {
    height: 100vh;
    min-height: 600px
}

.f-responsive-width, .f-responsive-height {
    box-sizing: border-box
}

.f-responsive-width {
    height: auto;
    max-width: 100% !important
}

.f-responsive-height {
    max-height: 100%;
    width: auto
}

.f-margin {
    margin-bottom: 20px
}

    .f-margin + .f-margin {
        margin-top: 20px
    }

.f-margin-top {
    margin-top: 20px !important
}

.f-margin-bottom {
    margin-bottom: 20px !important
}

.f-margin-left {
    margin-left: 20px !important
}

.f-margin-right {
    margin-right: 20px !important
}

.f-margin-vertical {
    margin-bottom: 20px !important;
    margin-top: 20px !important
}

.f-margin-horizontal {
    margin-left: 20px !important;
    margin-right: 20px !important
}

* + .f-margin {
    margin-top: 20px
}

.f-margin-small {
    margin-bottom: 10px
}

    .f-margin-small + .f-margin-small {
        margin-top: 10px
    }

.f-margin-small-top {
    margin-top: 10px !important
}

.f-margin-small-bottom {
    margin-bottom: 10px !important
}

.f-margin-small-left {
    margin-left: 10px !important
}

.f-margin-small-right {
    margin-right: 10px !important
}

.f-margin-small-vertical {
    margin-bottom: 10px !important;
    margin-top: 10px !important
}

.f-margin-small-horizontal {
    margin-left: 10px !important;
    margin-right: 10px !important
}

* + .f-margin-small {
    margin-top: 10px
}

.f-margin-medium {
    margin: 30px
}

.f-margin-medium-top {
    margin-top: 30px !important
}

.f-margin-medium-bottom {
    margin-bottom: 30px !important
}

.f-margin-medium-left {
    margin-left: 30px !important
}

.f-margin-medium-right {
    margin-right: 30px !important
}

.f-margin-medium-vertical {
    margin-bottom: 30px !important;
    margin-top: 30px !important
}

.f-margin-medium-horizontal {
    margin-left: 30px !important;
    margin-right: 30px !important
}

* + .f-margin-medium {
    margin-top: 30px !important
}

.f-margin-large {
    margin-bottom: 40px
}

    .f-margin-large + .f-margin-large {
        margin-top: 40px
    }

.f-margin-large-top {
    margin-top: 40px !important
}

.f-margin-large-bottom {
    margin-bottom: 40px !important
}

.f-margin-large-left {
    margin-left: 40px !important
}

.f-margin-large-right {
    margin-right: 40px !important
}

.f-margin-large-vertical {
    margin-bottom: 40px !important;
    margin-top: 40px !important
}

.f-margin-large-horizontal {
    margin-left: 40px !important;
    margin-right: 40px !important
}

* + .f-margin-large {
    margin-top: 40px
}

.f-margin-xlarge {
    margin-bottom: 80px
}

    .f-margin-xlarge + .f-margin-xlarge {
        margin-top: 80px
    }

.f-margin-xlarge-top {
    margin-top: 80px !important
}

.f-margin-xlarge-bottom {
    margin-bottom: 80px !important
}

.f-margin-xlarge-left {
    margin-left: 80px !important
}

.f-margin-xlarge-right {
    margin-right: 80px !important
}

.f-margin-xlarge-vertical {
    margin-bottom: 80px !important;
    margin-top: 80px !important
}

.f-margin-xlarge-horizontal {
    margin-left: 80px !important;
    margin-right: 80px !important
}

* + .f-margin-xlarge {
    margin-top: 80px
}

.f-margin-remove {
    margin: 0 !important
}

.f-margin-top-remove {
    margin-top: 0 !important
}

.f-margin-bottom-remove {
    margin-bottom: 0 !important
}

.f-padding {
    padding: 20px
}

.f-padding-top {
    padding-top: 20px !important
}

.f-padding-bottom {
    padding-bottom: 20px !important
}

.f-padding-left {
    padding-left: 20px !important
}

.f-padding-right {
    padding-right: 20px !important
}

.f-padding-vertical {
    padding-bottom: 20px !important;
    padding-top: 20px !important
}

.f-padding-horizontal {
    padding-left: 20px !important;
    padding-right: 20px !important
}

.f-padding-small {
    padding: 10px
}

.f-padding-small-top {
    padding-top: 10px !important
}

.f-padding-small-bottom {
    padding-bottom: 10px !important
}

.f-padding-small-left {
    padding-left: 10px !important
}

.f-padding-small-right {
    padding-right: 10px !important
}

.f-padding-small-vertical {
    padding-bottom: 10px !important;
    padding-top: 10px !important
}

.f-padding-small-horizontal {
    padding-left: 10px !important;
    padding-right: 10px !important
}

.f-padding-medium {
    padding: 30px
}

.f-padding-medium-top {
    padding-top: 30px !important
}

.f-padding-medium-bottom {
    padding-bottom: 30px !important
}

.f-padding-medium-left {
    padding-left: 30px !important
}

.f-padding-medium-right {
    padding-right: 30px !important
}

.f-padding-medium-vertical {
    padding-bottom: 30px !important;
    padding-top: 30px !important
}

.f-padding-medium-horizontal {
    padding-left: 30px !important;
    padding-right: 30px !important
}

.f-padding-large {
    padding: 40px
}

.f-padding-large-top {
    padding-top: 40px !important
}

.f-padding-large-bottom {
    padding-bottom: 40px !important
}

.f-padding-large-left {
    padding-left: 40px !important
}

.f-padding-large-right {
    padding-right: 40px !important
}

.f-padding-large-vertical {
    padding-bottom: 40px !important;
    padding-top: 40px !important
}

.f-padding-large-horizontal {
    padding-left: 40px !important;
    padding-right: 40px !important
}

.f-padding-xlarge {
    padding: 80px
}

.f-padding-xlarge-top {
    padding-top: 80px !important
}

.f-padding-xlarge-bottom {
    padding-bottom: 80px !important
}

.f-padding-xlarge-left {
    padding-left: 80px !important
}

.f-padding-xlarge-right {
    padding-right: 80px !important
}

.f-padding-xlarge-vertical {
    padding-bottom: 80px !important;
    padding-top: 80px !important
}

.f-padding-xlarge-horizontal {
    padding-left: 80px !important;
    padding-right: 80px !important
}

.f-normalize-child-margin > *:first-child {
    margin-top: 0 !important
}

.f-normalize-child-margin > *:last-child {
    margin-bottom: 0 !important
}

.f-padding-remove {
    padding: 0 !important
}

.f-padding-top-remove {
    padding-top: 0 !important
}

.f-padding-bottom-remove {
    padding-bottom: 0 !important
}

.f-padding-vertical-remove {
    padding-bottom: 0 !important;
    padding-top: 0 !important
}

.f-border-circle {
    border-radius: 50%
}

.f-border-rounded {
    border-radius: 5px
}

.f-heading-large {
    font-size: 36px;
    line-height: 1.2
}

@media (min-width: 768px) {
    .f-heading-large {
        font-size: 52px;
        line-height: 1.2
    }
}

.f-link-muted, .f-link-muted a {
    color: #444
}

    .f-link-muted:hover, .f-link-muted a:hover {
        color: #444
    }

.f-link-reset, .f-link-reset a, .f-link-reset:hover, .f-link-reset a:hover, .f-link-reset:focus, .f-link-reset a:focus {
    color: inherit;
    text-decoration: none
}

.f-scrollable-text {
    height: 300px;
    -webkit-overflow-scrolling: touch;
    overflow-y: scroll;
    resize: both
}

.f-scrollable-box {
    border: 1px solid #eee;
    box-sizing: border-box;
    height: 170px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 10px;
    resize: both
}

    .f-scrollable-box > :last-child {
        margin-bottom: 0
    }

.f-overflow-hidden {
    overflow: hidden
}

.f-overflow-container {
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

    .f-overflow-container > :last-child {
        margin-bottom: 0
    }

.f-position-absolute, [class*='f-position-top'], [class*='f-position-bottom'] {
    position: absolute !important
}

.f-position-top {
    top: 0;
    width: 100%
}

.f-position-bottom {
    bottom: 0;
    width: 100%
}

.f-position-top-left {
    left: 0;
    top: 0
}

.f-position-top-right {
    right: 0;
    top: 0
}

.f-position-bottom-left {
    bottom: 0;
    left: 0
}

.f-position-bottom-right {
    bottom: 0;
    right: 0
}

.f-position-cover {
    background-color: rgba(0,0,0,0.001);
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0
}

.f-position-fixed {
    position: fixed !important
}

.f-position-relative {
    position: relative !important
}

.f-position-z-index {
    z-index: 1
}

.f-display-block {
    display: block !important
}

.f-display-inline {
    display: inline !important
}

.f-display-inline-block {
    display: inline-block !important
}

@media (min-width: 1220px) {
    .f-visible-xsmall {
        display: none !important
    }

    .f-visible-small {
        display: none !important
    }

    .f-visible-xsmall-small {
        display: none !important
    }

    .f-visible-medium {
        display: none !important
    }

    .f-visible-large {
        display: none !important
    }

    .f-hidden-xlarge {
        display: none !important
    }

    .f-hidden-large-xlarge {
        display: none !important
    }
}

@media (min-width: 960px) and (max-width: 1219px) {
    .f-visible-xsmall {
        display: none !important
    }

    .f-visible-small {
        display: none !important
    }

    .f-visible-xsmall-small {
        display: none !important
    }

    .f-visible-medium {
        display: none !important
    }

    .f-visible-xlarge {
        display: none !important
    }

    .f-hidden-large {
        display: none !important
    }

    .f-hidden-large-xlarge {
        display: none !important
    }
}

@media (min-width: 768px) and (max-width: 959px) {
    .f-visible-xsmall {
        display: none !important
    }

    .f-visible-small {
        display: none !important
    }

    .f-visible-xsmall-small {
        display: none !important
    }

    .f-visible-large {
        display: none !important
    }

    .f-visible-xlarge {
        display: none !important
    }

    .f-visible-large-xlarge {
        display: none !important
    }

    .f-hidden-medium {
        display: none !important
    }
}

@media (min-width: 480px) and (max-width: 767px) {
    .f-visible-xsmall {
        display: none !important
    }
}

@media (max-width: 767px) {
    .f-hidden-xsmall-small {
        display: none !important
    }

    .f-hidden-small {
        display: none !important
    }

    .f-visible-medium {
        display: none !important
    }

    .f-visible-large {
        display: none !important
    }

    .f-visible-xlarge {
        display: none !important
    }

    .f-visible-large-xlarge {
        display: none !important
    }
}

@media (max-width: 479px) {
    .f-hidden-xsmall {
        display: none !important
    }
}

.f-hidden {
    display: none !important;
    visibility: hidden !important
}

.f-invisible {
    visibility: hidden !important
}

.f-visible-hover:hover .f-hidden, .f-visible-hover:hover .f-invisible {
    display: block !important;
    visibility: visible !important
}

.f-visible-hover-inline:hover .f-hidden, .f-visible-hover-inline:hover .f-invisible {
    display: inline-block !important;
    visibility: visible !important
}

.f-touch .f-hidden-touch, .f-notouch .f-hidden-notouch {
    display: none !important
}

.f-cursor-pointer {
    cursor: pointer
}

.f-cursor-default {
    cursor: default
}

.f-cursor-move {
    cursor: move
}

.f-hyphenate {
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
    overflow-wrap: break-word;
    word-wrap: break-word
}

.f-rp-video {
    height: 0;
    padding-bottom: 56.25%;
    padding-top: 25px;
    position: relative
}

    .f-rp-video > iframe, .f-rp-video > video {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

.f-video-wrap {
    height: 0;
    padding-bottom: 56.25%;
    padding-top: 25px;
    position: relative
}

    .f-video-wrap iframe {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

.f-a11y {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.f-background-color-white {
    background-color: #fff
}

.f-background-color-black {
    background-color: #000
}

.f-background-color-grey {
    background-color: #999
}

.f-background-color-grey-dark {
    background-color: #444
}

.f-background-color-grey-light {
    background-color: #eee
}

.f-background-color-primary {
    background-color: #009390
}

.f-dotnav {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin-left: -15px;
    margin-top: -15px;
    padding: 0
}

    .f-dotnav.f-flex-center {
        margin-left: -7.5px
    }

    .f-dotnav:before, .f-dotnav:after {
        content: '';
        display: block;
        overflow: hidden
    }

    .f-dotnav:after {
        clear: both
    }

    .f-dotnav > * {
        flex: none;
        float: left;
        margin-top: 15px;
        padding-left: 15px
    }

        .f-dotnav > *.f-active > * {
            background-color: rgba(50,50,50,0.4)
        }

        .f-dotnav > * > * {
            background-color: rgba(50,50,50,0.1);
            border-radius: 50%;
            box-sizing: content-box;
            display: block;
            height: 15px;
            overflow: hidden;
            text-indent: 100%;
            white-space: nowrap;
            width: 15px;
            transition: background-color .2s linear
        }

            .f-dotnav > * > *:hover, .f-dotnav > * > *:focus {
                background-color: rgba(50,50,50,0.4);
                outline: none
            }

            .f-dotnav > * > *:active {
                background-color: rgba(50,50,50,0.6)
            }

.f-dotnav-contrast > * > * {
    background-color: transparent;
    border: 1px solid #fff
}

    .f-dotnav-contrast > * > *:hover, .f-dotnav-contrast > * > *:focus {
        background-color: rgba(255,255,255,0.7)
    }

    .f-dotnav-contrast > * > *:active {
        background-color: rgba(255,255,255,0.9)
    }

.f-dotnav-contrast > *.f-active > * {
    background-color: #fff
}

.f-dotnav-vertical {
    flex-direction: column
}

    .f-dotnav-vertical > * {
        float: none
    }

.ie9 .f-dotnav.f-flex-center {
    left: calc(50% - 15px);
    transform: translateX(-50%);
    width: auto
}

.f-lazyload-background {
    overflow: hidden;
    position: relative
}

.f-lazyload-image {
    background-position: center;
    background-size: cover;
    display: block;
    position: relative
}

    .f-lazyload-image > .f-lazyload-placeholder {
        background-position: center;
        background-size: cover;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        transition: opacity 1s ease-out;
        width: 100%
    }

    .f-lazyload-image > img {
        transition: opacity 1s ease-out
    }

    .f-lazyload-image.f-lazyload-start > img {
        opacity: 0
    }

    .f-lazyload-image.f-lazyloaded > .f-lazyload-placeholder {
        opacity: 0
    }

    .f-lazyload-image.f-lazyloaded > img {
        opacity: 1
    }

.f-lazyload-cover {
    background-position: center top;
    background-size: 100% auto;
    height: 100%;
    left: 0;
    position: absolute !important;
    top: 0;
    width: 100%
}

    .f-lazyload-cover > .f-lazyload-placeholder, .f-lazyload-cover > img {
        height: auto;
        left: 50%;
        max-width: none;
        min-height: 100%;
        min-width: 100%;
        position: absolute;
        top: 50%;
        transform: translate(-50%, -50%);
        width: auto
    }

.f-modal {
    background-color: rgba(0,0,0,0.6);
    bottom: 0;
    display: none;
    left: 0;
    opacity: 0;
    -webkit-overflow-scrolling: touch;
    overflow-y: auto;
    overscroll-behavior: contain;
    position: fixed;
    right: 0;
    top: 0;
    touch-action: cross-slide-y pinch-zoom double-tap-zoom;
    transition: opacity .15s linear;
    z-index: 1010
}

    .f-modal.f-open {
        opacity: 1
    }

    .f-modal.f-no-transition {
        opacity: 1;
        transition: none
    }

.f-modal-page, .f-modal-page body {
    overflow: hidden
}

.f-modal-dialog {
    background-color: #fff;
    box-sizing: border-box;
    margin: 50px auto;
    max-width: calc(100% - 20px);
    opacity: 0;
    padding: 20px;
    position: relative;
    transform: translateY(-100px);
    transition: opacity .3s linear, transform .3s ease-out;
    width: 600px
}

    .f-modal-dialog.f-modal-hidden {
        transform: translateY(0)
    }

    .f-modal-dialog > :not([class*='f-modal-']):last-child {
        margin-bottom: 0
    }

    .f-modal-dialog > .f-close:first-child {
        float: right;
        margin: -10px -10px 0 0
    }

        .f-modal-dialog > .f-close:first-child + *:not([class*='f-modal-']) {
            margin-top: 0
        }

        .f-modal-dialog > .f-close:first-child > i {
            display: block
        }

@media (max-width: 767px) {
    .f-modal-dialog {
        margin: 10px auto;
        width: auto
    }
}

.f-open .f-modal-dialog {
    opacity: 1;
    transform: translateY(0)
}

    .f-open .f-modal-dialog.f-modal-hidden {
        opacity: 1;
        visibility: hidden
    }

        .f-open .f-modal-dialog.f-modal-hidden.f-active {
            opacity: 1;
            visibility: visible
        }

.f-modal-dialog-lightbox {
    max-width: calc(100% - 30px);
    min-height: 100px;
    padding: 0
}

    .f-modal-dialog-lightbox > .f-close:first-child {
        float: none;
        margin: 0;
        position: absolute;
        right: -18px;
        top: -18px
    }

.f-lightbox-zoom {
    bottom: 0;
    left: 0;
    overflow: hidden;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 1011
}

    .f-lightbox-zoom > img {
        backface-visibility: hidden;
        bottom: -1000%;
        height: auto;
        left: -1000%;
        margin: auto !important;
        max-height: none !important;
        max-width: none !important;
        position: absolute !important;
        right: -1000%;
        top: -1000%;
        transform-origin: 50% 50% !important;
        transition: transform .2s ease-out;
        width: auto;
        will-change: transform
    }

    .f-lightbox-zoom .f-lightbox-zoom-close {
        position: fixed;
        right: 20px;
        top: 20px;
        z-index: 1012
    }

.f-lightbox-zoom-tip {
    background-color: rgba(0,0,0,0.6);
    border-radius: 4px;
    bottom: 0;
    color: #fff;
    left: 50%;
    padding: 2px 5px;
    position: absolute;
    transform: translateX(-50%)
}

@media (max-width: 767px) {
    .f-modal-dialog-lightbox > .f-close:first-child {
        right: -7px;
        top: -7px
    }
}

.f-modal-dialog-blank {
    margin: 0;
    max-width: 100%;
    padding: 0;
    transition: opacity .3s linear;
    width: 100%
}

    .f-modal-dialog-blank > .f-close:first-child {
        float: none;
        margin: 0;
        position: absolute;
        right: 20px;
        top: 20px;
        z-index: 1
    }

@media (min-width: 768px) {
    .f-modal-dialog-large {
        width: 930px
    }
}

@media (min-width: 1220px) {
    .f-modal-dialog-large {
        width: 1130px
    }
}

.f-modal-header {
    background: #eee;
    border-bottom: 1px solid #e1e1e1;
    margin: -20px -20px 15px;
    padding: 20px
}

.f-modal-footer {
    background: #eee;
    border-top: 1px solid #e1e1e1;
    margin: 15px -20px -20px;
    padding: 20px
}

    .f-modal-header > :last-child, .f-modal-footer > :last-child {
        margin-bottom: 0
    }

.f-modal-caption {
    bottom: -20px;
    color: #fff;
    left: 0;
    margin-bottom: -10px;
    overflow: hidden;
    position: absolute;
    right: 0;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap
}

.f-modal-over {
    background-color: #fff;
    opacity: 1;
    position: absolute;
    transition: background-color .4s ease-out,height .4s ease-out,left .4s ease-out,opacity 0s linear,top .4s ease-out,width .4s ease-out,visibility .1333333333s linear 0s,z-index 0s linear;
    visibility: visible;
    z-index: 1011
}

    .f-modal-over.f-active {
        opacity: 0;
        transition: background-color .4s ease-out,height .4s ease-out,left .4s ease-out,opacity .1333333333s linear,top .4s ease-out,width .4s ease-out,visibility .1333333333s linear 0s,z-index .1333333333s linear;
        visibility: hidden;
        z-index: 1009
    }

    .f-modal-over.f-gone {
        opacity: 0;
        transition: opacity .2s linear,visibility .2s linear 0s;
        visibility: hidden
    }

.f-modal-spinner {
    color: #eee;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%)
}

    .f-modal-spinner i {
        font-size: 1.875rem;
        display: block
    }

.f-modal-alert .f-modal-icon {
    border: 4px solid #808080;
    border-radius: 50%;
    box-sizing: content-box;
    height: 80px;
    margin: 20px auto;
    padding: 0;
    position: relative;
    width: 80px
}

    .f-modal-alert .f-modal-icon.f-modal-success, .f-modal-alert .f-modal-icon.f-modal-error {
        border-color: #8ec73b
    }

        .f-modal-alert .f-modal-icon.f-modal-success:after, .f-modal-alert .f-modal-icon.f-modal-success:before, .f-modal-alert .f-modal-icon.f-modal-error:after, .f-modal-alert .f-modal-icon.f-modal-error:before {
            background: #fff;
            content: '';
            height: 120px;
            position: absolute;
            transform: rotate(45deg);
            width: 60px
        }

        .f-modal-alert .f-modal-icon.f-modal-success:before, .f-modal-alert .f-modal-icon.f-modal-error:before {
            border-radius: 120px 0 0 120px;
            left: -33px;
            top: -7px;
            transform: rotate(-45deg);
            transform-origin: 60px 60px
        }

        .f-modal-alert .f-modal-icon.f-modal-success:after, .f-modal-alert .f-modal-icon.f-modal-error:after {
            border-radius: 0 120px 120px 0;
            left: 30px;
            top: -11px;
            transform: rotate(-45deg);
            transform-origin: 0 60px
        }

        .f-modal-alert .f-modal-icon.f-modal-success .f-modal-placeholder, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-placeholder {
            border: 4px solid rgba(165,220,134,0.2);
            border-radius: 50%;
            box-sizing: content-box;
            height: 80px;
            left: -4px;
            position: absolute;
            top: -4px;
            width: 80px;
            z-index: 2
        }

        .f-modal-alert .f-modal-icon.f-modal-success .f-modal-fix, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-fix {
            background-color: #fff;
            height: 90px;
            left: 28px;
            position: absolute;
            top: 8px;
            transform: rotate(-45deg);
            width: 5px;
            z-index: 1
        }

        .f-modal-alert .f-modal-icon.f-modal-success .f-modal-line, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-line {
            background-color: #8ec73b;
            border-radius: 2px;
            display: block;
            height: 5px;
            position: absolute;
            z-index: 2
        }

            .f-modal-alert .f-modal-icon.f-modal-success .f-modal-line.f-modal-tip, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-line.f-modal-tip {
                left: 14px;
                top: 46px;
                transform: rotate(45deg);
                width: 25px
            }

            .f-modal-alert .f-modal-icon.f-modal-success .f-modal-line.f-modal-long, .f-modal-alert .f-modal-icon.f-modal-error .f-modal-line.f-modal-long {
                right: 8px;
                top: 38px;
                transform: rotate(-45deg);
                width: 47px
            }

    .f-modal-alert .f-modal-icon.f-modal-error {
        border-color: #da314b
    }

        .f-modal-alert .f-modal-icon.f-modal-error .f-modal-x-mark {
            display: block;
            position: relative;
            z-index: 2
        }

        .f-modal-alert .f-modal-icon.f-modal-error .f-modal-placeholder {
            border: 4px solid rgba(200,0,0,0.2)
        }

        .f-modal-alert .f-modal-icon.f-modal-error .f-modal-line {
            background-color: #da314b;
            top: 37px;
            width: 47px
        }

            .f-modal-alert .f-modal-icon.f-modal-error .f-modal-line.f-modal-left {
                left: 17px;
                transform: rotate(45deg)
            }

            .f-modal-alert .f-modal-icon.f-modal-error .f-modal-line.f-modal-right {
                right: 16px;
                transform: rotate(-45deg)
            }

    .f-modal-alert .f-modal-icon.f-modal-warning {
        border-color: #faa732
    }

        .f-modal-alert .f-modal-icon.f-modal-warning:before {
            animation: pulseWarning 2s linear infinite;
            background-color: #fff;
            border-radius: 50%;
            content: '';
            display: inline-block;
            height: 100%;
            opacity: 0;
            position: absolute;
            width: 100%
        }

        .f-modal-alert .f-modal-icon.f-modal-warning:after {
            background-color: #fff;
            border-radius: 50%;
            content: '';
            display: block;
            height: 100%;
            position: absolute;
            width: 100%;
            z-index: 1
        }

        .f-modal-alert .f-modal-icon.f-modal-warning .f-modal-body {
            background-color: #faa732;
            border-radius: 2px;
            height: 47px;
            left: 50%;
            margin-left: -2px;
            position: absolute;
            top: 10px;
            width: 5px;
            z-index: 2
        }

        .f-modal-alert .f-modal-icon.f-modal-warning .f-modal-dot {
            background-color: #faa732;
            border-radius: 50%;
            bottom: 10px;
            height: 7px;
            left: 50%;
            margin-left: -3px;
            position: absolute;
            width: 7px;
            z-index: 2
        }

.f-modal-alert + .f-modal-content {
    text-align: center
}

.animateSuccessTip {
    animation: animateSuccessTip .75s
}

.animateSuccessLong {
    animation: animateSuccessLong .75s
}

.f-modal-icon.f-modal-success.animate:after {
    animation: rotatePlaceholder 4.25s ease-in
}

.animateErrorIcon {
    animation: animateErrorIcon 1s
}

.animateXLeft {
    animation: animateXLeft .75s
}

.animateXRight {
    animation: animateXRight .75s
}

.scaleWarning {
    animation: scaleWarning 2s infinite alternate
}

.pulseWarningIns {
    animation: pulseWarningIns .8s
}

.pulseWarningIns2 {
    animation: pulseWarningIns2 1.2s
}

@keyframes animateSuccessTip {
    0%,54% {
        left: 1px;
        top: 19px;
        width: 0
    }

    70% {
        left: -8px;
        top: 37px;
        width: 50px
    }

    84% {
        left: 21px;
        top: 48px;
        width: 17px
    }

    100% {
        left: 14px;
        top: 45px;
        width: 25px
    }
}

@keyframes animateSuccessLong {
    0%,65% {
        right: 46px;
        top: 54px;
        width: 0
    }

    84% {
        right: 0;
        top: 35px;
        width: 55px
    }

    100% {
        right: 8px;
        top: 38px;
        width: 47px
    }
}

@keyframes rotatePlaceholder {
    0%,5% {
        transform: rotate(-45deg)
    }

    12%,100% {
        transform: rotate(-405deg)
    }
}

@keyframes animateErrorIcon {
    0%,20% {
        opacity: 0;
        transform: rotateX(100deg)
    }

    100% {
        opacity: 1;
        transform: rotateX(0deg)
    }
}

@keyframes animateXLeft {
    0%,65% {
        left: 82px;
        top: 95px;
        width: 0
    }

    84% {
        left: 14px;
        top: 33px;
        width: 47px
    }

    100% {
        left: 17px;
        top: 37px;
        width: 47px
    }
}

@keyframes animateXRight {
    0%,65% {
        right: 82px;
        top: 95px;
        width: 0
    }

    84% {
        right: 14px;
        top: 33px;
        width: 47px
    }

    100% {
        right: 16px;
        top: 37px;
        width: 47px
    }
}

@keyframes scaleWarning {
    0%,67.5% {
        transform: scale(1)
    }

    68% {
        transform: scale(1.02)
    }

    100% {
        transform: scale(1)
    }
}

@keyframes pulseWarning {
    0% {
        background-color: #fff;
        opacity: .5;
        transform: scale(1)
    }

    30% {
        background-color: #fff;
        opacity: .5;
        transform: scale(1)
    }

    100% {
        background-color: #faa732;
        opacity: 0;
        transform: scale(2)
    }
}

@keyframes pulseWarningIns {
    0%,40% {
        background-color: #fbbc64;
        opacity: 0;
        transform: translateY(-20px)
    }

    75% {
        background-color: #fbb24b;
        opacity: .5;
        transform: translateY(10px)
    }

    80% {
        background-color: #fbb24b;
        opacity: 1;
        transform: translateY(5px)
    }

    100% {
        background-color: #faa732;
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes pulseWarningIns2 {
    0%,40% {
        background-color: #fbbc64;
        border-radius: 0;
        opacity: 0;
        transform: rotate(0deg) scale(1.5)
    }

    60% {
        background-color: #fbbc64;
        border-radius: 0;
        opacity: 0;
        transform: rotate(0deg) scale(1.5)
    }

    100% {
        background-color: #faa732;
        border-radius: 50%;
        opacity: 1;
        transform: rotate(365deg) scale(1)
    }
}

.f-offcanvas {
    background-color: rgba(0,0,0,0.1);
    bottom: 0;
    display: none;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    touch-action: none;
    z-index: 1000
}

    .f-offcanvas.f-active {
        display: block
    }

        .f-offcanvas.f-active .f-offcanvas-bar.f-offcanvas-bar-show, .f-offcanvas.f-active .f-offcanvas-bar-flip[mode='reveal'].f-offcanvas-bar-show > * {
            transform: translateX(0%)
        }

    .f-offcanvas.f-offcanvas-overlaid {
        display: block;
        visibility: hidden
    }

        .f-offcanvas.f-offcanvas-overlaid.f-active {
            visibility: visible
        }

    .f-offcanvas .f-panel {
        color: #999;
        margin: 20px 15px
    }

        .f-offcanvas .f-panel a:not([class]) {
            color: #eee
        }

            .f-offcanvas .f-panel a:not([class]):hover {
                color: #fff
            }

    .f-offcanvas .f-panel-title {
        color: #eee
    }

.f-offcanvas-page {
    margin-left: 0;
    position: fixed;
    transition: margin-left .3s ease-in-out
}

.f-offcanvas-bar {
    background-color: #333;
    bottom: 0;
    left: 0;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    overflow-y: auto;
    position: fixed;
    -ms-scroll-chaining: none;
    top: 0;
    transform: translateX(-100%);
    transition: left .3s ease-in-out, transform .3s ease-in-out;
    width: 270px;
    z-index: 1001
}

    .f-offcanvas-bar[mode='none'] {
        transition: none
    }

    .f-offcanvas-bar[mode='reveal'] {
        clip: rect(0, 0, 100vh, 0);
        transform: translateX(0%);
        transition: transform .3s ease-in-out, clip .3s ease-in-out
    }

.f-offcanvas-bar-flip[mode='reveal'] {
    clip: none;
    transform: translateX(100%)
}

    .f-offcanvas-bar-flip[mode='reveal'] > * {
        transform: translateX(-100%);
        transition: transform .3s ease-in-out
    }

.f-offcanvas-bar-flip {
    left: auto;
    right: 0;
    transform: translateX(100%)
}

.f-offcanvas-back, .f-offcanvas-closeall {
    font-size: 1rem;
    background-color: #4d4c4c;
    border: 0;
    color: #eee;
    cursor: pointer;
    display: block;
    height: 38px;
    margin-top: 20px;
    padding: 0 20px;
    position: relative;
    width: 100%
}

    .f-offcanvas-back span, .f-offcanvas-closeall span {
        position: absolute;
        right: 20px;
        top: 10px;
        transition: right .3s ease-in-out
    }

    .f-offcanvas-back i, .f-offcanvas-closeall i {
        left: 15px;
        position: absolute;
        top: 7px;
        transition: left .3s ease-in-out
    }

.f-offcanvas-inactive .f-offcanvas-back, .f-offcanvas-inactive .f-offcanvas-closeall {
    background-color: #404040
}

    .f-offcanvas-inactive .f-offcanvas-back span, .f-offcanvas-inactive .f-offcanvas-closeall span {
        right: calc(100% - 28px)
    }

    .f-offcanvas-inactive .f-offcanvas-back i, .f-offcanvas-inactive .f-offcanvas-closeall i {
        left: calc(100% - 28px)
    }

.f-cookie-consent {
    background-color: #444;
    box-sizing: border-box;
    color: #fff;
    overflow: hidden;
    padding: 20px
}

body > .f-cookie-consent {
    position: fixed;
    width: 100%;
    z-index: 9001
}

    body > .f-cookie-consent.f-cookie-consent-top {
        left: 0;
        top: 0
    }

    body > .f-cookie-consent.f-cookie-consent-bottom {
        bottom: 0;
        left: 0
    }

    body > .f-cookie-consent.f-cookie-consent-bottom-right {
        bottom: 20px;
        max-width: 300px;
        right: 20px
    }

    body > .f-cookie-consent.f-cookie-consent-bottom-left {
        bottom: 20px;
        left: 20px;
        max-width: 300px
    }

    body > .f-cookie-consent.f-cookie-consent-top-right {
        max-width: 300px;
        right: 20px;
        top: 20px
    }

    body > .f-cookie-consent.f-cookie-consent-top-left {
        left: 20px;
        max-width: 300px;
        top: 20px
    }

    body > .f-cookie-consent[class*='f-cookie-consent-top-'], body > .f-cookie-consent[class*='f-cookie-consent-bottom-'] {
        -ms-flex-direction: column;
        -webkit-flex-direction: column;
        flex-direction: column
    }

        body > .f-cookie-consent[class*='f-cookie-consent-top-'] .f-cookie-consent-actions, body > .f-cookie-consent[class*='f-cookie-consent-bottom-'] .f-cookie-consent-actions {
            float: none;
            margin-top: 20px
        }

            body > .f-cookie-consent[class*='f-cookie-consent-top-'] .f-cookie-consent-actions .f-cookie-consent-dismiss, body > .f-cookie-consent[class*='f-cookie-consent-bottom-'] .f-cookie-consent-actions .f-cookie-consent-dismiss {
                float: right
            }

.f-cookie-consent-message > *:last-child {
    margin-bottom: 0
}

.f-cookie-consent-message > *:first-child {
    margin-top: 0
}

@media screen and (max-width: 767.99px) {
    .f-cookie-consent .f-flex {
        -ms-flex-direction: column;
        -webkit-flex-direction: column;
        flex-direction: column
    }

        .f-cookie-consent .f-flex .f-cookie-consent-actions {
            float: none;
            margin-top: 20px
        }

            .f-cookie-consent .f-flex .f-cookie-consent-actions .f-cookie-consent-dismiss {
                float: right
            }
}

.f-map {
    height: 320px;
    width: 100%
}

@media screen and (min-width: 768px) {
    .f-map {
        height: 400px
    }
}

@media screen and (min-width: 1220px) {
    .f-map {
        height: 800px
    }
}

@media screen and (min-width: 1220px) {
    .f-map.map-alt {
        height: 534px
    }
}

.f-map-infowindow-title {
    font-size: 1.2em
}

.f-map-infowindow-content {
    font-size: 1rem;
    display: flex;
    font-weight: 300
}

@media screen and (min-width: 768px) {
    .f-map-infowindow-content {
        font-size: 1.125rem
    }
}

@media screen and (min-width: 1220px) {
    .f-map-infowindow-content {
        font-size: 1.5rem;
        padding: 10px
    }
}

.f-map-infowindow-content * {
    margin: 0 0 10px
}

    .f-map-infowindow-content *:last-child {
        margin-bottom: 0
    }

.f-map-infowindow-content .window-link {
    font-size: .875rem;
    text-decoration: underline
}

@media screen and (min-width: 1220px) {
    .f-map-infowindow-content .window-link {
        font-size: 1.125rem
    }
}

.f-map-infowindow-content img {
    width: 80px
}

@media screen and (min-width: 768px) {
    .f-map-infowindow-content img {
        width: 150px
    }
}

.f-map-infowindow-content img.icon-building {
    flex-grow: 0;
    margin-right: 10px;
    width: 59px
}

@media screen and (max-width: 766.99px) {
    .f-map-infowindow-content img.icon-building {
        display: none
    }
}

@media screen and (min-width: 1220px) {
    .f-map-infowindow-content img.icon-building {
        margin-right: 30px
    }
}

.gm-style .gm-style-iw-c {
    border-radius: 0
}

.f-slidenav {
    font-size: 3.75rem;
    background-color: transparent;
    border: 0;
    box-sizing: border-box;
    color: rgba(68,68,68,0.4);
    display: inline-block;
    height: 60px;
    line-height: 60px;
    padding: 0;
    text-align: center;
    width: 60px;
    transition: color .2s linear
}

    .f-slidenav button {
        padding: 0
    }

    .f-slidenav > i {
        font-size: 3.75rem;
        display: block;
        font-weight: 100
    }

    .f-slidenav:hover, .f-slidenav:focus {
        color: rgba(68,68,68,0.7);
        cursor: pointer;
        outline: none;
        text-decoration: none
    }

        .f-slidenav:hover path, .f-slidenav:focus path {
            fill: #404048
        }

    .f-slidenav:active {
        color: rgba(68,68,68,0.9)
    }

.f-slidenav-position {
    position: relative
}

    .f-slidenav-position .f-slidenav {
        margin-top: -30px;
        opacity: 1;
        position: absolute;
        top: 50%;
        transition: opacity .2s linear;
        z-index: 1
    }

    .f-slidenav-position .f-slidenav-previous {
        left: 10px
    }

        .f-slidenav-position .f-slidenav-previous svg {
            transform: rotate(180deg)
        }

    .f-slidenav-position .f-slidenav-next {
        right: 10px
    }

.f-slidenav-contrast {
    color: rgba(255,255,255,0.5)
}

    .f-slidenav-contrast:hover, .f-slidenav-contrast:focus {
        color: rgba(255,255,255,0.7)
    }

    .f-slidenav-contrast:active {
        color: rgba(255,255,255,0.9)
    }

[data-f-slider] {
    direction: ltr
}

html[dir='rtl'] .f-slider > * {
    direction: rtl
}

.f-slider {
    position: relative;
    touch-action: pan-y;
    z-index: 0
}

@media only screen and (min-width: 960px) {
    .f-slider.f-slider-fancy > li > div {
        transform: scale(0.95);
        transform-origin: center;
        transition: transform .1s linear
    }

    .f-slider.f-slider-fancy > li.f-next > div, .f-slider.f-slider-fancy > li.f-previous > div {
        transform: scale(1.05);
        z-index: 1
    }

    .f-slider.f-slider-fancy > li.f-active > div {
        transform: scale(1.15);
        z-index: 2
    }
}

.f-slider:not(.f-grid) {
    list-style: none;
    margin: 0;
    padding: 0
}

.f-slider > * {
    left: 0;
    position: absolute;
    top: 0
}

.f-slider.f-drag {
    cursor: col-resize;
    -moz-user-select: none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none
}

.f-slider img {
    pointer-events: none
}

.f-slider-container {
    overflow: hidden
}

    .f-slider-container + .f-slide-handle {
        background-color: #ebf7fd;
        display: none;
        height: 5px;
        margin: 0 auto;
        position: relative;
        width: 100%;
        z-index: 2
    }

        .f-slider-container + .f-slide-handle .f-drag-handle {
            background-color: #d4eefb;
            border: 1px solid #a5dbf6;
            cursor: pointer;
            display: block;
            height: 20px;
            position: absolute;
            top: -7.5px;
            transform: translateX(0);
            transition: background-color .2s linear, border .2s linear, transform .1s linear;
            width: 120px;
            z-index: 1
        }

            .f-slider-container + .f-slide-handle .f-drag-handle:hover, .f-slider-container + .f-slide-handle .f-drag-handle.f-handle-drag {
                background-color: #a5dbf6;
                border-color: #8ed2f4
            }

        .f-slider-container + .f-slide-handle .f-slide-step {
            float: left;
            height: 5px
        }

@media only screen and (min-width: 960px) {
    .f-slider-container + .f-slide-handle {
        display: block
    }
}

.f-slider:not(.f-drag) {
    transition: transform 200ms linear
}

.f-slider a, .f-slider img {
    -webkit-touch-callout: none;
    -webkit-user-drag: none;
    user-drag: none
}

.f-slider-fullscreen, .f-slider-fullscreen > li {
    height: 100vh
}

.f-slider-slideshow-nav li {
    box-sizing: border-box;
    cursor: pointer
}

    .f-slider-slideshow-nav li:before {
        border: 2px solid transparent;
        box-sizing: border-box;
        content: '';
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 1
    }

.f-slider-slideshow-nav .f-active:before {
    border-color: #009390
}

[data-f-sticky].f-active {
    -webkit-backface-visibility: hidden;
    box-sizing: border-box;
    z-index: 980
}

[data-f-sticky][class*='f-animation-'] {
    animation-duration: .15s
}

[data-f-sticky].f-animation-reverse {
    animation-duration: .04s
}

.f-form-controls {
    position: relative
}

    .f-form-controls > [class*='f-width-'] {
        position: relative
    }

.f-form-row > .f-grid > [class*='f-width-'] {
    position: relative
}

.f-form-danger:not(select) {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath fill='%23ED462E' d='M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z'/%3E%3C/svg%3E");
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-size: 15px;
    border-color: #b72138 !important;
    color: #da314b !important;
    padding-right: 35px !important
}

select.f-form-danger {
    border-color: #b72138 !important;
    color: #da314b !important
}

span.f-form-danger, .f-form .errorfeedback, .f-form .field-validation-error {
    background-color: #da314b !important;
    background-image: none;
    border: 1px solid #da314b;
    color: #fff !important;
    display: block;
    line-height: 1.5;
    margin-top: 12px;
    padding: 7px 10px;
    position: relative;
    top: 0;
    z-index: 1
}

    span.f-form-danger:after, .f-form .errorfeedback:after, .f-form .field-validation-error:after {
        border: 10px solid rgba(136,183,213,0);
        border-bottom-color: #da314b;
        bottom: 100%;
        content: ' ';
        height: 0;
        left: 10px;
        margin-left: 0;
        pointer-events: none;
        position: absolute;
        width: 0
    }

.f-form-success:not(select), input:-webkit-autofill.f-form-success {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath fill='%23AACA28' d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/%3E%3C/svg%3E");
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-size: 15px;
    border-color: #72a12e !important;
    color: #8ec73b !important;
    padding-right: 35px !important
}

input[type='password'].f-form-success {
    background-image: none
}

select.f-form-success {
    border-color: #72a12e !important;
    color: #8ec73b !important
}

textarea.f-form-danger, textarea.f-form-success {
    background-position: right 10px top 7px
}

@media screen and (min-width: 480px) {
    .f-form-row-invalid {
        position: relative
    }

        .f-form-row-invalid.f-form-controls, .f-form-row-invalid.f-form-row {
            margin-bottom: 40px
        }

            .f-form-row-invalid.f-form-controls:last-child, .f-form-row-invalid.f-form-row:last-child {
                margin-bottom: 0
            }

    .f-form-row.f-form-row-invalid .f-form-controls {
        margin-bottom: 0
    }

    span.f-form-danger, .f-form .errorfeedback {
        background-color: #da314b !important;
        border: 1px solid #da314b !important;
        left: 10px;
        margin-top: 0;
        position: absolute;
        top: 90%;
        width: 250px;
        z-index: 3
    }

        span.f-form-danger:after, span.f-form-danger:before, .f-form .errorfeedback:after, .f-form .errorfeedback:before {
            border: 5px solid rgba(136,183,213,0);
            bottom: 100%;
            content: ' ';
            height: 0;
            left: 10px;
            pointer-events: none;
            position: absolute;
            width: 0
        }

        span.f-form-danger:after, .f-form .errorfeedback:after {
            border-bottom-color: #da314b;
            margin-left: 0
        }

        span.f-form-danger:before, .f-form .errorfeedback:before {
            border-bottom-color: #da314b;
            border-width: 7px;
            margin-left: -2px
        }
}

.footer {
    color: #404048;
    padding-top: 21px
}

@media screen and (min-width: 768px) {
    .footer {
        padding-top: 30px
    }
}

@media screen and (min-width: 1220px) {
    .footer {
        padding-top: 60px
    }
}

.footer .f-container:after {
    background-image: url(/images/tree.jpg);
    content: '';
    display: block;
    height: 321px;
    margin: 0 auto;
    width: 304px
}

@media screen and (min-width: 960px) {
    .footer .f-container:after {
        bottom: 0;
        left: 0;
        position: absolute
    }
}

@media screen and (min-width: 1220px) {
    .footer .f-container:after {
        left: -50px
    }
}

@media screen and (min-width: 1600px) {
    .footer .f-container:after {
        left: -25px
    }
}

.footer h4 {
    font-size: 1.5rem;
    margin: 0 0 13px
}

    .footer h4 + p {
        margin-top: 0
    }

.footer-logo {
    height: 44px;
    width: 191px
}

@media screen and (min-width: 768px) {
    .offices {
        display: flex;
        justify-content: space-between
    }
}

.offices > div:not(:first-child) {
    margin-top: 23px
}

@media screen and (min-width: 768px) {
    .offices > div:not(:first-child) {
        margin-left: 20px;
        margin-top: 0
    }
}

.office-address {
    font-size: 1.0625rem;
    max-width: 280px
}

.office-tels {
    font-size: 1.25rem
}

@media screen and (min-width: 1220px) {
    .office-tels {
        line-height: 1.8;
        margin-bottom: 50px
    }
}

.office-email {
    padding: 15px 0
}

@media screen and (min-width: 960px) {
    .office-email {
        font-size: 1.25rem;
        padding: 17px 0
    }
}

.office-email span {
    font-size: 1.125rem;
    display: block
}

@media screen and (min-width: 960px) {
    .office-email span {
        font-size: 1.25rem;
        display: inline-block
    }
}

@media screen and (min-width: 1220px) {
    .footer-nav {
        align-items: center;
        display: flex;
        justify-content: space-between;
        margin: 40px 0
    }
}

@media screen and (min-width: 768px) {
    .footer-nav ul {
        margin: 0
    }
}

.footer-nav li {
    display: inline-block
}

.footer-nav a {
    color: #404048
}

.footer-nav-list {
    font-size: 1.125rem
}

    .footer-nav-list li {
        margin-right: 20px
    }

        .footer-nav-list li:last-child {
            margin-right: 0
        }

    .footer-nav-list a:hover {
        color: #009390
    }

.footer-social {
    margin: 20px 0 !important;
    text-align: center
}

@media screen and (min-width: 1220px) {
    .footer-social {
        margin: 0 !important
    }
}

.footer-social li {
    display: inline-block;
    margin: 0 16px 0 0
}

@media screen and (min-width: 1220px) {
    .footer-social li:last-child {
        margin-right: 0
    }
}

.footer-social a {
    background: #404048;
    border-radius: 50%;
    height: 19px;
    width: 19px
}

    .footer-social a svg {
        fill: #fff;
        height: 18px;
        width: 19px
    }

    .footer-social a:hover {
        background: #009390
    }

.copyright {
    font-size: .875rem;
    padding: 30px 0 38px;
    text-align: center
}

@media screen and (min-width: 768px) {
    .copyright {
        padding: 25px 0;
        text-align: left
    }
}

@media screen and (min-width: 768px) {
    .copyright .f-container {
        align-items: center;
        display: flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 768px) {
    .copyright .f-container > ul {
        width: calc(100% - 230px)
    }
}

@media screen and (min-width: 768px) {
    .copyright .f-container > p {
        width: 230px
    }
}

.copyright ul {
    line-height: 1.8;
    margin: 0 0 30px
}

@media screen and (min-width: 768px) {
    .copyright ul {
        margin: 0
    }
}

.copyright ul li {
    display: inline-block;
    margin-right: 10px
}

    .copyright ul li:first-child {
        display: block;
        margin: 0
    }

@media screen and (min-width: 960px) {
    .copyright ul li:first-child {
        display: inline-block;
        margin-right: 10px
    }
}

.copyright ul li:last-child {
    margin-right: 0
}

.copyright a {
    color: #fff;
    display: block;
    margin: 0 auto
}

    .copyright a:hover {
        text-decoration: underline
    }

.copyright p span {
    display: inline-block;
    margin-right: 6px;
    transform: translateY(2px)
}

.copyright p a:hover {
    text-decoration: none
}

.top-section {
    font-size: 1.3125rem
}

    .top-section .divider {
        font-weight: 800;
        margin: 0 15px
    }

.top-links {
    font-size: 1.125rem;
    height: 24px;
    margin: 15px 0
}

    .top-links li {
        display: inline-block;
        margin-right: 25px
    }

        .top-links li:last-child {
            margin-right: 0
        }

        .top-links li a {
            height: 24px
        }

            .top-links li a:hover g, .top-links li a:hover path {
                fill: #94c947
            }

            .top-links li a g, .top-links li a path {
                transition: fill .3s linear
            }

        .top-links li svg {
            height: 24px;
            width: 24px
        }

    .top-links .social-link {
        background: #fff;
        border-radius: 50%;
        height: 24px;
        transition: background .3s linear;
        width: 24px
    }

        .top-links .social-link:hover {
            background: #94c947
        }

        .top-links .social-link svg {
            fill: #009390;
            transition: fill .3s linear
        }

.f-offcanvas .top-links {
    height: auto;
    text-align: right
}

    .f-offcanvas .top-links li {
        display: block;
        margin-right: 0
    }

        .f-offcanvas .top-links li svg {
            fill: #009390
        }

.header-section.f-active {
    box-shadow: 0 0 10px -2px rgba(0,0,0,0.4)
}

@media screen and (max-width: 958.99px) {
    .header-section .f-container {
        padding: 0
    }
}

.header-logo {
    height: 35px;
    margin: 10px 0 10px 10px;
    transition: height .3s, width .3s;
    width: 150px
}

.header-option > * {
    padding: 20px
}

.search-toggle.active g {
    fill: #009390
}

.search-area {
    background: #009390;
    color: #fff;
    display: none;
    padding: 10px;
    position: absolute;
    right: 0;
    top: 40px;
    width: 300px;
    z-index: 11
}

    .search-area form {
        display: flex
    }

    .search-area input[type='text'], .search-area button {
        height: 40px;
        width: calc(100% - 40px)
    }

    .search-area input[type='text'] {
        background: transparent;
        border: 0;
        color: #fff
    }

        .search-area input[type='text']:focus {
            color: #fff
        }

        .search-area input[type='text']::-webkit-input-placeholder {
            color: #fff
        }

        .search-area input[type='text']::-moz-placeholder {
            color: #fff
        }

        .search-area input[type='text']:-ms-input-placeholder {
            color: #fff !important
        }

        .search-area input[type='text']:-moz-placeholder {
            color: #fff
        }

        .search-area input[type='text']:focus {
            background: #008986
        }

    .search-area button {
        background: transparent;
        border: 0;
        color: #fff;
        cursor: pointer;
        font-weight: 800;
        height: 40px;
        width: 40px
    }

        .search-area button:hover, .search-area button:focus {
            color: #404048
        }

@media screen and (min-width: 960px) {
    .header {
        border-bottom: 1px solid #9b9b9b
    }

    .header-logo {
        height: 47px;
        width: 200px
    }
}

@media screen and (min-width: 1220px) {
    .header-logo {
        height: 63px;
        width: 273px
    }

    .f-active .header-logo {
        height: 37px;
        width: 160px
    }
}

.bg-primary {
    background-color: #009390
}

.bg-primary-light {
    background-color: #b9dbd8
}

.bg-primary-dark {
    background-color: #175c61
}

.bg-teal {
    background-color: #71a7a3
}

.bg-primary-dark {
    background-color: #175c61
}

.bg-primary-darker {
    background-color: #0e4d51
}

.bg-secondary {
    background-color: #94c947
}

.bg-tertiary {
    background-color: #404048
}

.bg-grey {
    background-color: #f7f7f7
}

.bg-white {
    background-color: #fff
}

.bg-white-transparent {
    background-color: rgba(255,255,255,0.85)
}

.bg-brick {
    background-image: url(/images/bg-brick.jpg)
}

.bg-coffee {
    background-image: url(/images/bg-coffee.jpg);
    background-position: right center;
    background-repeat: no-repeat
}

.who-we-are {
    background-image: url(/images/bg-brick-alt.jpg);
    color: #404048;
    font-weight: 500;
    overflow: hidden;
    padding: 18px 0 58%
}

@media screen and (min-width: 960px) {
    .who-we-are {
        font-size: 1.125rem;
        padding-bottom: 25%;
        text-align: center
    }
}

@media screen and (min-width: 1220px) {
    .who-we-are {
        padding-bottom: 26%;
        padding-top: 58px
    }
}

.who-we-are .f-container {
    position: relative;
    z-index: 1
}

    .who-we-are .f-container > * {
        margin-left: auto;
        margin-right: auto;
        max-width: 850px
    }

.who-we-are .background {
    bottom: 0;
    height: auto;
    left: 0;
    max-width: 100%;
    position: absolute;
    width: 100%
}

.who-we-are h2 {
    font-size: 2.25rem;
    font-weight: 300
}

@media screen and (min-width: 960px) {
    .who-we-are h2 {
        font-size: 3rem
    }
}

.who-we-are p:last-child {
    margin-bottom: 0
}

@media screen and (min-width: 1220px) {
    .who-we-are p {
        margin-top: 40px
    }
}

.who-we-are .f-btn {
    display: block;
    height: 77px;
    line-height: 77px;
    margin: 30px auto 0;
    max-width: 300px;
    padding: 0;
    width: 100%
}

@media screen and (min-width: 1220px) {
    .who-we-are .f-btn {
        margin-top: 66px
    }
}

.who-we-are .f-lazyload-image {
    position: static
}

@media screen and (min-width: 960px) {
    .min-height {
        min-height: 350px
    }
}

@media screen and (min-width: 1600px) {
    .min-height {
        min-height: 500px
    }
}

.video-placeholder {
    margin-bottom: 20px
}

    .video-placeholder.video-tile {
        min-height: inherit
    }

    .video-placeholder.video-module a {
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative
    }

    .video-placeholder a:after {
        font-size: 6.25rem;
        color: #fff;
        content: '\e1c4';
        display: inline-block;
        font-family: Material Icons;
        left: 50%;
        line-height: 1.3;
        position: absolute;
        top: 50%;
        transform: translateX(-50%) translateY(-50%);
        vertical-align: middle
    }

.f-modal-dialog.f-modal-dialog-lightbox.f-slidenav-position {
    overflow: visible
}

    .f-modal-dialog.f-modal-dialog-lightbox.f-slidenav-position .material-icons {
        color: #009390
    }

.main-nav {
    font-size: 1rem;
    margin: 0;
    text-align: right
}

@media screen and (min-width: 1220px) {
    .main-nav {
        font-size: 1.125rem
    }
}

.main-nav li {
    display: inline-block;
    margin-left: 15px
}

    .main-nav li.list-search {
        margin-left: 22px
    }

.main-nav a {
    color: #404048
}

    .main-nav a:hover, .main-nav a:focus {
        color: #009390
    }

.search-toggle:hover g, .search-toggle:focus g {
    fill: #009390
}

.hero {
    overflow: hidden;
    position: relative
}

@media screen and (max-width: 958.99px) {
    .hero {
        max-height: 500px
    }
}

@media screen and (max-width: 1218.99px) {
    .hero {
        max-height: none
    }
}

.hero-content {
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3
}

@media screen and (min-width: 768px) {
    .hero-content {
        display: flex;
        width: 100%
    }
}

@media screen and (min-width: 1220px) {
    .hero-content {
        left: 50%;
        max-width: 1500px;
        top: 0;
        transform: translateX(-50%);
        width: 100%
    }
}

.hero-content h1 {
    font-size: 1.5rem;
    line-height: 1.4;
    margin: 0 0 13px 17px
}

@media screen and (min-width: 768px) {
    .hero-content h1 {
        font-size: 2.375rem;
        line-height: 1.2;
        margin-left: 0
    }
}

.hero-content p {
    margin-left: 17px
}

@media screen and (min-width: 768px) {
    .hero-content p {
        font-size: 1.5rem;
        margin-left: 0
    }
}

@media screen and (min-width: 768px) {
    .hero-text {
        padding-left: 10px
    }
}

@media screen and (min-width: 960px) {
    .hero-text {
        order: 1;
        padding-left: 0;
        width: calc(100% - 300px)
    }
}

@media screen and (min-width: 1220px) {
    .hero-text {
        left: 456px;
        max-width: 576px;
        position: absolute;
        top: 77px;
        width: calc(100% - 406px)
    }
}

.hero-parallax {
    margin: 0 auto;
    overflow: hidden
}

    .hero-parallax .banner-parallax {
        bottom: 0;
        display: none;
        left: 0;
        position: absolute;
        transition: transform .5s linear;
        width: 100%;
        z-index: 2
    }

@media screen and (min-width: 960px) {
    .hero-parallax .banner-parallax {
        bottom: -20px;
        display: block;
        left: -50px;
        max-width: none;
        width: calc(100% + 100px)
    }
}

@media screen and (min-width: 1600px) {
    .hero-parallax .banner-parallax {
        bottom: -100px
    }
}

.hero-parallax .banner-parallax-alt {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 768px) {
    .hero-parallax .banner-parallax-alt {
        display: none
    }
}

@media screen and (min-width: 960px) {
    .hero-parallax .banner-parallax-alt {
        display: block
    }
}

.hero-parallax .banner-clouds {
    position: absolute;
    right: 10%;
    top: 10%;
    transition: transform .3s linear;
    z-index: 2
}

.banner-tablet {
    display: none
}

@media screen and (min-width: 768px) {
    .banner-tablet {
        display: block;
        position: relative;
        z-index: 2
    }
}

@media screen and (min-width: 960px) {
    .banner-tablet {
        display: none
    }
}

.hero-further.services-nav {
    padding: 0
}

.hero-further .f-container {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%
}

.hero-further h1 {
    font-size: 1.5rem
}

@media screen and (min-width: 768px) {
    .hero-further h1 {
        font-size: 3rem
    }

        .hero-further h1.small-heading {
            font-size: 2.25rem
        }
}

.hero-further.no-image {
    background: #f7f7f7;
    padding: 20px 0
}

@media screen and (min-width: 768px) {
    .hero-further.no-image {
        padding: 30px 0
    }
}

@media screen and (min-width: 1220px) {
    .hero-further.no-image {
        padding: 80px 0
    }
}

.hero-further.no-image .f-container {
    position: static;
    transform: none
}

.main-banner-img {
    display: block
}

.hills {
    bottom: 0;
    display: none;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: 2
}

.tractor-wrap, .tractor-wrap-2 {
    animation: move-tractor 36s infinite forwards linear;
    bottom: 13%;
    display: none;
    left: 57.4%;
    position: absolute;
    transform: rotate(11deg);
    width: 95px;
    z-index: 1
}

    .tractor-wrap .tractor-wheel, .tractor-wrap-2 .tractor-wheel {
        animation: spin-wheel 2.5s infinite forwards linear;
        bottom: -14px;
        position: absolute;
        right: 3px;
        transition: transform .3s linear;
        width: 40px
    }

        .tractor-wrap .tractor-wheel.tractor-wheel-small, .tractor-wrap-2 .tractor-wheel.tractor-wheel-small {
            left: 3px;
            right: auto;
            width: 30px
        }

.tractor-wrap-2 {
    animation: move-tractor-2 36s infinite forwards linear 18s;
    bottom: -10%;
    left: 26%;
    transform: rotate(-41deg) scale(1.4) scaleX(-1);
    z-index: 3
}

.clock-face {
    background: #71a3a0;
    border-radius: 50%;
    display: none;
    height: 25px;
    left: 39.4%;
    position: absolute;
    top: 57.9%;
    width: 25px
}

    .clock-face .clock-hand {
        border-radius: 0 50% 50% 0;
        left: 12.5px;
        position: absolute;
        transform-origin: 0
    }

    .clock-face .clock-hour {
        background: #0e453f;
        height: 2px;
        top: 12.5px;
        width: 6px
    }

    .clock-face .clock-minute {
        background: #0e453f;
        height: 2px;
        top: 12.5px;
        width: 10px
    }

    .clock-face .clock-second {
        background: #777;
        height: 1px;
        top: 12.5px;
        transition: transform .15s ease-out;
        width: 12px
    }

.birds {
    animation: flight 20s linear infinite;
    display: none;
    height: 223px;
    position: absolute;
    right: 10px;
    top: 10%;
    width: 310px;
    z-index: 3
}

    .birds .bird {
        position: absolute
    }

    .birds .bird-1 {
        bottom: 0;
        left: -16%;
        transform: scale(0.4)
    }

    .birds .bird-2 {
        bottom: 30%;
        left: 0;
        transform: scale(0.6)
    }

    .birds .bird-3 {
        right: 30%;
        top: -20%;
        transform: scale(0.8)
    }

    .birds .bird-4 {
        right: -8%;
        top: -40%;
        transform: scale(1)
    }

    .birds .bird-5 {
        bottom: 19%;
        right: 10%;
        transform: scale(0.75)
    }

    .birds .bird-6 {
        bottom: -20%;
        right: 20%;
        transform: scale(0.5)
    }

.flag {
    display: none;
    left: 74.95%;
    position: absolute;
    top: 34.2%
}

.sheep {
    display: none;
    left: 52%;
    position: absolute;
    top: 90%;
    z-index: 3
}

    .sheep.sheep-2 {
        left: 58%;
        top: 79%;
        transform: scaleX(-1)
    }

    .sheep.sheep-3 {
        left: 49%;
        top: 86%;
        transform: scaleX(-1)
    }

    .sheep.sheep-4 {
        left: 56%;
        top: 88%;
        transform: scaleX(-1)
    }

    .sheep.sheep-5 {
        left: 47%;
        top: 92%
    }

    .sheep.sheep-6 {
        left: 53%;
        top: 85%
    }

.clouds {
    animation: cloud 90s linear infinite;
    display: none;
    position: absolute
}

    .clouds.cloud-1 {
        left: 50%;
        top: 14%
    }

    .clouds.cloud-2 {
        animation-duration: 72s;
        left: 60%;
        top: 7%
    }

    .clouds.cloud-3 {
        animation-duration: 64s;
        left: 64%;
        top: 20%
    }

    .clouds.cloud-4 {
        animation-duration: 50s;
        left: 75%;
        top: 12%
    }

@media screen and (min-width: 960px) {
    .hills {
        display: block
    }
}

@media screen and (min-width: 1220px) {
    .clouds, .flag, .birds, .sheep, .tractor-wrap, .tractor-wrap-2 {
        display: block
    }

    .tractor-wrap, .tractor-wrap-2 {
        width: 125px
    }

        .tractor-wrap .tractor-wheel, .tractor-wrap-2 .tractor-wheel {
            bottom: -17px;
            right: 4px;
            width: 53px
        }

            .tractor-wrap .tractor-wheel.tractor-wheel-small, .tractor-wrap-2 .tractor-wheel.tractor-wheel-small {
                left: 4px;
                right: auto;
                width: 38px
            }

    .birds {
        top: 20%
    }

    .flag {
        left: 75.22%;
        top: 35%
    }
}

@media screen and (min-width: 1600px) {
    .birds {
        right: 25%
    }

    .clock-face {
        display: block
    }
}

@keyframes flight {
    0%,100% {
        transform: translate(-250px, 150px) scale(0)
    }

    30% {
        transform: translate(0, 0) scale(1)
    }

    60% {
        transform: translate(1000px, -50px) scale(1)
    }

    99.9% {
        transform: translate(1000px, -50px) scale(1)
    }
}

@keyframes move-tractor {
    0% {
        bottom: 13%;
        left: 57.4%;
        transform: rotate(11deg)
    }

    9% {
        bottom: 20%;
        left: 47.4%;
        transform: rotate(9deg)
    }

    18% {
        bottom: 23%;
        left: 36.4%;
        transform: rotate(4deg)
    }

    27% {
        bottom: 24%;
        left: 23.4%;
        transform: rotate(-1deg)
    }

    50%,100% {
        bottom: 21%;
        left: -10.4%;
        transform: rotate(-8deg)
    }
}

@keyframes move-tractor-2 {
    0% {
        bottom: -10%;
        left: 23%;
        transform: rotate(-35deg) scale(-1.4, 1.4)
    }

    5% {
        bottom: 3%;
        left: 31%;
        transform: rotate(-31deg) scale(-1.4, 1.4)
    }

    12.5% {
        bottom: 13%;
        left: 40%;
        transform: rotate(-24deg) scale(-1.4, 1.4)
    }

    25% {
        bottom: 28%;
        left: 60%;
        transform: rotate(-13deg) scale(-1.4, 1.4)
    }

    32.5% {
        bottom: 31%;
        left: 74%;
        transform: rotate(-1deg) scale(-1.4, 1.4)
    }

    40% {
        bottom: 31%;
        left: 87%;
        transform: rotate(4deg) scale(-1.4, 1.4)
    }

    50%,100% {
        bottom: 24%;
        left: 103%;
        transform: rotate(11deg) scale(-1.4, 1.4)
    }
}

@keyframes spin-wheel {
    0% {
        transform: rotate(0)
    }

    100% {
        transform: rotate(-360deg)
    }
}

@keyframes cloud {
    0%,100% {
        opacity: 1;
        transform: translateX(0)
    }

    50% {
        opacity: 1;
        transform: translateX(-1600px)
    }

    50.1% {
        opacity: 0;
        transform: translateX(-1600px)
    }

    50.2% {
        opacity: 0;
        transform: translateX(1000px)
    }

    50.3% {
        opacity: 1;
        transform: translateX(1000px)
    }
}

.qs-logo {
    height: 46px;
    width: 199px
}

.quick-search {
    margin: 0 10px;
    max-width: 406px
}

@media screen and (min-width: 768px) {
    .quick-search {
        flex-shrink: 0;
        width: 300px
    }
}

@media screen and (min-width: 1220px) {
    .quick-search {
        left: 0;
        position: absolute;
        top: 77px;
        width: 406px
    }
}

.quick-search h2 {
    font-size: 1.125rem;
    border-radius: 5px 5px 0 0;
    color: #404048;
    margin: 0;
    padding: 20px 15px
}

@media screen and (min-width: 1220px) {
    .quick-search h2 {
        align-items: center;
        display: flex;
        justify-content: space-between;
        padding: 20px 30px
    }
}

.quick-search h2 span {
    display: block;
    margin: 0 0 13px
}

@media screen and (min-width: 1220px) {
    .quick-search h2 span {
        margin: 0
    }
}

.quick-search .quick-search-content {
    border-radius: 0 0 5px 5px;
    padding: 28px 20px 20px
}

@media screen and (min-width: 1220px) {
    .quick-search .quick-search-content {
        padding-bottom: 40px;
        padding-left: 30px;
        padding-right: 30px
    }
}

.quick-search .quick-search-content label {
    font-size: 1.5rem;
    color: #404048;
    margin-bottom: 7px
}

.quick-search .quick-search-content select {
    font-size: 1.125rem;
    background-color: transparent;
    background-image: url(/images/icon-arrow-down.svg);
    border: 0;
    border-bottom: 1px solid #0b4142;
    height: auto;
    padding: 18px 0
}

    .quick-search .quick-search-content select:focus {
        background-color: #f7f7f7;
        border-color: #009390
    }

.quick-search .quick-search-content .f-btn {
    height: 77px;
    margin: 40px 0 0;
    padding: 0
}

.service-carousel {
    padding: 10px 0 0
}

    .service-carousel .f-slider-container {
        margin-bottom: 15px
    }

@media screen and (min-width: 960px) {
    .service-carousel {
        padding: 30px 0 0
    }
}

@media screen and (min-width: 1900px) {
    .service-carousel {
        padding: 30px 0
    }

        .service-carousel .f-slider-container {
            margin-bottom: 0
        }
}

@media screen and (max-width: 766.99px) {
    .service-carousel .cta-service {
        padding-bottom: 60px
    }
}

.service-carousel .f-dotnav {
    margin-left: -5px
}

@media screen and (min-width: 960px) {
    .service-carousel .f-dotnav {
        margin-left: 15px
    }
}

@media screen and (min-width: 1220px) {
    .service-carousel .f-dotnav {
        margin-left: -15px
    }
}

@media screen and (min-width: 1900px) {
    .service-carousel .f-dotnav {
        bottom: 20px;
        position: absolute
    }
}

.service-carousel .f-slidenav {
    bottom: 6px;
    top: auto
}

@media screen and (min-width: 1900px) {
    .service-carousel .f-slidenav {
        bottom: 30px
    }
}

@media screen and (min-width: 960px) {
    .service-carousel .f-slidenav.f-slidenav-previous {
        left: 57.5%;
        right: auto
    }
}

@media screen and (min-width: 960px) {
    .service-carousel .f-slidenav.f-slidenav-next {
        right: 31.5%
    }
}

.f-slidenav-position {
    overflow: hidden
}

@media screen and (min-width: 768px) {
    .f-slider-container {
        width: 145%
    }
}

.cta-service {
    font-weight: 500
}

    .cta-service .cta-inner {
        padding: 0 10px
    }

@media screen and (min-width: 960px) {
    .cta-service .cta-inner {
        padding: 30px 0 30px 80px
    }
}

@media screen and (min-width: 1220px) {
    .cta-service .cta-inner {
        line-height: 1.6;
        max-width: 80%;
        padding: 30px 0 90px 30px
    }
}

.cta-service h2 {
    font-size: 2.25rem
}

@media screen and (min-width: 960px) {
    .cta-service h2 {
        font-size: 3rem;
        margin-bottom: 40px
    }
}

.cta-service .tel {
    font-size: 1.5rem;
    font-weight: 300
}

@media screen and (min-width: 960px) {
    .cta-service .tel {
        margin-bottom: 0;
        margin-top: 30px
    }
}

.cta-service .f-btn {
    font-size: 1.125rem;
    align-items: center;
    display: flex;
    justify-content: center;
    max-width: 350px;
    min-height: 77px;
    padding: 15px;
    width: 100%
}

@media screen and (min-width: 960px) {
    .cta-service .f-btn {
        margin-top: 75px
    }
}

.cta-service .col-content {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 1220px) {
    .cta-service .col-image img {
        float: right;
        max-width: none;
        width: 116%
    }
}

.cta-service .col-image img + .f-btn {
    transform: translateY(-40px)
}

.services-nav {
    padding: 20px 0
}

@media screen and (min-width: 768px) {
    .services-nav {
        padding: 30px 0
    }
}

@media screen and (min-width: 1220px) {
    .services-nav {
        padding: 82px 0
    }
}

@media screen and (min-width: 1220px) {
    .services-nav .f-container {
        align-items: center;
        display: flex
    }
}

.services-nav h1 {
    font-size: 1.5rem;
    margin: 0 0 15px
}

@media screen and (min-width: 768px) {
    .services-nav h1 {
        font-size: 3rem
    }
}

@media screen and (min-width: 1220px) {
    .services-nav h1 {
        flex-shrink: 0;
        width: 380px
    }
}

.services-nav ul {
    margin: 0
}

@media screen and (min-width: 768px) {
    .services-nav ul {
        display: flex;
        flex-wrap: wrap
    }
}

@media screen and (min-width: 768px) {
    .services-nav ul.alt li {
        width: 50%
    }
}

.services-nav li {
    color: #404048;
    padding: 5px 0
}

@media screen and (min-width: 768px) {
    .services-nav li {
        padding-right: 20px;
        width: calc(33.33% - 20px)
    }
}

.services-nav li:hover {
    color: #009390
}

.services-nav li a {
    color: #404048
}

    .services-nav li a:hover {
        color: #009390
    }

.service-icon {
    height: 45px;
    left: 10px;
    position: absolute;
    top: 10px;
    width: 46px
}

@media screen and (min-width: 1220px) {
    .service-icon {
        height: 90px;
        left: 48px;
        top: 64px;
        width: 92px
    }
}

.cta-block-content {
    padding: 20px 10px
}

@media screen and (min-width: 768px) {
    .cta-block-content {
        padding: 30px
    }
}

@media screen and (min-width: 1220px) {
    .cta-block-content {
        padding: 40px 40px 20px
    }
}

@media screen and (min-width: 768px) {
    .cta-block-content .f-grid > div:first-child {
        width: 45%
    }
}

@media screen and (min-width: 768px) {
    .cta-block-content .f-grid > div:nth-child(2) {
        width: 55%
    }
}

@media screen and (min-width: 768px) {
    .cta-block-content .f-grid > div:nth-child(2) p {
        max-width: 400px
    }
}

.cta-block-content h2 {
    font-size: 1.25rem
}

@media screen and (min-width: 768px) {
    .cta-block-content h2 {
        font-size: 1.875rem
    }
}

.cta-block-content h2 .sub-title {
    font-size: .875rem
}

.cta-block-content h3 {
    font-size: .75rem;
    margin: 0
}

    .cta-block-content h3 + p {
        margin-top: 10px
    }

@media screen and (min-width: 768px) {
    .cta-block-content .cta-contacts {
        margin-bottom: 0
    }
}

.cta-block-content .cta-read-more {
    font-size: .875rem
}

.cta-service-block {
    overflow: hidden
}

    .cta-service-block.overlay:before {
        background-image: linear-gradient(to top, rgba(0,0,0,0.5), transparent);
        bottom: 0;
        content: '';
        height: 100%;
        left: 0;
        position: absolute;
        width: 100%;
        z-index: 1
    }

    .cta-service-block.overlay .cta-block-content {
        z-index: 2
    }

    .cta-service-block .image-holder {
        height: 100%
    }

        .cta-service-block .image-holder .f-lazyload-image {
            height: 100%
        }

    .cta-service-block img:not(.service-icon) {
        left: 50%;
        max-width: none;
        min-height: 100%;
        min-width: 100%;
        position: relative;
        transform: translateX(-50%);
        width: auto
    }

    .cta-service-block .cta-block-content h2 .sub-title {
        color: #5e5d5d
    }

    .cta-service-block .cta-block-content h3 {
        color: #5e5d5d
    }

    .cta-service-block .cta-block-content .cta-contacts {
        color: #404048
    }

        .cta-service-block .cta-block-content .cta-contacts span {
            color: #009390
        }

.bg-primary-light .cta-service-block .cta-block-content h2 .sub-title {
    color: #009390 !important
}

.bg-primary-light .cta-service-block .cta-block-content h3 {
    color: #009390 !important
}

.bg-primary-light .cta-service-block .cta-block-content p.cta-contacts {
    color: #009390 !important
}

.bg-primary-light .cta-service-block .cta-block-content .cta-read-more {
    color: #009390 !important
}

.cta-service-block.alt .cta-block-content {
    bottom: 0;
    left: 0;
    position: absolute;
    width: calc(100% - 40px)
}

@media screen and (min-width: 768px) {
    .cta-service-block.alt .cta-block-content {
        width: calc(100% - 60px)
    }
}

@media screen and (min-width: 1220px) {
    .cta-service-block.alt .cta-block-content {
        width: calc(100% - 80px)
    }
}

.cta-service-block.alt .cta-block-content * {
    color: #fff !important
}

.cover-link {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1
}

.services-grid .f-grid > div:not(:first-child) {
    margin-top: 5px
}

@media screen and (min-width: 768px) {
    .services-grid .f-grid > div:not(:first-child) {
        margin-top: 0
    }
}

.social-wall {
    padding: 30px 0 60px
}

@media screen and (min-width: 960px) {
    .social-wall {
        padding: 38px 0 80px
    }
}

.social-wall h2 {
    font-size: 3rem;
    margin: 0 0 32px;
    padding: 0 15px
}

@media screen and (min-width: 768px) {
    .social-wall h2 {
        padding: 0
    }
}

@media screen and (min-width: 960px) {
    .social-wall h2 {
        margin: 0 0 76px
    }
}

.social-wall .f-btn {
    font-size: 1.125rem;
    height: 77px;
    line-height: 77px;
    margin: 22px 0 0;
    max-width: 350px;
    padding: 0;
    width: 100%
}

@media screen and (min-width: 960px) {
    .social-wall .f-btn {
        margin-top: 77px
    }
}

@media screen and (max-width: 766.99px) {
    .social-grid > * {
        display: none
    }
}

.social-grid > *:first-child, .social-grid > *:nth-child(2), .social-grid > *:nth-child(3) {
    display: flex
}

.social-panel {
    padding: 20px
}

@media screen and (min-width: 960px) {
    .social-panel {
        padding: 20px 24px
    }
}

.social-panel svg {
    fill: #55acee;
    height: 50px;
    width: 38px
}

.social-author {
    margin-left: -20px
}

@media screen and (min-width: 960px) {
    .social-author {
        margin-bottom: 30px;
        margin-left: -24px
    }
}

.social-author p {
    font-size: .875rem;
    color: #2c3e51;
    font-weight: 800
}

    .social-author p span {
        color: #55acee
    }

.social-more {
    font-size: .875rem
}

    .social-more a {
        color: #55acee;
        text-decoration: underline
    }

        .social-more a:hover {
            color: #2795e9
        }

@media screen and (min-width: 1220px) {
    .location-switcher {
        left: 315px;
        position: absolute;
        top: 0;
        width: 220px;
        z-index: 1
    }
}

.location-switcher select:not([multiple]) {
    font-size: 1.125rem;
    background-color: #009390;
    background-image: url(/images/icon-arrow-down-white.svg);
    background-position: right 17px top 50%;
    color: #fff;
    height: auto;
    padding: 16px 17px
}

@media screen and (min-width: 768px) {
    .location-switcher select:not([multiple]) {
        padding: 27px 19px
    }
}

.form-panel {
    padding: 30px 10px 10px
}

@media screen and (min-width: 768px) {
    .form-panel {
        padding: 30px
    }
}

@media screen and (min-width: 1220px) {
    .form-panel {
        padding: 60px 0 0 95px
    }
}

.form-panel.no-map {
    padding: 30px 0
}

@media screen and (min-width: 1220px) {
    .form-panel.no-map {
        padding: 60px 0
    }
}

.form-panel.no-map .inner {
    margin: 0 auto;
    max-width: 830px
}

@media screen and (min-width: 1220px) {
    .form-panel .inner {
        max-width: 65%
    }
}

.form-panel h2 {
    font-size: 1.25rem;
    margin-bottom: 7px
}

@media screen and (min-width: 1220px) {
    .form-panel h2 {
        margin-bottom: 17px
    }
}

.form-panel h2 + p {
    margin-top: 0
}

.form-panel .f-form {
    margin-top: 25px
}

@media screen and (min-width: 1220px) {
    .form-panel .f-form {
        margin-bottom: 27px
    }
}

.form-panel .f-form input[type='text'], .form-panel .f-form input[type='email'], .form-panel .f-form select, .form-panel .f-form textarea {
    font-size: 1.25rem;
    color: #9b9b9b;
    font-weight: 300;
    height: auto;
    padding: 10px 17px;
    
}

.form-panel .f-form input[type='checkbox'] {
    margin-top: 0;
    min-width: 30px
}

.form-panel .f-form select {
    background-image: url(/images/icon-arrow-down.svg);
    background-position: right 17px top 50%
}

.form-panel .f-form textarea {
    height: 100px
}

@media screen and (min-width: 1220px) {
    .form-panel .f-form textarea {
        height: 170px
    }
}

.form-panel .f-form label a {
    text-decoration: underline
}

.form-panel .f-form > div + div {
    margin-top: 17px
}

@media screen and (min-width: 1220px) {
    .form-panel .f-form > div + div {
        margin-top: 30px
    }
}

.form-panel .f-form *[type='submit'] {
    font-size: 1.125rem;
    height: 77px;
    line-height: 77px;
    max-width: 300px;
    padding: 0;
    width: 100%
}

@media screen and (min-width: 1220px) {
    .form-panel .f-form *[type='submit'] {
        margin-top: 18px;
        max-width: 350px
    }
}

@media screen and (min-width: 768px) {
    .contact-us-page .f-grid > div:last-child .f-map {
        margin-left: 2px;
        width: calc(100% - 2px)
    }
}

.map-holder + .map-holder {
    margin-top: 20px
}

@media screen and (min-width: 768px) {
    .map-holder + .map-holder {
        margin-top: 40px
    }
}

@media screen and (min-width: 1220px) {
    .map-holder + .map-holder {
        margin-top: 60px
    }
}

.contact-us + .contact-us {
    padding-top: 20px
}

@media screen and (min-width: 1220px) {
    .contact-us + .contact-us {
        padding-top: 30px
    }
}

.newsletter-section {
    padding: 13px 0
}

@media screen and (min-width: 768px) {
    .newsletter-section {
        padding: 30px 0
    }
}

@media screen and (min-width: 1220px) {
    .newsletter-section {
        padding: 60px 0
    }
}

@media screen and (min-width: 1220px) {
    .newsletter-section .f-container .f-grid > div:first-child {
        width: 39%
    }
}

@media screen and (min-width: 1220px) {
    .newsletter-section .f-container .f-grid > div:nth-child(2) {
        width: 61%
    }
}

.newsletter-section .newsletter-inner {
    line-height: 29px;
    max-width: 410px
}

.newsletter-section h2 {
    font-size: 3rem
}

.newsletter-section .f-form-row {
    margin: 0 0 30px
}

.newsletter-section h4 {
    font-size: .75rem;
    color: #fff !important;
    display: block;
    margin: 0 0 12px
}

.newsletter-section label {
    font-size: .875rem;
    cursor: pointer
}

@media screen and (min-width: 768px) {
    .newsletter-section .checkboxlist {
        display: flex
    }
}

.newsletter-section .checkboxlist > .checkbox-wrap {
    margin: 0 0 10px
}

@media screen and (min-width: 768px) {
    .newsletter-section .checkboxlist > .checkbox-wrap {
        margin: 0 20px 20px 0
    }
}

.newsletter-section .checkboxlist + .field-validation-error {
    margin-top: 0
}

.newsletter-section .f-form-danger, .newsletter-section .errorfeedback, .newsletter-section .field-validation-error {
    clear: both;
    margin: -30px 0 10px
}

.newsletter-section .f-form-row h4 {
    display: none
}

.newsletter-section input[type='checkbox'] {
    background-color: #404048;
    border: 2px solid #94c947;
    height: 20px;
    width: 20px
}

    .newsletter-section input[type='checkbox']:focus {
        background-color: #404048;
        border: 2px solid #94c947
    }

    .newsletter-section input[type='checkbox']:before {
        font-size: .875rem;
        color: #94c947;
        line-height: 16px
    }

    .newsletter-section input[type='checkbox'].f-form-danger, .newsletter-section input[type='checkbox'].f-form-success {
        background-image: none !important;
        padding: 0 !important
    }

    .newsletter-section input[type='checkbox'] + label {
        margin: -4px 0 0 6px
    }

    .newsletter-section input[type='checkbox']::-ms-check {
        background-color: #404048;
        border: 2px solid #94c947;
        color: #94c947
    }

        .newsletter-section input[type='checkbox']::-ms-check:before {
            font-size: .875rem;
            color: #fff
        }

.newsletter-section input[type='email'], .newsletter-section input[type='text'] {
    background: transparent;
    border: 1px solid #fff;
    color: #fff;
    clear: both;
    font-weight: 300;
    height: auto;
    margin: 0;
    padding: 16px
}

    .newsletter-section input[type='email'].f-form-danger, .newsletter-section input[type='text'].f-form-danger {
        color: #000 !important
    }

        .newsletter-section input[type='email'].f-form-danger::-webkit-input-placeholder, .newsletter-section input[type='text'].f-form-danger::-webkit-input-placeholder {
            color: #000
        }

        .newsletter-section input[type='email'].f-form-danger::-moz-placeholder, .newsletter-section input[type='text'].f-form-danger::-moz-placeholder {
            color: #000
        }

        .newsletter-section input[type='email'].f-form-danger:-ms-input-placeholder, .newsletter-section input[type='text'].f-form-danger:-ms-input-placeholder {
            color: #000 !important
        }

        .newsletter-section input[type='email'].f-form-danger:-moz-placeholder, .newsletter-section input[type='text'].f-form-danger:-moz-placeholder {
            color: #000
        }

    .newsletter-section input[type='email']:focus, .newsletter-section input[type='text']:focus {
        background: transparent;
        border-color: #94c947;
        color: #fff
    }

@media screen and (min-width: 1220px) {
    .newsletter-section input[type='email'], .newsletter-section input[type='text'] {
        font-size: 1.25rem;
        padding: 15px 30px
    }
}

.newsletter-section input::-webkit-input-placeholder {
    color: #fff
}

.newsletter-section input::-moz-placeholder {
    color: #fff
}

.newsletter-section input:-ms-input-placeholder {
    color: #fff !important
}

.newsletter-section input:-moz-placeholder {
    color: #fff
}

.newsletter-section *[type='submit'] {
    font-size: 1.125rem;
    flex-shrink: 0;
    height: 77px;
    line-height: 77px;
    max-width: 350px;
    padding: 0;
    width: 100%
}

@supports (-ms-ime-align: auto) {
    .newsletter-section input[type='checkbox'] {
        border: 0 !important
    }

        .newsletter-section input[type='checkbox']:focus, .newsletter-section input[type='checkbox']:active {
            border: 0 !important
        }
}

.newsletter-section.with-contact-form {
    padding-bottom: 20px
}

@media screen and (min-width: 768px) {
    .newsletter-section.with-contact-form {
        padding-bottom: 30px;
        padding-left: 20px;
        padding-right: 20px
    }
}

@media screen and (min-width: 1220px) {
    .newsletter-section.with-contact-form {
        padding-bottom: 45px;
        padding-top: 60px
    }
}

.newsletter-section.with-contact-form .newsletter-inner {
    margin: 0 0 20px;
    max-width: none
}

.newsletter-section.with-contact-form .form-panel {
    padding: 0
}

    .newsletter-section.with-contact-form .form-panel input[type='text'], .newsletter-section.with-contact-form .form-panel select, .newsletter-section.with-contact-form .form-panel textarea {
        background: transparent;
        border-color: #fff;
        color: #fff
    }

        .newsletter-section.with-contact-form .form-panel input[type='text']::-webkit-input-placeholder, .newsletter-section.with-contact-form .form-panel select::-webkit-input-placeholder, .newsletter-section.with-contact-form .form-panel textarea::-webkit-input-placeholder {
            color: #fff
        }

        .newsletter-section.with-contact-form .form-panel input[type='text']::-moz-placeholder, .newsletter-section.with-contact-form .form-panel select::-moz-placeholder, .newsletter-section.with-contact-form .form-panel textarea::-moz-placeholder {
            color: #fff
        }

        .newsletter-section.with-contact-form .form-panel input[type='text']:-ms-input-placeholder, .newsletter-section.with-contact-form .form-panel select:-ms-input-placeholder, .newsletter-section.with-contact-form .form-panel textarea:-ms-input-placeholder {
            color: #fff !important
        }

        .newsletter-section.with-contact-form .form-panel input[type='text']:-moz-placeholder, .newsletter-section.with-contact-form .form-panel select:-moz-placeholder, .newsletter-section.with-contact-form .form-panel textarea:-moz-placeholder {
            color: #fff
        }

        .newsletter-section.with-contact-form .form-panel input[type='text']:focus, .newsletter-section.with-contact-form .form-panel select:focus, .newsletter-section.with-contact-form .form-panel textarea:focus {
            border-color: #94c947
        }

        .newsletter-section.with-contact-form .form-panel input[type='text'] option, .newsletter-section.with-contact-form .form-panel select option, .newsletter-section.with-contact-form .form-panel textarea option {
            color: #5e5d5d
        }

@media screen and (min-width: 768px) {
    .newsletter-section.with-contact-form .f-container .f-grid > div:first-child {
        width: 50%
    }
}

@media screen and (min-width: 768px) {
    .newsletter-section.with-contact-form .f-container .f-grid > div:nth-child(2) {
        width: 50%
    }
}

.newsletter-section legend:after {
    display: none
}

@media screen and (min-width: 1220px) {
    .newsletter-section legend + h4 {
        float: left;
        margin-right: 40px
    }
}

@media screen and (min-width: 1220px) {
    .newsletter-section legend + h4 + .checkboxlist {
        float: left
    }
}

.interested {
    font-size: .75rem;
    display: block;
    margin: 0 0 12px
}

@media screen and (min-width: 1220px) {
    .interested {
        margin: 0 40px 0 0
    }
}

.checkbox-wrap {
    display: flex
}

@media screen and (min-width: 1220px) {
    .checkbox-wrap {
        margin: 0 0 20px
    }
}

.checkboxes {
    margin: 0 0 20px
}

@media screen and (min-width: 960px) {
    .checkboxes {
        align-items: center;
        display: flex
    }
}

@media screen and (min-width: 1220px) {
    .checkboxes {
        margin: 0
    }
}

.checkboxes > div:nth-of-type(2) {
    margin-top: 13px
}

@media screen and (min-width: 960px) {
    .checkboxes > div:nth-of-type(2) {
        margin: 0 0 0 40px
    }
}

.newsletter-consent-wrap {
    position: relative
}

@media screen and (min-width: 1220px) {
    .newsletter-consent-wrap {
        align-items: center;
        display: flex;
        margin-top: 20px
    }
}

.newsletter-consent-wrap .field-validation-error {
    bottom: -52px;
    position: absolute;
    right: 0;
    top: auto
}

    .newsletter-consent-wrap .field-validation-error:after {
        display: none
    }

.newsletter-consent {
    font-size: .75rem
}

@media screen and (min-width: 1220px) {
    .newsletter-consent {
        margin-right: 27px;
        text-align: right
    }
}

.newsletter-consent p {
    margin-bottom: 27px
}

@media screen and (min-width: 1220px) {
    .newsletter-consent p {
        margin-bottom: 12px
    }
}

.newsletter-consent a {
    color: #94c947
}

    .newsletter-consent a:hover, .newsletter-consent a:focus {
        text-decoration: underline
    }

.newsletter-consent span.f-form-danger {
    display: none !important
}

.main-content {
    padding: 20px 0
}

@media screen and (min-width: 768px) {
    .main-content {
        padding: 30px 0
    }
}

@media screen and (min-width: 960px) {
    .main-content {
        padding: 37px 0 40px
    }
}

.main-content h1, .main-content h2, .main-content h3, .main-content h4, .main-content h5, .main-content h6, .main-content ul, .main-content p {
    max-width: 880px
}

.main-content h2 {
    font-size: 1.25rem;
    color: #009390
}

@media screen and (min-width: 768px) {
    .main-content h2 {
        font-size: 1.875rem
    }
}

.main-content h3 {
    font-size: 1.25rem;
    font-weight: 800
}

@media screen and (min-width: 1220px) {
    .main-content h3 {
        font-size: 1.5rem
    }
}

@media screen and (min-width: 1220px) {
    .main-content p {
        font-size: 1.25rem
    }
}

@media screen and (min-width: 1220px) {
    .main-content * + p {
        margin-top: 40px
    }
}

.main-content img[style='float: left;'] {
    display: block;
    margin: 0 0 20px;
    max-width: 160px
}

@media screen and (min-width: 960px) {
    .main-content img[style='float: left;'] {
        margin: 0 20px 20px 0;
        max-width: none
    }
}

.main-content img[style='float: right;'] {
    display: block;
    margin: 0 0 20px;
    max-width: 160px
}

@media screen and (min-width: 960px) {
    .main-content img[style='float: right;'] {
        margin: 0 0 20px 20px;
        max-width: none
    }
}

.main-content__body > p:first-of-type {
    color: #009390
}

.main-content__body .entry-content > p:first-of-type {
    color: #009390
}

.service-intro-details h2 {
    font-size: 1.25rem;
    margin: 0 0 20px
}

@media screen and (min-width: 768px) {
    .service-intro-details h2 {
        font-size: 1.875rem
    }
}

.service-intro-details h2 .sub-title {
    font-size: .875rem;
    margin: 0 0 5px
}

@media screen and (min-width: 768px) {
    .service-intro-details h2 .sub-title {
        margin: 0 0 15px
    }
}

.service-intro-details h3 {
    font-size: .75rem;
    font-weight: 400;
    margin: 0 0 10px
}

    .service-intro-details h3 + p {
        line-height: 1.8;
        margin-top: 0
    }

@media screen and (min-width: 1220px) {
    .service-intro-details h3:first-child {
        margin-top: 35px
    }
}

.service-intro-details p {
    font-size: 1rem
}

.service-intro h2 {
    max-width: 550px
}

@media screen and (min-width: 768px) {
    .service-intro h2 {
        margin-bottom: 30px
    }
}

@media screen and (min-width: 1220px) {
    .service-intro h2 {
        margin-bottom: 94px;
        margin-top: 35px
    }
}

.sidebar.sidebar-news {
    margin-top: 10px
}

.sidebar h2 {
    font-size: .875rem;
    margin: 0
}

@media screen and (min-width: 768px) {
    .sidebar h2 {
        margin-top: 45px
    }
}

@media screen and (min-width: 1220px) {
    .sidebar h2 {
        margin-top: 35px
    }
}

.side-list {
    margin-top: 10px
}

    .side-list.news-list {
        max-width: 500px
    }

    .side-list a {
        color: #404048;
        display: block;
        padding: 5px 30px 5px 0
    }

@media screen and (min-width: 1220px) {
    .side-list a {
        font-size: 1.125rem
    }
}

.side-list a:hover {
    color: #009390
}

    .side-list a:hover:after {
        transform: translateX(5px)
    }

.side-list a:after {
    background-image: url(/images/icon-arrow.svg);
    background-size: 20px;
    content: '';
    display: block;
    height: 15px;
    position: absolute;
    right: 0;
    top: 10px;
    transition: transform .3s linear;
    width: 20px
}

@media screen and (min-width: 1220px) {
    .side-list a:after {
        top: 12px
    }
}

.featured-img img {
    margin: 0 0 20px
}

@media screen and (min-width: 768px) {
    .featured-img img {
        margin: 0 0 40px
    }
}

@media screen and (min-width: 1220px) {
    .featured-img img {
        margin: 0 0 60px
    }
}

.featured-img .img-caption h3 {
    font-size: 1rem
}

@media screen and (min-width: 1220px) {
    .featured-img .img-caption h3 {
        font-size: 1.25rem
    }
}

.featured-img .img-caption p {
    font-size: 1rem;
    line-height: 1.8;
    margin-top: 10px
}

    .featured-img .img-caption p.img-date {
        margin: -15px 0 0
    }

@media screen and (min-width: 1220px) {
    .featured-img .img-caption p.img-date {
        font-size: 1.25rem;
        margin-bottom: 25px
    }
}

.featured-img .img-caption p:last-child {
    margin-bottom: 0
}

@media screen and (min-width: 1220px) {
    .main-content.news-content {
        padding-bottom: 60px
    }
}

.main-content.news-content .service-intro-details h2 {
    margin-bottom: 10px
}

    .main-content.news-content .service-intro-details h2 .sub-title {
        margin-bottom: 3px
    }

@media screen and (min-width: 1220px) {
    .main-content.news-content .service-intro h2 {
        margin-top: 23px
    }
}

.main-content.news-content .featured-img img {
    margin-bottom: 20px
}

@media screen and (min-width: 768px) {
    .main-content.news-content .featured-img img {
        margin-bottom: 40px
    }
}

@media screen and (min-width: 960px) {
    .main-content.news-content .featured-img img {
        margin-bottom: 63px
    }
}

.main-content.news-content .featured-img .img-caption {
    margin-bottom: 40px
}

@media screen and (min-width: 768px) {
    .main-content.news-content .aside {
        width: 410px
    }
}

@media screen and (min-width: 960px) {
    .main-content.news-content .aside {
        width: 220px
    }
}

@media screen and (min-width: 1600px) {
    .main-content.news-content .aside {
        width: 410px
    }
}

.main-content.news-content .aside p {
    font-size: 1rem
}

    .main-content.news-content .aside p.date {
        font-size: 1.125rem;
        font-weight: 300;
        margin-top: -15px
    }

@media screen and (min-width: 1600px) {
    .main-content.news-content .aside p.date {
        font-size: 1.25rem
    }
}

.main-content.news-content .aside * + p {
    margin-top: 20px;
    max-width: 300px
}

.next-article {
    font-size: 1.125rem;
    color: #5e5d5d
}

@media screen and (min-width: 1220px) {
    .next-article {
        font-size: 1.25rem
    }
}

.next-article svg {
    margin-left: 40px
}

.next-article path {
    fill: #5e5d5d
}

.next-article:hover {
    color: #009390
}

    .next-article:hover path {
        fill: #009390
    }

.filter-grid {
    max-width: 420px
}

.cta-content {
    padding: 20px
}

@media screen and (min-width: 768px) {
    .cta-content {
        padding: 30px
    }
}

@media screen and (min-width: 1220px) {
    .cta-content {
        padding: 32px 44px 44px
    }
}

.cta-content h2 {
    font-size: 1.25rem
}

@media screen and (min-width: 768px) {
    .cta-content h2 {
        font-size: 1.875rem;
        margin-bottom: 17px
    }
}

.cta-content .sub-title {
    font-size: .875rem
}

@media screen and (min-width: 768px) {
    .cta-content .sub-title {
        margin-bottom: 3px
    }
}

.cta-content ul {
    font-size: .75rem;
    margin-top: -10px
}

.cta-content p {
    font-size: .75rem;
    max-width: 530px
}

    .cta-content p.base-font-size {
        font-size: 1rem
    }

.cta-alt .cta-content {
    bottom: 0;
    left: 0;
    position: absolute;
    width: calc(100% - 40px)
}

@media screen and (min-width: 768px) {
    .cta-alt .cta-content {
        width: calc(100% - 60px)
    }
}

@media screen and (min-width: 1220px) {
    .cta-alt .cta-content {
        bottom: 5%;
        width: calc(100% - 88px)
    }
}

.cta-alt .cta-content h3 {
    font-size: .75rem;
    margin-bottom: 10px
}

    .cta-alt .cta-content h3 + p {
        margin-top: 0
    }

.cta-alt .cta-content p:last-child {
    margin-bottom: 0
}

.load-more-container {
    padding: 20px
}

@media screen and (min-width: 768px) {
    .load-more-container {
        padding: 30px
    }
}

@media screen and (min-width: 1220px) {
    .load-more-container {
        padding: 100px 0
    }
}

.load-more {
    font-size: 1.125rem;
    height: 77px;
    line-height: 77px;
    max-width: 350px;
    padding: 0;
    width: 100%
}

@media screen and (min-width: 960px) {
    .columns {
        align-items: center;
        display: flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1600px) {
    .columns {
        padding-right: 80px
    }
}

@media screen and (min-width: 1600px) {
    .columns > * {
        width: 50%
    }
}

.columns p {
    font-size: 1rem
}

    .columns p:last-child {
        margin-bottom: 0
    }

.columns .cta-tel {
    margin-bottom: 0
}

    .columns .cta-tel + .cta-email {
        margin-top: 5px
    }

.columns .f-btn {
    font-size: 1.125rem;
    height: 77px;
    line-height: 77px;
    margin-top: 20px;
    max-width: 350px;
    padding: 0;
    width: 100%
}

@media screen and (min-width: 1600px) {
    .columns .f-btn {
        margin-top: 0
    }
}

.team-grid > div > div:hover .team-hover-img {
    display: block
}

.team-hover-img {
    display: none;
    left: 0;
    position: absolute;
    top: 0
}

@media screen and (min-width: 960px) {
    .form-page h1 {
        font-size: 2rem;
        margin: 0 0 45px
    }
}

.form-page .form-panel {
    max-width: 520px;
    padding: 0
}

    .form-page .form-panel .f-form-row {
        margin: 0 0 30px
    }

    .form-page .form-panel .required {
        font-size: 1rem;
        color: #9b9b9b
    }

@media screen and (min-width: 960px) {
    .form-page .form-panel .required {
        margin-bottom: 30px
    }
}

.form-page .form-panel legend {
    color: #009390;
    font-weight: 700
}

    .form-page .form-panel legend:after {
        display: none
    }

.form-page .form-panel label {
    cursor: pointer
}

.form-page .form-panel .checkbox-wrap {
    margin: 0 0 30px
}

    .form-page .form-panel .checkbox-wrap + h4 {
        margin-top: 60px
    }

.form-page .form-panel input[type='checkbox'], .form-page .form-panel textarea[type='checkbox'] {
    border: 2px solid #cecece;
    height: 30px;
    margin: 0 10px 0 0;
    width: 30px
}

    .form-page .form-panel input[type='checkbox'] + label, .form-page .form-panel input[type='checkbox'] + input + label, .form-page .form-panel textarea[type='checkbox'] + label, .form-page .form-panel textarea[type='checkbox'] + input + label {
        font-size: 1.125rem;
        color: #9b9b9b
    }

    .form-page .form-panel input[type='checkbox']:before, .form-page .form-panel textarea[type='checkbox']:before {
        line-height: 1.5
    }

.form-page span.f-form-danger, .form-page .f-form .errorfeedback, .form-page .f-form .field-validation-error {
    margin: -30px 0 10px
}

.form-umbraco .f-form .f-form-row {
    margin: 0 0 30px
}

.form-umbraco .f-form legend:after {
    display: none
}

.form-umbraco .f-form h4 {
    display: none
}

.form-umbraco .f-form input[type='checkbox'] {
    border: 2px solid #cecece;
    height: 30px;
    margin: 0 10px 0 0;
    width: 30px
}

    .form-umbraco .f-form input[type='checkbox'] + label, .form-umbraco .f-form input[type='checkbox'] + input + label {
        font-size: 1.125rem;
        color: #9b9b9b
    }

.form-umbraco .f-form select {
    width: 100%
}

.form-umbraco span.f-form-danger, .form-umbraco .f-form .errorfeedback, .form-umbraco .f-form .field-validation-error {
    margin: -30px 0 10px
}

.testimonials {
    overflow: hidden;
    padding: 40px 0 20px
}

@media screen and (min-width: 768px) {
    .testimonials {
        padding: 30px 0
    }
}

@media screen and (min-width: 768px) {
    .testimonials {
        padding: 60px 0
    }
}

.testimonials .f-container {
    z-index: 1
}

.testimonials .f-slider-container {
    width: auto
}

.testimonials .f-slidenav-position {
    max-width: 780px
}

@media screen and (min-width: 768px) {
    .testimonials .f-slidenav-position {
        padding: 0 80px
    }
}

@media screen and (min-width: 1600px) {
    .testimonials .f-slidenav-position {
        padding: 0 0 0 160px;
        transform: translateX(-160px);
        max-width: 900px
    }
}

.testimonials .f-slidenav-position .f-slidenav-contrast:hover path, .testimonials .f-slidenav-position .f-slidenav-contrast:focus path {
    fill: #fff
}

@media screen and (min-width: 768px) {
    .testimonials .f-dotnav > * > * {
        height: 10px;
        width: 10px
    }
}

.swirl {
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: auto
}

.testimonial-quotes {
    margin-bottom: 30px
}

.testimonial {
    font-size: 1.125rem;
    color: #bce9d5;
    max-width: 756px
}

.testimonial-author {
    font-size: .875rem;
    margin: 40px 0
}

.testimonial-author-name {
    font-size: 1.125rem;
    color: #fff
}

@media print {
    *, *:before, *:after {
        background: transparent !important;
        box-shadow: none !important;
        color: #000 !important;
        text-shadow: none !important
    }

    a, a:visited {
        text-decoration: underline
    }

    pre, blockquote {
        border: 1px solid #999;
        page-break-inside: avoid
    }

    thead {
        display: table-header-group
    }

    tr, img {
        page-break-inside: avoid
    }

    img {
        max-width: 100% !important
    }

    @page {
        margin: .5cm
    }

    p, h2, h3 {
        orphans: 3;
        widows: 3
    }

    h2, h3 {
        page-break-after: avoid
    }
}
.umbraco-forms-hidden {
    display: none;
}