@import '../assets/fontawesome-pro-5.10.2-web/css/all.min.css';

.border-all,
.border-top,
.border-top-bottom,
.border-bottom,
.border-left,
.border-right {
    border-color: #263a50;
    border-style: dotted;
    border-width: 1px;
    -moz-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -webkit-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -o-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
}

    .border-all.border-solid,
    .border-top.border-solid,
    .border-top-bottom.border-solid,
    .border-bottom.border-solid,
    .border-left.border-solid,
    .border-right.border-solid {
        border-style: solid;
        -moz-border-image: none;
        -webkit-border-image: none;
        -o-border-image: none;
        border-image: none;
    }

        .border-all.border-solid.border-white,
        .border-top.border-solid.border-white,
        .border-top-bottom.border-solid.border-white,
        .border-bottom.border-solid.border-white,
        .border-left.border-solid.border-white,
        .border-right.border-solid.border-white {
            border-color: #fff;
        }

        .border-all.border-solid.border-alt,
        .border-top.border-solid.border-alt,
        .border-top-bottom.border-solid.border-alt,
        .border-bottom.border-solid.border-alt,
        .border-left.border-solid.border-alt,
        .border-right.border-solid.border-alt {
            border-color: #9bc0e0;
        }

    .border-all.border-white,
    .border-top.border-white,
    .border-top-bottom.border-white,
    .border-bottom.border-white,
    .border-left.border-white,
    .border-right.border-white {
        -moz-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -webkit-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -o-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
    }

.border-top {
    border-color: #263a50;
    border-style: dotted;
    border-width: 1px;
    -moz-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -webkit-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -o-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-width: 1px 0 0 0;
    padding-top: 0.625rem;
}

    .border-top.border-solid {
        border-style: solid;
        -moz-border-image: none;
        -webkit-border-image: none;
        -o-border-image: none;
        border-image: none;
    }

        .border-top.border-solid.border-white {
            border-color: #fff;
        }

        .border-top.border-solid.border-alt {
            border-color: #9bc0e0;
        }

    .border-top.border-white {
        -moz-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -webkit-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -o-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
    }

    .border-top.border-thick {
        border-width: 4px 0 0 0;
    }

.border-bottom {
    border-color: #263a50;
    border-style: dotted;
    border-width: 1px;
    -moz-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -webkit-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -o-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-width: 0 0 1px 0;
    margin-bottom: 0.78125rem;
    padding-bottom: 0.78125rem;
}

    .border-bottom.border-solid {
        border-style: solid;
        -moz-border-image: none;
        -webkit-border-image: none;
        -o-border-image: none;
        border-image: none;
    }

        .border-bottom.border-solid.border-white {
            border-color: #fff;
        }

        .border-bottom.border-solid.border-alt {
            border-color: #9bc0e0;
        }

    .border-bottom.border-white {
        -moz-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -webkit-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -o-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
    }

    .border-bottom.border-thick {
        border-width: 0 0 4px 0;
    }

.border-left {
    border-color: #263a50;
    border-style: dotted;
    border-width: 1px;
    -moz-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -webkit-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -o-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-width: 0 0 0 1px;
    padding-left: 0.625rem;
}

    .border-left.border-solid {
        border-style: solid;
        -moz-border-image: none;
        -webkit-border-image: none;
        -o-border-image: none;
        border-image: none;
    }

        .border-left.border-solid.border-white {
            border-color: #fff;
        }

        .border-left.border-solid.border-alt {
            border-color: #9bc0e0;
        }

    .border-left.border-white {
        -moz-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -webkit-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -o-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
    }

    .border-left.border-thick {
        border-width: 0 0 0 4px;
    }

.border-right {
    border-color: #263a50;
    border-style: dotted;
    border-width: 1px;
    -moz-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -webkit-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -o-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-width: 0 0 1px 0;
    padding-right: 0.625rem;
}

    .border-right.border-solid {
        border-style: solid;
        -moz-border-image: none;
        -webkit-border-image: none;
        -o-border-image: none;
        border-image: none;
    }

        .border-right.border-solid.border-white {
            border-color: #fff;
        }

        .border-right.border-solid.border-alt {
            border-color: #9bc0e0;
        }

    .border-right.border-white {
        -moz-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -webkit-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -o-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
    }

    .border-right.border-thick {
        border-width: 0 0 4px 0;
    }

.border-top-bottom {
    border-color: #263a50;
    border-style: dotted;
    border-width: 1px;
    -moz-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -webkit-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    -o-border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-image: url('../img/border-dot.png') 1 1 1 1 repeat;
    border-width: 1px 0 1px 0;
}

    .border-top-bottom.border-solid {
        border-style: solid;
        -moz-border-image: none;
        -webkit-border-image: none;
        -o-border-image: none;
        border-image: none;
    }

        .border-top-bottom.border-solid.border-white {
            border-color: #fff;
        }

        .border-top-bottom.border-solid.border-alt {
            border-color: #9bc0e0;
        }

    .border-top-bottom.border-white {
        -moz-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -webkit-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        -o-border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
        border-image: url('../img/border-dot-white.png') 1 1 1 1 repeat;
    }

    .border-top-bottom.border-thick {
        border-width: 4px 0 4px 0;
    }

@font-face {
    font-family: 'FontAwesome';
    font-style: normal;
    font-weight: 900;
    src: url("../assets/fontawesome-pro-5.0.9/webfonts/fa-solid-900.eot");
    src: url("../assets/fontawesome-pro-5.0.9/webfonts/fa-solid-900-1.eot") format("embedded-opentype"), url("../assets/fontawesome-pro-5.0.9/webfonts/fa-solid-900.woff2") format("woff2"), url("../assets/fontawesome-pro-5.0.9/webfonts/fa-solid-900.woff") format("woff"), url("../assets/fontawesome-pro-5.0.9/webfonts/fa-solid-900.ttf") format("truetype"), url("../assets/fontawesome-pro-5.0.9/webfonts/fa-solid-900.svg") format("svg");
}

@-webkit-keyframes flash {
    0%, 50%, 100% {
        opacity: 1;
    }

    25%, 75% {
        opacity: 0;
    }
}

@-moz-keyframes flash {
    0%, 50%, 100% {
        opacity: 1;
    }

    25%, 75% {
        opacity: 0;
    }
}

@-o-keyframes flash {
    0%, 50%, 100% {
        opacity: 1;
    }

    25%, 75% {
        opacity: 0;
    }
}

@keyframes flash {
    0%, 50%, 100% {
        opacity: 1;
    }

    25%, 75% {
        opacity: 0;
    }
}

@-webkit-keyframes shake {
    0%, 100% {
        -webkit-transform: translateX(0);
    }

    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translateX(-10px);
    }

    20%, 40%, 60%, 80% {
        -webkit-transform: translateX(10px);
    }
}

@-moz-keyframes shake {
    0%, 100% {
        -moz-transform: translateX(0);
    }

    10%, 30%, 50%, 70%, 90% {
        -moz-transform: translateX(-10px);
    }

    20%, 40%, 60%, 80% {
        -moz-transform: translateX(10px);
    }
}

@-o-keyframes shake {
    0%, 100% {
        -o-transform: translateX(0);
    }

    10%, 30%, 50%, 70%, 90% {
        -o-transform: translateX(-10px);
    }

    20%, 40%, 60%, 80% {
        -o-transform: translateX(10px);
    }
}

@keyframes shake {
    0%, 100% {
        transform: translateX(0);
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translateX(-10px);
    }

    20%, 40%, 60%, 80% {
        transform: translateX(10px);
    }
}

@-webkit-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -webkit-transform: translateY(0);
    }

    40% {
        -webkit-transform: translateY(-30px);
    }

    60% {
        -webkit-transform: translateY(-15px);
    }
}

@-moz-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -moz-transform: translateY(0);
    }

    40% {
        -moz-transform: translateY(-30px);
    }

    60% {
        -moz-transform: translateY(-15px);
    }
}

@-o-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -o-transform: translateY(0);
    }

    40% {
        -o-transform: translateY(-30px);
    }

    60% {
        -o-transform: translateY(-15px);
    }
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }

    40% {
        transform: translateY(-30px);
    }

    60% {
        transform: translateY(-15px);
    }
}

@-webkit-keyframes shortBounce {
    0%, 20%, 50%, 80%, 100% {
        -webkit-transform: translateY(0);
    }

    40% {
        -webkit-transform: translateY(-10px);
    }

    60% {
        -webkit-transform: translateY(-2px);
    }
}

@-moz-keyframes shortBounce {
    0%, 20%, 50%, 80%, 100% {
        -moz-transform: translateY(0);
    }

    40% {
        -moz-transform: translateY(-10px);
    }

    60% {
        -moz-transform: translateY(-2px);
    }
}

@-o-keyframes shortBounce {
    0%, 20%, 50%, 80%, 100% {
        -o-transform: translateY(0);
    }

    40% {
        -o-transform: translateY(-10px);
    }

    60% {
        -o-transform: translateY(-2px);
    }
}

@keyframes shortBounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }

    40% {
        transform: translateY(-10px);
    }

    60% {
        transform: translateY(-2px);
    }
}

@-webkit-keyframes tada {
    0% {
        -webkit-transform: scale(1);
    }

    10%, 20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
    }

    30%, 50%, 70%, 90% {
        -webkit-transform: scale(1.1) rotate(3deg);
    }

    40%, 60%, 80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
    }

    100% {
        -webkit-transform: scale(1) rotate(0);
    }
}

@-moz-keyframes tada {
    0% {
        -moz-transform: scale(1);
    }

    10%, 20% {
        -moz-transform: scale(0.9) rotate(-3deg);
    }

    30%, 50%, 70%, 90% {
        -moz-transform: scale(1.1) rotate(3deg);
    }

    40%, 60%, 80% {
        -moz-transform: scale(1.1) rotate(-3deg);
    }

    100% {
        -moz-transform: scale(1) rotate(0);
    }
}

@-o-keyframes tada {
    0% {
        -o-transform: scale(1);
    }

    10%, 20% {
        -o-transform: scale(0.9) rotate(-3deg);
    }

    30%, 50%, 70%, 90% {
        -o-transform: scale(1.1) rotate(3deg);
    }

    40%, 60%, 80% {
        -o-transform: scale(1.1) rotate(-3deg);
    }

    100% {
        -o-transform: scale(1) rotate(0);
    }
}

@keyframes tada {
    0% {
        transform: scale(1);
    }

    10%, 20% {
        transform: scale(0.9) rotate(-3deg);
    }

    30%, 50%, 70%, 90% {
        transform: scale(1.1) rotate(3deg);
    }

    40%, 60%, 80% {
        transform: scale(1.1) rotate(-3deg);
    }

    100% {
        transform: scale(1) rotate(0);
    }
}

@-webkit-keyframes swing {
    20%, 40%, 60%, 80%, 100% {
        -webkit-transform-origin: top center;
    }

    20% {
        -webkit-transform: rotate(15deg);
    }

    40% {
        -webkit-transform: rotate(-10deg);
    }

    60% {
        -webkit-transform: rotate(5deg);
    }

    80% {
        -webkit-transform: rotate(-5deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
    }
}

@-moz-keyframes swing {
    20% {
        -moz-transform: rotate(15deg);
    }

    40% {
        -moz-transform: rotate(-10deg);
    }

    60% {
        -moz-transform: rotate(5deg);
    }

    80% {
        -moz-transform: rotate(-5deg);
    }

    100% {
        -moz-transform: rotate(0deg);
    }
}

@-o-keyframes swing {
    20% {
        -o-transform: rotate(15deg);
    }

    40% {
        -o-transform: rotate(-10deg);
    }

    60% {
        -o-transform: rotate(5deg);
    }

    80% {
        -o-transform: rotate(-5deg);
    }

    100% {
        -o-transform: rotate(0deg);
    }
}

@keyframes swing {
    20% {
        transform: rotate(15deg);
    }

    40% {
        transform: rotate(-10deg);
    }

    60% {
        transform: rotate(5deg);
    }

    80% {
        transform: rotate(-5deg);
    }

    100% {
        transform: rotate(0deg);
    }
}

@-webkit-keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
    }

    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
    }

    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
    }

    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
    }

    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
    }

    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
    }

    100% {
        -webkit-transform: translateX(0%);
    }
}

@-moz-keyframes wobble {
    0% {
        -moz-transform: translateX(0%);
    }

    15% {
        -moz-transform: translateX(-25%) rotate(-5deg);
    }

    30% {
        -moz-transform: translateX(20%) rotate(3deg);
    }

    45% {
        -moz-transform: translateX(-15%) rotate(-3deg);
    }

    60% {
        -moz-transform: translateX(10%) rotate(2deg);
    }

    75% {
        -moz-transform: translateX(-5%) rotate(-1deg);
    }

    100% {
        -moz-transform: translateX(0%);
    }
}

@-o-keyframes wobble {
    0% {
        -o-transform: translateX(0%);
    }

    15% {
        -o-transform: translateX(-25%) rotate(-5deg);
    }

    30% {
        -o-transform: translateX(20%) rotate(3deg);
    }

    45% {
        -o-transform: translateX(-15%) rotate(-3deg);
    }

    60% {
        -o-transform: translateX(10%) rotate(2deg);
    }

    75% {
        -o-transform: translateX(-5%) rotate(-1deg);
    }

    100% {
        -o-transform: translateX(0%);
    }
}

@keyframes wobble {
    0% {
        transform: translateX(0%);
    }

    15% {
        transform: translateX(-25%) rotate(-5deg);
    }

    30% {
        transform: translateX(20%) rotate(3deg);
    }

    45% {
        transform: translateX(-15%) rotate(-3deg);
    }

    60% {
        transform: translateX(10%) rotate(2deg);
    }

    75% {
        transform: translateX(-5%) rotate(-1deg);
    }

    100% {
        transform: translateX(0%);
    }
}

@-webkit-keyframes wiggle {
    0% {
        -webkit-transform: skewX(9deg);
    }

    10% {
        -webkit-transform: skewX(-8deg);
    }

    20% {
        -webkit-transform: skewX(7deg);
    }

    30% {
        -webkit-transform: skewX(-6deg);
    }

    40% {
        -webkit-transform: skewX(5deg);
    }

    50% {
        -webkit-transform: skewX(-4deg);
    }

    60% {
        -webkit-transform: skewX(3deg);
    }

    70% {
        -webkit-transform: skewX(-2deg);
    }

    80% {
        -webkit-transform: skewX(1deg);
    }

    90% {
        -webkit-transform: skewX(0deg);
    }

    100% {
        -webkit-transform: skewX(0deg);
    }
}

@-moz-keyframes wiggle {
    0% {
        -moz-transform: skewX(9deg);
    }

    10% {
        -moz-transform: skewX(-8deg);
    }

    20% {
        -moz-transform: skewX(7deg);
    }

    30% {
        -moz-transform: skewX(-6deg);
    }

    40% {
        -moz-transform: skewX(5deg);
    }

    50% {
        -moz-transform: skewX(-4deg);
    }

    60% {
        -moz-transform: skewX(3deg);
    }

    70% {
        -moz-transform: skewX(-2deg);
    }

    80% {
        -moz-transform: skewX(1deg);
    }

    90% {
        -moz-transform: skewX(0deg);
    }

    100% {
        -moz-transform: skewX(0deg);
    }
}

@-o-keyframes wiggle {
    0% {
        -o-transform: skewX(9deg);
    }

    10% {
        -o-transform: skewX(-8deg);
    }

    20% {
        -o-transform: skewX(7deg);
    }

    30% {
        -o-transform: skewX(-6deg);
    }

    40% {
        -o-transform: skewX(5deg);
    }

    50% {
        -o-transform: skewX(-4deg);
    }

    60% {
        -o-transform: skewX(3deg);
    }

    70% {
        -o-transform: skewX(-2deg);
    }

    80% {
        -o-transform: skewX(1deg);
    }

    90% {
        -o-transform: skewX(0deg);
    }

    100% {
        -o-transform: skewX(0deg);
    }
}

@keyframes wiggle {
    0% {
        transform: skewX(9deg);
    }

    10% {
        transform: skewX(-8deg);
    }

    20% {
        transform: skewX(7deg);
    }

    30% {
        transform: skewX(-6deg);
    }

    40% {
        transform: skewX(5deg);
    }

    50% {
        transform: skewX(-4deg);
    }

    60% {
        transform: skewX(3deg);
    }

    70% {
        transform: skewX(-2deg);
    }

    80% {
        transform: skewX(1deg);
    }

    90% {
        transform: skewX(0deg);
    }

    100% {
        transform: skewX(0deg);
    }
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.1);
    }

    100% {
        -webkit-transform: scale(1);
    }
}

@-moz-keyframes pulse {
    0% {
        -moz-transform: scale(1);
    }

    50% {
        -moz-transform: scale(1.1);
    }

    100% {
        -moz-transform: scale(1);
    }
}

@-o-keyframes pulse {
    0% {
        -o-transform: scale(1);
    }

    50% {
        -o-transform: scale(1.1);
    }

    100% {
        -o-transform: scale(1);
    }
}

@keyframes pulse {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.1);
    }

    100% {
        transform: scale(1);
    }
}

@-webkit-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        -webkit-animation-timing-function: ease-out;
    }

    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -webkit-animation-timing-function: ease-out;
    }

    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
    }

    80% {
        -webkit-transform: perspective(400px) rotateY(360deg) scale(.95);
        -webkit-animation-timing-function: ease-in;
    }

    100% {
        -webkit-transform: perspective(400px) scale(1);
        -webkit-animation-timing-function: ease-in;
    }
}

@-moz-keyframes flip {
    0% {
        -moz-transform: perspective(400px) rotateY(0);
        -moz-animation-timing-function: ease-out;
    }

    40% {
        -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -moz-animation-timing-function: ease-out;
    }

    50% {
        -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -moz-animation-timing-function: ease-in;
    }

    80% {
        -moz-transform: perspective(400px) rotateY(360deg) scale(.95);
        -moz-animation-timing-function: ease-in;
    }

    100% {
        -moz-transform: perspective(400px) scale(1);
        -moz-animation-timing-function: ease-in;
    }
}

@-o-keyframes flip {
    0% {
        -o-transform: perspective(400px) rotateY(0);
        -o-animation-timing-function: ease-out;
    }

    40% {
        -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -o-animation-timing-function: ease-out;
    }

    50% {
        -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -o-animation-timing-function: ease-in;
    }

    80% {
        -o-transform: perspective(400px) rotateY(360deg) scale(.95);
        -o-animation-timing-function: ease-in;
    }

    100% {
        -o-transform: perspective(400px) scale(1);
        -o-animation-timing-function: ease-in;
    }
}

@keyframes flip {
    0% {
        transform: perspective(400px) rotateY(0);
        animation-timing-function: ease-out;
    }

    40% {
        transform: perspective(400px) translateZ(150px) rotateY(170deg);
        animation-timing-function: ease-out;
    }

    50% {
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        animation-timing-function: ease-in;
    }

    80% {
        transform: perspective(400px) rotateY(360deg) scale(.95);
        animation-timing-function: ease-in;
    }

    100% {
        transform: perspective(400px) scale(1);
        animation-timing-function: ease-in;
    }
}

@-webkit-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }

    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
    }

    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}

@-moz-keyframes flipInX {
    0% {
        -moz-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }

    40% {
        -moz-transform: perspective(400px) rotateX(-10deg);
    }

    70% {
        -moz-transform: perspective(400px) rotateX(10deg);
    }

    100% {
        -moz-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}

@-o-keyframes flipInX {
    0% {
        -o-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }

    40% {
        -o-transform: perspective(400px) rotateX(-10deg);
    }

    70% {
        -o-transform: perspective(400px) rotateX(10deg);
    }

    100% {
        -o-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}

@keyframes flipInX {
    0% {
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }

    40% {
        transform: perspective(400px) rotateX(-10deg);
    }

    70% {
        transform: perspective(400px) rotateX(10deg);
    }

    100% {
        transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}

@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

@-moz-keyframes flipOutX {
    0% {
        -moz-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }

    100% {
        -moz-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

@-o-keyframes flipOutX {
    0% {
        -o-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }

    100% {
        -o-transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

@keyframes flipOutX {
    0% {
        transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }

    100% {
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

@-webkit-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }

    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
    }

    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}

@-moz-keyframes flipInY {
    0% {
        -moz-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }

    40% {
        -moz-transform: perspective(400px) rotateY(-10deg);
    }

    70% {
        -moz-transform: perspective(400px) rotateY(10deg);
    }

    100% {
        -moz-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}

@-o-keyframes flipInY {
    0% {
        -o-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }

    40% {
        -o-transform: perspective(400px) rotateY(-10deg);
    }

    70% {
        -o-transform: perspective(400px) rotateY(10deg);
    }

    100% {
        -o-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}

@keyframes flipInY {
    0% {
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }

    40% {
        transform: perspective(400px) rotateY(-10deg);
    }

    70% {
        transform: perspective(400px) rotateY(10deg);
    }

    100% {
        transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}

@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}

@-moz-keyframes flipOutY {
    0% {
        -moz-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }

    100% {
        -moz-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}

@-o-keyframes flipOutY {
    0% {
        -o-transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }

    100% {
        -o-transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}

@keyframes flipOutY {
    0% {
        transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }

    100% {
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-moz-keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-o-keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }
}

@-moz-keyframes fadeInUp {
    0% {
        opacity: 0;
        -moz-transform: translateY(20px);
    }

    100% {
        opacity: 1;
        -moz-transform: translateY(0);
    }
}

@-o-keyframes fadeInUp {
    0% {
        opacity: 0;
        -o-transform: translateY(20px);
    }

    100% {
        opacity: 1;
        -o-transform: translateY(0);
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }
}

@-moz-keyframes fadeInDown {
    0% {
        opacity: 0;
        -moz-transform: translateY(-20px);
    }

    100% {
        opacity: 1;
        -moz-transform: translateY(0);
    }
}

@-o-keyframes fadeInDown {
    0% {
        opacity: 0;
        -o-transform: translateY(-20px);
    }

    100% {
        opacity: 1;
        -o-transform: translateY(0);
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        transform: translateY(-20px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }
}

@-moz-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -moz-transform: translateX(-20px);
    }

    100% {
        opacity: 1;
        -moz-transform: translateX(0);
    }
}

@-o-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -o-transform: translateX(-20px);
    }

    100% {
        opacity: 1;
        -o-transform: translateX(0);
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translateX(-20px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }
}

@-moz-keyframes fadeInRight {
    0% {
        opacity: 0;
        -moz-transform: translateX(20px);
    }

    100% {
        opacity: 1;
        -moz-transform: translateX(0);
    }
}

@-o-keyframes fadeInRight {
    0% {
        opacity: 0;
        -o-transform: translateX(20px);
    }

    100% {
        opacity: 1;
        -o-transform: translateX(0);
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translateX(20px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@-webkit-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }
}

@-moz-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -moz-transform: translateY(2000px);
    }

    100% {
        opacity: 1;
        -moz-transform: translateY(0);
    }
}

@-o-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -o-transform: translateY(2000px);
    }

    100% {
        opacity: 1;
        -o-transform: translateY(0);
    }
}

@keyframes fadeInUpBig {
    0% {
        opacity: 0;
        transform: translateY(2000px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@-webkit-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }
}

@-moz-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -moz-transform: translateY(-2000px);
    }

    100% {
        opacity: 1;
        -moz-transform: translateY(0);
    }
}

@-o-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -o-transform: translateY(-2000px);
    }

    100% {
        opacity: 1;
        -o-transform: translateY(0);
    }
}

@keyframes fadeInDownBig {
    0% {
        opacity: 0;
        transform: translateY(-2000px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@-webkit-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }
}

@-moz-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -moz-transform: translateX(-2000px);
    }

    100% {
        opacity: 1;
        -moz-transform: translateX(0);
    }
}

@-o-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -o-transform: translateX(-2000px);
    }

    100% {
        opacity: 1;
        -o-transform: translateX(0);
    }
}

@keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        transform: translateX(-2000px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }
}

@-moz-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -moz-transform: translateX(2000px);
    }

    100% {
        opacity: 1;
        -moz-transform: translateX(0);
    }
}

@-o-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -o-transform: translateX(2000px);
    }

    100% {
        opacity: 1;
        -o-transform: translateX(0);
    }
}

@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        transform: translateX(2000px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@-moz-keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@-o-keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@-webkit-keyframes fadeOutUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
    }
}

@-moz-keyframes fadeOutUp {
    0% {
        opacity: 1;
        -moz-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -moz-transform: translateY(-20px);
    }
}

@-o-keyframes fadeOutUp {
    0% {
        opacity: 1;
        -o-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -o-transform: translateY(-20px);
    }
}

@keyframes fadeOutUp {
    0% {
        opacity: 1;
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        transform: translateY(-20px);
    }
}

@-webkit-keyframes fadeOutDown {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
    }
}

@-moz-keyframes fadeOutDown {
    0% {
        opacity: 1;
        -moz-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -moz-transform: translateY(20px);
    }
}

@-o-keyframes fadeOutDown {
    0% {
        opacity: 1;
        -o-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -o-transform: translateY(20px);
    }
}

@keyframes fadeOutDown {
    0% {
        opacity: 1;
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        transform: translateY(20px);
    }
}

@-webkit-keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
    }
}

@-moz-keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -moz-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -moz-transform: translateX(-20px);
    }
}

@-o-keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -o-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -o-transform: translateX(-20px);
    }
}

@keyframes fadeOutLeft {
    0% {
        opacity: 1;
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        transform: translateX(-20px);
    }
}

@-webkit-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(20px);
    }
}

@-moz-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -moz-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -moz-transform: translateX(20px);
    }
}

@-o-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -o-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -o-transform: translateX(20px);
    }
}

@keyframes fadeOutRight {
    0% {
        opacity: 1;
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        transform: translateX(20px);
    }
}

@-webkit-keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
    }
}

@-moz-keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -moz-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -moz-transform: translateY(-2000px);
    }
}

@-o-keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -o-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -o-transform: translateY(-2000px);
    }
}

@keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        transform: translateY(-2000px);
    }
}

@-webkit-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
    }
}

@-moz-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -moz-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -moz-transform: translateY(2000px);
    }
}

@-o-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -o-transform: translateY(0);
    }

    100% {
        opacity: 0;
        -o-transform: translateY(2000px);
    }
}

@keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        transform: translateY(2000px);
    }
}

@-webkit-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
    }
}

@-moz-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -moz-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -moz-transform: translateX(-2000px);
    }
}

@-o-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -o-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -o-transform: translateX(-2000px);
    }
}

@keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        transform: translateX(-2000px);
    }
}

@-webkit-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
    }
}

@-moz-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -moz-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -moz-transform: translateX(2000px);
    }
}

@-o-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -o-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -o-transform: translateX(2000px);
    }
}

@keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        transform: translateX(2000px);
    }
}

@-webkit-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(.3);
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
    }

    70% {
        -webkit-transform: scale(.9);
    }

    100% {
        -webkit-transform: scale(1);
    }
}

@-moz-keyframes bounceIn {
    0% {
        opacity: 0;
        -moz-transform: scale(.3);
    }

    50% {
        opacity: 1;
        -moz-transform: scale(1.05);
    }

    70% {
        -moz-transform: scale(.9);
    }

    100% {
        -moz-transform: scale(1);
    }
}

@-o-keyframes bounceIn {
    0% {
        opacity: 0;
        -o-transform: scale(.3);
    }

    50% {
        opacity: 1;
        -o-transform: scale(1.05);
    }

    70% {
        -o-transform: scale(.9);
    }

    100% {
        -o-transform: scale(1);
    }
}

@keyframes bounceIn {
    0% {
        opacity: 0;
        transform: scale(.3);
    }

    50% {
        opacity: 1;
        transform: scale(1.05);
    }

    70% {
        transform: scale(.9);
    }

    100% {
        transform: scale(1);
    }
}

@-webkit-keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
    }

    80% {
        -webkit-transform: translateY(10px);
    }

    100% {
        -webkit-transform: translateY(0);
    }
}

@-moz-keyframes bounceInUp {
    0% {
        opacity: 0;
        -moz-transform: translateY(2000px);
    }

    60% {
        opacity: 1;
        -moz-transform: translateY(-30px);
    }

    80% {
        -moz-transform: translateY(10px);
    }

    100% {
        -moz-transform: translateY(0);
    }
}

@-o-keyframes bounceInUp {
    0% {
        opacity: 0;
        -o-transform: translateY(2000px);
    }

    60% {
        opacity: 1;
        -o-transform: translateY(-30px);
    }

    80% {
        -o-transform: translateY(10px);
    }

    100% {
        -o-transform: translateY(0);
    }
}

@keyframes bounceInUp {
    0% {
        opacity: 0;
        transform: translateY(2000px);
    }

    60% {
        opacity: 1;
        transform: translateY(-30px);
    }

    80% {
        transform: translateY(10px);
    }

    100% {
        transform: translateY(0);
    }
}

@-webkit-keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
    }

    80% {
        -webkit-transform: translateY(-10px);
    }

    100% {
        -webkit-transform: translateY(0);
    }
}

@-moz-keyframes bounceInDown {
    0% {
        opacity: 0;
        -moz-transform: translateY(-2000px);
    }

    60% {
        opacity: 1;
        -moz-transform: translateY(30px);
    }

    80% {
        -moz-transform: translateY(-10px);
    }

    100% {
        -moz-transform: translateY(0);
    }
}

@-o-keyframes bounceInDown {
    0% {
        opacity: 0;
        -o-transform: translateY(-2000px);
    }

    60% {
        opacity: 1;
        -o-transform: translateY(30px);
    }

    80% {
        -o-transform: translateY(-10px);
    }

    100% {
        -o-transform: translateY(0);
    }
}

@keyframes bounceInDown {
    0% {
        opacity: 0;
        transform: translateY(-2000px);
    }

    60% {
        opacity: 1;
        transform: translateY(30px);
    }

    80% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0);
    }
}

@-webkit-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
    }

    80% {
        -webkit-transform: translateX(-10px);
    }

    100% {
        -webkit-transform: translateX(0);
    }
}

@-moz-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -moz-transform: translateX(-2000px);
    }

    60% {
        opacity: 1;
        -moz-transform: translateX(30px);
    }

    80% {
        -moz-transform: translateX(-10px);
    }

    100% {
        -moz-transform: translateX(0);
    }
}

@-o-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -o-transform: translateX(-2000px);
    }

    60% {
        opacity: 1;
        -o-transform: translateX(30px);
    }

    80% {
        -o-transform: translateX(-10px);
    }

    100% {
        -o-transform: translateX(0);
    }
}

@keyframes bounceInLeft {
    0% {
        opacity: 0;
        transform: translateX(-2000px);
    }

    60% {
        opacity: 1;
        transform: translateX(30px);
    }

    80% {
        transform: translateX(-10px);
    }

    100% {
        transform: translateX(0);
    }
}

@-webkit-keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
    }

    80% {
        -webkit-transform: translateX(10px);
    }

    100% {
        -webkit-transform: translateX(0);
    }
}

@-moz-keyframes bounceInRight {
    0% {
        opacity: 0;
        -moz-transform: translateX(2000px);
    }

    60% {
        opacity: 1;
        -moz-transform: translateX(-30px);
    }

    80% {
        -moz-transform: translateX(10px);
    }

    100% {
        -moz-transform: translateX(0);
    }
}

@-o-keyframes bounceInRight {
    0% {
        opacity: 0;
        -o-transform: translateX(2000px);
    }

    60% {
        opacity: 1;
        -o-transform: translateX(-30px);
    }

    80% {
        -o-transform: translateX(10px);
    }

    100% {
        -o-transform: translateX(0);
    }
}

@keyframes bounceInRight {
    0% {
        opacity: 0;
        transform: translateX(2000px);
    }

    60% {
        opacity: 1;
        transform: translateX(-30px);
    }

    80% {
        transform: translateX(10px);
    }

    100% {
        transform: translateX(0);
    }
}

@-webkit-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
    }

    25% {
        -webkit-transform: scale(.95);
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(.3);
    }
}

@-moz-keyframes bounceOut {
    0% {
        -moz-transform: scale(1);
    }

    25% {
        -moz-transform: scale(.95);
    }

    50% {
        opacity: 1;
        -moz-transform: scale(1.1);
    }

    100% {
        opacity: 0;
        -moz-transform: scale(.3);
    }
}

@-o-keyframes bounceOut {
    0% {
        -o-transform: scale(1);
    }

    25% {
        -o-transform: scale(.95);
    }

    50% {
        opacity: 1;
        -o-transform: scale(1.1);
    }

    100% {
        opacity: 0;
        -o-transform: scale(.3);
    }
}

@keyframes bounceOut {
    0% {
        transform: scale(1);
    }

    25% {
        transform: scale(.95);
    }

    50% {
        opacity: 1;
        transform: scale(1.1);
    }

    100% {
        opacity: 0;
        transform: scale(.3);
    }
}

@-webkit-keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
    }
}

@-moz-keyframes bounceOutUp {
    0% {
        -moz-transform: translateY(0);
    }

    20% {
        opacity: 1;
        -moz-transform: translateY(20px);
    }

    100% {
        opacity: 0;
        -moz-transform: translateY(-2000px);
    }
}

@-o-keyframes bounceOutUp {
    0% {
        -o-transform: translateY(0);
    }

    20% {
        opacity: 1;
        -o-transform: translateY(20px);
    }

    100% {
        opacity: 0;
        -o-transform: translateY(-2000px);
    }
}

@keyframes bounceOutUp {
    0% {
        transform: translateY(0);
    }

    20% {
        opacity: 1;
        transform: translateY(20px);
    }

    100% {
        opacity: 0;
        transform: translateY(-2000px);
    }
}

@-webkit-keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
    }
}

@-moz-keyframes bounceOutDown {
    0% {
        -moz-transform: translateY(0);
    }

    20% {
        opacity: 1;
        -moz-transform: translateY(-20px);
    }

    100% {
        opacity: 0;
        -moz-transform: translateY(2000px);
    }
}

@-o-keyframes bounceOutDown {
    0% {
        -o-transform: translateY(0);
    }

    20% {
        opacity: 1;
        -o-transform: translateY(-20px);
    }

    100% {
        opacity: 0;
        -o-transform: translateY(2000px);
    }
}

@keyframes bounceOutDown {
    0% {
        transform: translateY(0);
    }

    20% {
        opacity: 1;
        transform: translateY(-20px);
    }

    100% {
        opacity: 0;
        transform: translateY(2000px);
    }
}

@-webkit-keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
    }
}

@-moz-keyframes bounceOutLeft {
    0% {
        -moz-transform: translateX(0);
    }

    20% {
        opacity: 1;
        -moz-transform: translateX(20px);
    }

    100% {
        opacity: 0;
        -moz-transform: translateX(-2000px);
    }
}

@-o-keyframes bounceOutLeft {
    0% {
        -o-transform: translateX(0);
    }

    20% {
        opacity: 1;
        -o-transform: translateX(20px);
    }

    100% {
        opacity: 0;
        -o-transform: translateX(-2000px);
    }
}

@keyframes bounceOutLeft {
    0% {
        transform: translateX(0);
    }

    20% {
        opacity: 1;
        transform: translateX(20px);
    }

    100% {
        opacity: 0;
        transform: translateX(-2000px);
    }
}

@-webkit-keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
    }
}

@-moz-keyframes bounceOutRight {
    0% {
        -moz-transform: translateX(0);
    }

    20% {
        opacity: 1;
        -moz-transform: translateX(-20px);
    }

    100% {
        opacity: 0;
        -moz-transform: translateX(2000px);
    }
}

@-o-keyframes bounceOutRight {
    0% {
        -o-transform: translateX(0);
    }

    20% {
        opacity: 1;
        -o-transform: translateX(-20px);
    }

    100% {
        opacity: 0;
        -o-transform: translateX(2000px);
    }
}

@keyframes bounceOutRight {
    0% {
        transform: translateX(0);
    }

    20% {
        opacity: 1;
        transform: translateX(-20px);
    }

    100% {
        opacity: 0;
        transform: translateX(2000px);
    }
}

@-webkit-keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center;
        -webkit-transform: rotate(-200deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: center center;
        -webkit-transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes rotateIn {
    0% {
        -moz-transform-origin: center center;
        -moz-transform: rotate(-200deg);
        opacity: 0;
    }

    100% {
        -moz-transform-origin: center center;
        -moz-transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateIn {
    0% {
        -o-transform-origin: center center;
        -o-transform: rotate(-200deg);
        opacity: 0;
    }

    100% {
        -o-transform-origin: center center;
        -o-transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateIn {
    0% {
        transform-origin: center center;
        transform: rotate(-200deg);
        opacity: 0;
    }

    100% {
        transform-origin: center center;
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: left bottom;
        -webkit-transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes rotateInUpLeft {
    0% {
        -moz-transform-origin: left bottom;
        -moz-transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -moz-transform-origin: left bottom;
        -moz-transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateInUpLeft {
    0% {
        -o-transform-origin: left bottom;
        -o-transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -o-transform-origin: left bottom;
        -o-transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInUpLeft {
    0% {
        transform-origin: left bottom;
        transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        transform-origin: left bottom;
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: left bottom;
        -webkit-transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes rotateInDownLeft {
    0% {
        -moz-transform-origin: left bottom;
        -moz-transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -moz-transform-origin: left bottom;
        -moz-transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateInDownLeft {
    0% {
        -o-transform-origin: left bottom;
        -o-transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -o-transform-origin: left bottom;
        -o-transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInDownLeft {
    0% {
        transform-origin: left bottom;
        transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        transform-origin: left bottom;
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: right bottom;
        -webkit-transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes rotateInUpRight {
    0% {
        -moz-transform-origin: right bottom;
        -moz-transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -moz-transform-origin: right bottom;
        -moz-transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateInUpRight {
    0% {
        -o-transform-origin: right bottom;
        -o-transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -o-transform-origin: right bottom;
        -o-transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInUpRight {
    0% {
        transform-origin: right bottom;
        transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        transform-origin: right bottom;
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: right bottom;
        -webkit-transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes rotateInDownRight {
    0% {
        -moz-transform-origin: right bottom;
        -moz-transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -moz-transform-origin: right bottom;
        -moz-transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateInDownRight {
    0% {
        -o-transform-origin: right bottom;
        -o-transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -o-transform-origin: right bottom;
        -o-transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInDownRight {
    0% {
        transform-origin: right bottom;
        transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        transform-origin: right bottom;
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center;
        -webkit-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: center center;
        -webkit-transform: rotate(200deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateOut {
    0% {
        -moz-transform-origin: center center;
        -moz-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -moz-transform-origin: center center;
        -moz-transform: rotate(200deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOut {
    0% {
        -o-transform-origin: center center;
        -o-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -o-transform-origin: center center;
        -o-transform: rotate(200deg);
        opacity: 0;
    }
}

@keyframes rotateOut {
    0% {
        transform-origin: center center;
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        transform-origin: center center;
        transform: rotate(200deg);
        opacity: 0;
    }
}

@-webkit-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -webkit-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateOutUpLeft {
    0% {
        -moz-transform-origin: left bottom;
        -moz-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -moz-transform-origin: left bottom;
        -moz-transform: rotate(-90deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOutUpLeft {
    0% {
        -o-transform-origin: left bottom;
        -o-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -o-transform-origin: left bottom;
        -o-transform: rotate(-90deg);
        opacity: 0;
    }
}

@keyframes rotateOutUpLeft {
    0% {
        transform-origin: left bottom;
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -transform-origin: left bottom;
        -transform: rotate(-90deg);
        opacity: 0;
    }
}

@-webkit-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -webkit-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateOutDownLeft {
    0% {
        -moz-transform-origin: left bottom;
        -moz-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -moz-transform-origin: left bottom;
        -moz-transform: rotate(90deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOutDownLeft {
    0% {
        -o-transform-origin: left bottom;
        -o-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -o-transform-origin: left bottom;
        -o-transform: rotate(90deg);
        opacity: 0;
    }
}

@keyframes rotateOutDownLeft {
    0% {
        transform-origin: left bottom;
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        transform-origin: left bottom;
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-webkit-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        -webkit-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateOutUpRight {
    0% {
        -moz-transform-origin: right bottom;
        -moz-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -moz-transform-origin: right bottom;
        -moz-transform: rotate(90deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOutUpRight {
    0% {
        -o-transform-origin: right bottom;
        -o-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -o-transform-origin: right bottom;
        -o-transform: rotate(90deg);
        opacity: 0;
    }
}

@keyframes rotateOutUpRight {
    0% {
        transform-origin: right bottom;
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        transform-origin: right bottom;
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-webkit-keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        -webkit-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateOutDownRight {
    0% {
        -moz-transform-origin: right bottom;
        -moz-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -moz-transform-origin: right bottom;
        -moz-transform: rotate(-90deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOutDownRight {
    0% {
        -o-transform-origin: right bottom;
        -o-transform: rotate(0);
        opacity: 1;
    }

    100% {
        -o-transform-origin: right bottom;
        -o-transform: rotate(-90deg);
        opacity: 0;
    }
}

@keyframes rotateOutDownRight {
    0% {
        transform-origin: right bottom;
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        transform-origin: right bottom;
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@-webkit-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }

    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        opacity: 1;
    }

    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }
}

@-moz-keyframes lightSpeedIn {
    0% {
        -moz-transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }

    60% {
        -moz-transform: translateX(-20%) skewX(30deg);
        opacity: 1;
    }

    80% {
        -moz-transform: translateX(0%) skewX(-15deg);
        opacity: 1;
    }

    100% {
        -moz-transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }
}

@-o-keyframes lightSpeedIn {
    0% {
        -o-transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }

    60% {
        -o-transform: translateX(-20%) skewX(30deg);
        opacity: 1;
    }

    80% {
        -o-transform: translateX(0%) skewX(-15deg);
        opacity: 1;
    }

    100% {
        -o-transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }
}

@keyframes lightSpeedIn {
    0% {
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }

    60% {
        transform: translateX(-20%) skewX(30deg);
        opacity: 1;
    }

    80% {
        transform: translateX(0%) skewX(-15deg);
        opacity: 1;
    }

    100% {
        transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }
}

@-webkit-keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
}

@-moz-keyframes lightSpeedOut {
    0% {
        -moz-transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }

    100% {
        -moz-transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
}

@-o-keyframes lightSpeedOut {
    0% {
        -o-transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }

    100% {
        -o-transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
}

@keyframes lightSpeedOut {
    0% {
        transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }

    100% {
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
}

@-webkit-keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -webkit-transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
    }

    20%, 60% {
        -webkit-transform: rotate(80deg);
        -webkit-transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
    }

    40% {
        -webkit-transform: rotate(60deg);
        -webkit-transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
    }

    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        opacity: 1;
        -webkit-transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
    }

    100% {
        -webkit-transform: translateY(700px);
        opacity: 0;
    }
}

@-moz-keyframes hinge {
    0% {
        -moz-transform: rotate(0);
        -moz-transform-origin: top left;
        -moz-animation-timing-function: ease-in-out;
    }

    20%, 60% {
        -moz-transform: rotate(80deg);
        -moz-transform-origin: top left;
        -moz-animation-timing-function: ease-in-out;
    }

    40% {
        -moz-transform: rotate(60deg);
        -moz-transform-origin: top left;
        -moz-animation-timing-function: ease-in-out;
    }

    80% {
        -moz-transform: rotate(60deg) translateY(0);
        opacity: 1;
        -moz-transform-origin: top left;
        -moz-animation-timing-function: ease-in-out;
    }

    100% {
        -moz-transform: translateY(700px);
        opacity: 0;
    }
}

@-o-keyframes hinge {
    0% {
        -o-transform: rotate(0);
        -o-transform-origin: top left;
        -o-animation-timing-function: ease-in-out;
    }

    20%, 60% {
        -o-transform: rotate(80deg);
        -o-transform-origin: top left;
        -o-animation-timing-function: ease-in-out;
    }

    40% {
        -o-transform: rotate(60deg);
        -o-transform-origin: top left;
        -o-animation-timing-function: ease-in-out;
    }

    80% {
        -o-transform: rotate(60deg) translateY(0);
        opacity: 1;
        -o-transform-origin: top left;
        -o-animation-timing-function: ease-in-out;
    }

    100% {
        -o-transform: translateY(700px);
        opacity: 0;
    }
}

@keyframes hinge {
    0% {
        transform: rotate(0);
        transform-origin: top left;
        animation-timing-function: ease-in-out;
    }

    20%, 60% {
        transform: rotate(80deg);
        transform-origin: top left;
        animation-timing-function: ease-in-out;
    }

    40% {
        transform: rotate(60deg);
        transform-origin: top left;
        animation-timing-function: ease-in-out;
    }

    80% {
        transform: rotate(60deg) translateY(0);
        opacity: 1;
        transform-origin: top left;
        animation-timing-function: ease-in-out;
    }

    100% {
        transform: translateY(700px);
        opacity: 0;
    }
}

@-webkit-keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
    }
}

@-moz-keyframes rollIn {
    0% {
        opacity: 0;
        -moz-transform: translateX(-100%) rotate(-120deg);
    }

    100% {
        opacity: 1;
        -moz-transform: translateX(0px) rotate(0deg);
    }
}

@-o-keyframes rollIn {
    0% {
        opacity: 0;
        -o-transform: translateX(-100%) rotate(-120deg);
    }

    100% {
        opacity: 1;
        -o-transform: translateX(0px) rotate(0deg);
    }
}

@keyframes rollIn {
    0% {
        opacity: 0;
        transform: translateX(-100%) rotate(-120deg);
    }

    100% {
        opacity: 1;
        transform: translateX(0px) rotate(0deg);
    }
}

@-webkit-keyframes rollOut {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(100%) rotate(120deg);
    }
}

@-moz-keyframes rollOut {
    0% {
        opacity: 1;
        -moz-transform: translateX(0px) rotate(0deg);
    }

    100% {
        opacity: 0;
        -moz-transform: translateX(100%) rotate(120deg);
    }
}

@-o-keyframes rollOut {
    0% {
        opacity: 1;
        -o-transform: translateX(0px) rotate(0deg);
    }

    100% {
        opacity: 0;
        -o-transform: translateX(100%) rotate(120deg);
    }
}

@keyframes rollOut {
    0% {
        opacity: 1;
        transform: translateX(0px) rotate(0deg);
    }

    100% {
        opacity: 0;
        transform: translateX(100%) rotate(120deg);
    }
}

@-webkit-keyframes rotating {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(360deg);
    }
}

@-o-keyframes rotating {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(360deg);
    }
}

@-moz-keyframes rotating {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes rotating {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(360deg);
    }
}

@-webkit-keyframes spintozero {
    from {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    40% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 100px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) translate3d(0, 0, 100px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    50% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 100px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) translate3d(0, 0, 100px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    80% {
        -webkit-transform: perspective(400px) scale3d(.95, .95, .95);
        transform: perspective(400px) scale3d(.95, .95, .95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

@keyframes spintozero {
    from {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    40% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    50% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    80% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}

@keyframes twist {
    0% {
        -webkit-transform: rotateY(0deg);
        transform: rotateY(0deg);
    }

    50% {
        -webkit-transform: rotateY(45deg);
        transform: rotateY(45deg);
    }

    100% {
        -webkit-transform: rotateY(0deg);
        transform: rotateY(0deg);
    }
}

@-webkit-keyframes parallaxGradient {
    from {
        background-position: 0% 50%;
        opacity: 0.5;
    }

    to {
        background-position: 100% 50%;
        opacity: 0.81;
    }
}

@-moz-keyframes parallaxGradient {
    from {
        background-position: 0% 50%;
        opacity: 0.5;
    }

    to {
        background-position: 100% 50%;
        opacity: 0.81;
    }
}

@-o-keyframes parallaxGradient {
    from {
        background-position: 0% 50%;
        opacity: 0.5;
    }

    to {
        background-position: 100% 50%;
        opacity: 0.81;
    }
}

@keyframes parallaxGradient {
    from {
        background-position: 0% 50%;
        opacity: 0.5;
    }

    to {
        background-position: 100% 50%;
        opacity: 0.81;
    }
}

@-webkit-keyframes kenburns-bottom-left {
    0% {
        -webkit-transform: scale(1) translate(0, 0);
        transform: scale(1) translate(0, 0);
        -webkit-transform-origin: 16% 84%;
        transform-origin: 16% 84%;
    }

    100% {
        -webkit-transform: scale(1.25) translate(-20px, 15px);
        transform: scale(1.25) translate(-20px, 15px);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
    }
}

@keyframes kenburns-bottom-left {
    0% {
        -webkit-transform: scale(1) translate(0, 0);
        transform: scale(1) translate(0, 0);
        -webkit-transform-origin: 16% 84%;
        transform-origin: 16% 84%;
    }

    100% {
        -webkit-transform: scale(1.25) translate(-20px, 15px);
        transform: scale(1.25) translate(-20px, 15px);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
    }
}

.active-parallax-image img {
    -webkit-animation: kenburns-bottom-left 10s linear reverse both;
    animation: kenburns-bottom-left 10s linear reverse both;
}

.success {
    color: #5da423;
}

.warning {
    color: #ffae00;
}

.error {
    color: #c60f13;
}

.alert {
    color: #c60f13;
}

button,
.button,
a.button {
    background: #253741;
    color: #fff;
    border: 1px solid #253741;
    font-size: 1rem;
    text-align: center;
    line-height: 1.2;
    text-decoration: none;
    font-weight: 400;
    display: inline-block;
    padding: 0.3125rem 0.625rem;
    -webkit-border-radius: 0.3125rem;
    -moz-border-radius: 0.3125rem;
    border-radius: 0.3125rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    -webkit-transition: all 250ms linear 0ms;
    -moz-transition: all 250ms linear 0ms;
    -o-transition: all 250ms linear 0ms;
    -ms-transition: all 250ms linear 0ms;
    transition: all 250ms linear 0ms;
}

    button:hover,
    button:focus,
    .button:hover,
    .button:focus,
    a.button:hover,
    a.button:focus {
        background: #4b86b1;
        border: 1px solid #4b86b1;
        color: #fff;
    }

    button.alt,
    button.secondary,
    .button.alt,
    .button.secondary,
    a.button.alt,
    a.button.secondary {
        background: #27455f;
        border: 1px solid #27455f;
        color: #fff;
    }

        button.alt:hover,
        button.alt:focus,
        button.secondary:hover,
        button.secondary:focus,
        .button.alt:hover,
        .button.alt:focus,
        .button.secondary:hover,
        .button.secondary:focus,
        a.button.alt:hover,
        a.button.alt:focus,
        a.button.secondary:hover,
        a.button.secondary:focus {
            background: #242e40;
            border: 1px solid #27455f;
            color: #fff;
        }

    button.tertiary,
    button.light,
    .button.tertiary,
    .button.light,
    a.button.tertiary,
    a.button.light {
        background: #4b86b1;
        border: 1px solid #4b86b1;
        color: #fff;
    }

        button.tertiary:hover,
        button.tertiary:focus,
        button.light:hover,
        button.light:focus,
        .button.tertiary:hover,
        .button.tertiary:focus,
        .button.light:hover,
        .button.light:focus,
        a.button.tertiary:hover,
        a.button.tertiary:focus,
        a.button.light:hover,
        a.button.light:focus {
            background: #242e40;
            border: 1px solid #4b86b1;
            color: #fff;
        }

    button.border,
    button.bordered,
    button.btn-bordered,
    .button.border,
    .button.bordered,
    .button.btn-bordered,
    a.button.border,
    a.button.bordered,
    a.button.btn-bordered {
        background: #242e40;
        border: 1px solid #242e40;
        color: #fff;
    }

        button.border:hover,
        button.border:focus,
        button.bordered:hover,
        button.bordered:focus,
        button.btn-bordered:hover,
        button.btn-bordered:focus,
        .button.border:hover,
        .button.border:focus,
        .button.bordered:hover,
        .button.bordered:focus,
        .button.btn-bordered:hover,
        .button.btn-bordered:focus,
        a.button.border:hover,
        a.button.border:focus,
        a.button.bordered:hover,
        a.button.bordered:focus,
        a.button.btn-bordered:hover,
        a.button.btn-bordered:focus {
            background: #27455f;
            border: 1px solid #242e40;
            color: #fff;
        }

        button.border.alt,
        button.border.secondary,
        button.bordered.alt,
        button.bordered.secondary,
        button.btn-bordered.alt,
        button.btn-bordered.secondary,
        .button.border.alt,
        .button.border.secondary,
        .button.bordered.alt,
        .button.bordered.secondary,
        .button.btn-bordered.alt,
        .button.btn-bordered.secondary,
        a.button.border.alt,
        a.button.border.secondary,
        a.button.bordered.alt,
        a.button.bordered.secondary,
        a.button.btn-bordered.alt,
        a.button.btn-bordered.secondary {
            background: #27455f;
            border: 1px solid #27455f;
            color: #fff;
        }

            button.border.alt:hover,
            button.border.alt:focus,
            button.border.secondary:hover,
            button.border.secondary:focus,
            button.bordered.alt:hover,
            button.bordered.alt:focus,
            button.bordered.secondary:hover,
            button.bordered.secondary:focus,
            button.btn-bordered.alt:hover,
            button.btn-bordered.alt:focus,
            button.btn-bordered.secondary:hover,
            button.btn-bordered.secondary:focus,
            .button.border.alt:hover,
            .button.border.alt:focus,
            .button.border.secondary:hover,
            .button.border.secondary:focus,
            .button.bordered.alt:hover,
            .button.bordered.alt:focus,
            .button.bordered.secondary:hover,
            .button.bordered.secondary:focus,
            .button.btn-bordered.alt:hover,
            .button.btn-bordered.alt:focus,
            .button.btn-bordered.secondary:hover,
            .button.btn-bordered.secondary:focus,
            a.button.border.alt:hover,
            a.button.border.alt:focus,
            a.button.border.secondary:hover,
            a.button.border.secondary:focus,
            a.button.bordered.alt:hover,
            a.button.bordered.alt:focus,
            a.button.bordered.secondary:hover,
            a.button.bordered.secondary:focus,
            a.button.btn-bordered.alt:hover,
            a.button.btn-bordered.alt:focus,
            a.button.btn-bordered.secondary:hover,
            a.button.btn-bordered.secondary:focus {
                background: #242e40;
                border: 1px solid #27455f;
                color: #fff;
            }

        button.border + .btn-bordered,
        button.bordered + .btn-bordered,
        button.btn-bordered + .btn-bordered,
        .button.border + .btn-bordered,
        .button.bordered + .btn-bordered,
        .button.btn-bordered + .btn-bordered,
        a.button.border + .btn-bordered,
        a.button.bordered + .btn-bordered,
        a.button.btn-bordered + .btn-bordered {
            -webkit-border-radius: 0;
            -moz-border-radius: 0;
            border-radius: 0;
            -moz-background-clip: padding;
            -webkit-background-clip: padding-box;
            background-clip: padding-box;
            font-weight: 400;
        }

@media screen and (min-width: 48rem) {
    button.border + .btn-bordered,
    button.bordered + .btn-bordered,
    button.btn-bordered + .btn-bordered,
    .button.border + .btn-bordered,
    .button.bordered + .btn-bordered,
    .button.btn-bordered + .btn-bordered,
    a.button.border + .btn-bordered,
    a.button.bordered + .btn-bordered,
    a.button.btn-bordered + .btn-bordered {
        margin-left: 0.625rem;
    }
}

button.warning,
.button.warning,
a.button.warning {
    background: #ffae00;
    color: #000;
}

    button.warning:hover,
    button.warning:focus,
    .button.warning:hover,
    .button.warning:focus,
    a.button.warning:hover,
    a.button.warning:focus {
        background: #ffc64d;
        color: #000;
    }

button.disabled,
button.disabled:hover,
.button.disabled,
.button.disabled:hover,
a.button.disabled,
a.button.disabled:hover {
    background: #323232;
    cursor: default;
    cursor: no-drop;
}

button.block,
.button.block,
a.button.block {
    display: block;
    margin-bottom: 0.625rem;
    padding: 1.25rem 1.5625rem;
}

buttonbutton.block,
button.button.block,
buttona.button.block {
    width: 100%;
}

button.block.slim,
.button.block.slim,
a.button.block.slim {
    padding: 0.875rem 0.625rem;
}

button.big,
.button.big,
a.button.big {
    font-size: 0.75rem;
    padding: 0.3125rem;
}

button.small,
.button.small,
a.button.small {
    font-size: 0.75rem;
    padding: 0.3125rem;
}

button.tiny,
.button.tiny,
a.button.tiny {
    font-size: 0.75rem;
    padding: 0.15625rem;
}

button.short,
.button.short,
a.button.short {
    padding-top: 0.6875rem;
    padding-bottom: 0.6875rem;
}

button.no-margin,
.button.no-margin,
a.button.no-margin {
    margin: 0;
}

button.margin-top,
.button.margin-top,
a.button.margin-top {
    margin-top: 0.625rem;
}

button.text-left,
.button.text-left,
a.button.text-left {
    text-align: left;
}

button .fa,
button .fas,
button .far,
button .fal,
.button .fa,
.button .fas,
.button .far,
.button .fal,
a.button .fa,
a.button .fas,
a.button .far,
a.button .fal {
    margin-right: 0.625rem;
}

button.icon-end .fa,
button.icon-end .fas,
button.icon-end .far,
button.icon-end .fal,
button.icon .fa,
button.icon .fas,
button.icon .far,
button.icon .fal,
.button.icon-end .fa,
.button.icon-end .fas,
.button.icon-end .far,
.button.icon-end .fal,
.button.icon .fa,
.button.icon .fas,
.button.icon .far,
.button.icon .fal,
a.button.icon-end .fa,
a.button.icon-end .fas,
a.button.icon-end .far,
a.button.icon-end .fal,
a.button.icon .fa,
a.button.icon .fas,
a.button.icon .far,
a.button.icon .fal {
    margin-right: 0;
}

button.icon-end.icon-margin .fa,
button.icon-end.icon-margin .fas,
button.icon-end.icon-margin .far,
button.icon-end.icon-margin .fal,
.button.icon-end.icon-margin .fa,
.button.icon-end.icon-margin .fas,
.button.icon-end.icon-margin .far,
.button.icon-end.icon-margin .fal,
a.button.icon-end.icon-margin .fa,
a.button.icon-end.icon-margin .fas,
a.button.icon-end.icon-margin .far,
a.button.icon-end.icon-margin .fal {
    margin-left: 0.625rem;
}

button.pdf-link:before,
.button.pdf-link:before,
a.button.pdf-link:before {
    font-family: 'Font Awesome 5 Pro', "open-sans", sans-serif;
    display: inline-block;
    margin-right: 0.625rem;
    content: '\f1c1';
}

button.square,
.button.square,
a.button.square {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    padding: 0.9375rem 1.25rem;
}

button.uppercase,
.button.uppercase,
a.button.uppercase {
    text-transform: uppercase;
}

.js span.button {
    cursor: pointer;
}

.button-row.margin-top {
    margin-top: 0.625rem;
}

.button-row .button {
    margin-bottom: 0.625rem;
}

@media screen and (min-width: 48rem) {
    .button-row .button + .button {
        margin-left: 0.625rem;
    }
}

a:first-child:last-child[href$=".pdf"]:not(.no-icon):before,
a:first-child:last-child[type="application/pdf"]:not(.no-icon):before {
    font-family: 'Font Awesome 5 Pro', "open-sans", sans-serif;
    display: inline-block;
    margin-right: 0.625rem;
}

.ajax-notification {
    color: #27455f;
    text-transform: uppercase;
    font-weight: 700;
}

    .ajax-notification.margin-top {
        margin-top: 0.625rem;
    }

    .ajax-notification .fa {
        font-size: 1.5em;
    }

.cms-form {
    position: relative;
    z-index: 2;
    margin-bottom: 1.25rem;
}

@media screen and (max-width: 64rem) {
    .cms-form {
        margin-bottom: 2.5rem;
    }
}

.cms-form .form-overlay {
    z-index: 10;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

    .cms-form .form-overlay,
    .cms-form .form-overlay span {
        background: #fff;
        background: rgba(255, 255, 255, 0.8);
    }

.alt .cms-form .form-overlay,
.alt .cms-form .form-overlay span {
    background: #f0f1ed;
    background: rgba(240, 241, 237, 0.8);
}

.cms-form .form-overlay span {
    margin-bottom: 0.625rem;
    -webkit-border-radius: 0.3125rem;
    -moz-border-radius: 0.3125rem;
    border-radius: 0.3125rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    font-weight: 500;
    font-size: 2rem;
    position: absolute;
    display: block;
    width: 18.75rem;
    top: 10%;
    left: 50%;
    margin-left: -9.375rem;
    line-height: 1.2;
    text-align: center;
}

    .cms-form .form-overlay span when (@p =false) {
        padding: 0.625rem;
    }

    .cms-form .form-overlay span when (@b =false) {
        background: #fff;
    }

.section.alt .cms-form .form-overlay span when (@b =false) {
    background: #f0f1ed;
}

.cms-form .form-overlay span when (@r =false) {
    -webkit-border-radius: 0.625rem;
    -moz-border-radius: 0.625rem;
    border-radius: 0.625rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.cms-form .form-overlay span when (@shadow =true) {
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.cms-form .form-overlay span when not (@p =false) {
    padding: false;
}

.cms-form .form-overlay span when not (@b =false) {
    background: #fff;
}

.cms-form .form-overlay span when not (@r =false) {
    -webkit-border-radius: 0.625rem;
    -moz-border-radius: 0.625rem;
    border-radius: 0.625rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.cms-form .form-overlay span i {
    display: block;
    margin: 0.625rem auto;
    font-size: 1.5em;
}

.csstransforms .cms-form .form-overlay span {
    margin: 0;
    width: 31.25rem;
    max-width: 90%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.ajax-info .fa:first-child,
.ajax-info .fas:first-child,
.ajax-info .far:first-child,
.ajax-info .fab:first-child {
    margin-right: 0.625rem;
}

.ajax-info.error {
    text-transform: uppercase;
    font-size: 1rem;
    margin: 0.625rem auto;
    font-weight: 500;
}

.help-block.error-message,
.error-message {
    color: #c60f13;
    text-align: right;
    display: block;
    font-weight: 700;
}

    .help-block.error-message:before,
    .error-message:before {
        font-family: 'Font Awesome 5 Pro', "open-sans", sans-serif;
        content: '\f071';
        display: inline-block;
        margin-right: 0.3125rem;
    }

.submit-button,
.recaptcha-container {
    margin-top: 0.625rem;
}

@media screen and (max-width: 320px) {
    .recaptcha-container {
        transform: scale(0.93);
        -webkit-transform: scale(0.93);
        transform-origin: 0 0;
        -webkit-transform-origin: 0 0;
    }
}

@media screen and (max-width: 304px) {
    .recaptcha-container {
        transform: scale(0.7);
        -webkit-transform: scale(0.8);
        transform-origin: 0 0;
        -webkit-transform-origin: 0 0;
    }
}

@media screen and (max-width: 295px) {
    .recaptcha-container {
        transform: scale(0.7);
        -webkit-transform: scale(0.7);
        transform-origin: 0 0;
        -webkit-transform-origin: 0 0;
    }
}

.vacancy-view .info-container {
    padding: 0.625rem 0.9375rem;
    margin-bottom: 1.25rem;
    background: #fff;
}

    .vacancy-view .info-container dl dt {
        width: 30%;
        float: left;
        clear: left;
    }

    .vacancy-view .info-container dl dd {
        margin-left: 30%;
    }

.vacancy-view .section.alt .info-container {
    background: #f0f1ed;
}

.vacancy-view ul li ul {
    margin-top: 0.625rem;
    margin-bottom: 0.625rem;
}

    .vacancy-view ul li ul li:before {
        background: #242e40;
    }

@media screen and (min-width: 48rem) {
    .vacancy-view .job-requirements.twocolumn {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
        -webkit-column-gap: 1.25rem;
        -moz-column-gap: 1.25rem;
        column-gap: 1.25rem;
    }

        .vacancy-view .job-requirements.twocolumn > h2:first-child {
            margin-top: 0;
        }

        .vacancy-view .job-requirements.twocolumn h2 {
            margin-top: 2.5rem;
            break-after: avoid;
        }

            .vacancy-view .job-requirements.twocolumn h2 + * {
                break-before: avoid;
            }

        .vacancy-view .job-requirements.twocolumn div {
            break-inside: avoid;
            -webkit-column-break-inside: avoid;
            page-break-inside: avoid;
        }

        .vacancy-view .job-requirements.twocolumn table {
            break-inside: avoid;
        }

            .vacancy-view .job-requirements.twocolumn table thead tr td:first-child:nth-last-child(2),
            .vacancy-view .job-requirements.twocolumn table thead tr th:first-child:nth-last-child(2),
            .vacancy-view .job-requirements.twocolumn table tbody tr td:first-child:nth-last-child(2),
            .vacancy-view .job-requirements.twocolumn table tbody tr th:first-child:nth-last-child(2) {
                width: 50%;
            }
}

.cms-vacancy-form .input.textarea textarea {
    min-height: 9rem;
}

    .cms-vacancy-form .input.textarea textarea:first-child {
        margin-top: 0.625rem;
    }

.cms-vacancy-form .input textarea#JobApplicationAddress {
    min-height: 9rem;
}

.cms-vacancy-form .input textarea[id^=JobApplicationWorkHistory][id$=Address] {
    min-height: 5rem;
}

.cms-vacancy-form .input textarea[id^=JobApplicationWorkHistory][id$=ReasonForLeaving] {
    min-height: 11.7rem;
}

.cms-vacancy-form .input textarea[id^=JobApplicationWorkHistory][id$=Responsibilities] {
    min-height: 19rem;
}

.cms-vacancy-form .input textarea[id^=JobApplicationWorkHistory][id$=Address] {
    min-height: 5rem;
}

.cms-vacancy-form .info-container {
    padding: 0.625rem 0.9375rem;
    margin-bottom: 1.25rem;
    background: #fff;
}

.cms-vacancy-form .education-titles {
    font-weight: 700;
}

@media screen and (max-width: 64rem) {
    .cms-vacancy-form .education-titles {
        display: none;
    }
}

.cms-vacancy-form .education-row {
    padding-top: 0.625rem;
    padding-bottom: 0 0.625rem;
}

@media screen and (min-width: 64.0625rem) {
    .cms-vacancy-form .education-row label {
        display: none;
    }
}

@media screen and (min-width: 48rem) {
    .cms-vacancy-form .recaptcha-container {
        display: inline-block;
    }
}

.cms-vacancy-form .section.alt .cms-vacancy-form .info-container {
    background: #fff;
}

.cms-vacancy-form .form-overlay {
    z-index: 10;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

    .cms-vacancy-form .form-overlay,
    .cms-vacancy-form .form-overlay span {
        background: #fff;
        background: rgba(255, 255, 255, 0.8);
    }

.alt .cms-vacancy-form .form-overlay,
.alt .cms-vacancy-form .form-overlay span {
    background: #f0f1ed;
    background: rgba(240, 241, 237, 0.8);
}

.cms-vacancy-form .form-overlay span {
    margin-bottom: 0.625rem;
    font-weight: 500;
    font-size: 2rem;
    position: absolute;
    display: block;
    width: 18.75rem;
    top: 10%;
    left: 50%;
    margin-left: -9.375rem;
    line-height: 1.2;
    text-align: center;
}

    .cms-vacancy-form .form-overlay span when (@p =false) {
        padding: 0.625rem;
    }

    .cms-vacancy-form .form-overlay span when (@b =false) {
        background: #fff;
    }

.section.alt .cms-vacancy-form .form-overlay span when (@b =false) {
    background: #f0f1ed;
}

.cms-vacancy-form .form-overlay span when (@r =false) {
    -webkit-border-radius: 0.625rem;
    -moz-border-radius: 0.625rem;
    border-radius: 0.625rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.cms-vacancy-form .form-overlay span when (@shadow =true) {
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.cms-vacancy-form .form-overlay span when not (@p =false) {
    padding: false;
}

.cms-vacancy-form .form-overlay span when not (@b =false) {
    background: #fff;
}

.cms-vacancy-form .form-overlay span when not (@r =false) {
    -webkit-border-radius: 0.625rem;
    -moz-border-radius: 0.625rem;
    border-radius: 0.625rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.cms-vacancy-form .form-overlay span i {
    display: block;
    margin: 0.625rem auto;
    font-size: 1.5em;
}

.csstransforms .cms-vacancy-form .form-overlay span {
    margin: 0;
    width: 31.25rem;
    max-width: 90%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.cms-vacancy-form .upload-progress-container {
    border: 1px solid #242e40;
    overflow: hidden;
    width: 100%;
    -webkit-border-radius: 0.3125rem;
    -moz-border-radius: 0.3125rem;
    border-radius: 0.3125rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

    .cms-vacancy-form .upload-progress-container .upload-progress {
        display: block;
        padding: 0.625rem 0;
        overflow: hidden;
        text-align: center;
        background: #5b6270;
        color: #fff;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

        .cms-vacancy-form .upload-progress-container .upload-progress span {
            font-size: 0.625rem;
            color: #fff;
        }

.cms-vacancy-form .button.upload-button {
    display: block;
    text-aligin: center;
    margin-bottom: 0.625rem;
}

    .cms-vacancy-form .button.upload-button span {
        display: block;
        font-size: 0.66em;
    }

.cms-vacancy-form .button.remove-button {
    margin-top: 0.625rem;
    display: block;
    font-size: 0.8725rem;
    background: #9297a0;
}

.test-banner {
    clear: both;
    background: #c60f13;
    color: #fff;
    text-align: center;
    padding: 0.625rem 1.25rem;
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    font-weight: 700;
    z-index: 1000;
    -webkit-box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.5);
    box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.5);
    text-shadow: 0 0px 5px #000;
    text-transform: uppercase;
}

.staff-element-wrapper.profiles .staff-element.profile-card {
    margin-top: 20px;
    margin-bottom: 20px;
}

    .staff-element-wrapper.profiles .staff-element.profile-card .image-container {
        position: relative;
        display: inline-block;
    }

        .staff-element-wrapper.profiles .staff-element.profile-card .image-container:before {
            content: '\00a0';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(39, 69, 95, 0.3);
            -webkit-transition: all 250ms linear 0ms;
            -moz-transition: all 250ms linear 0ms;
            -o-transition: all 250ms linear 0ms;
            -ms-transition: all 250ms linear 0ms;
            transition: all 250ms linear 0ms;
            opacity: 1;
            z-index: 2;
        }

        .staff-element-wrapper.profiles .staff-element.profile-card .image-container img {
            z-index: 1;
            -webkit-filter: grayscale(1);
            -mox-filter: grayscale(1);
            filter: grayscale(1);
            opacity: 0.5;
            -webkit-transition: all 250ms linear 0ms;
            -moz-transition: all 250ms linear 0ms;
            -o-transition: all 250ms linear 0ms;
            -ms-transition: all 250ms linear 0ms;
            transition: all 250ms linear 0ms;
        }

        .staff-element-wrapper.profiles .staff-element.profile-card .image-container:hover:before {
            opacity: 0;
        }

        .staff-element-wrapper.profiles .staff-element.profile-card .image-container:hover img {
            -webkit-filter: grayscale(0);
            -mox-filter: grayscale(0);
            filter: grayscale(0);
            opacity: 1;
        }

    .staff-element-wrapper.profiles .staff-element.profile-card.active .image-container:before {
        opacity: 0;
    }

    .staff-element-wrapper.profiles .staff-element.profile-card.active .image-container img {
        -webkit-filter: grayscale(0);
        -mox-filter: grayscale(0);
        filter: grayscale(0);
        opacity: 1;
    }

    .staff-element-wrapper.profiles .staff-element.profile-card h3,
    .staff-element-wrapper.profiles .staff-element.profile-card p {
        margin: 0;
        padding: 0;
        text-align: left;
    }

    .staff-element-wrapper.profiles .staff-element.profile-card h3 {
        color: #242e40;
        font-size: 1.5625rem;
        line-height: 1;
        margin-top: -2px;
        margin-bottom: 5px;
        font-weight: 300;
    }

    .staff-element-wrapper.profiles .staff-element.profile-card p.staff-position {
        color: #242e40;
        font-size: 1.125rem;
        margin-bottom: 0.9375rem;
    }

        .staff-element-wrapper.profiles .staff-element.profile-card p.staff-position strong {
            font-weight: 400;
        }

    .staff-element-wrapper.profiles .staff-element.profile-card p.staff-email,
    .staff-element-wrapper.profiles .staff-element.profile-card p.staff-phone {
        font-size: 0.875rem;
        font-weight: 300;
        color: #242e40;
    }

        .staff-element-wrapper.profiles .staff-element.profile-card p.staff-email i,
        .staff-element-wrapper.profiles .staff-element.profile-card p.staff-phone i {
            font-size: 1.25rem;
            color: #242e40;
            width: 2.1875rem;
            vertical-align: -2px;
        }

        .staff-element-wrapper.profiles .staff-element.profile-card p.staff-email a,
        .staff-element-wrapper.profiles .staff-element.profile-card p.staff-phone a {
            font-weight: 600;
            -webkit-transition: opacity 250ms linear 0ms;
            -moz-transition: opacity 250ms linear 0ms;
            -o-transition: opacity 250ms linear 0ms;
            -ms-transition: opacity 250ms linear 0ms;
            transition: opacity 250ms linear 0ms;
        }

            .staff-element-wrapper.profiles .staff-element.profile-card p.staff-email a:hover,
            .staff-element-wrapper.profiles .staff-element.profile-card p.staff-phone a:hover {
                opacity: 0.6;
            }

    .staff-element-wrapper.profiles .staff-element.profile-card p.staff-email {
        margin-bottom: 0.3125rem;
    }

    .staff-element-wrapper.profiles .staff-element.profile-card p.staff-phone {
        margin-bottom: 0.9375rem;
    }

    .staff-element-wrapper.profiles .staff-element.profile-card .button {
        padding: 10px 10px;
        color: #27455f;
        border-width: 1px;
    }

.staff-element-wrapper.profiles .columns.image-wrapper,
.staff-element-wrapper.profiles .columns.content-wrapper {
    width: auto;
}

.staff-element-wrapper.profiles .columns.three,
.staff-element-wrapper.profiles .columns.four {
    width: auto;
}

.staff-element-wrapper.profiles .columns.three {
    width: 25%;
    min-width: 26.5625rem;
}

    .staff-element-wrapper.profiles .columns.three .content-wrapper {
        max-width: 294px;
    }

.staff-element-wrapper.profiles .columns.four {
    width: 33.333333333333%;
    min-width: 28.125rem;
}

.staff-element-wrapper.profiles .columns.image-wrapper .image-container {
    width: 6.875rem;
}

@media screen and (max-width: 112.875rem) {
    .staff-element-wrapper.profiles .columns.three,
    .staff-element-wrapper.profiles .columns.four {
        width: 33.333333333333%;
        min-width: 29.625rem;
    }

        .staff-element-wrapper.profiles .columns.three .content-wrapper,
        .staff-element-wrapper.profiles .columns.four .content-wrapper {
            max-width: 20.3125rem;
        }
}

@media screen and (max-width: 95.75rem) {
    .staff-element-wrapper.profiles .columns.three,
    .staff-element-wrapper.profiles .columns.four {
        width: 50%;
        min-width: 29.625rem;
    }

        .staff-element-wrapper.profiles .columns.three .content-wrapper,
        .staff-element-wrapper.profiles .columns.four .content-wrapper {
            max-width: 20.3125rem;
        }
}

@media screen and (max-width: 47.9375rem) {
    .staff-element-wrapper.profiles .columns.three,
    .staff-element-wrapper.profiles .columns.four {
        width: 100%;
    }
}

@media screen and (max-width: 31.25rem) {
    .staff-element-wrapper.profiles .columns.three,
    .staff-element-wrapper.profiles .columns.four {
        width: 100%;
        min-width: 100%;
    }

        .staff-element-wrapper.profiles .columns.three .content-wrapper,
        .staff-element-wrapper.profiles .columns.four .content-wrapper {
            margin-top: 1.25rem;
            width: 100%;
            max-width: 100%;
            padding-bottom: 1.875rem;
            border-bottom: 1px solid #242e40;
            margin-bottom: 0.625rem;
        }
}

.mfp-content .staff-profile {
    background: #fff;
    padding: 1.875rem 0 1.25rem;
}

.staff-profile {
    position: relative;
}

    .staff-profile h1 small {
        display: block;
        font-size: 0.65em;
        font-weight: 300;
        color: #27455f;
    }

    .staff-profile .close-button {
        font-size: 1.25rem;
        position: absolute;
        top: 0.625rem;
        right: 0.625rem;
        cursor: pointer;
    }

    .staff-profile .loading-message,
    .staff-profile .error-message {
        text-align: center;
        font-size: 1.25rem;
    }

    .staff-profile .image-container {
        margin-bottom: 1.25rem;
    }

    .staff-profile .staff-contact-info ul li {
        margin-left: 0;
        padding-left: 0;
        list-style-type: none;
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .staff-profile .staff-contact-info .fa {
        margin-right: 0.625rem;
    }

    .staff-profile .staff-contact-info .fa-linkedin {
        color: #007bb5;
    }

    .staff-profile .staff-contact-info .fa-facebook-official {
        color: #0059b2;
    }

    .staff-profile .staff-contact-info .fa-twitter {
        color: #00bfff;
    }

    .staff-profile .staff-contact-info .fa-google-plus-official {
        color: #ff4d4d;
    }

.flash-message,
.message {
    text-align: center;
}

    .flash-message.text-left,
    .message.text-left {
        text-align: left;
    }

    .flash-message.big,
    .message.big {
        font-size: 2rem;
    }

        .flash-message.big .fa:first-child,
        .message.big .fa:first-child {
            display: block;
            margin: 0.625rem auto;
            text-align: center;
        }

    .flash-message.faded,
    .message.faded {
        opacity: 0.5;
    }

    .flash-message span,
    .message span {
        display: block;
        font-size: 0.5em;
    }

    .flash-message.error.invert,
    .message.error.invert {
        background: #c60f13;
        color: #fff;
        padding: 0.625rem;
        -webkit-border-radius: 0.3125rem;
        -moz-border-radius: 0.3125rem;
        border-radius: 0.3125rem;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
    }

    .flash-message.error a,
    .message.error a {
        color: #fff;
        text-decoration: underline;
    }

        .flash-message.error a:hover,
        .message.error a:hover {
            color: #fff;
            text-decoration: none;
        }

    .flash-message.info,
    .message.info {
        color: #27455f;
    }

        .flash-message.info.invert,
        .message.info.invert {
            background: rgba(39, 69, 95, 0.5);
            color: #000;
            padding: 0.625rem;
            -webkit-border-radius: 0.3125rem;
            -moz-border-radius: 0.3125rem;
            border-radius: 0.3125rem;
            -moz-background-clip: padding;
            -webkit-background-clip: padding-box;
            background-clip: padding-box;
        }

.flash-message {
    margin-bottom: 0.125rem;
    padding: 0.625rem 0;
    background: #27455f;
    color: #fff;
}

    .flash-message .fa {
        margin-right: 0.625rem;
    }

    .flash-message.success {
        background: #5da423;
    }

    .flash-message.error {
        color: #fff;
        background: #c60f13;
    }

.relationship-block {
    position: relative;
    width: 100%;
}

    .relationship-block:after {
        content: "";
        display: block;
        padding-bottom: 100%;
    }

    .relationship-block a {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        font-weight: 400;
        cursor: default;
    }

.hide-button .relationship-block a {
    cursor: pointer;
}

.relationship-block .content-container {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

    .relationship-block .content-container .title {
        position: absolute;
        color: #fff;
        text-transform: uppercase;
        font-weight: 300;
        font-size: 1.5625rem;
        text-align: center;
        top: 50%;
        padding: 0 0.625rem;
        width: 100%;
        transform: translate(0, -50%);
        -webkit-transition: top 250ms linear 0ms;
        -moz-transition: top 250ms linear 0ms;
        -o-transition: top 250ms linear 0ms;
        -ms-transition: top 250ms linear 0ms;
        transition: top 250ms linear 0ms;
    }

    .relationship-block .content-container .description {
        padding: 0 0.625rem;
        position: absolute;
        width: 100%;
        text-align: center;
        top: 50%;
        opacity: 0;
        color: #fff;
        font-size: 0.9375rem;
        font-style: italic;
        line-height: 1.5;
        -webkit-transition: all 250ms linear 0ms;
        -moz-transition: all 250ms linear 0ms;
        -o-transition: all 250ms linear 0ms;
        -ms-transition: all 250ms linear 0ms;
        transition: all 250ms linear 0ms;
    }

.hide-description .relationship-block .content-container .description {
    display: none;
}

.relationship-block .content-container .button-container {
    padding: 0 0.625rem;
    position: absolute;
    top: 100%;
    width: 100%;
    text-align: center;
    opacity: 0;
    -webkit-transition: opacity 250ms linear, top 250ms linear;
    -moz-transition: opacity 250ms linear, top 250ms linear;
    -o-transition: opacity 250ms linear, top 250ms linear;
    -ms-transition: opacity 250ms linear, top 250ms linear;
    transition: opacity 250ms linear, top 250ms linear;
}

    .relationship-block .content-container .button-container .button {
        margin: 0 auto;
        border: 2px solid #fff;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        border-radius: 0;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        background: rgba(255, 255, 255, 0);
        text-transform: uppercase;
        font-size: 0.9375rem;
        padding: 0.625rem 1.5rem;
    }

        .relationship-block .content-container .button-container .button:hover {
            color: #000;
            background: #fff;
        }

.hide-button .relationship-block .content-container .button-container {
    display: none;
}

.relationship-block .image-container {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #242e40;
}

    .relationship-block .image-container img {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%) scale(1.2);
        transform-origin: center;
        -webkit-transition: all 250ms linear 0ms;
        -moz-transition: all 250ms linear 0ms;
        -o-transition: all 250ms linear 0ms;
        -ms-transition: all 250ms linear 0ms;
        transition: all 250ms linear 0ms;
        margin: -0.3125rem -0.3125rem -0.3125rem -0.3125rem;
    }

    .relationship-block .image-container:after {
        content: '\00a0';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0.4;
        background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.62) 50%, rgba(255, 255, 255, 0.1) 100%);
        background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.62) 50%, rgba(255, 255, 255, 0.1) 100%);
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.62) 50%, rgba(255, 255, 255, 0.1) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eb000000', endColorstr='#1affffff', GradientType=0);
        background-size: 200%;
        background-position: 0% 0%;
        -webkit-transition: background-position 250ms linear 0ms;
        -moz-transition: background-position 250ms linear 0ms;
        -o-transition: background-position 250ms linear 0ms;
        -ms-transition: background-position 250ms linear 0ms;
        transition: background-position 250ms linear 0ms;
    }

.relationship-block:hover .content-container .title {
    top: 25%;
    -webkit-transition: top 250ms linear 250ms;
    -moz-transition: top 250ms linear 250ms;
    -o-transition: top 250ms linear 250ms;
    -ms-transition: top 250ms linear 250ms;
    transition: top 250ms linear 250ms;
}

.relationship-block:hover .content-container .description {
    top: 37%;
    opacity: 1;
    -webkit-transition: all 250ms linear 250ms;
    -moz-transition: all 250ms linear 250ms;
    -o-transition: all 250ms linear 250ms;
    -ms-transition: all 250ms linear 250ms;
    transition: all 250ms linear 250ms;
}

.relationship-block:hover .content-container .button-container {
    top: 75%;
    opacity: 1;
    -webkit-transition: opacity 250ms linear 650ms, top 250ms linear 500ms;
    -moz-transition: opacity 250ms linear 650ms, top 250ms linear 500ms;
    -o-transition: opacity 250ms linear 650ms, top 250ms linear 500ms;
    -ms-transition: opacity 250ms linear 650ms, top 250ms linear 500ms;
    transition: opacity 250ms linear 650ms, top 250ms linear 500ms;
}

.relationship-block:hover .image-container img {
    transform: translate(-50%, -50%) scale(1.7);
}

.relationship-block:hover .image-container:after {
    background-position: 0% 100%;
}

.block-container,
.combined-block {
    display: block;
    position: relative;
}

    .block-container:after,
    .combined-block:after {
        content: "";
        display: block;
        padding-bottom: 100%;
    }

.relationship-container {
    margin-bottom: 1.25rem;
}

    .relationship-container:nth-of-type(2) .relationship-block .image-container {
        background: #253346;
    }

    .relationship-container:nth-of-type(3) .relationship-block .image-container {
        background: #25374c;
    }

    .relationship-container:nth-of-type(4) .relationship-block .image-container {
        background: #263c53;
    }

    .relationship-container:nth-of-type(5) .relationship-block .image-container {
        background: #264059;
    }

    .relationship-container:nth-of-type(6) .relationship-block .image-container {
        background: #27455f;
    }

    .relationship-container:nth-of-type(7) .relationship-block .image-container {
        background: #264059;
    }

    .relationship-container:nth-of-type(8) .relationship-block .image-container {
        background: #263c53;
    }

    .relationship-container:nth-of-type(9) .relationship-block .image-container {
        background: #25374c;
    }

    .relationship-container:nth-of-type(10) .relationship-block .image-container {
        background: #253346;
    }

@media screen and (min-width: 64.0625rem) {
    .relationship-container.five-blocks {
        width: 20%;
    }
}

.relationship-container .block-container .action-block,
.relationship-container .block-container .call-us-block {
    width: 100%;
    height: 100%;
    position: absolute;
}

.relationship-action-wrapper .call-us-block-wrapper,
.relationship-action-wrapper .action-block-wrapper,
.relationship-container .call-us-block-wrapper,
.relationship-container .action-block-wrapper,
.combined-block .call-us-block-wrapper,
.combined-block .action-block-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    padding-bottom: 0.625rem;
}

.relationship-action-wrapper .action-block-wrapper,
.relationship-container .action-block-wrapper,
.combined-block .action-block-wrapper {
    top: 50%;
    padding-top: 0.625rem;
    padding-bottom: 0;
}

.relationship-action-wrapper .call-us-block,
.relationship-container .call-us-block,
.combined-block .call-us-block {
    border: 1px solid #242e40;
    width: 100%;
    height: 100%;
    position: relative;
}

    .relationship-action-wrapper .call-us-block a,
    .relationship-container .call-us-block a,
    .combined-block .call-us-block a {
        display: block;
        width: 100%;
        height: 100%;
        background: #fff;
        -webkit-transition: all 250ms linear 0ms;
        -moz-transition: all 250ms linear 0ms;
        -o-transition: all 250ms linear 0ms;
        -ms-transition: all 250ms linear 0ms;
        transition: all 250ms linear 0ms;
        color: #242e40;
        text-decoration: none;
        font-weight: 400;
    }

        .relationship-action-wrapper .call-us-block a:hover,
        .relationship-container .call-us-block a:hover,
        .combined-block .call-us-block a:hover {
            color: #fff;
            background: #242e40;
        }

            .relationship-action-wrapper .call-us-block a:hover i,
            .relationship-container .call-us-block a:hover i,
            .combined-block .call-us-block a:hover i {
                -webkit-animation-fill-mode: both;
                -moz-animation-fill-mode: both;
                -ms-animation-fill-mode: both;
                -o-animation-fill-mode: both;
                animation-fill-mode: both;
                -webkit-animation-duration: 1s;
                -moz-animation-duration: 1s;
                -ms-animation-duration: 1s;
                -o-animation-duration: 1s;
                animation-duration: 1s;
                animation-delay: initial;
                animation-direction: initial;
                animation-play-state: initial;
                -webkit-animation-iteration-count: infinite;
                -moz-animation-iteration-count: infinite;
                -ms-animation-iteration-count: infinite;
                -o-animation-iteration-count: infinite;
                -webkit-animation-name: wiggle;
                -moz-animation-name: wiggle;
                -o-animation-name: wiggle;
                animation-name: wiggle;
                -webkit-animation-timing-function: ease-in;
                -moz-animation-timing-function: ease-in;
                -o-animation-timing-function: ease-in;
                animation-timing-function: ease-in;
            }

@media screen and (min-width: 64.0625rem) {
    .relationship-action-wrapper .call-us-block a:hover i,
    .relationship-container .call-us-block a:hover i,
    .combined-block .call-us-block a:hover i {
        font-size: 3.4375rem;
        margin-top: -5.3125rem;
    }
}

.relationship-action-wrapper .call-us-block a i,
.relationship-container .call-us-block a i,
.combined-block .call-us-block a i {
    display: block;
    font-size: 2.1875rem;
    text-align: center;
    position: absolute;
    top: 50%;
    line-height: 1;
    margin-top: -4.0625rem;
    width: 100%;
    -webkit-transition: all 250ms linear 0ms;
    -moz-transition: all 250ms linear 0ms;
    -o-transition: all 250ms linear 0ms;
    -ms-transition: all 250ms linear 0ms;
    transition: all 250ms linear 0ms;
}

.relationship-action-wrapper .call-us-block a .telephone-number,
.relationship-container .call-us-block a .telephone-number,
.combined-block .call-us-block a .telephone-number {
    display: block;
    width: 100%;
    font-size: 1.875rem;
    line-height: 1;
    text-align: center;
    position: absolute;
    top: 50%;
    margin-top: -0.9375rem;
}

.relationship-action-wrapper .call-us-block a .note,
.relationship-container .call-us-block a .note,
.combined-block .call-us-block a .note {
    display: block;
    width: 100%;
    font-size: 1.0625rem;
    text-align: center;
    position: absolute;
    top: 50%;
    margin-top: 1.5625rem;
    text-transform: uppercase;
    font-weight: 300;
}

.relationship-action-wrapper .action-block,
.relationship-container .action-block,
.combined-block .action-block {
    border: 1px solid #242e40;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

    .relationship-action-wrapper .action-block:before,
    .relationship-container .action-block:before,
    .combined-block .action-block:before {
        content: '\00a0';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: url('../img/action-block-bg.jpg') no-repeat center center;
        background-size: cover;
        -webkit-transition: transform 250ms linear 0ms;
        -moz-transition: transform 250ms linear 0ms;
        -o-transition: transform 250ms linear 0ms;
        -ms-transition: transform 250ms linear 0ms;
        transition: transform 250ms linear 0ms;
        transform: scale(1);
        z-index: 1;
    }

.csstransforms .relationship-action-wrapper .action-block:before,
.csstransforms .relationship-container .action-block:before,
.csstransforms .combined-block .action-block:before {
    top: 50%;
    left: 50%;
    transform: scale(1) translate(-50%, -50%);
}

.relationship-action-wrapper .action-block:hover:before,
.relationship-container .action-block:hover:before,
.combined-block .action-block:hover:before {
    transform: scale(1.1);
}

.csstransforms .relationship-action-wrapper .action-block:hover:before,
.csstransforms .relationship-container .action-block:hover:before,
.csstransforms .combined-block .action-block:hover:before {
    transform: scale(1.1) translate(-50%, -50%);
}

.relationship-action-wrapper .action-block a,
.relationship-container .action-block a,
.combined-block .action-block a {
    z-index: 2;
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(36, 46, 64, 0.82);
    -webkit-transition: all 250ms linear 0ms;
    -moz-transition: all 250ms linear 0ms;
    -o-transition: all 250ms linear 0ms;
    -ms-transition: all 250ms linear 0ms;
    transition: all 250ms linear 0ms;
    color: #fff;
    text-decoration: none;
    font-weight: 400;
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0);
}

    .relationship-action-wrapper .action-block a:hover,
    .relationship-container .action-block a:hover,
    .combined-block .action-block a:hover {
        color: #fff;
        background: rgba(36, 46, 64, 0.5);
        text-shadow: 0px 0px 5px #000;
    }

        .relationship-action-wrapper .action-block a:hover span.line .last-word,
        .relationship-container .action-block a:hover span.line .last-word,
        .combined-block .action-block a:hover span.line .last-word {
            font-size: 2.5rem;
        }

        .relationship-action-wrapper .action-block a:hover span.line:nth-of-type(2) .last-word,
        .relationship-container .action-block a:hover span.line:nth-of-type(2) .last-word,
        .combined-block .action-block a:hover span.line:nth-of-type(2) .last-word {
            -webkit-transition-delay: 250ms;
            transition-delay: 250ms;
        }

        .relationship-action-wrapper .action-block a:hover span.line:nth-of-type(3) .last-word,
        .relationship-container .action-block a:hover span.line:nth-of-type(3) .last-word,
        .combined-block .action-block a:hover span.line:nth-of-type(3) .last-word {
            -webkit-transition-delay: 500ms;
            transition-delay: 500ms;
        }

        .relationship-action-wrapper .action-block a:hover span.line:nth-of-type(4) .last-word,
        .relationship-container .action-block a:hover span.line:nth-of-type(4) .last-word,
        .combined-block .action-block a:hover span.line:nth-of-type(4) .last-word {
            -webkit-transition-delay: 750ms;
            transition-delay: 750ms;
        }

        .relationship-action-wrapper .action-block a:hover span.line:nth-of-type(5) .last-word,
        .relationship-container .action-block a:hover span.line:nth-of-type(5) .last-word,
        .combined-block .action-block a:hover span.line:nth-of-type(5) .last-word {
            -webkit-transition-delay: 1000ms;
            transition-delay: 1000ms;
        }

        .relationship-action-wrapper .action-block a:hover span.line:nth-of-type(6) .last-word,
        .relationship-container .action-block a:hover span.line:nth-of-type(6) .last-word,
        .combined-block .action-block a:hover span.line:nth-of-type(6) .last-word {
            -webkit-transition-delay: 1250ms;
            transition-delay: 1250ms;
        }

    .relationship-action-wrapper .action-block a .text-content,
    .relationship-container .action-block a .text-content,
    .combined-block .action-block a .text-content {
        position: absolute;
        width: 100%;
        top: 0.625rem;
    }

.csstransforms .relationship-action-wrapper .action-block a .text-content,
.csstransforms .relationship-container .action-block a .text-content,
.csstransforms .combined-block .action-block a .text-content {
    top: 50%;
    transform: translate(0%, -50%);
}

.relationship-action-wrapper .action-block a span.line,
.relationship-container .action-block a span.line,
.combined-block .action-block a span.line {
    letter-spacing: 0.0625rem;
    width: 100%;
    display: block;
    font-size: 1.5625rem;
    line-height: 2.5rem;
    text-transform: uppercase;
    text-align: center;
}

    .relationship-action-wrapper .action-block a span.line .last-word,
    .relationship-container .action-block a span.line .last-word,
    .combined-block .action-block a span.line .last-word {
        -webkit-transition: font-size 250ms linear 0ms;
        -moz-transition: font-size 250ms linear 0ms;
        -o-transition: font-size 250ms linear 0ms;
        -ms-transition: font-size 250ms linear 0ms;
        transition: font-size 250ms linear 0ms;
        font-weight: 600;
    }

.relationship-action-wrapper {
    margin-top: 1.25rem;
}

    .relationship-action-wrapper .call-us-block-wrapper,
    .relationship-action-wrapper .action-block-wrapper {
        position: relative;
        padding: 0;
    }

        .relationship-action-wrapper .call-us-block-wrapper,
        .relationship-action-wrapper .call-us-block-wrapper a,
        .relationship-action-wrapper .action-block-wrapper,
        .relationship-action-wrapper .action-block-wrapper a,
        .relationship-action-wrapper .call-us-block,
        .relationship-action-wrapper .call-us-block a,
        .relationship-action-wrapper .action-block,
        .relationship-action-wrapper .action-block a {
            min-height: 6.25rem;
        }

    .relationship-action-wrapper .call-us-block {
        display: block;
        width: 100%;
        height: auto;
    }

        .relationship-action-wrapper .call-us-block a {
            padding: 1.125rem 0.625rem 0.625rem 6.25rem;
        }

            .relationship-action-wrapper .call-us-block a:hover i {
                font-size: 3.125rem;
                margin: 0;
            }

            .relationship-action-wrapper .call-us-block a i {
                position: absolute;
                width: auto;
                font-size: 3.125rem;
                margin: 0;
                top: 25%;
                left: 1.25rem;
            }

            .relationship-action-wrapper .call-us-block a .note,
            .relationship-action-wrapper .call-us-block a .telephone-number {
                position: relative;
                top: auto;
                bottom: auto;
                left: auto;
                right: auto;
                margin: 0;
                width: auto;
                text-align: left;
            }

.relationship-title {
    text-align: center;
}

    .relationship-title h2 {
        font-size: 2rem;
    }

.relationship-preview {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
}

.cms-map .cms-map-canvas {
    display: block;
    background: #b3b3b3;
    width: 100%;
    height: 25rem;
    height: 40vh;
}

@media screen and (max-width: 47.9375rem) {
    .cms-map .cms-map-canvas {
        min-height: 65vh;
    }
}

.map-size-short.cms-map .cms-map-canvas {
    height: 18.75rem;
}

.map-size-average.cms-map .cms-map-canvas {
    height: 37.5rem;
}

.map-size-large.cms-map .cms-map-canvas {
    height: 50rem;
}

.map-size-small.cms-map .cms-map-canvas {
    width: 18.75rem;
}

.map-size-medium.cms-map .cms-map-canvas {
    width: 37.5rem;
}

.map-size-large.cms-map .cms-map-canvas {
    width: 50rem;
}

.cms-map.map-border {
    background: #fff;
    padding: 2px;
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.get_directions.embeded {
    padding-top: 0.625rem;
    border-top: 1px solid #b7bec5;
    margin-top: 0.625rem;
    width: 100%;
    display: block;
}

    .get_directions.embeded label {
        display: block;
        margin-bottom: 0;
        font-weight: 700;
    }

    .get_directions.embeded input {
        margin-right: 2%;
        line-height: 1.2;
        padding: 0.3125rem;
        font-size: 1rem;
    }

    .get_directions.embeded button {
        display: inline-block;
        padding: 0.5625rem 0.5625rem;
        font-weight: 400;
        font-size: 0.9375rem;
        line-height: 1;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
    }

    .get_directions.embeded input,
    .get_directions.embeded button {
        width: 48%;
        display: inline-block;
        box-sizing: border-box;
    }

@media screen and (max-width: 31.25rem) {
    .get_directions.embeded input,
    .get_directions.embeded button {
        display: block;
        width: 100%;
        margin-right: 0;
    }

    .get_directions.embeded button {
        margin-top: 0.625rem;
    }
}

.section.map-container.closed > .map-wrapper {
    display: none;
}

video {
    width: 100% !important;
    height: auto !important;
}

.twitter-profile-feed ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

@media screen and (max-width: 64rem) {
    .twitter-profile-feed ul li:nth-child(n+6) {
        display: none;
    }
}

@media screen and (max-width: 47.9375rem) {
    .twitter-profile-feed ul li:nth-child(n+3) {
        display: none;
    }
}

.twitter-profile-feed ul li {
    padding: 0;
    margin: 0 0 1.25rem;
    overflow: hidden;
    position: relative;
}

@media screen and (min-width: 48rem) {
    .twitter-profile-feed ul li {
        padding-left: 5.1875rem;
    }
}

@media screen and (min-width: 48rem) {
    .twitter-profile-feed ul li .user {
        padding-left: 0;
    }
}

.twitter-profile-feed ul li .user a {
    display: block;
    overflow: hidden;
    text-decoration: none;
    margin-bottom: 0.625rem;
    clear: left;
}

@media screen and (min-width: 48rem) {
    .twitter-profile-feed ul li .user a {
        clear: none;
        margin-bottom: 0;
    }
}

.twitter-profile-feed ul li .user a img {
    float: left;
    clear: left;
    margin-right: 0.625rem;
}

@media screen and (min-width: 48rem) {
    .twitter-profile-feed ul li .user a img {
        float: none;
        clear: none;
        position: absolute;
        top: 0;
        left: 0;
    }
}

.twitter-profile-feed ul li .user a span {
    font-weight: 700;
    color: #545454;
    margin-right: 0.625rem;
}

    .twitter-profile-feed ul li .user a span:first-child {
        margin-right: 0;
    }

    .twitter-profile-feed ul li .user a span:last-child {
        font-weight: 400;
        color: #545454;
    }

.twitter-profile-feed ul li .tweet {
    margin-bottom: 0;
    display: block;
    width: 100%;
}

.twitter-profile-feed ul li .timePosted {
    display: inline-block;
    float: left;
    width: 50%;
    line-height: 2;
}

    .twitter-profile-feed ul li .timePosted a {
        color: rgba(84, 84, 84, 0.5);
        text-decoration: none;
        font-weight: 400;
    }

        .twitter-profile-feed ul li .timePosted a:hover {
            color: #242e40;
        }

    .twitter-profile-feed ul li .timePosted + .interact {
        float: left;
        width: 50%;
    }

.twitter-profile-feed ul li .interact {
    display: inline-block;
    text-align: right;
    margin: 0;
    font-size: 1.25rem;
    line-height: 1;
}

    .twitter-profile-feed ul li .interact .twitter_reply_icon,
    .twitter-profile-feed ul li .interact .twitter_retweet_icon,
    .twitter-profile-feed ul li .interact .twitter_fav_icon {
        margin-right: 0.625rem;
        color: rgba(84, 84, 84, 0.5);
        text-decoration: none;
    }

        .twitter-profile-feed ul li .interact .twitter_reply_icon:hover,
        .twitter-profile-feed ul li .interact .twitter_retweet_icon:hover,
        .twitter-profile-feed ul li .interact .twitter_fav_icon:hover {
            color: #242e40;
        }

.twitter-profile-feed ul li .media {
    margin: 0 auto;
    text-align: center;
    margin-bottom: 0.625rem;
}

@media screen and (min-width: 48rem) {
    .twitter-profile-feed ul li .media {
        max-width: 31.25rem;
    }

        .twitter-profile-feed ul li .media img {
            max-width: 90%;
        }
}

.twitter-profile-feed ul li .media.verical img {
    max-width: auto;
    width: auto;
    height: 100%;
    max-height: 31.25rem;
    max-height: 90vh;
}

.facebook-profile-feed {
    background: #fff;
}

.news-element.single h3 {
    font-size: 1rem;
    text-transform: none;
}

    .news-element.single h3 a {
        text-decoration: none;
    }

        .news-element.single h3 a:hover {
            text-decoration: underline;
        }

.news-element.single .button-row .eq {
    vertical-align: bottom;
}

    .news-element.single .button-row .eq:before {
        content: "";
        display: inline-block;
        vertical-align: bottom;
        height: 100%;
    }

.news-element.single .button-row .button {
    vertical-align: bottom;
    display: inline-block;
    padding: 1.25rem 1.5625rem;
    font-size: 1rem;
    font-weight: 400;
}

.news-element.single .button-row .news-bench-man {
    display: inline-block;
    vertical-align: bottom;
}

    .news-element.single .button-row .news-bench-man,
    .news-element.single .button-row .news-bench-man img {
        text-align: center;
    }

.news-element-wrapper.fullpage .news-element {
    padding-bottom: 0.625rem;
    margin-bottom: 3rem;
}

    .news-element-wrapper.fullpage .news-element figure img {
        height: auto !important;
    }

.news-element-wrapper.fullpage .publish-date {
    font-size: 0.75rem;
    line-height: 2;
}

.news-element-wrapper.fullpage h2.news-element-title {
    margin: 0;
    padding: 0;
    font-family: 'Open Sans', sans-serif;
    color: #242e40;
    line-height: 1.3;
    margin-bottom: 1.25rem;
    font-weight: 200;
    font-style: italic;
    color: #3b54a5;
    font-size: 1.375rem;
    margin-bottom: 0.625rem;
}

@media screen and (max-width: 47.9375rem) {
    .news-element-wrapper.fullpage h2.news-element-title {
        text-align: center;
    }
}

.news-element-wrapper.fullpage h2.news-element-title.century {
    font-family: "Century Gothic", "Apple Gothic", AppleGothic, "URW Gothic L", "Avant Garde", Futura, "open-sans", sans-serif;
    font-weight: 700;
    text-transform: uppercase;
}

.news-element-wrapper.fullpage h2.news-element-title.secondary {
    color: #27455f;
}

.news-element-wrapper.fullpage h2.news-element-title.mini-margin {
    margin-bottom: 0.15625rem;
}

.news-element-wrapper.fullpage h2.news-element-title.h2-lh {
    line-height: 2.4375rem;
}

@media screen and (max-width: 47.9375rem) {
    .news-element-wrapper.fullpage h2.news-element-title.h2-lh {
        line-height: 1.625rem;
    }
}

@media screen and (max-width: 47.9375rem) {
    .news-element-wrapper.fullpage h2.news-element-title {
        font-size: 1.1rem;
    }
}

.news-element-wrapper.fullpage h2.news-element-title a {
    text-decoration: none;
}

    .news-element-wrapper.fullpage h2.news-element-title a:hover {
        text-decoration: underline;
    }

.news-element-wrapper.fullpage .read-more-button {
    margin-top: 1.875rem;
}

.news-view .date-published {
    color: #27455f;
    font-size: 0.75rem;
}

.testimonial-element {
    margin-bottom: 0.625rem;
}

    .testimonial-element.card-testimonials {
        background: #f0f1ed;
        background: rgba(240, 241, 237, 0.1);
        border: 2px solid #f0f1ed;
        border: 2px solid rgba(240, 241, 237, 0.4);
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-radius: 5px;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        padding: 1.875rem 1.25rem;
        margin-bottom: 1.25rem;
    }

    .testimonial-element .testimonial-content {
        position: relative;
    }

        .testimonial-element .testimonial-content h1,
        .testimonial-element .testimonial-content h2,
        .testimonial-element .testimonial-content h3,
        .testimonial-element .testimonial-content h4,
        .testimonial-element .testimonial-content p {
            margin: 0;
            padding: 0;
            line-height: 1.5;
        }

        .testimonial-element .testimonial-content h1,
        .testimonial-element .testimonial-content h2,
        .testimonial-element .testimonial-content h3,
        .testimonial-element .testimonial-content h4 {
            font-weight: 600;
            font-size: 1.25rem;
            margin-bottom: 0.625rem;
        }

        .testimonial-element .testimonial-content p {
            font-style: italic;
            font-weight: 400;
            font-size: 0.875rem;
        }

        .testimonial-element .testimonial-content:before,
        .testimonial-element .testimonial-content:after {
            position: absolute;
            display: inline-block;
            font-family: "FontAwesome";
            font-size: 1.25rem;
            line-height: 1;
            color: #242e40;
            color: rgba(36, 46, 64, 0.2);
        }

        .testimonial-element .testimonial-content:before {
            content: '\f10d';
            top: -1.4375rem;
            left: -0.625rem;
        }

        .testimonial-element .testimonial-content:after {
            content: '\f10e';
            bottom: -1.4375rem;
            right: -0.625rem;
        }

        .testimonial-element .testimonial-content h2.testimonial-element-author {
            margin: 0;
            text-align: right;
            font-size: 1rem;
        }

        .testimonial-element .testimonial-content .testimonial-date-published {
            display: inline-block;
        }

.cookie-policy-box {
    overflow-y: auto;
    max-height: 100%;
    padding: 0.6875rem 0.625rem 1.25rem;
    padding-top: 100px;
}

    .cookie-policy-box #cookiespopup-menu {
        position: fixed;
        z-index: 99999;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        box-sizing: border-box;
        background: #fff !important;
        padding: 0.6875rem 0.625rem 1.25rem;
        border-bottom: 1px solid #000;
        margin-bottom: 20px;
    }

.cookie-policy-container,
.cookie-policy-overlay {
    display: block;
    position: fixed;
    z-index: 9997;
    width: 100%;
    padding: 0.6875rem 0.625rem 0.625rem;
    background: #fff !important;
    border-top: 1px solid #000;
    border-color: #808080;
    color: #000;
    bottom: 0;
}

@media print {
    .cookie-policy-container,
    .cookie-policy-overlay {
        display: none !important;
    }
}

.cookie-policy-container h1,
.cookie-policy-container h2,
.cookie-policy-container h3,
.cookie-policy-container h4,
.cookie-policy-container h5,
.cookie-policy-overlay h1,
.cookie-policy-overlay h2,
.cookie-policy-overlay h3,
.cookie-policy-overlay h4,
.cookie-policy-overlay h5 {
    font-weight: 700;
}

.cookie-policy-container .cookie-message-buttons,
.cookie-policy-overlay .cookie-message-buttons {
    display: inline-block;
    line-height: 1;
    background: #253741;
    color: #fff;
    border: 1px solid #253741;
    font-size: 1rem;
    text-align: center;
    line-height: 1.2;
    text-decoration: none;
    font-weight: 400;
    padding: 0.3125rem 0.625rem;
    -webkit-border-radius: 0.3125rem;
    -moz-border-radius: 0.3125rem;
    border-radius: 0.3125rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    -webkit-transition: all 250ms linear 0ms;
    -moz-transition: all 250ms linear 0ms;
    -o-transition: all 250ms linear 0ms;
    -ms-transition: all 250ms linear 0ms;
    transition: all 250ms linear 0ms;
    cursor: pointer;
    -webkit-transition: color 250ms linear 0ms;
    -moz-transition: color 250ms linear 0ms;
    -o-transition: color 250ms linear 0ms;
    -ms-transition: color 250ms linear 0ms;
    transition: color 250ms linear 0ms;
    margin-right: 0.625rem;
    margin-top: 10px;
}

    .cookie-policy-container .cookie-message-buttons:hover,
    .cookie-policy-container .cookie-message-buttons:focus,
    .cookie-policy-overlay .cookie-message-buttons:hover,
    .cookie-policy-overlay .cookie-message-buttons:focus {
        background: #4b86b1;
        border: 1px solid #4b86b1;
        color: #fff;
    }

    .cookie-policy-container .cookie-message-buttons.alt,
    .cookie-policy-container .cookie-message-buttons.secondary,
    .cookie-policy-overlay .cookie-message-buttons.alt,
    .cookie-policy-overlay .cookie-message-buttons.secondary {
        background: #27455f;
        border: 1px solid #27455f;
        color: #fff;
    }

        .cookie-policy-container .cookie-message-buttons.alt:hover,
        .cookie-policy-container .cookie-message-buttons.alt:focus,
        .cookie-policy-container .cookie-message-buttons.secondary:hover,
        .cookie-policy-container .cookie-message-buttons.secondary:focus,
        .cookie-policy-overlay .cookie-message-buttons.alt:hover,
        .cookie-policy-overlay .cookie-message-buttons.alt:focus,
        .cookie-policy-overlay .cookie-message-buttons.secondary:hover,
        .cookie-policy-overlay .cookie-message-buttons.secondary:focus {
            background: #242e40;
            border: 1px solid #27455f;
            color: #fff;
        }

    .cookie-policy-container .cookie-message-buttons.tertiary,
    .cookie-policy-container .cookie-message-buttons.light,
    .cookie-policy-overlay .cookie-message-buttons.tertiary,
    .cookie-policy-overlay .cookie-message-buttons.light {
        background: #4b86b1;
        border: 1px solid #4b86b1;
        color: #fff;
    }

        .cookie-policy-container .cookie-message-buttons.tertiary:hover,
        .cookie-policy-container .cookie-message-buttons.tertiary:focus,
        .cookie-policy-container .cookie-message-buttons.light:hover,
        .cookie-policy-container .cookie-message-buttons.light:focus,
        .cookie-policy-overlay .cookie-message-buttons.tertiary:hover,
        .cookie-policy-overlay .cookie-message-buttons.tertiary:focus,
        .cookie-policy-overlay .cookie-message-buttons.light:hover,
        .cookie-policy-overlay .cookie-message-buttons.light:focus {
            background: #242e40;
            border: 1px solid #4b86b1;
            color: #fff;
        }

    .cookie-policy-container .cookie-message-buttons.border,
    .cookie-policy-container .cookie-message-buttons.bordered,
    .cookie-policy-container .cookie-message-buttons.btn-bordered,
    .cookie-policy-overlay .cookie-message-buttons.border,
    .cookie-policy-overlay .cookie-message-buttons.bordered,
    .cookie-policy-overlay .cookie-message-buttons.btn-bordered {
        background: #242e40;
        border: 1px solid #242e40;
        color: #fff;
    }

        .cookie-policy-container .cookie-message-buttons.border:hover,
        .cookie-policy-container .cookie-message-buttons.border:focus,
        .cookie-policy-container .cookie-message-buttons.bordered:hover,
        .cookie-policy-container .cookie-message-buttons.bordered:focus,
        .cookie-policy-container .cookie-message-buttons.btn-bordered:hover,
        .cookie-policy-container .cookie-message-buttons.btn-bordered:focus,
        .cookie-policy-overlay .cookie-message-buttons.border:hover,
        .cookie-policy-overlay .cookie-message-buttons.border:focus,
        .cookie-policy-overlay .cookie-message-buttons.bordered:hover,
        .cookie-policy-overlay .cookie-message-buttons.bordered:focus,
        .cookie-policy-overlay .cookie-message-buttons.btn-bordered:hover,
        .cookie-policy-overlay .cookie-message-buttons.btn-bordered:focus {
            background: #27455f;
            border: 1px solid #242e40;
            color: #fff;
        }

        .cookie-policy-container .cookie-message-buttons.border.alt,
        .cookie-policy-container .cookie-message-buttons.border.secondary,
        .cookie-policy-container .cookie-message-buttons.bordered.alt,
        .cookie-policy-container .cookie-message-buttons.bordered.secondary,
        .cookie-policy-container .cookie-message-buttons.btn-bordered.alt,
        .cookie-policy-container .cookie-message-buttons.btn-bordered.secondary,
        .cookie-policy-overlay .cookie-message-buttons.border.alt,
        .cookie-policy-overlay .cookie-message-buttons.border.secondary,
        .cookie-policy-overlay .cookie-message-buttons.bordered.alt,
        .cookie-policy-overlay .cookie-message-buttons.bordered.secondary,
        .cookie-policy-overlay .cookie-message-buttons.btn-bordered.alt,
        .cookie-policy-overlay .cookie-message-buttons.btn-bordered.secondary {
            background: #27455f;
            border: 1px solid #27455f;
            color: #fff;
        }

            .cookie-policy-container .cookie-message-buttons.border.alt:hover,
            .cookie-policy-container .cookie-message-buttons.border.alt:focus,
            .cookie-policy-container .cookie-message-buttons.border.secondary:hover,
            .cookie-policy-container .cookie-message-buttons.border.secondary:focus,
            .cookie-policy-container .cookie-message-buttons.bordered.alt:hover,
            .cookie-policy-container .cookie-message-buttons.bordered.alt:focus,
            .cookie-policy-container .cookie-message-buttons.bordered.secondary:hover,
            .cookie-policy-container .cookie-message-buttons.bordered.secondary:focus,
            .cookie-policy-container .cookie-message-buttons.btn-bordered.alt:hover,
            .cookie-policy-container .cookie-message-buttons.btn-bordered.alt:focus,
            .cookie-policy-container .cookie-message-buttons.btn-bordered.secondary:hover,
            .cookie-policy-container .cookie-message-buttons.btn-bordered.secondary:focus,
            .cookie-policy-overlay .cookie-message-buttons.border.alt:hover,
            .cookie-policy-overlay .cookie-message-buttons.border.alt:focus,
            .cookie-policy-overlay .cookie-message-buttons.border.secondary:hover,
            .cookie-policy-overlay .cookie-message-buttons.border.secondary:focus,
            .cookie-policy-overlay .cookie-message-buttons.bordered.alt:hover,
            .cookie-policy-overlay .cookie-message-buttons.bordered.alt:focus,
            .cookie-policy-overlay .cookie-message-buttons.bordered.secondary:hover,
            .cookie-policy-overlay .cookie-message-buttons.bordered.secondary:focus,
            .cookie-policy-overlay .cookie-message-buttons.btn-bordered.alt:hover,
            .cookie-policy-overlay .cookie-message-buttons.btn-bordered.alt:focus,
            .cookie-policy-overlay .cookie-message-buttons.btn-bordered.secondary:hover,
            .cookie-policy-overlay .cookie-message-buttons.btn-bordered.secondary:focus {
                background: #242e40;
                border: 1px solid #27455f;
                color: #fff;
            }

        .cookie-policy-container .cookie-message-buttons.border + .btn-bordered,
        .cookie-policy-container .cookie-message-buttons.bordered + .btn-bordered,
        .cookie-policy-container .cookie-message-buttons.btn-bordered + .btn-bordered,
        .cookie-policy-overlay .cookie-message-buttons.border + .btn-bordered,
        .cookie-policy-overlay .cookie-message-buttons.bordered + .btn-bordered,
        .cookie-policy-overlay .cookie-message-buttons.btn-bordered + .btn-bordered {
            -webkit-border-radius: 0;
            -moz-border-radius: 0;
            border-radius: 0;
            -moz-background-clip: padding;
            -webkit-background-clip: padding-box;
            background-clip: padding-box;
            font-weight: 400;
        }

@media screen and (min-width: 48rem) {
    .cookie-policy-container .cookie-message-buttons.border + .btn-bordered,
    .cookie-policy-container .cookie-message-buttons.bordered + .btn-bordered,
    .cookie-policy-container .cookie-message-buttons.btn-bordered + .btn-bordered,
    .cookie-policy-overlay .cookie-message-buttons.border + .btn-bordered,
    .cookie-policy-overlay .cookie-message-buttons.bordered + .btn-bordered,
    .cookie-policy-overlay .cookie-message-buttons.btn-bordered + .btn-bordered {
        margin-left: 0.625rem;
    }
}

.cookie-policy-container .cookie-message-buttons.warning,
.cookie-policy-overlay .cookie-message-buttons.warning {
    background: #ffae00;
    color: #000;
}

    .cookie-policy-container .cookie-message-buttons.warning:hover,
    .cookie-policy-container .cookie-message-buttons.warning:focus,
    .cookie-policy-overlay .cookie-message-buttons.warning:hover,
    .cookie-policy-overlay .cookie-message-buttons.warning:focus {
        background: #ffc64d;
        color: #000;
    }

.cookie-policy-container .cookie-message-buttons.disabled,
.cookie-policy-container .cookie-message-buttons.disabled:hover,
.cookie-policy-overlay .cookie-message-buttons.disabled,
.cookie-policy-overlay .cookie-message-buttons.disabled:hover {
    background: #323232;
    cursor: default;
    cursor: no-drop;
}

.cookie-policy-container .cookie-message-buttons.block,
.cookie-policy-overlay .cookie-message-buttons.block {
    display: block;
    margin-bottom: 0.625rem;
    padding: 1.25rem 1.5625rem;
}

button.cookie-policy-container .cookie-message-buttons.block,
button.cookie-policy-overlay .cookie-message-buttons.block {
    width: 100%;
}

.cookie-policy-container .cookie-message-buttons.block.slim,
.cookie-policy-overlay .cookie-message-buttons.block.slim {
    padding: 0.875rem 0.625rem;
}

.cookie-policy-container .cookie-message-buttons.big,
.cookie-policy-overlay .cookie-message-buttons.big {
    font-size: 0.75rem;
    padding: 0.3125rem;
}

.cookie-policy-container .cookie-message-buttons.small,
.cookie-policy-overlay .cookie-message-buttons.small {
    font-size: 0.75rem;
    padding: 0.3125rem;
}

.cookie-policy-container .cookie-message-buttons.tiny,
.cookie-policy-overlay .cookie-message-buttons.tiny {
    font-size: 0.75rem;
    padding: 0.15625rem;
}

.cookie-policy-container .cookie-message-buttons.short,
.cookie-policy-overlay .cookie-message-buttons.short {
    padding-top: 0.6875rem;
    padding-bottom: 0.6875rem;
}

.cookie-policy-container .cookie-message-buttons.no-margin,
.cookie-policy-overlay .cookie-message-buttons.no-margin {
    margin: 0;
}

.cookie-policy-container .cookie-message-buttons.margin-top,
.cookie-policy-overlay .cookie-message-buttons.margin-top {
    margin-top: 0.625rem;
}

.cookie-policy-container .cookie-message-buttons.text-left,
.cookie-policy-overlay .cookie-message-buttons.text-left {
    text-align: left;
}

.cookie-policy-container .cookie-message-buttons .fa,
.cookie-policy-container .cookie-message-buttons .fas,
.cookie-policy-container .cookie-message-buttons .far,
.cookie-policy-container .cookie-message-buttons .fal,
.cookie-policy-overlay .cookie-message-buttons .fa,
.cookie-policy-overlay .cookie-message-buttons .fas,
.cookie-policy-overlay .cookie-message-buttons .far,
.cookie-policy-overlay .cookie-message-buttons .fal {
    margin-right: 0.625rem;
}

.cookie-policy-container .cookie-message-buttons.icon-end .fa,
.cookie-policy-container .cookie-message-buttons.icon-end .fas,
.cookie-policy-container .cookie-message-buttons.icon-end .far,
.cookie-policy-container .cookie-message-buttons.icon-end .fal,
.cookie-policy-container .cookie-message-buttons.icon .fa,
.cookie-policy-container .cookie-message-buttons.icon .fas,
.cookie-policy-container .cookie-message-buttons.icon .far,
.cookie-policy-container .cookie-message-buttons.icon .fal,
.cookie-policy-overlay .cookie-message-buttons.icon-end .fa,
.cookie-policy-overlay .cookie-message-buttons.icon-end .fas,
.cookie-policy-overlay .cookie-message-buttons.icon-end .far,
.cookie-policy-overlay .cookie-message-buttons.icon-end .fal,
.cookie-policy-overlay .cookie-message-buttons.icon .fa,
.cookie-policy-overlay .cookie-message-buttons.icon .fas,
.cookie-policy-overlay .cookie-message-buttons.icon .far,
.cookie-policy-overlay .cookie-message-buttons.icon .fal {
    margin-right: 0;
}

.cookie-policy-container .cookie-message-buttons.icon-end.icon-margin .fa,
.cookie-policy-container .cookie-message-buttons.icon-end.icon-margin .fas,
.cookie-policy-container .cookie-message-buttons.icon-end.icon-margin .far,
.cookie-policy-container .cookie-message-buttons.icon-end.icon-margin .fal,
.cookie-policy-overlay .cookie-message-buttons.icon-end.icon-margin .fa,
.cookie-policy-overlay .cookie-message-buttons.icon-end.icon-margin .fas,
.cookie-policy-overlay .cookie-message-buttons.icon-end.icon-margin .far,
.cookie-policy-overlay .cookie-message-buttons.icon-end.icon-margin .fal {
    margin-left: 0.625rem;
}

.cookie-policy-container .cookie-message-buttons.pdf-link:before,
.cookie-policy-overlay .cookie-message-buttons.pdf-link:before {
    font-family: 'Font Awesome 5 Pro', "open-sans", sans-serif;
    display: inline-block;
    margin-right: 0.625rem;
    content: '\f1c1';
}

.cookie-policy-container .cookie-message-buttons.square,
.cookie-policy-overlay .cookie-message-buttons.square {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    padding: 0.9375rem 1.25rem;
}

.cookie-policy-container .cookie-message-buttons.uppercase,
.cookie-policy-overlay .cookie-message-buttons.uppercase {
    text-transform: uppercase;
}

.cookie-policy-container .cookie-message-buttons.close-button,
.cookie-policy-overlay .cookie-message-buttons.close-button {
    margin-top: 0;
}

.cookie-policy-container .body,
.cookie-policy-container .button-container,
.cookie-policy-overlay .body,
.cookie-policy-overlay .button-container {
    display: inline-block;
    vertical-align: middle;
}

.cookie-policy-container .body,
.cookie-policy-overlay .body {
    width: 78%;
}

.cookie-policy-container .button-container,
.cookie-policy-overlay .button-container {
    width: 22%;
    text-align: right;
}

.cookie-policy-container .close-policy-bottom,
.cookie-policy-overlay .close-policy-bottom {
    display: none;
}

@media screen and (max-width: 84.375rem) {
    .cookie-policy-container #find-out-more,
    .cookie-policy-overlay #find-out-more {
        display: block;
    }

    .cookie-policy-container .body,
    .cookie-policy-overlay .body {
        width: 75%;
    }

    .cookie-policy-container .button-container,
    .cookie-policy-overlay .button-container {
        width: 25%;
    }
}

@media screen and (max-width: 62.5rem) {
    .cookie-policy-container .body,
    .cookie-policy-container .button-container,
    .cookie-policy-overlay .body,
    .cookie-policy-overlay .button-container {
        display: block;
        width: 100%;
    }

    .cookie-policy-container .cookie-message-buttons,
    .cookie-policy-overlay .cookie-message-buttons {
        font-size: 0.875rem;
        display: block;
        margin-right: 0;
    }

        .cookie-policy-container .cookie-message-buttons.close-button,
        .cookie-policy-overlay .cookie-message-buttons.close-button {
            margin-top: 0.625rem;
        }

    .cookie-policy-container .close-policy-bottom,
    .cookie-policy-overlay .close-policy-bottom {
        display: block;
    }

    .cookie-policy-box {
        padding-top: 0;
    }

        .cookie-policy-box #cookiespopup-menu {
            position: static;
            padding-left: 0;
        }
}

.pages {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
}

    .pages .count {
        margin-top: 0.46875rem;
    }

    .pages .paging .page-btn.disabled,
    .pages .paging .page-btn.current-page,
    .pages .paging .page-btn a {
        display: inline-block;
        padding: 0.46875rem 0.625rem;
        line-height: 1;
        text-decoration: none;
        font-weight: 400;
        -webkit-border-radius: 0.3125rem;
        -moz-border-radius: 0.3125rem;
        border-radius: 0.3125rem;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        color: #fff;
        background: #93a2af;
        font-weight: 700;
        -webkit-transition: all 250ms linear 0ms;
        -moz-transition: all 250ms linear 0ms;
        -o-transition: all 250ms linear 0ms;
        -ms-transition: all 250ms linear 0ms;
        transition: all 250ms linear 0ms;
    }

    .pages .paging .page-btn a {
        background: #242e40;
    }

        .pages .paging .page-btn a:hover {
            background: #5b6270;
        }

    .pages .paging .page-btn.current-page {
        background-color: #27455f;
    }

dl dt {
    width: 15rem;
    float: left;
}

dl dd {
    display: block;
    margin: 0 0 0.625rem;
}

dl.block dt {
    float: none;
    display: block;
    width: auto;
    margin-bottom: 0.3125rem;
}

.gallery .bullets {
    position: absolute;
    bottom: 1.875rem;
    width: 100%;
    padding: 0 0.9375rem;
    margin: 0;
    z-index: 10;
    display: block;
    text-align: left;
    max-width: 100rem;
    left: 50%;
    transform: translate(-50%, 0);
    margin: 0 !important;
}

    .gallery .bullets li {
        display: inline-block;
        margin: 0;
        padding: 0;
        list-style-type: none;
        opacity: 0.5;
        background: #fff;
        width: 0.9375rem;
        height: 0.9375rem;
        overflow: hidden;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        -webkit-transition: all 250ms linear 0ms;
        -moz-transition: all 250ms linear 0ms;
        -o-transition: all 250ms linear 0ms;
        -ms-transition: all 250ms linear 0ms;
        transition: all 250ms linear 0ms;
    }

        .gallery .bullets li + li {
            margin-left: 0.3125rem;
        }

.js .gallery .bullets li {
    cursor: pointer;
}

.gallery .bullets li:before,
.gallery .bullets li:after,
.gallery .bullets li span {
    display: none !important;
}

.gallery .bullets li:hover {
    background: #fff;
    opacity: 0.75;
}

.gallery .bullets li.active {
    background: #fff;
    opacity: 1;
}

.gallery .prev-button,
.gallery .next-button {
    position: absolute;
    z-index: 10;
    bottom: 0;
    color: #fff;
    background: #242e40;
    padding: 0.625rem 1.09375rem;
    font-size: 2rem;
    line-height: 1;
    display: block;
    -webkit-transition: all 250ms linear 0ms;
    -moz-transition: all 250ms linear 0ms;
    -o-transition: all 250ms linear 0ms;
    -ms-transition: all 250ms linear 0ms;
    transition: all 250ms linear 0ms;
}

.js .gallery .prev-button,
.js .gallery .next-button {
    cursor: pointer;
}

.gallery .prev-button {
    left: 0;
}

.gallery .next-button {
    right: 0;
}

.gallery.parallax {
    position: relative;
    min-height: 21.875rem;
    min-height: 32vh;
}

    .gallery.parallax.display-size-small {
        height: 24.375rem;
        min-height: 24.375rem;
        min-height: 42vh;
    }

    .gallery.parallax.display-size-medium {
        height: 24.375rem;
        min-height: 32.1875rem;
        min-height: 55vh;
    }

    .gallery.parallax.display-size-tall {
        height: 24.375rem;
        min-height: 44.375rem;
        min-height: 76vh;
    }

    .gallery.parallax.fill-screen {
        min-height: 80vh;
    }

    .gallery.parallax .parallax-container {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        z-index: 1;
        border-bottom: none;
    }

.no-js .gallery.parallax .parallax-container {
    display: none;
}

.gallery.parallax .parallax-container .parallax-image {
    position: absolute;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    width: 100%;
}

.gallery.parallax .additional-content {
    padding: 0 2.5rem;
}

@media screen and (min-width: 48rem) {
    .gallery.parallax .additional-content {
        padding: 0 2.1875rem;
    }
}

@media screen and (max-width: 47.9375rem) {
    .gallery.parallax .additional-content {
        padding: 0 0.3125rem;
    }
}

.gallery.parallax .content-container {
    position: relative;
    z-index: 5;
    width: 100%;
    height: 100%;
    padding: 0;
}

    .gallery.parallax .content-container h1,
    .gallery.parallax .content-container h2,
    .gallery.parallax .content-container h3,
    .gallery.parallax .content-container h4,
    .gallery.parallax .content-container h5,
    .gallery.parallax .content-container h6,
    .gallery.parallax .content-container p {
        color: #fff;
        margin: 0;
        padding: 0;
        margin-bottom: 1.25rem;
    }

    .gallery.parallax .content-container .content-wrapper a {
        font-weight: inherit;
        color: #fff;
    }

        .gallery.parallax .content-container .content-wrapper a:hover {
            color: #a5c3d8;
        }

    .gallery.parallax .content-container a.button {
        background: #253741;
        color: #fff;
        border: 1px solid #253741;
        font-size: 1rem;
        text-align: center;
        line-height: 1.2;
        text-decoration: none;
        font-weight: 400;
        display: inline-block;
        padding: 0.3125rem 0.625rem;
        -webkit-border-radius: 0.3125rem;
        -moz-border-radius: 0.3125rem;
        border-radius: 0.3125rem;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        -webkit-transition: all 250ms linear 0ms;
        -moz-transition: all 250ms linear 0ms;
        -o-transition: all 250ms linear 0ms;
        -ms-transition: all 250ms linear 0ms;
        transition: all 250ms linear 0ms;
        padding: 0.9375rem 1.25rem;
        background: rgba(255, 255, 255, 0.136);
        text-shadow: none;
        border-color: #fff;
        width: 75%;
        font-style: italic;
        font-size: 1.4375rem;
        font-weight: 300;
    }

        .gallery.parallax .content-container a.button:hover,
        .gallery.parallax .content-container a.button:focus {
            background: #4b86b1;
            border: 1px solid #4b86b1;
            color: #fff;
        }

        .gallery.parallax .content-container a.button.alt,
        .gallery.parallax .content-container a.button.secondary {
            background: #27455f;
            border: 1px solid #27455f;
            color: #fff;
        }

            .gallery.parallax .content-container a.button.alt:hover,
            .gallery.parallax .content-container a.button.alt:focus,
            .gallery.parallax .content-container a.button.secondary:hover,
            .gallery.parallax .content-container a.button.secondary:focus {
                background: #242e40;
                border: 1px solid #27455f;
                color: #fff;
            }

        .gallery.parallax .content-container a.button.tertiary,
        .gallery.parallax .content-container a.button.light {
            background: #4b86b1;
            border: 1px solid #4b86b1;
            color: #fff;
        }

            .gallery.parallax .content-container a.button.tertiary:hover,
            .gallery.parallax .content-container a.button.tertiary:focus,
            .gallery.parallax .content-container a.button.light:hover,
            .gallery.parallax .content-container a.button.light:focus {
                background: #242e40;
                border: 1px solid #4b86b1;
                color: #fff;
            }

        .gallery.parallax .content-container a.button.border,
        .gallery.parallax .content-container a.button.bordered,
        .gallery.parallax .content-container a.button.btn-bordered {
            background: #242e40;
            border: 1px solid #242e40;
            color: #fff;
        }

            .gallery.parallax .content-container a.button.border:hover,
            .gallery.parallax .content-container a.button.border:focus,
            .gallery.parallax .content-container a.button.bordered:hover,
            .gallery.parallax .content-container a.button.bordered:focus,
            .gallery.parallax .content-container a.button.btn-bordered:hover,
            .gallery.parallax .content-container a.button.btn-bordered:focus {
                background: #27455f;
                border: 1px solid #242e40;
                color: #fff;
            }

            .gallery.parallax .content-container a.button.border.alt,
            .gallery.parallax .content-container a.button.border.secondary,
            .gallery.parallax .content-container a.button.bordered.alt,
            .gallery.parallax .content-container a.button.bordered.secondary,
            .gallery.parallax .content-container a.button.btn-bordered.alt,
            .gallery.parallax .content-container a.button.btn-bordered.secondary {
                background: #27455f;
                border: 1px solid #27455f;
                color: #fff;
            }

                .gallery.parallax .content-container a.button.border.alt:hover,
                .gallery.parallax .content-container a.button.border.alt:focus,
                .gallery.parallax .content-container a.button.border.secondary:hover,
                .gallery.parallax .content-container a.button.border.secondary:focus,
                .gallery.parallax .content-container a.button.bordered.alt:hover,
                .gallery.parallax .content-container a.button.bordered.alt:focus,
                .gallery.parallax .content-container a.button.bordered.secondary:hover,
                .gallery.parallax .content-container a.button.bordered.secondary:focus,
                .gallery.parallax .content-container a.button.btn-bordered.alt:hover,
                .gallery.parallax .content-container a.button.btn-bordered.alt:focus,
                .gallery.parallax .content-container a.button.btn-bordered.secondary:hover,
                .gallery.parallax .content-container a.button.btn-bordered.secondary:focus {
                    background: #242e40;
                    border: 1px solid #27455f;
                    color: #fff;
                }

            .gallery.parallax .content-container a.button.border + .btn-bordered,
            .gallery.parallax .content-container a.button.bordered + .btn-bordered,
            .gallery.parallax .content-container a.button.btn-bordered + .btn-bordered {
                -webkit-border-radius: 0;
                -moz-border-radius: 0;
                border-radius: 0;
                -moz-background-clip: padding;
                -webkit-background-clip: padding-box;
                background-clip: padding-box;
                font-weight: 400;
            }

@media screen and (min-width: 48rem) {
    .gallery.parallax .content-container a.button.border + .btn-bordered,
    .gallery.parallax .content-container a.button.bordered + .btn-bordered,
    .gallery.parallax .content-container a.button.btn-bordered + .btn-bordered {
        margin-left: 0.625rem;
    }
}

.gallery.parallax .content-container a.button.warning {
    background: #ffae00;
    color: #000;
}

    .gallery.parallax .content-container a.button.warning:hover,
    .gallery.parallax .content-container a.button.warning:focus {
        background: #ffc64d;
        color: #000;
    }

.gallery.parallax .content-container a.button.disabled,
.gallery.parallax .content-container a.button.disabled:hover {
    background: #323232;
    cursor: default;
    cursor: no-drop;
}

.gallery.parallax .content-container a.button.block {
    display: block;
    margin-bottom: 0.625rem;
    padding: 1.25rem 1.5625rem;
}

button.gallery.parallax .content-container a.button.block {
    width: 100%;
}

.gallery.parallax .content-container a.button.block.slim {
    padding: 0.875rem 0.625rem;
}

.gallery.parallax .content-container a.button.big {
    font-size: 0.75rem;
    padding: 0.3125rem;
}

.gallery.parallax .content-container a.button.small {
    font-size: 0.75rem;
    padding: 0.3125rem;
}

.gallery.parallax .content-container a.button.tiny {
    font-size: 0.75rem;
    padding: 0.15625rem;
}

.gallery.parallax .content-container a.button.short {
    padding-top: 0.6875rem;
    padding-bottom: 0.6875rem;
}

.gallery.parallax .content-container a.button.no-margin {
    margin: 0;
}

.gallery.parallax .content-container a.button.margin-top {
    margin-top: 0.625rem;
}

.gallery.parallax .content-container a.button.text-left {
    text-align: left;
}

.gallery.parallax .content-container a.button .fa,
.gallery.parallax .content-container a.button .fas,
.gallery.parallax .content-container a.button .far,
.gallery.parallax .content-container a.button .fal {
    margin-right: 0.625rem;
}

.gallery.parallax .content-container a.button.icon-end .fa,
.gallery.parallax .content-container a.button.icon-end .fas,
.gallery.parallax .content-container a.button.icon-end .far,
.gallery.parallax .content-container a.button.icon-end .fal,
.gallery.parallax .content-container a.button.icon .fa,
.gallery.parallax .content-container a.button.icon .fas,
.gallery.parallax .content-container a.button.icon .far,
.gallery.parallax .content-container a.button.icon .fal {
    margin-right: 0;
}

.gallery.parallax .content-container a.button.icon-end.icon-margin .fa,
.gallery.parallax .content-container a.button.icon-end.icon-margin .fas,
.gallery.parallax .content-container a.button.icon-end.icon-margin .far,
.gallery.parallax .content-container a.button.icon-end.icon-margin .fal {
    margin-left: 0.625rem;
}

.gallery.parallax .content-container a.button.pdf-link:before {
    font-family: 'Font Awesome 5 Pro', "open-sans", sans-serif;
    display: inline-block;
    margin-right: 0.625rem;
    content: '\f1c1';
}

.gallery.parallax .content-container a.button.square {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    padding: 0.9375rem 1.25rem;
}

.gallery.parallax .content-container a.button.uppercase {
    text-transform: uppercase;
}

.gallery.parallax.logo .content-container .content-wrapper .logo-over-image {
    margin-bottom: 1.25rem;
}

    .gallery.parallax.logo .content-container .content-wrapper .logo-over-image:before,
    .gallery.parallax.logo .content-container .content-wrapper .logo-over-image:after {
        margin: 0 auto;
        content: '\00a0';
        display: block;
        background: transparent url('../img/logo-over-image-top.png') top center no-repeat;
        background-size: contain;
        width: 22.6vw;
        height: 7.49vw;
        max-width: 14.0625rem;
        max-height: 6.6875rem;
        margin-bottom: 1.25rem;
    }

.svg .gallery.parallax.logo .content-container .content-wrapper .logo-over-image:before,
.svg .gallery.parallax.logo .content-container .content-wrapper .logo-over-image:after {
    background: transparent url('../img/logo-over-image-top.svg') top center no-repeat;
}

@media only screen and (max-width: 47.9375rem) {
    .gallery.parallax.logo .content-container .content-wrapper .logo-over-image:before {
        width: 45.2vw;
        height: 14.98vw;
        display: none;
    }
}

.gallery.parallax.logo .content-container .content-wrapper .logo-over-image:after {
    background-image: url('../img/logo-over-image-bottom.png');
    width: 78.4vw;
    height: 2.76vw;
    max-width: 49rem;
    max-height: 2.875rem;
}

.svg .gallery.parallax.logo .content-container .content-wrapper .logo-over-image:after {
    background: transparent url('../img/logo-over-image-bottom.svg') top center no-repeat;
}

@media only screen and (max-width: 47.9375rem) {
    .gallery.parallax.logo .content-container .content-wrapper .logo-over-image:after {
        width: 90vw;
        height: 8.28vw;
    }
}

.gallery.parallax.overlay .parallax-container:after {
    content: '\00a0';
    position: absolute;
    z-index: 10;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    opacity: 0.80;
    background: rgba(0, 0, 0, 0.5);
    background-size: 100% 100%;
    background-position: 0% 50%;
    background: -moz-linear-gradient(-45deg, #000 0%, rgba(0, 32, 64, 0.55) 100%);
    background: -webkit-linear-gradient(-45deg, #000 0%, rgba(0, 32, 64, 0.55) 100%);
    background: linear-gradient(135deg, #000 0%, rgba(0, 32, 64, 0.55) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#8c002040', GradientType=1);
    opacity: .5;
}

@media (min-width: 64.0625rem) {
    .gallery.parallax.overlay .parallax-container:after {
        -webkit-animation: grayangle_lg 1.5s;
        animation: grayangle_lg 1.5s;
        -webkit-animation-fill-mode: forwards;
        animation-fill-mode: forwards;
    }
}

@media only screen and (max-width: 64rem) {
    .gallery.parallax.overlay .parallax-container:after {
        -webkit-animation: grayangle_md 1.5s;
        animation: grayangle_md 1.5s;
        -webkit-animation-fill-mode: forwards;
        animation-fill-mode: forwards;
    }
}

.gallery.parallax .content-wrapper {
    background: transparent;
    width: 100%;
    opacity: 0;
    text-align: center;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.75);
}

@media (min-width: 64.0625rem) {
    .gallery.parallax .content-wrapper {
        width: 45%;
        text-align: left;
        -webkit-animation: contentAnimation_lg 1.5s;
        animation: contentAnimation_lg 1.5s;
        -webkit-animation-delay: 1.5s;
        animation-delay: 1.5s;
        -webkit-animation-fill-mode: forwards;
        animation-fill-mode: forwards;
    }
}

@media (max-width: 64rem) {
    .gallery.parallax .content-wrapper {
        -webkit-animation: contentAnimation_md 1.5s;
        animation: contentAnimation_md 1.5s;
        -webkit-animation-delay: 1.5s;
        animation-delay: 1.5s;
        -webkit-animation-fill-mode: forwards;
        animation-fill-mode: forwards;
    }
}

.gallery.parallax .content-wrapper h1 {
    font-family: 'Open Sans', sans-serif;
    font-size: 2.8125rem;
    margin-bottom: 1.25rem;
    font-style: italic;
    font-weight: 300;
}

@media screen and (max-width: 64rem) {
    .gallery.parallax .content-wrapper h1 {
        font-size: 2.1875rem;
        margin-bottom: 1.25rem;
    }
}

@media screen and (max-width: 47.9375rem) {
    .gallery.parallax .content-wrapper h1 {
        font-size: 2.1875rem;
        margin-bottom: 1.25rem;
    }
}

.gallery.parallax .content-wrapper h1 + p:first-of-type {
    font-size: 1.125rem;
    font-style: normal;
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
}

@media screen and (max-width: 64rem) {
    .gallery.parallax .content-wrapper h1 + p:first-of-type {
        font-size: 1rem;
    }
}

@media screen and (max-width: 47.9375rem) {
    .gallery.parallax .content-wrapper h1 + p:first-of-type {
        font-size: 0.9375rem;
    }
}

.gallery.parallax .content-wrapper p {
    line-height: 1.5;
    font-size: 1.125rem;
    font-family: 'Open Sans', sans-serif;
    margin-bottom: 1.25rem;
    font-weight: 300;
}

    .gallery.parallax .content-wrapper p:first-of-type {
        font-weight: 200;
        font-style: italic;
        font-size: 2.5rem;
        font-family: 'Open Sans', sans-serif;
        margin-bottom: 0;
    }

@media screen and (max-width: 64rem) {
    .gallery.parallax .content-wrapper p {
        font-size: 1rem;
        margin-bottom: 1.25rem;
    }

        .gallery.parallax .content-wrapper p:first-of-type {
            font-size: 1rem;
        }
}

@media screen and (max-width: 47.9375rem) {
    .gallery.parallax .content-wrapper p {
        font-size: 0.9375rem;
        margin-bottom: 1.25rem;
    }

        .gallery.parallax .content-wrapper p:first-of-type {
            font-size: 0.9375rem;
        }
}

.gallery.parallax .content-wrapper .content-text-container {
    padding-bottom: 1.25rem;
}

@media screen and (max-width: 64rem) {
    .gallery.parallax {
        min-height: 400px !important;
    }

        .gallery.parallax .content-container h1,
        .gallery.parallax .content-container h2,
        .gallery.parallax .content-container h3,
        .gallery.parallax .content-container h4,
        .gallery.parallax .content-container h5,
        .gallery.parallax .content-container h6,
        .gallery.parallax .content-container p {
            margin-bottom: 0.625rem;
        }

        .gallery.parallax .content-container .button {
            bottom: 0;
        }

        .gallery.parallax .content-wrapper {
            padding: 1.25rem 0;
        }
}

@media screen and (max-width: 47.9375rem) {
    .gallery.parallax .content-container h1,
    .gallery.parallax .content-container h2,
    .gallery.parallax .content-container h3,
    .gallery.parallax .content-container h4,
    .gallery.parallax .content-container h5,
    .gallery.parallax .content-container h6,
    .gallery.parallax .content-container p {
        margin-bottom: 0.3125rem;
    }
}

@media screen and (max-width: 31.1875rem) {
    .gallery.parallax .content-container .button {
        bottom: 0;
    }

    .gallery.parallax .content-wrapper {
        padding: 0.625rem 0;
    }
}

.js .gallery.parallax.element-bottom .parallax-container {
    border-bottom: 0;
}

.js .gallery.parallax .element-container-bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

@keyframes grayangle_lg {
    0% {
        -webkit-clip-path: polygon(20% 100%, 20% 100%, 40% 100%, 0 100%);
        clip-path: polygon(20% 100%, 20% 100%, 40% 100%, 0 100%);
    }

    50% {
        -webkit-clip-path: polygon(20% 0, 20% 0, 40% 100%, 0 100%);
        clip-path: polygon(20% 0, 20% 0, 40% 100%, 0 100%);
    }

    100% {
        -webkit-clip-path: polygon(0 0, 60% 0, 40% 100%, 0 100%);
        clip-path: polygon(0 0, 60% 0, 40% 100%, 0 100%);
    }
}

@keyframes grayangle_md {
    0% {
        -webkit-clip-path: polygon(0 0, 60% 0, 40% 100%, 0 100%);
        clip-path: polygon(0 0, 60% 0, 40% 100%, 0 100%);
    }

    100% {
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
}

@keyframes contentAnimation_lg {
    0% {
        opacity: 0;
        margin-left: 3.125rem;
    }

    100% {
        opacity: 1;
        margin-left: 0;
    }
}

@keyframes contentAnimation_md {
    0% {
        opacity: 0;
        padding-top: 3.125rem;
    }

    100% {
        opacity: 1;
        padding-top: 0;
    }
}

@-webkit-keyframes grayangle_lg {
    0% {
        -webkit-clip-path: polygon(20% 100%, 20% 100%, 40% 100%, 0 100%);
        clip-path: polygon(20% 100%, 20% 100%, 40% 100%, 0 100%);
    }

    50% {
        -webkit-clip-path: polygon(20% 0, 20% 0, 40% 100%, 0 100%);
        clip-path: polygon(20% 0, 20% 0, 40% 100%, 0 100%);
    }

    100% {
        -webkit-clip-path: polygon(0 0, 60% 0, 40% 100%, 0 100%);
        clip-path: polygon(0 0, 60% 0, 40% 100%, 0 100%);
    }
}

@-webkit-keyframes grayangle_md {
    0% {
        -webkit-clip-path: polygon(0 0, 60% 0, 40% 100%, 0 100%);
        clip-path: polygon(0 0, 60% 0, 40% 100%, 0 100%);
    }

    100% {
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
}

@-webkit-keyframes contentAnimation_lg {
    0% {
        -webkit-opacity: 0;
        -webkit-margin-left: 3.125rem;
    }

    100% {
        -webkit-opacity: 1;
        -webkit-margin-left: 0;
    }
}

@-webkit-keyframes contentAnimation_md {
    0% {
        -webkit-opacity: 0;
        -webkit-padding-top: 3.125rem;
    }

    100% {
        -webkit-opacity: 1;
        -webkit-padding-top: 0;
    }
}

.gallery.parallax-fixed {
    position: relative;
    min-height: 30vh;
    border-bottom: none;
}

    .gallery.parallax-fixed.fill-screen {
        min-height: 80vh;
    }

    .gallery.parallax-fixed .parallax-container {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        z-index: 1;
    }

.no-js .gallery.parallax-fixed .parallax-container {
    display: none;
}

.gallery.parallax-fixed .parallax-container .parallax-image {
    position: absolute;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    width: 100%;
}

.gallery.parallax-fixed .content-container {
    position: relative;
    z-index: 5;
    margin: 0 auto;
    width: 100%;
    padding: 1.25rem 0;
}

    .gallery.parallax-fixed .content-container h1,
    .gallery.parallax-fixed .content-container h2,
    .gallery.parallax-fixed .content-container h3,
    .gallery.parallax-fixed .content-container h4,
    .gallery.parallax-fixed .content-container h5,
    .gallery.parallax-fixed .content-container h6,
    .gallery.parallax-fixed .content-container p {
        color: #fff;
        margin: 0;
        padding: 0;
        margin-bottom: 1.25rem;
    }

    .gallery.parallax-fixed .content-container .content-wrapper a {
        font-weight: inherit;
        color: #fff;
    }

        .gallery.parallax-fixed .content-container .content-wrapper a:hover {
            color: #a5c3d8;
        }

.gallery.parallax-fixed.logo .content-container .content-wrapper:before {
    margin-bottom: 1.25rem;
}

    .gallery.parallax-fixed.logo .content-container .content-wrapper:before:before,
    .gallery.parallax-fixed.logo .content-container .content-wrapper:before:after {
        margin: 0 auto;
        content: '\00a0';
        display: block;
        background: transparent url('../img/logo-over-image-top.png') top center no-repeat;
        background-size: contain;
        width: 22.6vw;
        height: 7.49vw;
        max-width: 14.0625rem;
        max-height: 6.6875rem;
        margin-bottom: 1.25rem;
    }

.svg .gallery.parallax-fixed.logo .content-container .content-wrapper:before:before,
.svg .gallery.parallax-fixed.logo .content-container .content-wrapper:before:after {
    background: transparent url('../img/logo-over-image-top.svg') top center no-repeat;
}

@media only screen and (max-width: 47.9375rem) {
    .gallery.parallax-fixed.logo .content-container .content-wrapper:before:before {
        width: 45.2vw;
        height: 14.98vw;
        display: none;
    }
}

.gallery.parallax-fixed.logo .content-container .content-wrapper:before:after {
    background-image: url('../img/logo-over-image-bottom.png');
    width: 78.4vw;
    height: 2.76vw;
    max-width: 49rem;
    max-height: 2.875rem;
}

.svg .gallery.parallax-fixed.logo .content-container .content-wrapper:before:after {
    background: transparent url('../img/logo-over-image-bottom.svg') top center no-repeat;
}

@media only screen and (max-width: 47.9375rem) {
    .gallery.parallax-fixed.logo .content-container .content-wrapper:before:after {
        width: 90vw;
        height: 8.28vw;
    }
}

.gallery.parallax-fixed.overlay .parallax-container:after {
    content: '\00a0';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    opacity: 0.81;
    background: rgba(0, 0, 0, 0.5);
    background-size: 200% 200%;
    background-position: 0% 50%;
    background: -moz-linear-gradient(-45deg, #000 0%, rgba(0, 32, 64, 0.55) 100%);
    background: -webkit-linear-gradient(-45deg, #000 0%, rgba(0, 32, 64, 0.55) 100%);
    background: linear-gradient(135deg, #000 0%, rgba(0, 32, 64, 0.55) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#8c002040', GradientType=1);
    opacity: .5;
    -webkit-animation: parallaxGradient 5s ease 1;
    -moz-animation: parallaxGradient 5s ease 1;
    animation: parallaxGradient 5s ease 1;
}

@media (min-width: 64.0625rem) {
    .gallery.parallax-fixed.overlay .parallax-container:after {
        -webkit-animation: grayangle_lg 1.5s;
        animation: grayangle_lg 1.5s;
        -webkit-animation-fill-mode: forwards;
        animation-fill-mode: forwards;
    }
}

@media only screen and (max-width: 64rem) {
    .gallery.parallax-fixed.overlay .parallax-container:after {
        -webkit-animation: grayangle_md 1.5s;
        animation: grayangle_md 1.5s;
        -webkit-animation-fill-mode: forwards;
        animation-fill-mode: forwards;
    }
}

.gallery.scrolling {
    margin: 1.25rem 0;
    padding: 0;
    overflow: hidden;
    position: relative;
}

    .gallery.scrolling ul {
        padding: 0;
        margin: 0;
    }

        .gallery.scrolling ul li {
            display: inline-block;
            margin: 0;
            padding: 0;
            padding-right: 1.875rem;
        }

            .gallery.scrolling ul li:after,
            .gallery.scrolling ul li:before {
                display: none !important;
            }

    .gallery.scrolling.ready {
        transform: translate3d(0, 0, 0);
    }

        .gallery.scrolling.ready ul {
            position: absolute;
            left: 0;
            top: 0;
            animation: galleryScrolling 10s linear infinite;
            transform: translate3d(0, 0, 0);
        }

        .gallery.scrolling.ready:hover ul {
            -webkit-animation-play-state: paused;
            -moz-animation-play-state: paused;
            -o-animation-play-state: paused;
            animation-play-state: paused;
        }

    .gallery.scrolling.no-scroll-req {
        text-align: center;
    }

        .gallery.scrolling.no-scroll-req ul {
            display: table;
            width: 100%;
            table-layout: fixed;
        }

            .gallery.scrolling.no-scroll-req ul li {
                display: table-cell;
                text-align: center;
            }

@keyframes galleryScrolling {
    100% {
        transform: translateX(-100%);
    }
}

.gallery.masonry {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
}

    .gallery.masonry ul,
    .gallery.masonry ul li {
        margin: 0;
        padding: 0;
        list-style-type: none;
        box-sizing: border-box;
        display: block;
    }

    .gallery.masonry ul {
        width: 100%;
    }

    .gallery.masonry.masonry.size-masonry-small ul li {
        box-sizing: content-box;
        border: none;
        margin-bottom: 0.625rem;
        float: left;
    }

        .gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small {
            width: 25.625rem;
        }

@media screen and (max-width: 47.9375rem) {
    .gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small {
        width: 15.625rem;
    }
}

.gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small-1 {
    width: 25.625rem;
}

@media screen and (max-width: 47.9375rem) {
    .gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small-1 {
        width: 15.625rem;
    }
}

.gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small-2,
.gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small-4 {
    width: 12.5rem;
}

@media screen and (max-width: 47.9375rem) {
    .gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small-2,
    .gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small-4 {
        width: 7.5rem;
    }
}

.gallery.masonry.masonry.size-masonry-small ul li.grid-sizer,
.gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small-3 {
    width: 12.5rem;
}

@media screen and (max-width: 47.9375rem) {
    .gallery.masonry.masonry.size-masonry-small ul li.grid-sizer,
    .gallery.masonry.masonry.size-masonry-small ul li.size-masonry-small-3 {
        width: 7.5rem;
    }
}

.gallery.masonry.masonry.size-masonry-small ul:after {
    content: '';
    display: block;
    clear: both;
}

.mfp-title .masonry-desc strong {
    display: block;
}

.mfp-title .masonry-desc span {
    display: block;
}

.gallery.simple-gallery {
    margin-bottom: 1.25rem;
}

.gallery.rotating-gallery {
    position: relative;
    margin-bottom: 1.25rem;
}

    .gallery.rotating-gallery .image-container {
        position: relative;
    }

        .gallery.rotating-gallery .image-container .rotating-image {
            position: absolute;
            width: 100%;
        }

    .gallery.rotating-gallery .thumb-container {
        margin: 0.125rem -0.125rem 0.625rem;
        padding: 0;
        list-style-type: none;
    }

        .gallery.rotating-gallery .thumb-container li {
            margin: 0;
            padding: 0;
            display: inline-block;
            width: 14.285714285714%;
            max-width: 12.5rem;
            min-width: 3.75rem;
            padding: 0.125rem;
        }

            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(1) {
                display: none;
                width: 100%;
            }

            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(2),
            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(2) ~ li {
                width: 50%;
            }

            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(3),
            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(3) ~ li {
                width: 33.3333%;
            }

            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(4),
            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(4) ~ li {
                width: 25%;
            }

            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(5),
            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(5) ~ li {
                width: 20%;
            }

            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(6),
            .gallery.rotating-gallery .thumb-container li:first-child:nth-last-child(6) ~ li {
                width: 16.666666666667%;
            }

.gallery.columns-gallery .image-container {
    margin-bottom: 1.25rem;
}

@media screen and (min-width: 48rem) {
    .gallery.columns-gallery .image-container {
        margin-bottom: 1.875rem;
    }
}

.gallery.columns-gallery .image-container a {
    display: block;
    overflow: hidden;
}

    .gallery.columns-gallery .image-container a img {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        -webkit-transition: all 250ms linear 0ms;
        -moz-transition: all 250ms linear 0ms;
        -o-transition: all 250ms linear 0ms;
        -ms-transition: all 250ms linear 0ms;
        transition: all 250ms linear 0ms;
        vertical-align: middle;
    }

    .gallery.columns-gallery .image-container a:hover img {
        -webkit-transform: scale(1.2);
        -moz-transform: scale(1.2);
        -ms-transform: scale(1.2);
        -o-transform: scale(1.2);
    }

.gallery.section-background {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 1;
}

.no-js .gallery.section-background {
    display: none;
}

.gallery.section-background .parallax-image {
    position: absolute;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    width: 100%;
}

.gallery.section-background.overlay:before {
    content: '\00a0';
    position: absolute;
    z-index: 10;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    opacity: 0.6;
    background: #000;
    background-size: 200% 200%;
    background-position: 0% 50%;
}

form fieldset {
    background: transparent;
}

form .input {
    display: block;
    margin-bottom: 0.9375rem;
    padding: 0.25rem;
    background: #f9f9f9;
    border: 1px solid #dfe1de;
    -webkit-border-radius: 0.3125rem;
    -moz-border-radius: 0.3125rem;
    border-radius: 0.3125rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

    form .input .help-block.error-message,
    form .input .error-message {
        margin-top: 0.3125rem;
        font-size: 0.8125rem;
    }

    form .input > small {
        display: block;
        padding-left: 0.625rem;
        font-style: italic;
        width: 100%;
        clear: left;
    }

    form .input label:first-child + small {
        width: auto;
    }

@media only screen and (min-width: 25rem) and (max-width: 47.9375rem), only screen and (min-width: 95.625rem) {
    form .input.text label,
    form .input.password label,
    form .input.textarea label,
    form .input.email label,
    form .input.url label,
    form .input.tel label,
    form .input.number label,
    form .input.select label {
        width: 40%;
        float: left;
        padding: 0.5625rem 0.5625rem;
    }

    form .input.text input,
    form .input.text select,
    form .input.text textarea,
    form .input.password input,
    form .input.password select,
    form .input.password textarea,
    form .input.textarea input,
    form .input.textarea select,
    form .input.textarea textarea,
    form .input.email input,
    form .input.email select,
    form .input.email textarea,
    form .input.url input,
    form .input.url select,
    form .input.url textarea,
    form .input.tel input,
    form .input.tel select,
    form .input.tel textarea,
    form .input.number input,
    form .input.number select,
    form .input.number textarea,
    form .input.select input,
    form .input.select select,
    form .input.select textarea {
        max-width: 60%;
    }
}

form .input.checkbox {
    position: relative;
}

    form .input.checkbox input {
        margin-left: 0.3125rem;
        float: none;
    }

    form .input.checkbox input,
    form .input.checkbox label {
        vertical-align: middle;
    }

    form .input.checkbox label {
        padding: 0.46875rem 0.25rem 0.3125rem 2.25rem;
    }

form .input label {
    display: block;
    color: #242e40;
    font-size: 0.8125rem;
    font-weight: 400;
    padding: 0.46875rem 0.25rem 0.3125rem;
}

form .input.required label {
    color: #c60f13;
}

    form .input.required label:after {
        content: '*';
        color: #c60f13;
        font-weight: 400;
        margin-left: 0.3125rem;
        display: inline-block;
        position: relative;
        top: -0.5em;
    }

form .input.required.error label:after {
    color: #c60f13;
}

form .input.text input,
form .input.text textarea,
form .input.password input,
form .input.password textarea,
form .input.textarea input,
form .input.textarea textarea,
form .input.email input,
form .input.email textarea,
form .input.url input,
form .input.url textarea,
form .input.tel input,
form .input.tel textarea,
form .input.number input,
form .input.number textarea {
    width: 100%;
    padding: 0.625rem;
    font-size: 0.875rem;
    line-height: 1.2;
    -webkit-border-radius: 0.3125rem;
    -moz-border-radius: 0.3125rem;
    border-radius: 0.3125rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #dfe1de;
    background: #fff;
    -webkit-transition: border 250ms linear 0ms;
    -moz-transition: border 250ms linear 0ms;
    -o-transition: border 250ms linear 0ms;
    -ms-transition: border 250ms linear 0ms;
    transition: border 250ms linear 0ms;
}

    form .input.text input:focus,
    form .input.text textarea:focus,
    form .input.password input:focus,
    form .input.password textarea:focus,
    form .input.textarea input:focus,
    form .input.textarea textarea:focus,
    form .input.email input:focus,
    form .input.email textarea:focus,
    form .input.url input:focus,
    form .input.url textarea:focus,
    form .input.tel input:focus,
    form .input.tel textarea:focus,
    form .input.number input:focus,
    form .input.number textarea:focus {
        background: #f8f9f9;
        border: 1px solid #242e40;
    }

form .input.text.required input,
form .input.text.required textarea,
form .input.password.required input,
form .input.password.required textarea,
form .input.textarea.required input,
form .input.textarea.required textarea,
form .input.email.required input,
form .input.email.required textarea,
form .input.url.required input,
form .input.url.required textarea,
form .input.tel.required input,
form .input.tel.required textarea,
form .input.number.required input,
form .input.number.required textarea {
    background: #fff;
}

    form .input.text.required input:focus,
    form .input.text.required textarea:focus,
    form .input.password.required input:focus,
    form .input.password.required textarea:focus,
    form .input.textarea.required input:focus,
    form .input.textarea.required textarea:focus,
    form .input.email.required input:focus,
    form .input.email.required textarea:focus,
    form .input.url.required input:focus,
    form .input.url.required textarea:focus,
    form .input.tel.required input:focus,
    form .input.tel.required textarea:focus,
    form .input.number.required input:focus,
    form .input.number.required textarea:focus {
        background: #f8f9f9;
        border: 1px solid #242e40;
    }

form .input.text textarea,
form .input.password textarea,
form .input.textarea textarea,
form .input.email textarea,
form .input.url textarea,
form .input.tel textarea,
form .input.number textarea {
    min-height: 9.375rem;
    line-height: 1.5;
}

form .input.text .redactor-box textarea,
form .input.password .redactor-box textarea,
form .input.textarea .redactor-box textarea,
form .input.email .redactor-box textarea,
form .input.url .redactor-box textarea,
form .input.tel .redactor-box textarea,
form .input.number .redactor-box textarea {
    display: block;
    position: relative;
    margin: 0;
    width: 100%;
    max-width: none;
    overflow: auto;
    outline: none;
    border: none;
    background-color: #111;
    box-shadow: none;
    color: #ccc;
    font-size: 13px;
    font-family: Menlo, Monaco, monospace, sans-serif !important;
    resize: none;
}

    form .input.text .redactor-box textarea:focus,
    form .input.password .redactor-box textarea:focus,
    form .input.textarea .redactor-box textarea:focus,
    form .input.email .redactor-box textarea:focus,
    form .input.url .redactor-box textarea:focus,
    form .input.tel .redactor-box textarea:focus,
    form .input.number .redactor-box textarea:focus {
        outline: none;
    }

form .input.text .redactor-editor,
form .input.text .redactor-box,
form .input.password .redactor-editor,
form .input.password .redactor-box,
form .input.textarea .redactor-editor,
form .input.textarea .redactor-box,
form .input.email .redactor-editor,
form .input.email .redactor-box,
form .input.url .redactor-editor,
form .input.url .redactor-box,
form .input.tel .redactor-editor,
form .input.tel .redactor-box,
form .input.number .redactor-editor,
form .input.number .redactor-box {
    background: #fff;
}

form .input.select select,
form .input.date select,
form .input.datetime select {
    width: 100%;
    padding: 0.625rem;
    font-size: 0.9375rem;
    line-height: 1.5;
    -webkit-border-radius: 0.3125rem;
    -moz-border-radius: 0.3125rem;
    border-radius: 0.3125rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #dfe1de;
    background: #fff;
    -webkit-transition: border 250ms linear 0ms;
    -moz-transition: border 250ms linear 0ms;
    -o-transition: border 250ms linear 0ms;
    -ms-transition: border 250ms linear 0ms;
    transition: border 250ms linear 0ms;
}

    form .input.select select:focus,
    form .input.date select:focus,
    form .input.datetime select:focus {
        background: #f8f9f9;
        border: 1px solid #242e40;
    }

    form .input.select select.fa-icons,
    form .input.date select.fa-icons,
    form .input.datetime select.fa-icons {
        font-family: 'Font Awesome 5 Pro', "open-sans", sans-serif;
    }

    form .input.select select option,
    form .input.date select option,
    form .input.datetime select option {
        line-height: 1.5;
    }

form .input.select .checkbox,
form .input.date .checkbox,
form .input.datetime .checkbox {
    display: inline-block;
    margin: 0.3125rem 1.25rem 0.3125rem 0;
}

    form .input.select .checkbox input,
    form .input.date .checkbox input,
    form .input.datetime .checkbox input {
        display: inline-block;
        width: 1.2rem;
        height: 1.2rem;
    }

    form .input.select .checkbox label,
    form .input.date .checkbox label,
    form .input.datetime .checkbox label {
        padding-left: 0.625rem;
        cursor: pointer;
        text-transform: none;
        display: inline-block;
        font-weight: 400;
        line-height: 1;
    }

        form .input.select .checkbox input:checked + label,
        form .input.select .checkbox input:focus + label,
        form .input.select .checkbox label:hover,
        form .input.date .checkbox input:checked + label,
        form .input.date .checkbox input:focus + label,
        form .input.date .checkbox label:hover,
        form .input.datetime .checkbox input:checked + label,
        form .input.datetime .checkbox input:focus + label,
        form .input.datetime .checkbox label:hover {
            color: #27455f;
        }

form .input.select select:first-child {
    width: 100%;
    max-width: none;
}

form .input.date select,
form .input.datetime select {
    display: inline-block;
    width: auto;
    margin: 0 0.15625rem;
}

    form .input.date select:first-child,
    form .input.datetime select:first-child {
        margin-left: 0;
        margin-right: 0;
    }

form .input.color input {
    width: 5rem;
    height: 5rem;
    padding: 0;
    border: none;
}

form .input.checkbox input {
    display: inline-block;
    width: 1.2rem;
    height: 1.2rem;
}

form .input.checkbox label {
    padding-left: 0.625rem;
    display: inline-block;
    cursor: pointer;
}

    form .input.checkbox input:focus + label,
    form .input.checkbox input:checked + label,
    form .input.checkbox label:hover {
        color: #27455f;
    }

form .input.radio {
    display: inline-block;
    margin: 0.3125rem 1.25rem 0.3125rem 0;
}

    form .input.radio legend {
        display: block;
        text-transform: uppercase;
        font-weight: 700;
    }

    form .input.radio input {
        display: inline-block;
        width: 1.2rem;
        height: 1.2rem;
    }

    form .input.radio label {
        padding-left: 0.625rem;
        cursor: pointer;
        text-transform: none;
        display: inline-block;
        font-weight: 400;
        line-height: 1;
        margin-right: 1.25rem;
    }

        form .input.radio input:focus + label,
        form .input.radio input:checked + label,
        form .input.radio label:hover {
            color: #27455f;
        }

#content .section.dotted-headers form.cms-form .terms-confirmation-block,
form .terms-confirmation-block,
form.cms-form .terms-confirmation-block {
    border: 2px solid rgba(36, 46, 64, 0.2);
    padding: 0.625rem 0.9375rem 0.3125rem;
    margin: 1.25rem 0;
}

    #content .section.dotted-headers form.cms-form .terms-confirmation-block .terms-confirmation-intro,
    form .terms-confirmation-block .terms-confirmation-intro,
    form.cms-form .terms-confirmation-block .terms-confirmation-intro {
        line-height: 1.2;
        font-weight: 400;
        text-transform: initial;
        font-size: 0.875rem;
        margin-bottom: 1.25rem;
    }

    #content .section.dotted-headers form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox,
    form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox,
    form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox {
        border: none;
        background: none;
        padding: 0;
        position: relative;
        padding-left: 2rem;
    }

        #content .section.dotted-headers form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox input,
        form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox input,
        form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox input {
            position: absolute;
            top: 0.15625rem;
            left: 0;
        }

        #content .section.dotted-headers form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox label,
        form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox label,
        form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox label {
            float: none;
            max-width: none;
            display: inline-block;
            margin: 0;
            line-height: 1.2;
            width: auto;
            min-width: 0;
        }

            #content .section.dotted-headers form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox label:hover,
            #content .section.dotted-headers form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox input:hover + label,
            #content .section.dotted-headers form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox input:checked + label,
            form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox label:hover,
            form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox input:hover + label,
            form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox input:checked + label,
            form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox label:hover,
            form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox input:hover + label,
            form.cms-form .terms-confirmation-block .terms-confirmation-inputs .input.checkbox input:checked + label {
                color: #242e40;
            }

#content .section.dotted-headers form.cms-form .marketing-confirmation-block,
form .marketing-confirmation-block,
form.cms-form .marketing-confirmation-block {
    padding: 0.625rem 0.9375rem 0.3125rem;
    margin-bottom: 0.3125rem;
}

    #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-intro,
    form .marketing-confirmation-block .marketing-confirmation-intro,
    form.cms-form .marketing-confirmation-block .marketing-confirmation-intro {
        line-height: 1.2;
        font-weight: 400;
        text-transform: initial;
        font-size: 0.875rem;
        margin-bottom: 0.625rem;
    }

        #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-intro p,
        form .marketing-confirmation-block .marketing-confirmation-intro p,
        form.cms-form .marketing-confirmation-block .marketing-confirmation-intro p {
            margin: 0 !important;
            padding: 0 !important;
        }

    #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio,
    form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio,
    form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio {
        border: none !important;
        background: none !important;
        margin: 0 !important;
        margin-bottom: 0.5rem !important;
        padding: 0 !important;
        position: relative;
    }

        #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio input,
        form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio input,
        form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio input {
            display: inline-block !important;
            margin-bottom: 0;
            margin-right: 0.625rem;
            cursor: pointer;
            width: unset;
            height: unset;
            vertical-align: -3px;
        }

        #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label,
        form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label,
        form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label {
            cursor: pointer;
            float: none;
            max-width: none;
            display: inline !important;
            margin: 0;
            padding: 0;
            line-height: 1.2;
            font-size: 0.6875rem;
            width: auto;
            min-width: 0;
        }

            #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label em,
            form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label em,
            form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label em {
                font-style: normal;
            }

            #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label:first-of-type,
            form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label:first-of-type,
            form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label:first-of-type {
                margin-right: 1.875rem;
            }

            #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label:hover,
            #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio input:hover + label,
            #content .section.dotted-headers form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio input:checked + label,
            form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label:hover,
            form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio input:hover + label,
            form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio input:checked + label,
            form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio label:hover,
            form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio input:hover + label,
            form.cms-form .marketing-confirmation-block .marketing-confirmation-inputs .input.radio input:checked + label {
                color: #242e40;
            }

.case-study-element-wrapper.full-page .case-study-menu {
    background: #242e40;
}

    .case-study-element-wrapper.full-page .case-study-menu * {
        color: #fff;
    }

    .case-study-element-wrapper.full-page .case-study-menu h2 {
        margin: 0;
        padding: 0.9375rem 1.5rem;
        font-size: 1.375rem;
        font-weight: 400;
        border-bottom: 5px solid #27455f;
    }

    .case-study-element-wrapper.full-page .case-study-menu ul {
        margin: 0;
        padding: 0;
    }

        .case-study-element-wrapper.full-page .case-study-menu ul li {
            margin: 0;
            padding: 0;
            line-height: 0;
        }

            .case-study-element-wrapper.full-page .case-study-menu ul li:before {
                display: none !important;
            }

            .case-study-element-wrapper.full-page .case-study-menu ul li a {
                display: block;
                padding: 0.8125rem 1.5rem;
                line-height: 1.3;
                font-size: 0.875rem;
                font-weight: 300;
                -webkit-transition: background 250ms linear 0ms;
                -moz-transition: background 250ms linear 0ms;
                -o-transition: background 250ms linear 0ms;
                -ms-transition: background 250ms linear 0ms;
                transition: background 250ms linear 0ms;
            }

                .case-study-element-wrapper.full-page .case-study-menu ul li a:hover,
                .case-study-element-wrapper.full-page .case-study-menu ul li a.in-action {
                    background: #fff;
                    background: rgba(255, 255, 255, 0.2);
                }

.case-study-element-wrapper.full-page .case-study-content {
    background: #242e40;
    background: rgba(36, 46, 64, 0.1);
    border: 2px solid #242e40;
    border: 2px solid rgba(36, 46, 64, 0.4);
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    padding: 1.25rem 1.25rem;
    margin-bottom: 20px;
}

    .case-study-element-wrapper.full-page .case-study-content h2 strong,
    .case-study-element-wrapper.full-page .case-study-content h3 strong,
    .case-study-element-wrapper.full-page .case-study-content h4 strong {
        display: inline-block;
        margin-right: 1.25rem;
    }

    .case-study-element-wrapper.full-page .case-study-content h2 {
        font-size: 1.5625rem;
    }

    .case-study-element-wrapper.full-page .case-study-content h3 {
        font-size: 1.25rem;
    }

    .case-study-element-wrapper.full-page .case-study-content p {
        font-size: 0.875rem;
        line-height: 1.61;
        margin-bottom: 1.75rem;
    }

    .case-study-element-wrapper.full-page .case-study-content .row.study-content {
        display: none;
    }

        .case-study-element-wrapper.full-page .case-study-content .row.study-content.in-action {
            display: block;
        }

        .case-study-element-wrapper.full-page .case-study-content .row.study-content .gallery {
            margin-top: 2px;
        }

@media screen and (max-width: 47.9375rem) {
    .case-study-element-wrapper.full-page .case-study-content .row.study-content {
        display: block;
    }

        .case-study-element-wrapper.full-page .case-study-content .row.study-content .gallery {
            margin-bottom: 2.5rem;
        }
}

.social-media-icons a.large {
    color: #242e40;
    font-size: 2.5rem;
    line-height: 1;
}

    .social-media-icons a.large:hover {
        color: #27455f;
    }

    .social-media-icons a.large + a {
        margin-left: 1.25rem;
    }

a.big-button,
.big-button {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    background: #3b54a5;
    padding: 1.875rem 0.9375rem;
    color: #fff;
    font-weight: 300;
    font-size: 1.875rem;
    -webkit-transition: background 250ms linear 0ms;
    -moz-transition: background 250ms linear 0ms;
    -o-transition: background 250ms linear 0ms;
    -ms-transition: background 250ms linear 0ms;
    transition: background 250ms linear 0ms;
}

    a.big-button span,
    .big-button span {
        display: block;
    }

    a.big-button .icon-container,
    .big-button .icon-container {
        font-size: 2.1875rem;
        -webkit-animation-fill-mode: both;
        -moz-animation-fill-mode: both;
        -ms-animation-fill-mode: both;
        -o-animation-fill-mode: both;
        animation-fill-mode: both;
        -webkit-animation-duration: 1s;
        -moz-animation-duration: 1s;
        -ms-animation-duration: 1s;
        -o-animation-duration: 1s;
        animation-duration: 1s;
        animation-delay: initial;
        animation-direction: initial;
        animation-play-state: initial;
        text-shadow: 0 0 15px rgba(255, 255, 255, 0);
        min-width: 4.375rem;
    }

    a.big-button .content-text,
    .big-button .content-text {
        margin-left: 1.25rem;
    }

        a.big-button .content-text span,
        .big-button .content-text span {
            font-size: 1.5625rem;
            font-family: 'Open Sans', sans-serif;
            font-style: italic;
        }

            a.big-button .content-text span.top-text,
            .big-button .content-text span.top-text {
                font-weight: 400;
            }

            a.big-button .content-text span.bottom-text,
            .big-button .content-text span.bottom-text {
                font-weight: 300;
            }

    a.big-button:hover,
    .big-button:hover {
        background: #27455f;
    }

        a.big-button:hover .icon-container,
        .big-button:hover .icon-container {
            -webkit-animation-name: tada;
            -moz-animation-name: tada;
            -o-animation-name: tada;
            animation-name: tada;
            text-shadow: 0 0 15px rgba(255, 255, 255, 0.5);
        }

    a.big-button .secondary,
    .big-button .secondary {
        background: #27455f;
    }

        a.big-button .secondary:hover,
        .big-button .secondary:hover {
            background: #242e40;
        }

@media only screen and (max-width: 64rem) {
    a.big-button,
    .big-button {
        font-size: 1.25rem;
    }

        a.big-button span:first-of-type:last-child,
        a.big-button span:last-child,
        .big-button span:first-of-type:last-child,
        .big-button span:last-child {
            font-size: 1.5625rem;
        }
}

@media (min-width: 48rem) and (max-width: 64rem) {
    a.big-button,
    .big-button {
        display: block;
        text-align: center;
    }
}

.c-output {
    margin-bottom: 1.25rem;
}

    .c-output strong {
        font-weight: 400;
        display: inline-block;
        marign-right: 0.625rem;
        min-width: 3.125rem;
    }

    .c-output.email,
    .c-output.email a,
    .c-output.tel,
    .c-output.tel a,
    .c-output.false,
    .c-output.false a {
        font-weight: 400;
    }

    .c-output dl dt {
        font-weight: 400;
    }

    .c-output dl dd {
        color: #242e40;
        margin-bottom: 0;
    }

.icon-content-block {
    margin-bottom: 1.25rem;
}

    .icon-content-block .icon-container {
        position: relative;
        width: 100%;
        max-width: 5rem;
        background: #242e40;
        color: #fff;
        overflow: hidden;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        text-align: center;
    }

        .icon-content-block .icon-container:after {
            content: "";
            display: block;
            padding-bottom: 100%;
        }

        .icon-content-block .icon-container .fa {
            position: absolute;
            display: block;
            width: 100%;
            text-align: center;
            left: 0;
            right: 0;
            top: 0.625rem;
            font-size: 2.5rem;
        }

@media only screen and (min-width: 64.0625rem) and (max-width: 106.25rem) {
    .icon-content-block .icon-container .fa {
        font-size: 1.25rem;
    }
}

.csstransforms .icon-content-block .icon-container .fa {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media only screen and (max-width: 47.9375rem) {
    .icon-content-block .icon-container {
        margin: 0.625rem auto 1.25rem;
    }
}

@media only screen and (max-width: 47.9375rem) {
    .icon-content-block {
        text-align: center;
    }
}

.icon-content-block h3 {
    margin-bottom: 0.3125rem;
}

.dark > .icon-content-block h3 {
    color: #fff;
}

.info-block {
    text-align: center;
}

    .info-block,
    .info-block p {
        font-size: 0.9375rem;
        line-height: 1.2;
    }

        .info-block h3 {
            font-size: 1.25rem;
        }

        .info-block h3 {
            color: #242e40;
            margin-bottom: 0.625rem;
        }

@media only screen and (max-width: 47.9375rem) {
    .info-block {
        text-align: left;
    }

        .info-block p {
            margin-bottom: 0.625rem;
        }
}

.red-section .info-block h3,
.red-section .info-block p {
    color: #fff;
}

.info-block .icon-container {
    margin: 0 auto 0.625rem;
    width: 5rem;
    text-align: center;
}

    .info-block .icon-container .icon {
        cursor: default;
        color: #c60f13;
        display: block;
        width: 5rem;
        height: 5rem;
        position: relative;
        font-size: 2.5rem;
    }

.red-section .info-block .icon-container .icon {
    color: #fff;
}

.info-block .icon-container .icon .fa {
    font-size: 2.5rem;
}

.info-block .icon-container .icon .fa,
.info-block .icon-container .icon .char-icon {
    line-height: 1;
    position: absolute;
    top: 10%;
    width: 100%;
    text-align: center;
}

.csstransforms .info-block .icon-container .icon .fa,
.csstransforms .info-block .icon-container .icon .char-icon {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.info-block .icon-container .icon.solid {
    color: #fff;
    background: #242e40;
}

.red-section .info-block .icon-container .icon.solid {
    color: #242e40;
    background: #fff;
}

.info-block .icon-container .icon.outlined {
    border: 2px solid #242e40;
}

.red-section .info-block .icon-container .icon.outlined {
    border: 2px solid #fff;
}

.info-block .icon-container .icon.circle {
    -webkit-border-radius: 2.5rem;
    -moz-border-radius: 2.5rem;
    border-radius: 2.5rem;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

@media only screen and (max-width: 47.9375rem) {
    .info-block .icon-container .icon {
        display: none;
    }
}

table.timetable tr td {
    border-collapse: collapse;
    border: 1px solid #27455f;
    width: 7%;
    line-height: 1;
}

    table.timetable tr td + td {
        width: 13.285714285714%;
        text-align: center;
        vertical-align: middle;
    }

        table.timetable tr td + td > span em {
            display: none;
        }

        table.timetable tr td + td > span strong {
            display: block;
            line-height: 1;
        }

        table.timetable tr td + td > span span {
            display: block;
            line-height: 1.2;
            font-size: 0.875rem;
            text-transform: uppercase;
        }

    table.timetable tr td.color-1 {
        background: #85d263;
    }

    table.timetable tr td.color-2 {
        background: #d25613;
    }

    table.timetable tr td.color-3 {
        background: #4b90c5;
    }

    table.timetable tr td.color-4 {
        background: #b349dc;
    }

    table.timetable tr td.color-5 {
        background: #dc54c6;
    }

    table.timetable tr td.color-6 {
        background: #ffff3a;
    }

    table.timetable tr td.color-7 {
        background: #ccc;
    }

    table.timetable tr td.color-8 {
        background: #fff;
    }

    table.timetable tr td.color-9 {
        background: #d23b35;
    }

    table.timetable tr td.color-9 {
        background: #333;
        color: #fff;
    }

@media screen and (max-width: 50rem) {
    .timetable.table-version {
        display: none;
    }
}

.timetable.mobile-version {
    display: none;
}

@media screen and (max-width: 50rem) {
    .timetable.mobile-version {
        display: block;
    }
}

.timetable.mobile-version .small-12 {
    margin-bottom: 1.25rem;
}

    .timetable.mobile-version .small-12 h3 {
        margin-bottom: 0.625rem;
    }

.fa.color-1 {
    color: #85d263;
}

.fa.color-2 {
    color: #d25613;
}

.fa.color-3 {
    color: #4b90c5;
}

.fa.color-4 {
    color: #b349dc;
}

.fa.color-5 {
    color: #dc54c6;
}

.fa.color-6 {
    color: #ffff3a;
}

.fa.color-7 {
    color: #ccc;
}

.fa.color-8 {
    color: #fff;
}

.fa.color-9 {
    color: #d23b35;
}

.fa.color-10 {
    color: #333;
}

.contact-infomation h3:last-of-type {
    margin-bottom: 1.625rem;
}

.contact-infomation p {
    line-height: 1.48;
    margin-top: 1.25rem;
    margin-bottom: 2.4375rem;
    font-size: 0.9375rem;
    font-family: "proxima-nova", sans-serif;
    font-weight: 400;
    color: #242e40;
}

.contact-infomation a {
    display: block;
    margin: 0;
    font-weight: 600;
    color: #242e40;
    font-family: "proxima-nova", sans-serif;
    font-size: 0.9375rem;
    -webkit-transition: opacity 170ms linear 0ms;
    -moz-transition: opacity 170ms linear 0ms;
    -o-transition: opacity 170ms linear 0ms;
    -ms-transition: opacity 170ms linear 0ms;
    transition: opacity 170ms linear 0ms;
}

    .contact-infomation a i {
        display: inline-block;
        vertical-align: -2px;
        font-size: 1.4375rem;
        width: 1.3125rem;
        margin-right: 1.3125rem;
        color: #242e40;
        text-align: center;
    }

        .contact-infomation a i.fa-mobile {
            vertical-align: -4px;
            font-size: 1.5625rem;
        }

        .contact-infomation a i.fa-phone {
            vertical-align: -4px;
            font-size: 1.375rem;
        }

        .contact-infomation a i.fa-envelope-o {
            vertical-align: -1px;
            font-size: 1.25rem;
        }

    .contact-infomation a:hover {
        opacity: 0.7;
    }

.contact-infomation ul.contact-details {
    margin: 0 0 1.25rem;
}

    .contact-infomation ul.contact-details,
    .contact-infomation ul.contact-details li {
        list-style-type: none;
        padding: 0;
    }

        .contact-infomation ul.contact-details li {
            margin: 0 0 0.625rem;
        }

            .contact-infomation ul.contact-details li a {
                text-overflow: ellipsis;
                white-space: nowrap;
                overflow: hidden;
            }

.contact-infomation .social-links a {
    display: inline-block;
    margin: 0;
    margin-right: 0.9375rem;
}

    .contact-infomation .social-links a:first-of-type {
        margin-top: 1.625rem;
    }

    .contact-infomation .social-links a i {
        font-size: 2.1875rem;
    }

.extended-contact-info-container .button.extended-info-button {
    width: 100%;
    display: flex;
    align-items: center;
    margin-bottom: 0.625rem;
    background: #3b54a5;
    border-color: #3b54a5;
}

    .extended-contact-info-container .button.extended-info-button .icon-container {
        font-size: 1.25rem;
        margin-right: 1.875rem;
    }

        .extended-contact-info-container .button.extended-info-button .icon-container .fa-stack-1x {
            font-size: 1.125rem;
        }

    .extended-contact-info-container .button.extended-info-button .content-text {
        font-family: 'Open Sans', sans-serif;
        font-size: 1.25rem;
        font-weight: 300;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .extended-contact-info-container .button.extended-info-button.alt {
        background: #4b86b1;
        border-color: #4b86b1;
    }

    .extended-contact-info-container .button.extended-info-button:hover {
        background: #242e40;
        border-color: #242e40;
    }

        .extended-contact-info-container .button.extended-info-button:hover .icon-container {
            -webkit-animation-fill-mode: both;
            -moz-animation-fill-mode: both;
            -ms-animation-fill-mode: both;
            -o-animation-fill-mode: both;
            animation-fill-mode: both;
            -webkit-animation-duration: 1s;
            -moz-animation-duration: 1s;
            -ms-animation-duration: 1s;
            -o-animation-duration: 1s;
            animation-duration: 1s;
            animation-delay: initial;
            animation-direction: initial;
            animation-play-state: initial;
            -webkit-animation-name: tada;
            -moz-animation-name: tada;
            -o-animation-name: tada;
            animation-name: tada;
        }

.extended-contact-info-container ul {
    list-style-type: none;
    margin-bottom: 0;
    margin-left: 0;
}

    .extended-contact-info-container ul li {
        font-size: 0.8125rem;
        margin-bottom: 0;
    }

.extended-contact-info-container p {
    font-size: 0.8125rem;
}

.extended-contact-info-container h3 {
    margin-bottom: 0.3125rem;
}

.service-links h3 {
    position: relative;
    font-family: Georgia, Times, "Times New Roman", serif;
    font-style: italic;
    font-size: 1.5625rem;
    margin: 0;
    padding: 0;
    margin-bottom: 1.25rem;
    color: #242e40;
    -webkit-transition: color 200ms linear 0ms;
    -moz-transition: color 200ms linear 0ms;
    -o-transition: color 200ms linear 0ms;
    -ms-transition: color 200ms linear 0ms;
    transition: color 200ms linear 0ms;
}

    .service-links h3 * {
        font-weight: 300 !important;
    }

    .service-links h3 span,
    .service-links h3 b {
        display: inline-block;
        vertical-align: middle;
    }

    .service-links h3 span {
        width: 5.625rem;
        height: 5.625rem;
        background-repeat: no-repeat;
        background-size: contain;
        -webkit-transition: all 200ms linear 0ms;
        -moz-transition: all 200ms linear 0ms;
        -o-transition: all 200ms linear 0ms;
        -ms-transition: all 200ms linear 0ms;
        transition: all 200ms linear 0ms;
    }

        .service-links h3 span.solar-installation {
            background: url(../img/service-icons/solar-installation.png);
            background: url(../img/service-icons/solar-installation.svg);
        }

        .service-links h3 span.electrical-inspection {
            background: url(../img/service-icons/electrical-inspection.png);
            background: url(../img/service-icons/electrical-inspection.svg);
        }

        .service-links h3 span.battery-storage {
            background: url(../img/service-icons/battery-storage.png);
            background: url(../img/service-icons/battery-storage.svg);
        }

        .service-links h3 span.electrics {
            background: url(../img/service-icons/electrics.png);
            background: url(../img/service-icons/electrics.svg);
        }

        .service-links h3 span + b {
            position: absolute;
            padding-left: 7.1875rem;
            left: 0;
            top: 50%;
            transform: translate(0, -50%);
        }

.service-links p {
    padding: 0;
    font-weight: 400;
    color: #242e40;
}

.service-links a:hover h3 {
    color: rgba(36, 46, 64, 0.8);
}

    .service-links a:hover h3 span {
        -webkit-transform: scaleX(-1);
        transform: scaleX(-1);
    }

@media screen and (max-width: 64rem) {
    .service-links h3 {
        font-size: 1.1875rem;
    }

        .service-links h3 span {
            width: 3.125rem;
            height: 3.125rem;
        }

            .service-links h3 span + b {
                padding-left: 4.0625rem;
            }
}

.key-points h3 {
    position: relative;
    font-family: Georgia, Times, "Times New Roman", serif;
    font-style: italic;
    font-size: 1.5625rem;
    margin: 0;
    padding: 0;
    margin-bottom: 1.25rem;
    color: #242e40;
    -webkit-transition: color 200ms linear 0ms;
    -moz-transition: color 200ms linear 0ms;
    -o-transition: color 200ms linear 0ms;
    -ms-transition: color 200ms linear 0ms;
    transition: color 200ms linear 0ms;
}

    .key-points h3 * {
        font-weight: 300 !important;
    }

    .key-points h3 .icon-bg,
    .key-points h3 b {
        display: inline-block;
        vertical-align: middle;
    }

    .key-points h3 .icon-bg {
        width: 5.625rem;
        height: 5.625rem;
        background: #242e40;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        position: relative;
        -webkit-transition: all 200ms linear 0ms;
        -moz-transition: all 200ms linear 0ms;
        -o-transition: all 200ms linear 0ms;
        -ms-transition: all 200ms linear 0ms;
        transition: all 200ms linear 0ms;
    }

        .key-points h3 .icon-bg i {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            color: #fff;
            font-size: 2.5rem;
        }

        .key-points h3 .icon-bg + b {
            padding-left: 7.1875rem;
            position: absolute;
            left: 0;
            top: 50%;
            transform: translate(0, -50%);
        }

.key-points p {
    padding: 0;
    font-weight: 400;
    color: #242e40;
}

@media screen and (max-width: 64rem) {
    .key-points h3 {
        font-size: 1.1875rem;
    }

        .key-points h3 .icon-bg {
            width: 3.125rem;
            height: 3.125rem;
        }

            .key-points h3 .icon-bg i {
                font-size: 1.25rem;
            }

            .key-points h3 .icon-bg + b {
                padding-left: 4.0625rem;
            }
}

@media screen and (max-width: 47.9375rem) {
    hr + .key-points:after,
    hr + .service-links:after {
        content: ' ';
        display: block;
        height: 1px;
        border: none;
        margin: 1.25rem 0;
        background: rgba(1, 50, 90, 0.2);
    }

        hr + .key-points:after.alt,
        hr + .service-links:after.alt {
            background: rgba(39, 69, 95, 0.2);
        }
}

.section.video-bg {
    position: relative;
    height: 75vh;
    background: url('../img/video_fallback.jpg') top center no-repeat !important;
    background-size: cover !important;
    color: #fff;
}

    .section.video-bg .container {
        z-index: 3;
        position: relative;
    }

    .section.video-bg .cover {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        height: 100%;
        width: 100%;
        z-index: 2;
        background: #000;
        background-size: 4px 4px;
        background-position: 0% 50%;
        opacity: 0.5;
    }

    .section.video-bg .video {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1;
        width: 100%;
        height: 100%;
        overflow: hidden;
    }

        .section.video-bg .video .screen {
            position: absolute;
            top: 0;
            right: 0;
            left: 0;
            z-index: 1;
            margin: auto;
            opacity: 0;
            transition: opacity .5s;
        }

        .section.video-bg .video.active .screen {
            opacity: 1;
        }

    .section.video-bg #vContentContainer {
        position: relative;
    }

    .section.video-bg .button.btn-bordered {
        text-shadow: 0 0 2px rgba(0, 0, 0, 0.63);
    }

    .section.video-bg .button + .button {
        margin-top: 1.25rem;
    }

@media screen and (min-width: 64.0625rem) {
    .section.video-bg .button + .button {
        margin-top: 0;
        margin-left: 3.3125rem;
    }
}

@media screen and (max-width: 32.9375rem) {
    .section.video-bg .button {
        display: block;
        font-size: 1.0625rem;
    }
}

.section.video-bg h1,
.section.video-bg h2,
.section.video-bg h3,
.section.video-bg h4,
.section.video-bg h5,
.section.video-bg h6 {
    color: #fff;
}

.section.video-bg h1,
.section.video-bg h2,
.section.video-bg h3 {
    line-height: 1.2;
}

.centered-text .section.video-bg h1,
.centered-text .section.video-bg h2,
.centered-text .section.video-bg h3 {
    margin: 3rem 0;
}

.section.video-bg h1 b:first-child,
.section.video-bg h1 strong:first-child,
.section.video-bg h2 b:first-child,
.section.video-bg h2 strong:first-child,
.section.video-bg h3 b:first-child,
.section.video-bg h3 strong:first-child {
    color: #242e40;
    display: block;
}

@media only screen and (max-width: 64rem) {
    .section.video-bg h1,
    .section.video-bg h2,
    .section.video-bg h3 {
        margin-bottom: 0;
    }

        .section.video-bg h1:first-of-type,
        .section.video-bg h2:first-of-type,
        .section.video-bg h3:first-of-type {
            margin-top: 1.25rem;
            margin-bottom: 0.625rem;
        }

        .section.video-bg h1:last-of-type,
        .section.video-bg h2:last-of-type,
        .section.video-bg h3:last-of-type {
            margin-top: 0.625rem;
            margin-bottom: 0.625rem;
        }
}

.section.video-bg h3 {
    font-size: 1.875rem;
}

.section.video-bg h4 {
    font-size: 1.25rem;
}

.section.video-bg h1 p,
.section.video-bg ul {
    line-height: 1.65;
}

    .section.video-bg h1 p strong,
    .section.video-bg ul strong {
        font-weight: 600;
    }

.section.video-bg ul {
    margin-left: 0;
}

.dotted-headers h1:before,
.dotted-headers h1:after,
.dotted-headers h2:before,
.dotted-headers h2:after,
.dotted-headers h3:before,
.dotted-headers h3:after,
.dotted-headers h4:before,
.dotted-headers h4:after,
.dotted-headers h5:before,
.dotted-headers h5:after,
.dotted-headers .h1:before,
.dotted-headers .h1:after,
.dotted-headers .h2:before,
.dotted-headers .h2:after,
.dotted-headers .h3:before,
.dotted-headers .h3:after,
.dotted-headers .h4:before,
.dotted-headers .h4:after,
.dotted-headers .h5:before,
.dotted-headers .h5:after {
    display: block;
    content: '\00a0';
    border-bottom: 1px dashed #242e40;
}

.dotted-headers h1:before,
.dotted-headers h2:before,
.dotted-headers h3:before,
.dotted-headers h4:before,
.dotted-headers h5:before,
.dotted-headers .h1:before,
.dotted-headers .h2:before,
.dotted-headers .h3:before,
.dotted-headers .h4:before,
.dotted-headers .h5:before {
    margin-bottom: 0.625rem;
}

.dotted-headers h1:after,
.dotted-headers h2:after,
.dotted-headers h3:after,
.dotted-headers h4:after,
.dotted-headers h5:after,
.dotted-headers .h1:after,
.dotted-headers .h2:after,
.dotted-headers .h3:after,
.dotted-headers .h4:after,
.dotted-headers .h5:after {
    margin-top: 0.625rem;
}

.neighbours .button {
    display: block;
}

    .neighbours .button .small {
        display: block;
        font-size: 0.75em;
        line-height: 1.5;
        margin-top: 0.3125rem;
    }

    .neighbours .button.icon-end .fa {
        margin-left: 0.625rem;
    }

@media screen and (max-width: 47.9375rem) {
    .neighbours .button {
        margin-bottom: 0.625rem;
    }
}

.list-two ul {
    -webkit-column-count: 2;
    -webkit-column-width: 50%;
    -webkit-column-fill: auto;
    -moz-column-count: 2;
    -moz-column-width: 50%;
    -moz-column-fill: balance;
    -column-count: 2;
    -column-width: 50%;
    -column-fill: auto;
}

    .list-two ul li {
        -webkit-column-break-inside: avoid;
        page-break-inside: avoid;
        break-inside: avoid;
    }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .list-two ul li {
        width: 50%;
        float: left;
    }
}

.list-three ul {
    -webkit-column-count: 3;
    -webkit-column-width: 33%;
    -webkit-column-fill: auto;
    -moz-column-count: 3;
    -moz-column-width: 33%;
    -moz-column-fill: balance;
    -column-count: 3;
    -column-width: 33%;
    -column-fill: auto;
}

    .list-three ul li {
        -webkit-column-break-inside: avoid;
        page-break-inside: avoid;
        break-inside: avoid;
    }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .list-three ul li {
        width: 33%;
        float: left;
    }
}

@media screen and (max-width: 62.5rem) {
    .list-two ul,
    .list-three ul {
        -webkit-column-count: 1;
        -webkit-column-width: 100%;
        -webkit-column-fill: auto;
        -moz-column-count: 1;
        -moz-column-width: 100%;
        -moz-column-fill: balance;
        -column-count: 1;
        -column-width: 100%;
        -column-fill: auto;
    }

        .list-two ul li,
        .list-three ul li {
            -webkit-column-break-inside: avoid;
            page-break-inside: avoid;
            break-inside: avoid;
        }
}

@media screen and (max-width: 62.5rem) and all and (-ms-high-contrast: none), screen and (max-width: 62.5rem) and (-ms-high-contrast: active) {
    .list-two ul li,
    .list-three ul li {
        width: 100%;
        float: left;
    }
}

.resize-me {
    -webkit-transition: all 250ms linear 0ms;
    -moz-transition: all 250ms linear 0ms;
    -o-transition: all 250ms linear 0ms;
    -ms-transition: all 250ms linear 0ms;
    transition: all 250ms linear 0ms;
}

table tr th:first-child:nth-last-child(2),
table tr th:last-child:nth-child(2),
table tr td:first-child:nth-last-child(2),
table tr td:last-child:nth-child(2),
table tbody tr th:first-child:nth-last-child(2),
table tbody tr th:last-child:nth-child(2),
table tbody tr td:first-child:nth-last-child(2),
table tbody tr td:last-child:nth-child(2),
table thead tr th:first-child:nth-last-child(2),
table thead tr th:last-child:nth-child(2),
table thead tr td:first-child:nth-last-child(2),
table thead tr td:last-child:nth-child(2) {
    width: 50%;
}
