*,
:after,
:before {
    box-sizing: border-box
}

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
main,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

body,
html {
    min-height: 100%
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
    display: block
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

body {
    line-height: 1;
    overflow-x: hidden
}

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: "";
    content: none
}

img {
    vertical-align: middle;
    interpolation-mode: bicubic
}

canvas,
embed,
img,
object,
video {
    max-width: 100%;
    height: auto
}

video {
    display: block
}

progress {
    background: rgba(0, 0, 0, .1);
    border-radius: 0;
    border: none
}

progress,
progress[value] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

progress::-webkit-progress-bar {
    background: rgba(0, 0, 0, .1);
    border-radius: 0
}

progress::-webkit-progress-value {
    background-color: hsla(0, 0%, 100%, .5);
    border-radius: 0
}

progress::-moz-progress-bar {
    background-color: hsla(0, 0%, 100%, .5);
    border-radius: 0
}

progress:not([value]) {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

figure.aspect {
    height: 0;
    padding-bottom: 56.25%;
    position: relative;
    overflow: hidden
}

figure.aspect embed,
figure.aspect iframe,
figure.aspect video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.a11y {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute!important;
    width: 1px;
    display: block;
    margin: 0;
    padding: 0
}

.hidden {
    display: none!important
}

.layer {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.bg {
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat
}

html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    text-rendering: optimizeLegibility;
    font-size: 62.5%;
    box-sizing: border-box
}

body {
    font-family: Maax, helvetica, sans-serif;
    font-size: 1.4rem;
    line-height: 1.57143;
    -webkit-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none;
    overflow-scrolling: touch;
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0)
}

body,
button,
html,
input,
textarea {
    -webkit-font-smooth: always;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

::-moz-selection {
    background: #262626;
    color: #fff;
    text-shadow: none
}

::selection {
    background: #262626;
    color: #fff;
    text-shadow: none
}

p {
    widows: 3;
    orphans: 3
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0
}

abbr,
acronym {
    text-transform: uppercase;
    font-size: 90%;
    color: #222;
    border-bottom: 1px solid #ccc;
    cursor: help
}

abbr {
    text-transform: none
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0
}

textarea {
    resize: vertical
}

pre {
    font-family: Monaco;
    padding: .5em 1em;
    margin: 0 0 1rem;
    border-radius: 2px
}

pre,
pre code {
    overflow-x: scroll
}

pre code {
    border: none;
    word-wrap: normal;
    background-color: transparent
}

button {
    font-family: inherit
}

a {
    color: inherit;
    text-decoration: none
}

.text-normal,
.text-regular {
    font-weight: 400
}

.text-medium {
    font-weight: 500
}

.text-bold {
    font-weight: 700
}

.text-uppercase {
    text-transform: uppercase
}

.text-italic {
    font-style: italic
}

.text-nowrap,
.text-truncate {
    white-space: nowrap
}

.text-truncate {
    overflow: hidden;
    text-overflow: ellipsis
}

.text-align-left,
.text-left {
    text-align: left!important
}

.text-align-right,
.text-right {
    text-align: right!important
}

.text-align-center,
.text-center {
    text-align: center!important
}

.decoration-none {
    text-decoration: none
}

.decoration-underline {
    text-decoration: underline
}

.decoration-line-through {
    text-decoration: line-through
}

code {
    font-size: 1.2rem;
    line-height: 1.5;
    margin: 0 2px;
    padding: 0 5px;
    border: 1px solid #fff;
    background-color: #fff
}

ol,
ul {
    font-size: 1em
}

/*
ol li,
ul li {
    line-height: 1;
    margin-bottom: 1rem
}
*/

ul {
    list-style: none inside
}

ul.square {
    list-style: square inside
}

ul.circle {
    list-style: circle inside
}

ul.disc {
    list-style: disc inside
}

dl dt {
    font-weight: 700
}

blockquote,
q {
    font-family: Maax, helvetica, sans-serif
}

blockquote p,
q p {
    font-size: 1rem
}

blockquote cite,
q cite {
    font-size: medium;
    display: block
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

b,
strong {
    font-weight: 700
}

em {
    font-style: italic
}

.container {
    margin: 0 auto;
    width: 85%;
    max-width: 192rem
}

@media (min-width:768px) {
    .container--content {
        width: 67%
    }
}

@media (min-width:1024px) {
    .container--content {
        width: 75%
    }
}

@media (min-width:1280px) {
    .container--content {
        width: 54%
    }
}

@media (min-width:1800px) {
    .container--content {
        width: 53%
    }
}

@media (min-width:1800px) {
    .page--detail .content-toolkit .container--content:not(.section-label),
    .page--detail .hero .container--content:not(.hero__back) {
        max-width: 94rem
    }
}

.container--full-bleed {
    width: 100%;
    max-width: none
}

.full-bleed {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw
}

.hero--about .h1 {
    max-width: 13em
}

.hero--about+.content-toolkit .toolkit-mod:first-child .media-block__inner {
    margin-top: 0
}

@media (max-width:1279px) {
    .hero--about .hero__title {
        margin-left: -4.5rem
    }
}

.hero--careers .h1 {
    max-width: 9em
}

@media (max-width:1279px) {
    .hero--careers .h1 {
        margin-left: -4.5rem
    }
}

.hero--careers .hero__excerpt {
    max-width: 19em!important
}

.hero--careers+.content-toolkit .toolkit-mod:first-child .staggered-images {
    margin-top: 0
}

@media (min-width:768px) {
    .hero--careers+.content-toolkit .toolkit-mod:first-child .staggered-images {
        margin-top: -35vh
    }
}

@media (min-width:1280px) {
    .hero--careers+.content-toolkit .toolkit-mod:first-child .staggered-images {
        margin-top: -30vh
    }
}

.hero--expertise-detail {
    overflow: hidden
}

.hero--expertise-detail .hero__back {
    top: .5em
}

.hero--expertise-detail__text .h1 {
    position: relative
}

@media (min-width:768px) {
    .hero--expertise-detail__text .h1 {
        width: 120%
    }
}

@media (min-width:1800px) {
    .hero--expertise-detail__text .h1 {
        left: -.5rem
    }
}

.hero--expertise-detail__text .h5 {
    max-width: none
}

.hero--expertise-detail__background .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.hero--expertise-detail__background video {
    opacity: .2;
    min-width: 100%;
    min-height: 100%;
    width: auto!important;
    height: auto!important;
    -o-object-fit: initial!important;
    object-fit: fill!important
}

.hero--expertise-detail__background .bg {
    opacity: .2
}

@media (min-width:768px) {
    .hero--expertise-landing .h1 {
        max-width: 16em
    }
}

@media (max-width:1279px) {
    .hero--expertise-landing .hero__title {
        margin-left: -4.5rem
    }
}

.hero--contact__dropdown {
    position: relative;
    overflow: hidden;
    max-width: calc(100% + 4.5rem)
}

@media (min-width:1280px) {
    .hero--contact__dropdown {
        max-width: calc(100% - 6.5rem)
    }
}

@media (max-width:1279px) {
    .hero--contact__dropdown {
        margin-left: -4.5rem
    }
}

@media (min-width:1440px) {
    .hero--contact__dropdown {
        max-width: calc(100% - 7rem)
    }
}

@media (min-width:1800px) {
    .hero--contact__dropdown {
        max-width: calc(100% - 12.5rem)
    }
}

.hero--contact__dropdown:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: -.5rem;
    width: calc(100% + 1rem);
    border-bottom: .3rem solid;
    margin-top: -.1rem
}

.hero--contact__dropdown.is-hovered:after {
    -webkit-animation: careers-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: careers-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.hero--contact__dropdown.active:after {
    -webkit-animation-duration: 0s;
    animation-duration: 0s
}

.hero--contact__dropdown .collapsible,
.hero--contact__dropdown.hidden {
    display: none
}

.hero--contact__dropdown .collapsible.active {
    display: block
}

.hero--contact__dropdown .collapsible ul {
    padding: 1rem 0 3rem
}

.hero--contact__dropdown .collapsible a {
    position: relative;
    display: inline-block;
    padding: .25em 1rem .25em 4rem;
    transition: background-color .1s cubic-bezier(.72, .16, .345, .875);
    overflow: hidden
}

@media (max-width:767px) {
    .hero--contact__dropdown .collapsible a {
        font-size: 1.5rem
    }
}

.hero--contact__dropdown .collapsible a:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 2rem;
    border: solid;
    border-width: .1rem 0;
    margin-top: -.2rem
}

.hero--contact__dropdown .collapsible a:after {
    content: "";
    position: absolute;
    top: 50%;
    left: -.5rem;
    width: calc(100% + 1rem);
    border: solid;
    border-width: .1rem 0;
    margin-top: -.2rem;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
}

.hero--contact__dropdown .collapsible a:hover:after {
    -webkit-animation: hero-category-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: hero-category-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.hero--contact__form {
    display: none;
    overflow: hidden;
    padding: 0 .1rem
}

@media (max-width:767px) {
    .hero--contact__form {
        width: calc(100% + 4.5rem);
        margin-left: -4.5rem
    }
}

.hero--contact__form .form-inner {
    max-width: 100rem;
    margin: 9.375% auto 0;
    padding: 2.5rem 2rem;
    background-color: #fff
}

@media (min-width:768px) {
    .hero--contact__form .form-inner {
        padding: 3% 5%
    }
}

@media (max-width:767px) {
    .hero--contact__form label {
        white-space: nowrap;
        width: 91%;
        text-overflow: ellipsis;
        overflow: hidden
    }
}

.hero--contact__form button.h1:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: -.5rem;
    width: calc(100% + 1rem);
    border-bottom: .3rem solid;
    margin-top: -.1rem
}

.hero--contact__form button.h1:hover:after {
    -webkit-animation: careers-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: careers-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.hero--contact__form.active {
    display: block
}

.hero--contact__form-careers .career-detail-form .container {
    width: 100%
}

.hero--contact__form-careers .career-detail-form .career-detail-form__inner {
    padding: 0;
    margin: 0;
    background-color: transparent
}

.hero--contact__form-careers .career-detail-form .event-registration-form__title {
    display: none
}

@media (max-width:767px) {
    .hero--contact .h1 {
        font-size: 2rem
    }
}

.hero--contact button:not(.btn) {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    text-align: left;
    background-color: transparent;
    padding: 0 0 1rem;
    max-width: 100%;
    white-space: normal
}

.hero--contact button:not(.btn) svg {
    display: inline-block;
    margin-left: auto;
    width: 2rem;
    height: 1.4rem
}

@media (min-width:1280px) {
    .hero--contact button:not(.btn) svg {
        width: 4rem
    }
}

@-webkit-keyframes hero-gradient {
    0% {
        background-position: 0 50%
    }
    50% {
        background-position: 100% 50%
    }
    to {
        background-position: 0 50%
    }
}

@keyframes hero-gradient {
    0% {
        background-position: 0 50%
    }
    50% {
        background-position: 100% 50%
    }
    to {
        background-position: 0 50%
    }
}

.hero {
    position: relative
}

.hero--detail-page {
    background-color: #1b1b1c;
    color: #fff;
    padding-top: 9.25rem;
    margin-top: -9.25rem
}

@media (min-width:768px) {
    .hero--detail-page {
        padding-top: 12rem;
        margin-top: -12rem
    }
}

@media (min-width:1440px) {
    .hero--detail-page {
        padding-top: 14rem;
        margin-top: -14rem
    }
}

@media (min-width:1800px) {
    .hero--detail-page {
        padding-top: 18.5rem;
        margin-top: -18.5rem
    }
}

.hero--page .meta {
    max-width: none
}

.hero__content {
    position: relative;
    padding-top: 8vh;
    padding-bottom: 26.04167%
}

@media (min-width:550px) {
    .hero__content {
        padding-bottom: 20%
    }
}

@media (min-width:768px) {
    .hero__content {
        padding-bottom: 12.20703%
    }
}

@media screen and (min-width:768px) and (orientation:portrait) {
    .hero__content {
        padding-top: 12vw
    }
}

@media screen and (min-width:768px) and (orientation:landscape) {
    .hero__content {
        padding-top: 8vw
    }
}

@media (min-width:1280px) {
    .hero__content {
        padding-top: 5.5vw;
        padding-bottom: 9vw
    }
}

.hero__content .lead {
    max-width: 33em
}

.hero__filters {
    max-width: 130rem
}

.hero__filters .clear-filters {
    margin-top: 5rem;
    position: relative;
    top: .1rem;
    margin-left: -2.5rem;
    display: block
}

.hero__filters .clear-filters svg {
    width: .9rem;
    height: .9rem;
    stroke-width: .2rem;
    stroke: #1b1b1c;
    margin-right: 1.5rem
}

.hero__excerpt {
    max-width: 36em
}

@media (max-width:767px) {
    .hero__excerpt {
        display: none
    }
}

.hero__gradient {
    opacity: 1;
    background-size: 200%;
    -webkit-animation: hero-gradient 15s linear infinite;
    animation: hero-gradient 15s linear infinite
}

.hero--home .h1 {
    margin-bottom: .6944444444em;
    position: relative;
    top: 1em;
    max-width: 18em
}

@media (max-width:767px) {
    .hero--home .h1 {
        font-size: 7.25vw
    }
}

.hero--career-detail__text,
.hero--news-article__text {
    padding-bottom: 15.625vw
}

@media (min-width:768px) {
    .hero--career-detail__text,
    .hero--news-article__text {
        padding-bottom: 9.76562vw
    }
}

@media (min-width:1024px) {
    .hero--career-detail__text,
    .hero--news-article__text {
        padding-bottom: 10.41667vw
    }
}

@media (min-width:1440px) {
    .hero--career-detail__text,
    .hero--news-article__text {
        padding-bottom: 8.33333vw
    }
}

@media (min-width:1800px) {
    .hero--career-detail__text,
    .hero--news-article__text {
        padding-bottom: 8.49618vw
    }
}

.hero--career-detail__text .h5,
.hero--news-article__text .h5 {
    margin-bottom: 8.51064%
}

@media (min-width:1440px) {
    .hero--career-detail__text .h5,
    .hero--news-article__text .h5 {
        margin-bottom: 8rem
    }
}

.hero--career-detail__text .h1,
.hero--news-article__text .h1 {
    position: relative;
    margin-bottom: 8.51064%
}

@media (min-width:768px) {
    .hero--career-detail__text .h1,
    .hero--news-article__text .h1 {
        width: 120%
    }
}

@media (min-width:1800px) {
    .hero--career-detail__text .h1,
    .hero--news-article__text .h1 {
        left: -.5rem;
        margin-bottom: 6rem
    }
}

@media (min-width:768px) {
    .hero--career-detail__text .excerpt,
    .hero--news-article__text .excerpt {
        padding-left: 6rem
    }
}

@media (min-width:1280px) {
    .hero--career-detail__text .excerpt,
    .hero--news-article__text .excerpt {
        padding-left: 7.5rem
    }
}

@media (max-width:1279px) {
    .hero--career-detail__text .excerpt,
    .hero--news-article__text .excerpt {
        padding-left: 0;
        padding-top: 4.5rem
    }
}

@media (min-width:1440px) {
    .hero--career-detail__text .excerpt,
    .hero--news-article__text .excerpt {
        padding-left: 8.5rem
    }
}

@media (min-width:1280px) {
    .hero--career-detail .section-label,
    .hero--news-article .section-label {
        top: -.5rem
    }
}

.hero--career-detail .section-label svg,
.hero--news-article .section-label svg {
    fill: #fff;
    stroke: #fff
}

.hero--career-detail .section-label button,
.hero--news-article .section-label button {
    color: #fff
}

.hero--career-detail .hero__content,
.hero--news-article .hero__content {
    position: relative;
    z-index: 1
}

.hero--career-detail+.hero__image img,
.hero--career-detail+.hero__image video,
.hero--news-article+.hero__image img,
.hero--news-article+.hero__image video {
    width: 100%
}

.hero--career-detail .hero__audio,
.hero--news-article .hero__audio {
    position: relative;
    padding: 8.07292%;
    background-color: #1b1b1c
}

.hero--career-detail .hero__audio .bg,
.hero--news-article .hero__audio .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .15
}

@media (min-width:1024px) {
    .hero--career-detail .hero__audio .bg,
    .hero--news-article .hero__audio .bg {
        opacity: .05
    }
}

.hero--career-detail .hero__audio .audio-player,
.hero--news-article .hero__audio .audio-player {
    position: relative;
    z-index: 1;
    margin: 0 auto
}

.hero--career-detail .hero__audio .btn--pause,
.hero--career-detail .hero__audio .btn--play,
.hero--news-article .hero__audio .btn--pause,
.hero--news-article .hero__audio .btn--play {
    border-color: #c8a559
}

.hero--career-detail .hero__audio .btn--pause svg,
.hero--career-detail .hero__audio .btn--play svg,
.hero--news-article .hero__audio .btn--pause svg,
.hero--news-article .hero__audio .btn--play svg {
    fill: #c8a559;
    stroke: #c8a559
}

.hero--career-detail .hero__event-info .grid,
.hero--news-article .hero__event-info .grid {
    padding: 9.04255% 0
}

.hero--career-detail .hero__event-info .grid__item,
.hero--news-article .hero__event-info .grid__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.hero--career-detail .hero__event-info .grid__item:last-child,
.hero--news-article .hero__event-info .grid__item:last-child {
    margin-bottom: 0
}

.hero--career-detail .hero__event-info p,
.hero--news-article .hero__event-info p {
    line-height: 1.42857
}

@media (min-width:1024px) {
    .hero--career-detail .hero__event-info a,
    .hero--news-article .hero__event-info a {
        border-bottom: .1rem solid
    }
}

.hero--career-detail .hero__event-info .link-holder,
.hero--news-article .hero__event-info .link-holder {
    margin-top: auto
}

.hero--news-landing .h1:after {
    content: "";
    display: block;
    width: 1.8rem;
    height: 2.8rem;
    position: absolute;
    top: 0;
    left: 1rem;
    background: url("/assets/images/global/lonely-drake.png") no-repeat 50%/cover
}

@media (max-width:2500px) {
    .hero--news-landing .h1:after {
        display: none
    }
}

@media (max-width:1279px) {
    .hero--news-landing .hero__filters,
    .hero--news-landing .hero__title {
        margin-left: -4.5rem
    }
}

.behind-the-build-video .video-player .btn--play-large {
    background-color: #fff;
    color: #1b1b1c
}

.behind-the-build-video .video-player .btn--play-large .icon svg {
    fill: #1b1b1c;
    stroke: #1b1b1c
}

.hero--case-study {
    background-color: #1b1b1c;
    color: #fff;
    overflow: hidden
}

.hero--case-study__text .h1 {
    position: relative;
    margin-bottom: 2.5rem
}

@media (min-width:768px) {
    .hero--case-study__text .h1 {
        width: 120%;
        margin-bottom: 5.85106%
    }
}

@media (max-width:1279px) {
    .hero--case-study__text .h1 {
        margin-left: -4.5rem
    }
}

.hero--case-study__text .h5 {
    margin-bottom: 2.5rem;
    max-width: none
}

@media (min-width:768px) {
    .hero--case-study__text .h5 {
        margin-bottom: 5.85106%
    }
}

.hero--case-study__logo {
    margin-bottom: 6.38298%
}

@media (max-width:1279px) {
    .hero--case-study__logo {
        margin-left: -4.5rem
    }
}

.hero--case-study__logo svg {
    -webkit-transform: scale(.75);
    transform: scale(.75);
    -webkit-transform-origin: left center;
    transform-origin: left center
}

@media (min-width:550px) {
    .hero--case-study__logo svg {
        -webkit-transform: scale(.65);
        transform: scale(.65)
    }
}

@media (min-width:768px) {
    .hero--case-study__logo svg {
        -webkit-transform: scale(.75);
        transform: scale(.75)
    }
}

@media (min-width:1800px) {
    .hero--case-study__logo svg {
        -webkit-transform: none;
        transform: none
    }
}

.hero--case-study__logo svg * {
    fill: #fff
}

.hero--case-study__background {
    opacity: 0
}

.hero--case-study__background .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.hero--case-study__background video {
    opacity: 1;
    min-width: 100%;
    min-height: 100%;
    width: auto!important;
    height: auto!important;
    -o-object-fit: initial!important;
    object-fit: fill!important
}

.hero--case-study__background .bg {
    opacity: .2
}

.hero--case-study .hero__gradient {
    opacity: .8
}

.hero--career-detail__text {
    margin-bottom: 0;
    padding-bottom: 0
}

.hero--career-detail__text .lead {
    margin-bottom: 0
}

.hero--career-detail .hero__content {
    position: relative;
    z-index: 1
}

.hero--career-detail .h5 {
    max-width: 100%
}

.hero--career-detail .section-label button {
    color: #fff
}

.page--career-detail__content .text-block li {
    margin-bottom: 1.5rem
}

.page--career-detail__images img {
    display: none
}

.page--career-detail__images img.is-active {
    display: block
}

.hero--404 {
    color: #fff;
    padding-top: 9.25rem;
    margin-top: -9.25rem
}

@media (min-width:768px) {
    .hero--404 {
        padding-top: 12rem;
        margin-top: -12rem
    }
}

@media (min-width:1440px) {
    .hero--404 {
        padding-top: 14rem;
        margin-top: -14rem
    }
}

@media (min-width:1800px) {
    .hero--404 {
        padding-top: 18.5rem;
        margin-top: -18.5rem
    }
}

.hero--404 .h1 {
    max-width: 13em
}

.hero--work-index .hero__excerpt {
    max-width: 100%
}

.hero--work-index .hero__excerpt p {
    max-width: 45em
}

@media (max-width:1279px) {
    .hero--work-index .hero__filters,
    .hero--work-index .hero__title {
        margin-left: -4.5rem
    }
}

@font-face {
    font-family: Maax;
    src: url("../fonts/Maax.eot");
    src: url("../fonts/Maax.eot?#iefix") format("embedded-opentype"), url("../fonts/Maax.woff") format("woff"), url("../fonts/Maax.ttf") format("truetype"), url("../fonts/Maax.svg#Maax") format("svg");
    font-weight: 400
}

@font-face {
    font-family: Maax;
    src: url("../fonts/Maax-Italic.eot");
    src: url("../fonts/Maax-Italic.eot?#iefix") format("embedded-opentype"), url("../fonts/Maax-Italic.woff") format("woff"), url("../fonts/Maax-Italic.ttf") format("truetype"), url("../fonts/Maax-Italic.svg#Maax") format("svg");
    font-weight: 400;
    font-style: italic
}

@font-face {
    font-family: Maax;
    src: url("../fonts/Maax-Medium.eot");
    src: url("../fonts/Maax-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Maax-Medium.woff") format("woff"), url("../fonts/Maax-Medium.ttf") format("truetype"), url("../fonts/Maax-Medium.svg#Maax") format("svg");
    font-weight: 500;
    font-style: normal
}

@font-face {
    font-family: Maax;
    src: url("../fonts/Maax-Bold.eot");
    src: url("../fonts/Maax-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Maax-Bold.woff") format("woff"), url("../fonts/Maax-Bold.ttf") format("truetype"), url("../fonts/Maax-Bold.svg#Maax") format("svg");
    font-weight: 700
}

@font-face {
    font-family: Maax;
    src: url("../fonts/Maax-BoldItalic.eot");
    src: url("../fonts/Maax-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Maax-BoldItalic.woff") format("woff"), url("../fonts/Maax-BoldItalic.ttf") format("truetype"), url("../fonts/Maax-BoldItalic.svg#Maax") format("svg");
    font-weight: 700;
    font-style: italic
}

@font-face {
    font-family: Maax;
    src: url("../fonts/Maax-Black.eot");
    src: url("../fonts/Maax-Black.eot?#iefix") format("embedded-opentype"), url("../fonts/Maax-Black.woff") format("woff"), url("../fonts/Maax-Black.ttf") format("truetype"), url("../fonts/Maax-Black.svg#Maax") format("svg");
    font-weight: 900;
    font-style: normal
}

/*
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.h7,
.h8,
.h9,
.meta,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 500;
    word-wrap: break-word;
    max-width: 21em
}

.h1,
h1 {
    font-size: 7.08333vw;
    line-height: 1.29412;
    letter-spacing: .025em;
    max-width: 17em
}

@media (min-width:768px) {
    .h1,
    h1 {
        font-size: 3.71094vw;
        line-height: 1.31579
    }
}

@media (min-width:1280px) {
    .h1,
    h1 {
        font-size: 2.76126vw;
        line-height: 1.23077
    }
}

@media (min-width:2200px) {
    .h1,
    h1 {
        font-size: 6.5rem
    }
}

.h2,
h2 {
    font-size: 5.83333vw;
    line-height: 1.28571;
    letter-spacing: .025em
}

@media (min-width:550px) {
    .h2,
    h2 {
        font-size: 4.5rem;
        line-height: 1.22222
    }
}

@media (min-width:768px) {
    .h2,
    h2 {
        font-size: 3.125vw;
        line-height: 1.40625
    }
}

@media (min-width:1280px) {
    .h2,
    h2 {
        font-size: 2.20901vw;
        line-height: 1.28846
    }
}

@media (min-width:2200px) {
    .h2,
    h2 {
        font-size: 5rem
    }
}

.h3,
h3 {
    font-size: 4.16667vw;
    line-height: 1.4;
    letter-spacing: .025em
}

@media (min-width:550px) {
    .h3,
    h3 {
        font-size: 4rem;
        line-height: 1.25
    }
}

@media (min-width:768px) {
    .h3,
    h3 {
        font-size: 2.34375vw;
        line-height: 1.41667
    }
}

@media (min-width:1024px) {
    .h3,
    h3 {
        font-size: 1.75781vw;
        line-height: 1.55556
    }
}

@media (min-width:1280px) {
    .h3,
    h3 {
        font-size: 1.27443vw;
        line-height: 1.4
    }
}

@media (min-width:2200px) {
    .h3,
    h3 {
        font-size: 3rem
    }
}

.h4,
h4 {
    font-size: 4.16667vw;
    line-height: 1.4;
    letter-spacing: .025em
}

@media (min-width:550px) {
    .h4,
    h4 {
        font-size: 3.2rem;
        line-height: 1.40625
    }
}

@media (min-width:768px) {
    .h4,
    h4 {
        font-size: 1.8rem;
        line-height: 1.55556
    }
}

@media (min-width:1024px) {
    .h4,
    h4 {
        font-size: 2.1rem;
        line-height: 1.33333
    }
}

@media (min-width:1280px) {
    .h4,
    h4 {
        font-size: 1.18056vw;
        line-height: 1.35294
    }
}

@media (min-width:1800px) {
    .h4,
    h4 {
        font-size: 1.01954vw;
        line-height: 1.5
    }
}

@media (min-width:2200px) {
    .h4,
    h4 {
        font-size: 2.4rem
    }
}

.h6,
h6 {
    font-size: 5.83333vw;
    line-height: 1.28571;
    letter-spacing: .025em
}

@media (min-width:550px) {
    .h6,
    h6 {
        font-size: 4.5rem;
        line-height: 1.22222
    }
}

@media (min-width:768px) {
    .h6,
    h6 {
        font-size: 3.125vw;
        line-height: 1.40625
    }
}

@media (min-width:1280px) {
    .h6,
    h6 {
        font-size: 1.69924vw;
        line-height: 1.25
    }
}

@media (min-width:2200px) {
    .h6,
    h6 {
        font-size: 4rem
    }
}

.h7 {
    font-size: 5vw;
    line-height: 1.33333;
    letter-spacing: .025em
}

@media (min-width:550px) {
    .h7 {
        font-size: 3.2rem;
        line-height: 1.40625
    }
}

@media (min-width:768px) {
    .h7 {
        font-size: 2.05078vw;
        line-height: 1.33333
    }
}

@media (min-width:1440px) {
    .h7 {
        font-size: 1.66667vw;
        line-height: 1.16667
    }
}

@media (min-width:1800px) {
    .h7 {
        font-size: 2.8rem;
        line-height: 1.28571
    }
}

.h8 {
    font-size: 4.16667vw;
    line-height: 1.5;
    letter-spacing: .025em
}

@media (min-width:768px) {
    .h8 {
        font-size: 2.14844vw;
        line-height: 1.81818
    }
}

@media (min-width:1280px) {
    .h8 {
        font-size: 1.48683vw;
        line-height: 1.37143
    }
}

@media (min-width:2200px) {
    .h8 {
        font-size: 3.5rem
    }
}

.h9 {
    font-size: 2.5vw;
    line-height: 1.66667
}

@media (min-width:1280px) {
    .h9 {
        font-size: .77778vw;
        line-height: 2.85714
    }
}

@media (min-width:1440px) {
    .h9 {
        font-size: .67969vw;
        line-height: 3.125
    }
}

@media (min-width:2200px) {
    .h9 {
        font-size: 1.6rem
    }
}

.h5,
.meta,
h5 {
    font-size: .9rem;
    line-height: 1.4;
    letter-spacing: .05em;
    text-transform: uppercase;
    max-width: none;
    font-weight: 700
}

@media (min-width:1800px) {
    .h5,
    .meta,
    h5 {
        font-size: 1.1rem;
        line-height: 1.36364
    }
}
*/

@-webkit-keyframes external-link-hover {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
}

@keyframes external-link-hover {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
}

.external-links-list {
    padding-right: 5rem
}

@media (min-width:768px) {
    .external-links-list {
        padding-right: 0
    }
}

.external-links-list ul {
    margin: 0;
    list-style: none
}

.external-links-list a {
    text-decoration: none;
    color: #1b1b1c
}

.external-links-list a:hover .icon {
    -webkit-transform: translateX(1rem);
    transform: translateX(1rem)
}

.external-links-list a:hover span:after {
    -webkit-animation: external-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: external-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.external-links-list span {
    display: inline-block;
    position: relative;
    overflow: hidden;
    color: #1b1b1c;
    padding: 0 1rem;
    margin-left: -1rem;
    vertical-align: middle
}

.external-links-list span:after {
    content: "";
    position: absolute;
    top: 50%;
    left: -1rem;
    width: calc(100% + 2rem);
    height: 0;
    border-bottom: .2rem solid;
    transition: all .8s cubic-bezier(.555, .205, .295, .975);
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    margin-top: -.1rem
}

.external-links-list .icon {
    stroke: #c8a559;
    display: inline-block;
    vertical-align: middle;
    margin-left: 1.5rem;
    transition: all .4s cubic-bezier(.58, .3, .005, 1)
}

p {
    font-size: 1.2rem;
    line-height: 1.83333;
    margin-bottom: 1rem;
    max-width: 42em
}

@media (min-width:1024px) {
    p {
        font-size: 1.4rem;
        line-height: 2;
        margin-bottom: 2rem
    }
}

@media (min-width:1800px) {
    p {
        font-size: 1.8rem;
        line-height: 1.77778;
        margin-bottom: 2.5rem
    }
}

p.full {
    max-width: none
}

.lead {
    font-size: 1.7rem;
    line-height: 1.66667;
    margin-bottom: 2.5rem
}

@media (min-width:1024px) {
    .lead {
        font-size: 1.8rem;
        line-height: 1.94444;
        margin-bottom: 4rem
    }
}

@media (min-width:1440px) {
    .lead {
        font-size: 2rem;
        line-height: 1.9;
        margin-bottom: 4rem
    }
}

@media (min-width:1800px) {
    .lead {
        font-size: 2.5rem;
        line-height: 1.8;
        margin-bottom: 5rem
    }
}

.small,
small {
    font-size: 1.1rem;
    line-height: 1.81818;
    letter-spacing: .025em
}

@media (min-width:1024px) {
    .small,
    small {
        font-size: 1.2rem;
        line-height: 1.83333
    }
}

@media (min-width:1800px) {
    .small,
    small {
        font-size: 1.4rem;
        line-height: 1.71429
    }
}

body {
    background-color: #f4f4f4;
    color: #1b1b1c
}

.fw-regular,
body {
    font-weight: 400
}

.fw-medium {
    font-weight: 500
}

.fw-semibold {
    font-weight: 600
}

.fw-bold {
    font-weight: 700
}

.fw-extra-bold {
    font-weight: 800
}

.fw-black {
    font-weight: 900
}

hr {
    border-color: #d9d9d9
}

body {
    padding-top: 9.25rem
}

@media (min-width:768px) {
    body {
        padding-top: 12rem
    }
}

@media (min-width:1440px) {
    body {
        padding-top: 14rem
    }
}

@media (min-width:1800px) {
    body {
        padding-top: 18.5rem
    }
}

body.page--dark-nav #header:not(.menu-active) {
    background-color: #1b1b1c
}

.page--transparent-nav #header:not(.menu-active),
.transparent-nav #header:not(.menu-active) {
    transition: all .4s cubic-bezier(.555, .205, .295, .975), background-color 0s linear;
    background-color: transparent
}

.page--transparent-nav #header:not(.menu-active) .logo svg,
.transparent-nav #header:not(.menu-active) .logo svg {
    fill: #fff
}

.page--transparent-nav #header:not(.menu-active) .hamburger,
.page--transparent-nav #header:not(.menu-active) nav a,
.transparent-nav #header:not(.menu-active) .hamburger,
.transparent-nav #header:not(.menu-active) nav a {
    color: #fff
}

.page--transparent-nav #header:not(.menu-active) .hamburger .bar,
.transparent-nav #header:not(.menu-active) .hamburger .bar {
    background-color: #fff
}

.page--transparent-nav #header:not(.menu-active) .btn--light,
.transparent-nav #header:not(.menu-active) .btn--light {
    border-color: #fff
}

.page--transparent-nav #header.menu-active,
.transparent-nav #header.menu-active {
    background-color: transparent
}

.page--transparent-nav .headroom--top #header,
.transparent-nav .headroom--top #header {
    transition: none
}

.page--dark #header:not(.menu-active) {
    background-color: #1b1b1c
}

.page--dark #header:not(.menu-active) .btn:hover .btn__text {
    color: #1b1b1c
}

.page--dark #header:not(.menu-active) .btn__background {
    background-color: #fff
}

#header-holder {
    position: fixed;
    z-index: 9;
    top: 0;
    left: 0;
    width: 100%;
    transition: -webkit-transform .4s cubic-bezier(.58, .3, .005, 1);
    transition: transform .4s cubic-bezier(.58, .3, .005, 1);
    transition: transform .4s cubic-bezier(.58, .3, .005, 1), -webkit-transform .4s cubic-bezier(.58, .3, .005, 1)
}

.main-nav {
    background-color: #f4f4f4
}

.main-nav.headroom--not-top {
    transition: -webkit-transform .32s cubic-bezier(.74, .07, .34, .96);
    transition: transform .32s cubic-bezier(.74, .07, .34, .96);
    transition: transform .32s cubic-bezier(.74, .07, .34, .96), -webkit-transform .32s cubic-bezier(.74, .07, .34, .96);
    background-color: #f4f4f4
}

.main-nav.headroom--not-top .container,
.main-nav.headroom--not-top .logo {
    transition: all .28s cubic-bezier(.555, .205, .295, .975);
    transition-delay: 1s
}

.main-nav.headroom--not-top .container {
    transition-delay: 0s
}

@media (min-width:1280px) {
    .main-nav.headroom--not-top .container {
        min-height: 9.3rem;
        padding-top: 3.5rem
    }
}

.main-nav.headroom--not-top .logo {
    transition-delay: 0s
}

@media (min-width:1280px) {
    .main-nav.headroom--not-top .logo {
        -webkit-transform: scale(.8);
        transform: scale(.8)
    }
}

.main-nav .logo {
    position: relative;
    z-index: 1;
    display: block;
    width: 12rem;
    height: 1.9em;
    float: left;
    -webkit-transform-origin: left center;
    transform-origin: left center;
    transition: all .28s cubic-bezier(.555, .205, .295, .975)
}

@media (min-width:768px) {
    .main-nav .logo {
        width: 12rem;
        height: 1.9em
    }
}

@media (min-width:1800px) {
    .main-nav .logo {
        width: 14rem;
        height: 2.2rem
    }
}

.main-nav .logo svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: #1b1b1c;
    transition: fill .2s cubic-bezier(.555, .205, .295, .975)
}

.main-nav .desktop-nav {
    font-size: 1.4rem
}

@media (max-width:1279px) {
    .main-nav .desktop-nav {
        visibility: hidden;
        opacity: 0;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #1b1b1c;
        transition: all .5s cubic-bezier(.72, .16, .345, .875)
    }
}

@media (min-width:1280px) {
    .main-nav .desktop-nav {
        font-size: 1.6rem;
        float: right;
        position: relative;
        top: -.6em
    }
}

@media (min-width:1440px) {
    .main-nav .desktop-nav {
        font-size: 1.8rem
    }
}

@media (min-width:1280px) {
    .main-nav .desktop-nav .list--mobile {
        display: none
    }
}

@media (max-width:1279px) {
    .main-nav .desktop-nav .list--desktop {
        display: none
    }
}

.main-nav .desktop-nav .list--desktop .btn--light {
    transition: border-color .2s cubic-bezier(.72, .16, .345, .875)
}

.main-nav .desktop-nav ul {
    margin: 0;
    line-height: 1
}

@media (max-width:1279px) {
    .main-nav .desktop-nav ul {
        position: absolute;
        top: 20%;
        left: 7.5%
    }
}

@media (max-width:767px) {
    .main-nav .desktop-nav ul {
        top: 29%;
        left: 12.5%
    }
}

@media (max-width:768px) and (orientation:landscape) {
    .main-nav .desktop-nav ul {
        top: 27%!important
    }
}

.main-nav .desktop-nav li {
    line-height: 1.2;
    margin-bottom: 3.5rem;
    opacity: 0;
    font-size: 2rem
}

@media (max-width:768px) and (orientation:landscape) {
    .main-nav .desktop-nav li {
        margin-bottom: 2.5rem
    }
}

@media (min-width:768px) {
    .main-nav .desktop-nav li {
        font-size: 1.8rem
    }
}

@media (min-width:1024px) {
    .main-nav .desktop-nav li {
        padding-top: .7rem
    }
}

@media (min-width:1280px) {
    .main-nav .desktop-nav li {
        margin-left: 3.5rem;
        display: inline-block;
        vertical-align: middle;
        margin-bottom: 0;
        opacity: 1;
        padding-top: 0;
        font-size: 1.4rem
    }
}

@media (min-width:1440px) {
    .main-nav .desktop-nav li {
        font-size: 1.6rem
    }
}

@media (min-width:1800px) {
    .main-nav .desktop-nav li {
        letter-spacing: .025rem;
        margin-left: 4.5rem;
        font-size: 1.8rem
    }
}

.main-nav .desktop-nav li:first-child {
    margin-left: 0
}

.main-nav .desktop-nav li:last-child {
    margin-bottom: 0
}

@media (max-width:1279px) {
    .main-nav .desktop-nav .btn {
        display: none
    }
}

@media (min-width:1280px) {
    .main-nav .desktop-nav .btn {
        min-width: 15rem
    }
}

@media (min-width:1800px) {
    .main-nav .desktop-nav .btn {
        min-width: 20rem
    }
}

@media (min-width:1280px) {
    .main-nav .desktop-nav .contact-link {
        display: none
    }
}

@media (max-width:1279px) {
    .main-nav.menu-active .desktop-nav {
        opacity: 1;
        visibility: visible
    }
    .main-nav.menu-active .desktop-nav li {
        opacity: 1;
        transition: opacity .4s cubic-bezier(.58, .3, .005, 1)
    }
    .main-nav.menu-active .desktop-nav li:first-child {
        transition-delay: .06s
    }
    .main-nav.menu-active .desktop-nav li:nth-child(2) {
        transition-delay: .12s
    }
    .main-nav.menu-active .desktop-nav li:nth-child(3) {
        transition-delay: .18s
    }
    .main-nav.menu-active .desktop-nav li:nth-child(4) {
        transition-delay: .24s
    }
    .main-nav.menu-active .desktop-nav li:nth-child(5) {
        transition-delay: .3s
    }
    .main-nav.menu-active .desktop-nav li:nth-child(6) {
        transition-delay: .36s
    }
    .main-nav.menu-active .desktop-nav li:nth-child(7) {
        transition-delay: .42s
    }
    .main-nav.menu-active .logo svg {
        fill: #fff
    }
    .main-nav.menu-active .hamburger {
        color: #fff
    }
}

.main-nav .expanded-nav {
    display: none;
    position: fixed;
    z-index: 11;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #1b1b1c;
    color: #fff;
    text-align: right
}

.main-nav .expanded-nav--active {
    display: block
}

.main-nav .expanded-nav__inner {
    padding-top: 10rem
}

@media (min-width:1280px) {
    .main-nav .expanded-nav__inner {
        padding-right: 17.5rem
    }
}

@media (min-width:1800px) {
    .main-nav .expanded-nav__inner {
        padding-right: 23.5rem
    }
}

.main-nav .expanded-nav .close {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    display: block;
    position: absolute;
    top: -1.1rem;
    right: 0;
    z-index: 2;
    width: 5rem;
    height: 5rem;
    background-color: #fff;
    padding: 0;
    margin: 0
}

@media (max-width:1279px) {
    .main-nav .expanded-nav .close {
        display: none
    }
}

@media (min-width:1280px) {
    .main-nav .expanded-nav .close {
        right: 17.5rem
    }
}

@media (min-width:1800px) {
    .main-nav .expanded-nav .close {
        right: 23.5rem
    }
}

.main-nav .expanded-nav .close svg {
    fill: #1b1b1c;
    stroke: #1b1b1c;
    width: 1.6rem;
    height: 1.6rem;
    margin: 0 auto;
    position: relative;
    top: .1rem
}

.main-nav .expanded-nav li {
    max-width: none;
    margin-bottom: 1.6666666667em
}

.main-nav .expanded-nav a {
    color: #fff!important
}

.main-nav nav a:not(.btn) {
    position: relative;
    color: #1b1b1c;
    text-decoration: none;
    font-weight: 500;
    transition: color .2s cubic-bezier(.72, .16, .345, .875);
    outline: none
}

@media (max-width:1279px) {
    .main-nav nav a:not(.btn) {
        color: #fff
    }
}

.main-nav nav a:not(.btn) span {
    position: absolute;
    top: 50%;
    left: -.5rem;
    width: calc(100% + 1rem);
    height: 0;
    border-bottom: .2rem solid;
    margin-top: -.1rem;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left center;
    transform-origin: left center
}

.main-nav nav a:not(.btn).active span {
    -webkit-transform: none;
    transform: none
}

.main-nav .hamburger {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    position: relative;
    z-index: 1;
    background-color: transparent;
    padding: 0;
    font-size: 1.8rem;
    transition: color .4s cubic-bezier(.555, .205, .295, .975);
    float: right;
    margin-top: .15em;
    overflow: hidden
}

@media (min-width:550px) {
    .main-nav .hamburger {
        font-size: 2.4rem;
        margin-top: 0
    }
}

@media (min-width:768px) {
    .main-nav .hamburger {
        font-size: 1.8rem;
        margin-top: .25em
    }
}

@media (min-width:1280px) {
    .main-nav .hamburger {
        display: none!important
    }
}

.main-nav .hamburger--desktop {
    width: 2rem;
    height: 2rem
}

@media (min-width:1280px) {
    .main-nav .hamburger--desktop {
        display: inline-block!important;
        vertical-align: middle;
        margin-top: 0
    }
}

.main-nav .hamburger .bar {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2rem;
    height: .2rem;
    margin-left: -1rem;
    margin-top: -.1rem;
    background-color: #1b1b1c;
    transition: background-color .2s cubic-bezier(.72, .16, .345, .875)
}

.main-nav .hamburger .bar:nth-child(2) {
    margin-top: -.7rem
}

.main-nav .hamburger .bar:nth-child(4) {
    margin-top: .5rem
}

.main-nav .container {
    min-height: 9.25rem;
    padding-top: 3rem
}

@media (min-width:768px) {
    .main-nav .container {
        min-height: 12rem;
        padding-top: 4.5rem
    }
}

@media (min-width:1024px) {
    .main-nav .container {
        transition: all .28s cubic-bezier(.555, .205, .295, .975)
    }
}

@media (min-width:1440px) {
    .main-nav .container {
        min-height: 14rem;
        padding-top: 5rem
    }
}

@media (min-width:1800px) {
    .main-nav .container {
        min-height: 18.5rem;
        padding-top: 7rem
    }
}

.main-nav a {
    outline: none
}

.btn {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    position: relative;
/*    background-color: #1b1b1c;*/
    border: .1rem solid transparent;
    line-height: 3.3rem;
    white-space: nowrap;
    padding: 0 3rem;
    color: #fff;
    font-size: 1rem;
    text-transform: uppercase;
    font-weight: 700;
    text-align: left;
    overflow: hidden
}

@media (min-width:1024px) {
    .btn {
        font-size: 1.1rem;
        line-height: 4.8rem
    }
}

@media (min-width:1280px) {
    .btn {
        min-width: 18.5rem
    }
}

.btn__text {
    overflow: hidden;
    display: inline-block;
    line-height: 1;
    vertical-align: middle
}

.btn__text-inner {
    display: block
}

.btn--icon {
    padding-right: 6rem
}

.btn--error {
    background-color: #e82b2d
}

.btn__background {
    position: absolute;
    display: block;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #1b1b1c
}

.btn__background+.btn__text {
    transition: color .4s cubic-bezier(.72, .16, .345, .875);
    position: relative;
    z-index: 1
}

.btn:hover .btn__background+.btn__text {
    color: #fff
}

.btn .icon {
    position: absolute;
    top: 0;
    right: 2rem;
    width: 2rem;
    height: 100%;
    display: block;
    overflow: hidden
}

.btn .icon svg {
    width: 100%;
    height: 100%
}

.btn svg {
    fill: #c8a559;
    stroke: #c8a559
}

.btn[disabled=disabled] {
    opacity: .2!important;
    cursor: default;
    transition: opacity .38s cubic-bezier(.72, .16, .345, .875)!important
}

@media (min-width:1280px) {
    .btn--collapse {
        min-width: 0;
        min-height: 5rem;
        overflow: hidden;
        padding: 0;
        min-width: 5rem
    }
    .btn--collapse .btn__text {
        position: absolute;
        top: 0;
        right: 100%;
        width: auto;
        height: 101%;
        line-height: 4.9rem;
        padding-right: 6rem;
        padding-left: 3rem;
        background-color: #fff;
        color: #1b1b1c
    }
    .btn--collapse .icon {
        right: 1.25rem
    }
}

@media (max-width:1279px) {
    .btn--collapse-all {
        min-width: 0;
        min-height: 3.5rem;
        overflow: hidden;
        padding: 0;
        min-width: 3.5rem
    }
    .btn--collapse-all .btn__text {
        position: absolute;
        top: 0;
        right: 100%;
        width: auto;
        height: 101%;
        line-height: 4.9rem;
        padding-right: 6rem;
        padding-left: 3rem;
        background-color: #fff;
        color: #1b1b1c
    }
    .btn--collapse-all .icon {
        right: .5rem
    }
}

.btn--collapse-dark .btn__text {
    transition: background-color .3s cubic-bezier(.72, .16, .345, .875), color .3s cubic-bezier(.72, .16, .345, .875)
}

.btn--collapse-dark:hover .btn__text {
    background-color: #1b1b1c;
    color: #fff
}

.btn--clear {
    border-color: #fff
}

.btn--clear,
.btn--light {
    background-color: transparent
}

.btn--light {
    color: #1b1b1c;
    border-color: #232425
}

@media (min-width:1280px) {
    .btn--light {
        min-width: 20rem
    }
}

.btn--round {
    padding: 0;
    min-height: 10rem;
    min-width: 10rem;
    border-radius: 50%;
    line-height: 9.8rem;
    text-align: center
}

@media (min-width:768px) {
    .btn--round {
        min-height: 12rem;
        min-width: 12rem;
        line-height: 11.8rem
    }
}

.btn--round span {
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.btn--round .btn__text {
    position: relative;
    z-index: 2
}

.btn--round .icon {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    width: 2rem;
    height: 2rem;
    margin-left: -1rem;
    margin-top: -1rem;
    overflow: hidden
}

.btn--round .icon svg {
    display: block;
    fill: #fff;
    stroke: #fff;
    position: relative;
    left: .2rem
}

.btn--round-small {
    padding: 0;
    min-height: 4rem;
    min-width: 4rem;
    border-radius: 50%;
    background-color: transparent;
    border-color: #1b1b1c
}

.btn--round-small .icon {
    width: 1rem;
    right: 1.25rem;
    height: 100%;
    fill: #1b1b1c;
    stroke: #1b1b1c;
    top: 0;
    left: auto;
    margin: 0
}

.waiting {
    position: fixed;
    z-index: 10;
    top: 50%;
    left: 50%;
    width: 14rem;
    height: 14rem;
    margin-left: -7rem;
    margin-top: -7rem;
    overflow: hidden
}

.waiting svg {
    fill: #1b1b1c;
    stroke: #1b1b1c;
    width: 100%;
    height: 100%
}

@-webkit-keyframes plyr-progress {
    to {
        background-position: 25px 0
    }
}

@keyframes plyr-progress {
    to {
        background-position: 25px 0
    }
}

.plyr {
    position: relative;
    max-width: 100%;
    min-width: 200px;
    font-family: Maax, helvetica, sans-serif;
    direction: ltr
}

.plyr,
.plyr *,
.plyr:after,
.plyr:before {
    box-sizing: border-box
}

.plyr a,
.plyr button,
.plyr input,
.plyr label {
    -ms-touch-action: manipulation;
    touch-action: manipulation
}

.plyr:focus {
    outline: 0
}

.plyr audio,
.plyr video {
    width: 100%;
    height: auto;
    vertical-align: middle;
    border-radius: inherit
}

.plyr input[type=range] {
    display: block;
    height: 8px;
    width: 100%;
    margin: 0;
    padding: 0;
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    border: none;
    background: transparent;
    border-radius: 0
}

.plyr input[type=range]::-webkit-slider-runnable-track {
    height: 8px;
    background: transparent;
    border: 0;
    border-radius: 4px;
    -webkit-user-select: none;
    user-select: none
}

.plyr input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    margin-top: -4px;
    position: relative;
    height: 16px;
    width: 16px;
    background: #fff;
    border: 2px solid transparent;
    border-radius: 100%;
    transition: background .2s ease, border .2s ease, -webkit-transform .2s ease;
    transition: background .2s ease, border .2s ease, transform .2s ease;
    transition: background .2s ease, border .2s ease, transform .2s ease, -webkit-transform .2s ease;
    box-shadow: 0 1px 1px rgba(50, 50, 50, .15), 0 0 0 1px rgba(0, 0, 0, .15);
    box-sizing: border-box;
    opacity: 0
}

.plyr input[type=range]::-moz-range-track {
    height: 8px;
    background: transparent;
    border: 0;
    border-radius: 4px;
    -moz-user-select: none;
    user-select: none
}

.plyr input[type=range]::-moz-range-thumb {
    position: relative;
    height: 16px;
    width: 16px;
    background: #fff;
    border: 2px solid transparent;
    border-radius: 100%;
    transition: background .2s ease, border .2s ease, -webkit-transform .2s ease;
    transition: background .2s ease, border .2s ease, transform .2s ease;
    transition: background .2s ease, border .2s ease, transform .2s ease, -webkit-transform .2s ease;
    box-shadow: 0 1px 1px rgba(50, 50, 50, .15), 0 0 0 1px rgba(0, 0, 0, .15);
    box-sizing: border-box
}

.plyr input[type=range]::-ms-track {
    height: 8px;
    background: transparent;
    border: 0;
    color: transparent
}

.plyr input[type=range]::-ms-fill-upper {
    height: 8px;
    background: transparent;
    border: 0;
    border-radius: 4px;
    -ms-user-select: none;
    user-select: none
}

.plyr input[type=range]::-ms-fill-lower {
    height: 8px;
    background: transparent;
    border: 0;
    border-radius: 4px;
    -ms-user-select: none;
    user-select: none;
    background: #c8a559
}

.plyr input[type=range]::-ms-thumb {
    position: relative;
    height: 16px;
    width: 16px;
    background: #fff;
    border: 2px solid transparent;
    border-radius: 100%;
    transition: background .2s ease, border .2s ease, -webkit-transform .2s ease;
    transition: background .2s ease, border .2s ease, transform .2s ease;
    transition: background .2s ease, border .2s ease, transform .2s ease, -webkit-transform .2s ease;
    box-shadow: 0 1px 1px rgba(50, 50, 50, .15), 0 0 0 1px rgba(0, 0, 0, .15);
    box-sizing: border-box;
    margin-top: 0
}

.plyr input[type=range]::-ms-tooltip {
    display: none
}

.plyr input[type=range]:focus {
    outline: 0
}

.plyr input[type=range]::-moz-focus-outer {
    border: 0
}

.plyr input[type=range].tab-focus:focus {
    outline-offset: 3px
}

.plyr input[type=range]:active::-webkit-slider-thumb {
    background: #3498db;
    border-color: #fff;
    -webkit-transform: scale(1.25);
    transform: scale(1.25)
}

.plyr input[type=range]:active::-moz-range-thumb {
    background: #3498db;
    border-color: #fff;
    transform: scale(1.25)
}

.plyr input[type=range]:active::-ms-thumb {
    background: #3498db;
    border-color: #fff;
    transform: scale(1.25)
}

.plyr--video input[type=range].tab-focus:focus {
    outline: 1px dotted hsla(0, 0%, 100%, .5)
}

.plyr--audio input[type=range].tab-focus:focus {
    outline: 1px dotted rgba(86, 93, 100, .5)
}

.plyr__sr-only {
    clip: rect(1px, 1px, 1px, 1px);
    overflow: hidden;
    position: absolute!important;
    padding: 0!important;
    border: 0!important;
    height: 1px!important;
    width: 1px!important
}

.plyr__video-wrapper {
    position: relative;
    background: #000;
    border-radius: inherit
}

.plyr__video-embed {
    padding-bottom: 56.25%;
    height: 0;
    border-radius: inherit;
    overflow: hidden;
    z-index: 0
}

.plyr__video-embed iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.plyr__video-embed>div {
    position: relative;
    padding-bottom: 200%;
    -webkit-transform: translateY(-35.95%);
    transform: translateY(-35.95%)
}

.plyr .plyr__video-embed iframe {
    pointer-events: none
}

.plyr video::-webkit-media-text-track-container {
    display: none
}

.plyr__captions {
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 40px;
    -webkit-transform: translateY(-120px);
    transform: translateY(-120px);
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease;
    color: #fff;
    font-size: 16px;
    text-align: center;
    font-weight: 400
}

.plyr__captions span {
    border-radius: 2px;
    padding: 6px 20px;
    background: rgba(0, 0, 0, .7);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    line-height: 150%
}

.plyr__captions span:empty {
    display: none
}

@media (min-width:768px) {
    .plyr__captions {
        font-size: 24px
    }
}

.plyr--captions-active .plyr__captions {
    display: block
}

.plyr--hide-controls .plyr__captions {
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px)
}

@media (min-width:1024px) {
    .plyr--fullscreen-active .plyr__captions {
        font-size: 32px
    }
}

.plyr::-webkit-media-controls {
    display: none
}

.plyr__controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1;
    text-align: center
}

.plyr__controls .plyr__progress,
.plyr__controls .plyr__time,
.plyr__controls>button {
    margin-left: 10px
}

.plyr__controls .plyr__progress:first-child,
.plyr__controls .plyr__time:first-child,
.plyr__controls>button:first-child {
    margin-left: 0
}

.plyr__controls .plyr__volume {
    margin-left: 10px
}

.plyr__controls [data-plyr=pause] {
    margin-left: 0
}

.plyr__controls .icon--captions-on,
.plyr__controls .icon--exit-fullscreen,
.plyr__controls .icon--muted {
    display: none
}

@media (min-width:480px) {
    .plyr__controls .plyr__progress,
    .plyr__controls .plyr__time,
    .plyr__controls>button {
        margin-left: 20px
    }
}

.plyr--hide-controls .plyr__controls {
    opacity: 0;
    pointer-events: none
}

.plyr--video .plyr__controls {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 60px 0 0;
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit;
    color: #fff;
    transition: opacity .3s ease
}

.plyr--video .plyr__controls:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 150%;
    background: linear-gradient(transparent, rgba(50, 50, 50, .35))
}

.plyr--video .plyr__controls button.tab-focus:focus,
.plyr--video .plyr__controls button:hover {
    color: #fff
}

.plyr--audio .plyr__controls {
    padding: 20px;
    border-radius: inherit;
    background: #fff;
    border: 1px solid #dbe3e8;
    color: #565d64
}

.plyr--audio .plyr__controls button.tab-focus:focus,
.plyr--audio .plyr__controls button:hover,
.plyr__play-large {
    background: #3498db;
    color: #fff
}

.plyr__play-large {
    display: none;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    padding: 20px;
    border: 4px solid currentColor;
    border-radius: 100%;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .15);
    transition: all .3s ease
}

.plyr__play-large svg {
    position: relative;
    left: 2px;
    width: 20px;
    height: 20px;
    display: block;
    fill: currentColor
}

.plyr__play-large:focus {
    outline: 1px dotted hsla(0, 0%, 100%, .5)
}

.plyr .plyr__play-large {
    display: inline-block
}

.plyr--audio .plyr__play-large {
    display: none
}

.plyr--playing .plyr__play-large {
    opacity: 0;
    visibility: hidden
}

.plyr--playing .plyr__controls [data-plyr=play],
.plyr__controls [data-plyr=pause] {
    display: none
}

.plyr--playing .plyr__controls [data-plyr=pause] {
    display: inline-block
}

.plyr--captions-active .plyr__controls .icon--captions-on,
.plyr--fullscreen-active .icon--exit-fullscreen,
.plyr--muted .plyr__controls .icon--muted {
    display: block
}

.plyr--captions-active .plyr__controls .icon--captions-on+svg,
.plyr--fullscreen-active .icon--exit-fullscreen+svg,
.plyr--muted .plyr__controls .icon--muted+svg,
.plyr [data-plyr=captions],
.plyr [data-plyr=fullscreen] {
    display: none
}

.plyr--captions-enabled [data-plyr=captions],
.plyr--fullscreen-enabled [data-plyr=fullscreen] {
    display: inline-block
}

.plyr__tooltip {
    position: absolute;
    z-index: 2;
    bottom: 100%;
    margin-bottom: 20px;
    padding: 10px 15px;
    pointer-events: none;
    opacity: 0;
    background: rgba(0, 0, 0, .7);
    border-radius: 0;
    color: #fff;
    font-size: 14px;
    line-height: 1.3;
    -webkit-transform: translate(-50%, 10px) scale(.8);
    transform: translate(-50%, 10px) scale(.8);
    -webkit-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    transition: opacity .2s ease .1s, -webkit-transform .2s ease .1s;
    transition: transform .2s ease .1s, opacity .2s ease .1s;
    transition: transform .2s ease .1s, opacity .2s ease .1s, -webkit-transform .2s ease .1s
}

.plyr__tooltip:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -4px;
    border-right: 4px solid transparent;
    border-top: 4px solid rgba(0, 0, 0, .7);
    border-left: 4px solid transparent;
    z-index: 2
}

.plyr__tooltip--visible,
.plyr button.tab-focus:focus .plyr__tooltip,
.plyr button:hover .plyr__tooltip {
    opacity: 1;
    -webkit-transform: translate(-50%) scale(1);
    transform: translate(-50%) scale(1)
}

.plyr button:hover .plyr__tooltip {
    z-index: 3
}

.plyr__controls button:first-child .plyr__tooltip {
    left: 0;
    -webkit-transform: translateY(10px) scale(.8);
    transform: translateY(10px) scale(.8);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%
}

.plyr__controls button:first-child .plyr__tooltip:before {
    left: 23px
}

.plyr__controls button:last-child .plyr__tooltip {
    right: 0;
    -webkit-transform: translateY(10px) scale(.8);
    transform: translateY(10px) scale(.8);
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%
}

.plyr__controls button:last-child .plyr__tooltip:before {
    left: auto;
    right: 23px;
    -webkit-transform: translateX(50%);
    transform: translateX(50%)
}

.plyr__controls button:first-child .plyr__tooltip--visible,
.plyr__controls button:first-child.tab-focus:focus .plyr__tooltip,
.plyr__controls button:first-child:hover .plyr__tooltip,
.plyr__controls button:last-child .plyr__tooltip--visible,
.plyr__controls button:last-child.tab-focus:focus .plyr__tooltip,
.plyr__controls button:last-child:hover .plyr__tooltip {
    -webkit-transform: translate(0) scale(1);
    transform: translate(0) scale(1)
}

.plyr__progress {
    display: none;
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.plyr__progress input[type=range] {
    position: relative;
    z-index: 2
}

.plyr__progress input[type=range]::-webkit-slider-runnable-track {
    background: transparent
}

.plyr__progress input[type=range]::-moz-range-track {
    background: transparent
}

.plyr__progress input[type=range]::-ms-fill-upper {
    background: transparent
}

.plyr__progress .plyr__tooltip {
    left: 0;
    display: none!important
}

.plyr .plyr__progress {
    display: block;
    width: calc(100% + .6rem);
    left: -.3rem
}

.plyr__progress--buffer,
.plyr__progress--played,
.plyr__volume--display {
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    height: 8px;
    margin: -4px 0 0;
    padding: 0;
    vertical-align: top;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    border-radius: 0
}

.plyr__progress--buffer::-webkit-progress-bar,
.plyr__progress--played::-webkit-progress-bar,
.plyr__volume--display::-webkit-progress-bar {
    background: transparent
}

.plyr__progress--buffer::-webkit-progress-value,
.plyr__progress--played::-webkit-progress-value,
.plyr__volume--display::-webkit-progress-value {
    background: currentColor;
    border-radius: 100px;
    min-width: 8px
}

.plyr__progress--buffer::-moz-progress-bar,
.plyr__progress--played::-moz-progress-bar,
.plyr__volume--display::-moz-progress-bar {
    background: currentColor;
    border-radius: 100px;
    min-width: 8px
}

.plyr__progress--buffer::-ms-fill,
.plyr__progress--played::-ms-fill,
.plyr__volume--display::-ms-fill {
    border-radius: 100px
}

.plyr__progress--played,
.plyr__volume--display {
    z-index: 1;
    color: #c8a559;
    background: transparent;
    transition: none
}

.plyr__progress--played::-webkit-progress-value,
.plyr__volume--display::-webkit-progress-value {
    min-width: 8px;
    max-width: 99%;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    transition: none
}

.plyr__progress--played::-moz-progress-bar,
.plyr__volume--display::-moz-progress-bar {
    min-width: 8px;
    max-width: 99%;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    transition: none
}

.plyr__progress--played::-ms-fill,
.plyr__volume--display::-ms-fill {
    display: none
}

.plyr__progress--buffer::-webkit-progress-value {
    transition: width .2s ease
}

.plyr__progress--buffer::-moz-progress-bar {
    transition: width .2s ease
}

.plyr__progress--buffer::-ms-fill {
    transition: width .2s ease
}

.plyr--video .plyr__progress--buffer,
.plyr--video .plyr__volume--display {
    background: transparent
}

.plyr--video .plyr__progress--buffer {
    background: transparent url("/assets/images/global/bg-texture-striped.png") repeat-x 0/.8rem;
    color: transparent
}

.plyr--audio .plyr__progress--buffer,
.plyr--audio .plyr__volume--display {
    background: rgba(198, 214, 219, .67)
}

.plyr--audio .plyr__progress--buffer {
    color: rgba(198, 214, 219, .67)
}

.plyr--loading .plyr__progress--buffer {
    -webkit-animation: plyr-progress 1s linear infinite;
    animation: plyr-progress 1s linear infinite;
    background-size: 25px 25px;
    background-repeat: repeat-x;
    color: transparent
}

.plyr--video.plyr--loading .plyr__progress--buffer {
    background-color: transparent
}

.plyr--audio.plyr--loading .plyr__progress--buffer {
    background-color: rgba(198, 214, 219, .67)
}

.plyr__time {
    display: inline-block;
    vertical-align: middle
}

.plyr__time+.plyr__time {
    display: none
}

@media (min-width:768px) {
    .plyr__time+.plyr__time {
        display: inline-block
    }
}

.plyr__time+.plyr__time:before {
    content: "\2044";
    margin-right: 20px
}

.plyr__volume {
    display: none
}

.plyr .plyr__volume {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative
}

.plyr .plyr__volume input[type=range] {
    position: relative;
    z-index: 2
}

@media (min-width:480px) {
    .plyr .plyr__volume {
        display: block;
        max-width: 60px
    }
}

@media (min-width:768px) {
    .plyr .plyr__volume {
        max-width: 100px
    }
}

.plyr--is-ios .plyr__volume,
.plyr--is-ios [data-plyr=mute] {
    display: none!important
}

.plyr--fullscreen-active {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    z-index: 10000000;
    background: #000;
    border-radius: 0!important
}

.plyr--fullscreen-active video {
    height: 100%
}

.plyr--fullscreen-active .plyr__video-wrapper {
    height: 100%;
    width: 100%
}

.plyr--fullscreen-active .plyr__video-embed {
    overflow: visible
}

.plyr--fullscreen-active .plyr__controls {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0
}

.plyr--fullscreen-active.plyr--vimeo .plyr__video-wrapper {
    height: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.video-player {
    position: relative
}

.video-player__thumb {
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    width: 100.5%;
    height: 100.5%;
    cursor: pointer;
    background-color: #f4f4f4;
    overflow: hidden
}

.video-player__thumb img,
.video-player__thumb video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: opacity .4s cubic-bezier(.72, .16, .345, .875)!important
}

.video-player__thumb:hover .btn__bg {
    -webkit-transform: scale(1.25);
    transform: scale(1.25)
}

.video-player__thumb:hover img,
.video-player__thumb:hover video {
    opacity: .3
}

.video-player__thumb-media {
    background-color: #1b1b1c;
    overflow: hidden
}

.video-player .btn--play-large {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    margin-left: -5rem!important;
    margin-top: -5rem!important;
    background-color: transparent;
    overflow: visible
}

@media (min-width:768px) {
    .video-player .btn--play-large {
        margin-left: -6rem!important;
        margin-top: -6rem!important
    }
}

.video-player .btn--play-large.btn--play-light {
    color: #1b1b1c
}

.video-player .btn--play-large.btn--play-light svg {
    fill: #1b1b1c;
    stroke: #1b1b1c
}

.video-player .btn--play-large.btn--play-light .btn__bg {
    background-color: #fff
}

.video-player .btn--play-large .btn__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #1b1b1c;
    border-radius: 50%;
    transition: -webkit-transform .38s cubic-bezier(.74, .07, .34, .96);
    transition: transform .38s cubic-bezier(.74, .07, .34, .96);
    transition: transform .38s cubic-bezier(.74, .07, .34, .96), -webkit-transform .38s cubic-bezier(.74, .07, .34, .96)
}

.video-player .btn--pause .icon {
    right: 1.4rem
}

.video-player .fullscreen-holder,
.video-player .play-holder {
    position: absolute;
    top: 0
}

.video-player .play-holder {
    left: 2rem
}

.video-player .fullscreen-holder {
    right: 2rem
}

.video-player .progress-holder {
    overflow: hidden;
    width: 100%
}

.video-player .plyr__video-wrapper {
    background-color: transparent
}

.video-player .plyr__controls button {
    border-color: #fff
}

.video-player .plyr__controls button svg,
.video-player .plyr__controls button use {
    fill: #fff;
    stroke: #fff
}

.video-player .plyr__controls .btn--fullscreen .icon {
    width: 1.3rem;
    right: 1.2rem
}

.video-player .plyr__controls .plyr__time {
    font-weight: 700;
    margin-top: .2rem
}

.video-player .plyr__controls .plyr__time+.plyr__time {
    margin-left: .3rem
}

.video-player .plyr__controls .plyr__time+.plyr__time:before {
    margin-right: .3rem
}

.is-safari [data-skrollex] {
    will-change: auto
}

.line,
.line-wrapper,
.paragraph-wrapper {
    overflow: hidden;
    white-space: nowrap
}

.skrollex-disabled [data-skrollex] {
    opacity: 1!important
}

[data-skrollex]:not([data-sk-static]) {
    opacity: 0
}

.skrollex-enabled.sk-ready [data-sk-mask] {
    position: relative;
    overflow: hidden;
    transition: none
}

.skrollex-enabled.sk-ready [data-sk-mask] .sk-mask {
    background-color: #323232
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).sk-active {
    opacity: 1
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-start {
    opacity: 0;
    -webkit-transform: translateY(3rem);
    transform: translateY(3rem)
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-start.sk-obj-small {
    -webkit-transform: translateY(.6rem);
    transform: translateY(.6rem)
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-start.sk-obj-medium {
    -webkit-transform: translateY(.8rem);
    transform: translateY(.8rem)
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-start.sk-obj-large {
    -webkit-transform: translateY(1.6rem);
    transform: translateY(1.6rem)
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-start[data-sk-fade] {
    -webkit-transform: none;
    transform: none
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-in {
    transition: opacity .42s cubic-bezier(.08, .705, .005, .99), -webkit-transform .42s cubic-bezier(.08, .705, .005, .99);
    transition: transform .42s cubic-bezier(.08, .705, .005, .99), opacity .42s cubic-bezier(.08, .705, .005, .99);
    transition: transform .42s cubic-bezier(.08, .705, .005, .99), opacity .42s cubic-bezier(.08, .705, .005, .99), -webkit-transform .42s cubic-bezier(.08, .705, .005, .99)
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-in.sk-obj.small {
    transition: opacity .4s cubic-bezier(.25, .145, .025, .995), -webkit-transform .4s cubic-bezier(.25, .145, .025, .995);
    transition: transform .4s cubic-bezier(.25, .145, .025, .995), opacity .4s cubic-bezier(.25, .145, .025, .995);
    transition: transform .4s cubic-bezier(.25, .145, .025, .995), opacity .4s cubic-bezier(.25, .145, .025, .995), -webkit-transform .4s cubic-bezier(.25, .145, .025, .995)
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-in.sk-obj-medium {
    transition: opacity .32s cubic-bezier(.25, .145, .18, 1), -webkit-transform .32s cubic-bezier(.25, .145, .18, 1);
    transition: transform .32s cubic-bezier(.25, .145, .18, 1), opacity .32s cubic-bezier(.25, .145, .18, 1);
    transition: transform .32s cubic-bezier(.25, .145, .18, 1), opacity .32s cubic-bezier(.25, .145, .18, 1), -webkit-transform .32s cubic-bezier(.25, .145, .18, 1)
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-in.sk-obj-large,
.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-in.sk-obj-xlarge {
    transition: opacity .42s cubic-bezier(.25, .145, .18, 1), -webkit-transform .42s cubic-bezier(.25, .145, .18, 1);
    transition: transform .42s cubic-bezier(.25, .145, .18, 1), opacity .42s cubic-bezier(.25, .145, .18, 1);
    transition: transform .42s cubic-bezier(.25, .145, .18, 1), opacity .42s cubic-bezier(.25, .145, .18, 1), -webkit-transform .42s cubic-bezier(.25, .145, .18, 1)
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-in[data-sk-slow] {
    transition: opacity .82s cubic-bezier(.62, .08, .005, .935), -webkit-transform .82s cubic-bezier(.08, .705, .005, .99);
    transition: transform .82s cubic-bezier(.08, .705, .005, .99), opacity .82s cubic-bezier(.62, .08, .005, .935);
    transition: transform .82s cubic-bezier(.08, .705, .005, .99), opacity .82s cubic-bezier(.62, .08, .005, .935), -webkit-transform .82s cubic-bezier(.08, .705, .005, .99)
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-in,
.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-in-complete {
    opacity: 1;
    -webkit-transform: none;
    transform: none
}

.skrollex-enabled.sk-ready [data-skrollex]:not([data-sk-static]).anim-out {
    opacity: 0
}

.col-1 {
    width: 8.33333%
}

.col-2 {
    width: 16.66667%
}

.col-3 {
    width: 25%
}

.col-4 {
    width: 33.33333%
}

.col-5 {
    width: 41.66667%
}

.col-6 {
    width: 50%
}

.col-7 {
    width: 58.33333%
}

.col-8 {
    width: 66.66667%
}

.col-9 {
    width: 75%
}

.col-10 {
    width: 83.33333%
}

.col-11 {
    width: 91.66667%
}

@media (min-width:550px) {
    .col-1--tiny {
        width: 8.33333%
    }
}

@media (min-width:550px) {
    .col-2--tiny {
        width: 16.66667%
    }
}

@media (min-width:550px) {
    .col-3--tiny {
        width: 25%
    }
}

@media (min-width:550px) {
    .col-4--tiny {
        width: 33.33333%
    }
}

@media (min-width:550px) {
    .col-5--tiny {
        width: 41.66667%
    }
}

@media (min-width:550px) {
    .col-6--tiny {
        width: 50%
    }
}

@media (min-width:550px) {
    .col-7--tiny {
        width: 58.33333%
    }
}

@media (min-width:550px) {
    .col-8--tiny {
        width: 66.66667%
    }
}

@media (min-width:550px) {
    .col-9--tiny {
        width: 75%
    }
}

@media (min-width:550px) {
    .col-10--tiny {
        width: 83.33333%
    }
}

@media (min-width:550px) {
    .col-11--tiny {
        width: 91.66667%
    }
}

@media (min-width:768px) {
    .col-1--small {
        width: 8.33333%
    }
}

@media (min-width:768px) {
    .col-2--small {
        width: 16.66667%
    }
}

@media (min-width:768px) {
    .col-3--small {
        width: 25%
    }
}

@media (min-width:768px) {
    .col-4--small {
        width: 33.33333%
    }
}

@media (min-width:768px) {
    .col-5--small {
        width: 41.66667%
    }
}

@media (min-width:768px) {
    .col-6--small {
        width: 50%
    }
}

@media (min-width:768px) {
    .col-7--small {
        width: 58.33333%
    }
}

@media (min-width:768px) {
    .col-8--small {
        width: 66.66667%
    }
}

@media (min-width:768px) {
    .col-9--small {
        width: 75%
    }
}

@media (min-width:768px) {
    .col-10--small {
        width: 83.33333%
    }
}

@media (min-width:768px) {
    .col-11--small {
        width: 91.66667%
    }
}

@media (min-width:1024px) {
    .col-1--medium {
        width: 8.33333%
    }
}

@media (min-width:1024px) {
    .col-2--medium {
        width: 16.66667%
    }
}

@media (min-width:1024px) {
    .col-3--medium {
        width: 25%
    }
}

@media (min-width:1024px) {
    .col-4--medium {
        width: 33.33333%
    }
}

@media (min-width:1024px) {
    .col-5--medium {
        width: 41.66667%
    }
}

@media (min-width:1024px) {
    .col-6--medium {
        width: 50%
    }
}

@media (min-width:1024px) {
    .col-7--medium {
        width: 58.33333%
    }
}

@media (min-width:1024px) {
    .col-8--medium {
        width: 66.66667%
    }
}

@media (min-width:1024px) {
    .col-9--medium {
        width: 75%
    }
}

@media (min-width:1024px) {
    .col-10--medium {
        width: 83.33333%
    }
}

@media (min-width:1024px) {
    .col-11--medium {
        width: 91.66667%
    }
}

@media (min-width:1280px) {
    .col-1--large {
        width: 8.33333%
    }
}

@media (min-width:1280px) {
    .col-2--large {
        width: 16.66667%
    }
}

@media (min-width:1280px) {
    .col-3--large {
        width: 25%
    }
}

@media (min-width:1280px) {
    .col-4--large {
        width: 33.33333%
    }
}

@media (min-width:1280px) {
    .col-5--large {
        width: 41.66667%
    }
}

@media (min-width:1280px) {
    .col-6--large {
        width: 50%
    }
}

@media (min-width:1280px) {
    .col-7--large {
        width: 58.33333%
    }
}

@media (min-width:1280px) {
    .col-8--large {
        width: 66.66667%
    }
}

@media (min-width:1280px) {
    .col-9--large {
        width: 75%
    }
}

@media (min-width:1280px) {
    .col-10--large {
        width: 83.33333%
    }
}

@media (min-width:1280px) {
    .col-11--large {
        width: 91.66667%
    }
}

@media (min-width:1440px) {
    .col-1--xlarge {
        width: 8.33333%
    }
}

@media (min-width:1440px) {
    .col-2--xlarge {
        width: 16.66667%
    }
}

@media (min-width:1440px) {
    .col-3--xlarge {
        width: 25%
    }
}

@media (min-width:1440px) {
    .col-4--xlarge {
        width: 33.33333%
    }
}

@media (min-width:1440px) {
    .col-5--xlarge {
        width: 41.66667%
    }
}

@media (min-width:1440px) {
    .col-6--xlarge {
        width: 50%
    }
}

@media (min-width:1440px) {
    .col-7--xlarge {
        width: 58.33333%
    }
}

@media (min-width:1440px) {
    .col-8--xlarge {
        width: 66.66667%
    }
}

@media (min-width:1440px) {
    .col-9--xlarge {
        width: 75%
    }
}

@media (min-width:1440px) {
    .col-10--xlarge {
        width: 83.33333%
    }
}

@media (min-width:1440px) {
    .col-11--xlarge {
        width: 91.66667%
    }
}

@media (min-width:1800px) {
    .col-1--xxlarge {
        width: 8.33333%
    }
}

@media (min-width:1800px) {
    .col-2--xxlarge {
        width: 16.66667%
    }
}

@media (min-width:1800px) {
    .col-3--xxlarge {
        width: 25%
    }
}

@media (min-width:1800px) {
    .col-4--xxlarge {
        width: 33.33333%
    }
}

@media (min-width:1800px) {
    .col-5--xxlarge {
        width: 41.66667%
    }
}

@media (min-width:1800px) {
    .col-6--xxlarge {
        width: 50%
    }
}

@media (min-width:1800px) {
    .col-7--xxlarge {
        width: 58.33333%
    }
}

@media (min-width:1800px) {
    .col-8--xxlarge {
        width: 66.66667%
    }
}

@media (min-width:1800px) {
    .col-9--xxlarge {
        width: 75%
    }
}

@media (min-width:1800px) {
    .col-10--xxlarge {
        width: 83.33333%
    }
}

@media (min-width:1800px) {
    .col-11--xxlarge {
        width: 91.66667%
    }
}

.grid {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media (min-width:768px) {
    .grid {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}

@media (min-width:768px) {
    .grid>.grid__item {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

@media (max-width:767px) {
    .grid--mobile {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}

@media (max-width:767px) {
    .grid--mobile>.grid__item {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

.grid--gutters {
    margin: 0 -1rem
}

.grid--gutters>.grid__item {
    padding: 0 1rem
}

@media (min-width:1280px) {
    .grid--gutters {
        margin: 0 -2rem
    }
    .grid--gutters>.grid__item {
        padding: 0 2rem
    }
}

.grid--middle {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.grid--top {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.grid--bottom {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.grid--center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media (min-width:768px) {
    .grid--auto-width>.grid__item {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }
}

@media (min-width:768px) {
    .grid--four-up .grid__item {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%
    }
}

@media (min-width:1024px) {
    .grid--four-up .grid__item {
        width: 33.333%
    }
}

@media (min-width:1280px) {
    .grid--four-up .grid__item {
        width: 25%
    }
}

@media (min-width:768px) {
    .grid--three-up .grid__item {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%
    }
}

@media (min-width:1280px) {
    .grid--three-up .grid__item {
        width: 33.333%
    }
}

@media (min-width:768px) {
    .grid--two-up .grid__item {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%
    }
}

.image-carousel {
    position: relative;
    padding-bottom: 7rem;
    overflow: hidden;
    will-change: opacity!important
}

.featured-work-carousel .image-carousel .image-carousel__image {
    padding: 0
}

.image-carousel[data-animation-type=mask] .container:not(.section-label) {
    max-width: 126.8rem!important
}

.image-carousel[data-animation-type=mask] .image-carousel__image {
    position: absolute!important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    visibility: hidden;
    overflow: hidden
}

.image-carousel[data-animation-type=mask] .image-carousel__image.active {
    z-index: 8!important;
    visibility: visible
}

.image-carousel[data-animation-type=mask] .image-carousel__image.entering {
    z-index: 7!important;
    visibility: visible
}

.image-carousel[data-animation-type=mask] .image-carousel__image:first-child {
    z-index: 9
}

.image-carousel[data-animation-type=mask] .image-carousel__image:nth-child(2) {
    z-index: 8
}

.image-carousel[data-animation-type=mask] .image-carousel__image:nth-child(3) {
    z-index: 7
}

.image-carousel[data-animation-type=mask] .image-carousel__image:nth-child(4) {
    z-index: 6
}

.image-carousel[data-animation-type=mask] .image-carousel__image:nth-child(5) {
    z-index: 5
}

.image-carousel[data-animation-type=mask] .image-carousel__image:nth-child(6) {
    z-index: 4
}

.image-carousel[data-animation-type=mask] .image-carousel__image:nth-child(7) {
    z-index: 3
}

.image-carousel[data-animation-type=mask] .image-carousel__image:nth-child(8) {
    z-index: 2
}

.image-carousel[data-animation-type=mask] .image-carousel__image:first-child {
    position: relative!important;
    visibility: visible
}

.image-carousel[data-animation-type=mask] .image-carousel__image-track+.image-carousel__image-track .image-carousel__image:nth-child(2) {
    visibility: visible
}

.image-carousel[data-animation-type=mask] .image-carousel__image-track+.image-carousel__image-track .image-carousel__image:first-child {
    visibility: hidden;
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
}

.image-carousel[data-animation-type=slide] .image-carousel__image {
    display: inline-block;
    width: 100%;
    transition: all .5s cubic-bezier(.58, .3, .005, 1)!important;
    vertical-align: middle
}

.image-carousel[data-animation-type=slide] .image-carousel__image.no-trans {
    transition: none!important
}

.image-carousel[data-animation-type=slide] .image-carousel__image-track+.image-carousel__image-track .image-carousel__image {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
}

@media (min-width:1024px) {
    .image-carousel--x-wide {
        left: 0
    }
}

.image-carousel__images {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    white-space: nowrap;
    position: relative
}

.image-carousel__image {
    will-change: transform
}

@media (max-width:1023px) {
    .image-carousel__image {
        padding: 0 1rem
    }
}

.image-carousel__image a,
.image-carousel__image img {
    display: block;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-drag: none
}

.image-carousel__image:last-child {
    margin-right: 0
}

.image-carousel__image-track {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: calc(100% + 2rem);
    font-size: 0;
    position: relative
}

@media (min-width:1024px) {
    .image-carousel__image-track {
        overflow: hidden;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%
    }
}

.image-carousel__image-track+.image-carousel__image-track {
    margin-left: 2rem
}

@media (max-width:1023px) {
    .image-carousel__image-track+.image-carousel__image-track {
        display: none
    }
}

@media (min-width:1440px) {
    .image-carousel__image-track+.image-carousel__image-track {
        margin-left: 4rem
    }
}

.image-carousel .no-trans {
    transition: none!important
}

.image-grid__image {
    width: 50%;
    margin-bottom: 2rem
}

@media (min-width:1280px) {
    .image-grid__image {
        margin-bottom: 4rem
    }
}

.image-grid .image-carousel {
    width: 100%;
    overflow: hidden
}

.media-block img,
.media-block video {
    width: 100%;
    display: block
}

.media-block .btn--play-large {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    margin-left: -5rem;
    margin-top: -5rem
}

.content-toolkit .toolkit-mod:first-child .media-block__inner {
    margin-top: 0
}

.staggered-images .grid__item {
    width: 100%
}

@media (min-width:768px) {
    .staggered-images .grid__item {
        width: 50%
    }
}

@media (min-width:768px) {
    .staggered-images__image {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%
    }
    .staggered-images__image:nth-child(odd) .inner {
        padding-right: 16.80851%
    }
    .staggered-images__image:nth-child(2n) .image:before {
        content: " ";
        float: left;
        padding-top: 125%
    }
    .staggered-images__image:nth-child(2n) .image:after {
        content: " ";
        display: table;
        clear: both
    }
    .staggered-images__image:nth-child(2n) .image>:first-child {
        left: 0;
        height: 100%;
        position: absolute;
        top: 0;
        width: 100%
    }
}

@media (max-width:767px) {
    .staggered-images__image .inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .staggered-images__image .inner .text {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        margin-bottom: 0
    }
    .staggered-images__image .inner .image {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0
    }
}

@media (min-width:768px) {
    .staggered-images__image-without-text:nth-child(odd) {
        margin-top: 26vh
    }
}

.staggered-images .container--content .staggered-images__image:first-child {
    padding-left: 0
}

.staggered-images .container--content .staggered-images__image:last-child {
    padding-right: 0
}

.staggered-images .image {
    position: relative
}

.staggered-images .image:before {
    content: " ";
    float: left;
    padding-top: 150%
}

.staggered-images .image:after {
    content: " ";
    display: table;
    clear: both
}

.staggered-images .image>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:1800px) {
    .staggered-images .image+.text {
        margin-top: 16.99235vw
    }
}

@media (max-width:767px) {
    .staggered-images .image+.text {
        margin-top: 0!important
    }
}

.staggered-images .lead {
    max-width: 20.5em
}

.staggered-images h2 {
    max-width: 10em
}

.staggered-images .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.staggered-images--auto-size .staggered-images__image .image>:first-child {
    position: relative
}

.staggered-images--auto-size .staggered-images__image {
    padding-left: 0;
    padding-right: 0
}

@media (min-width:768px) {
    .staggered-images--auto-size .staggered-images__image:nth-child(2n) .inner {
        padding-left: 16.80851%
    }
}

.staggered-images--auto-size .image:after,
.staggered-images--auto-size .image:before {
    display: none
}

.staggered-images--align-top .staggered-images__image-without-text:nth-child(odd) {
    margin-top: 0
}

.large-column-images .grid {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

@media (max-width:767px) {
    .large-column-images .grid__item {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%
    }
}

@media (min-width:768px) {
    .large-column-images__image:nth-child(2n) {
        margin-left: 9.58333%;
        width: 40.41667%
    }
}

@media (min-width:768px) {
    .feature-highlights__item-text {
        padding-left: 17.44681%
    }
}

.feature-highlights__item-media img,
.feature-highlights__item-media video {
    width: 100%
}

.feature-highlights .text-block:last-child {
    margin-bottom: 0!important
}

@media (min-width:768px) {
    .feature-highlights .grid__item {
        width: 50%
    }
}

.fact-images-block__image {
    margin-bottom: 4rem
}

@media (min-width:768px) {
    .fact-images-block__image {
        margin-bottom: 6rem
    }
}

.fact-images-block__image-text {
    padding-right: 11.35647%!important;
    margin-bottom: 2rem;
    width: 100%
}

@media (min-width:1024px) {
    .fact-images-block__image-text {
        width: 50%;
        margin-bottom: 0
    }
}

.fact-images-block__image-text h2 {
    max-width: 8em;
    margin-bottom: 2rem
}

@media (min-width:1024px) {
    .fact-images-block__image-text h2 {
        margin-bottom: 5.5rem
    }
}

.fact-images-block__image-media {
    width: 100%
}

@media (min-width:1024px) {
    .fact-images-block__image-media {
        width: 50%
    }
}

@media (min-width:1280px) {
    .fact-images-block__image-media img,
    .fact-images-block__image-media video {
        max-width: none;
        width: 120%
    }
}

@media (min-width:1800px) {
    .fact-images-block__image-media img,
    .fact-images-block__image-media video {
        width: 153.09446%
    }
}

#footer-holder {
    position: relative;
    z-index: 9;
    transition: all .5s cubic-bezier(.555, .205, .295, .975);
    background-color: #f4f4f4
}

#footer-holder.with-next-page-footer+.next-page-footer__mask {
    display: block
}

#footer-holder.active,
#footer-holder.active+.next-page-footer__mask {
    opacity: 1;
    visibility: visible
}

.next-page-footer__mask {
    display: none;
    position: fixed;
    z-index: 6;
    background-color: rgba(0, 0, 0, .6);
    visibility: hidden;
    opacity: 0;
    transition: all .6s cubic-bezier(.555, .205, .295, .975)
}

.next-page-footer {
    position: relative;
    z-index: 10;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    background-color: #f4f4f4;
    overflow: hidden
}

.next-page-footer__text {
    padding: 17.33333% 0
}

@media (min-width:768px) {
    .next-page-footer__text {
        padding: 8.47458% 0
    }
}

@media (min-width:1024px) {
    .next-page-footer__text {
        padding: 11.96172% 0
    }
}

@media (min-width:1280px) {
    .next-page-footer__text {
        padding: 8.27815% 0
    }
}

@media (min-width:1800px) {
    .next-page-footer__text {
        padding: 6.51042% 0
    }
}

.next-page-footer .icon {
    width: 2.5rem;
    height: 2.5rem;
    margin: 0 auto
}

.next-page-footer .icon svg {
    width: 100%;
    height: 100%;
    fill: #c8a559;
    stroke: #c8a559
}

.next-page-footer .meta,
.next-page-footer h2 {
    margin-left: auto;
    margin-right: auto
}

.next-page-footer .meta .line,
.next-page-footer h2 .line {
    text-align: center!important
}

.next-page-footer a {
    position: absolute;
    z-index: 1;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.awards-list__awards ul {
    list-style: none!important;
    padding: 0
}

@media (min-width:768px) {
    .awards-list__awards ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.awards-list__awards li.grid__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

@media (min-width:768px) {
    .awards-list__awards li.grid__item {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%
    }
}

@media (min-width:768px) {
    .awards-list__awards li.grid__item:last-child,
    .awards-list__awards li.grid__item:nth-last-child(2) {
        margin-bottom: 0!important
    }
}

.awards-list .image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 34.68085%;
    flex: 0 0 34.68085%;
    width: 34.68085%;
    padding-right: 3.5rem;
    padding-top: .5rem
}

@media (min-width:1280px) {
    .awards-list .image {
        padding-top: 1rem
    }
}

.awards-list .image .img-center {
    display: block;
    margin: 0 auto
}

.awards-list .text {
    -webkit-box-flex: 1;
    -ms-flex: 1 0;
    flex: 1 0;
    padding-top: .5rem;
    padding-left: .5rem
}

.awards-list .text p {
    margin-bottom: .8rem;
    font-size: 1.4rem;
    line-height: 1.25
}

.awards-list .text p:last-child {
    margin-bottom: 0
}

.awards-list .text p:first-child strong {
    margin-top: 0
}

.awards-list .text b,
.awards-list .text strong {
    display: block;
    line-height: 1.5;
    margin-top: 5rem;
    font-size: 1.6rem
}

.awards-list .container .h7 {
    max-width: none
}

.large-blockquote__inner {
    position: relative;
    border-left: 3px solid #d9d9d9
}

.large-blockquote blockquote {
    max-width: 55rem;
    padding-left: 2rem
}

@media (min-width:768px) {
    .large-blockquote blockquote {
        padding-left: 5.5rem
    }
}

@media (min-width:1024px) {
    .large-blockquote blockquote {
        max-width: 77.5rem
    }
}

.large-blockquote blockquote p:before {
    content: "\201C";
    width: .5em;
    margin-left: -.5em
}

.large-blockquote blockquote p:after {
    content: "\201D"
}

.large-blockquote .meta {
    max-width: none
}

@-webkit-keyframes text-link-hover {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    50% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
    50.01% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes text-link-hover {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    50% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
    50.01% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.text-block {
    font-weight: 400
}

.text-block__inner {
    max-width: 94rem
}

.text-block__inner:last-child {
    margin-bottom: 0!important
}

.text-block__inner hr {
    margin: 7.44681% 0 7.74336%
}

.text-block__inner hr+.footnote strong {
    padding: 0
}

.text-block--footnote .text-block__inner {
    border-top: .1rem solid #d9d9d9;
    margin-top: 10.6383%;
    padding-top: 10.6383%
}

.text-block--footnote ol,
.text-block--footnote p,
.text-block--footnote ul {
    max-width: none
}

.text-block--footnote b,
.text-block--footnote strong {
    padding-top: 2rem;
    display: inline-block;
    font-size: 1.1666666667em
}

@media (min-width:1024px) {
    .text-block--footnote b,
    .text-block--footnote strong {
        padding-top: 4rem
    }
}

.text-block--footnote p:first-child b,
.text-block--footnote p:first-child strong {
    padding: 0
}

.text-block:not(.text-block--footnote) p {
    font-size: 1.7rem;
    line-height: 1.66667;
    margin-bottom: 2rem;
    letter-spacing: .025em
}

@media (min-width:1024px) {
    .text-block:not(.text-block--footnote) p {
        font-size: 1.8rem;
        line-height: 1.94444;
        margin-bottom: 4rem
    }
}

@media (min-width:1280px) {
    .text-block:not(.text-block--footnote) p {
        font-size: 1.6rem;
        line-height: 1.875
    }
}

@media (min-width:1800px) {
    .text-block:not(.text-block--footnote) p {
        font-size: 2.5rem;
        line-height: 1.8;
        margin-bottom: 7rem
    }
}

.text-block:not(.text-block--footnote) p:empty {
    display: none!important
}

.text-block:not(.text-block--footnote) ol,
.text-block:not(.text-block--footnote) ul {
    line-height: 1.6;
    font-size: 1.6rem;
    margin-bottom: 2rem
}

@media (min-width:768px) {
    .text-block:not(.text-block--footnote) ol,
    .text-block:not(.text-block--footnote) ul {
        margin-bottom: 2.5rem
    }
}

@media (min-width:1024px) {
    .text-block:not(.text-block--footnote) ol,
    .text-block:not(.text-block--footnote) ul {
        font-size: 1.8rem;
        margin-bottom: 3.5rem
    }
}

@media (min-width:1280px) {
    .text-block:not(.text-block--footnote) ol,
    .text-block:not(.text-block--footnote) ul {
        margin-bottom: 4.5rem
    }
}

@media (min-width:1440px) {
    .text-block:not(.text-block--footnote) ol,
    .text-block:not(.text-block--footnote) ul {
        margin-bottom: 5.5rem
    }
}

@media (min-width:1800px) {
    .text-block:not(.text-block--footnote) ol,
    .text-block:not(.text-block--footnote) ul {
        margin-bottom: 7rem
    }
}

.text-block:not(.text-block--footnote) ol+p img,
.text-block:not(.text-block--footnote) ul+p img {
    margin-top: 5rem
}

.text-block p.photo-caption {
    font-size: 1.4rem;
    max-width: 62rem;
    margin: -3.5rem auto 0
}

.text-block .h7 {
    margin-bottom: 2rem;
    max-width: none
}

@media (min-width:1280px) {
    .text-block .h7 {
        margin-bottom: 5rem
    }
}

.text-block .h7:first-child {
    padding-top: 0
}

.text-block .dash-holder {
    line-height: 1;
    position: relative;
    top: .5em
}

.text-block a {
    font-weight: 500;
    text-decoration: none;
    color: inherit;
    position: relative;
    overflow: hidden;
    display: inline;
    vertical-align: middle;
    border-bottom: .2rem solid
}

@media (min-width:1280px) {
    .text-block a {
        display: inline-block;
        border-bottom: 0
    }
    .text-block a:after {
        content: "";
        display: block;
        position: absolute;
        bottom: .5rem;
        left: 0;
        width: 100%;
        height: 0;
        border-bottom: .2rem solid;
        transition: all .8s cubic-bezier(.58, .3, .005, 1)
    }
}

.text-block a:hover:after {
    -webkit-animation: text-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: text-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.text-block img {
    margin-bottom: 4.78723%
}

.text-block ol,
.text-block ul {
    margin-left: 1em;
    font-weight: 500;
    list-style-position: outside
}

.text-block ul {
    list-style: disc
}

.text-block ol {
    list-style: decimal
}

.text-block li {
    padding-left: 1rem;
    margin-bottom: 3rem;
    line-height: 2
}

@media (min-width:1024px) {
    .text-block li {
        padding-left: 2rem
    }
}

.section-header--narrow-headline h2 {
    max-width: 15em
}

@media (min-width:1024px) {
    .section-header .container {
        padding: 0 2.68085%
    }
}

.page--about .section-title h2 {
    max-width: 19em
}

.section-title h2 {
    max-width: 18em
}

.toolkit-mod--full-bleed+.toolkit-mod--contained .section-title {
    padding-top: 0
}

.toolkit-mod--full-bleed+.toolkit-mod--contained .section-title hr {
    display: none!important
}

.stats-list__stats ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.stats-list__stats li {
    padding: 0;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    padding-right: 2rem
}

@media (min-width:1280px) {
    .stats-list__stats li {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33.333%;
        flex: 0 0 33.333%;
        padding-right: 0
    }
}

.stats-list__stats .percentage {
    display: inline-block;
    font-size: .4166666667em;
    vertical-align: super;
    line-height: 1;
    margin-left: .5rem
}

.stats-list__stats .stat,
.stats-list__stats .text {
    line-height: 1
}

.stats-list__stats span.stat {
    letter-spacing: -.05em
}

.stats-list .container .h7 {
    max-width: none
}

.large-list .list-item__divider {
    margin: 4rem 0
}

@media (min-width:1024px) {
    .large-list .list-item__divider {
        margin: 3.39847vw 0
    }
}

.platforms-overview__title .h6 {
    margin-bottom: 2rem
}

@media (min-width:768px) {
    .platforms-overview__title .h6 {
        margin-bottom: 4.5rem
    }
}

.platforms-overview__logo {
    position: relative;
    max-width: 21rem;
    width: 70%
}

.platforms-overview__logo:before {
    content: " ";
    float: left;
    padding-top: 30.95238%
}

.platforms-overview__logo:after {
    content: " ";
    display: table;
    clear: both
}

.platforms-overview__logo>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:1024px) {
    .platforms-overview__logo {
        width: 55%
    }
}

@media (min-width:1440px) {
    .platforms-overview .grid {
        width: 115%
    }
}

.platforms-overview .grid__item {
    margin-bottom: 4.5rem
}

@media (min-width:1024px) {
    .platforms-overview .grid__item {
        margin-bottom: 6rem
    }
}

@media (min-width:768px) {
    .platforms-overview .grid__item:nth-last-child(-n+2) {
        margin-bottom: 0
    }
}

@media (min-width:1024px) {
    .platforms-overview .grid__item:nth-last-child(-n+3) {
        margin-bottom: 0
    }
}

.accordion-block {
    background-color: #1b1b1c;
    color: #fff
}

.accordion-block__title .lead {
    color: #b9b9b9;
    max-width: 37em
}

.accordion-block h2 {
    margin-bottom: 5rem
}

.page--expertise-detail .toolkit-columns .spacer-bottom {
    display: none
}

@media (max-width:1023px) {
    .toolkit-columns .grid {
        display: block
    }
}

@media (min-width:1024px) {
    .toolkit-columns .grid__item {
        width: 33.333%
    }
}

.toolkit-columns .toolkit-columns__column-thumbnail-image img {
    display: block;
    max-width: 25rem;
    margin: 0 auto
}

.toolkit-columns .toolkit-columns__column-thumbnail-image .text p {
    max-width: none
}

.toolkit-columns p:empty {
    display: none!important
}

.toolkit-columns .text p {
    font-size: 1.4rem;
    line-height: 1.81818;
    letter-spacing: .025em;
    margin-bottom: 2rem
}

@media (min-width:1024px) {
    .toolkit-columns .text p {
        max-width: 17em
    }
}

@media (min-width:1280px) {
    .toolkit-columns .text p {
        font-size: 1.2rem;
        line-height: 1.66667
    }
}

@media (min-width:1800px) {
    .toolkit-columns .text p {
        line-height: 1.66667
    }
}

@media (max-width:767px) {
    .toolkit-columns .text p img {
        max-width: 50%
    }
}

.toolkit-columns .text b,
.toolkit-columns .text strong {
    font-size: 1.1428571429em
}

@media (min-width:1024px) {
    .toolkit-columns .text ol,
    .toolkit-columns .text ul {
        max-width: 18.2142857143em
    }
}

.toolkit-columns .text li {
    padding-left: 4rem;
    line-height: 2
}

.toolkit-columns .text li:before {
    content: "";
    vertical-align: middle;
    width: 2rem;
    height: .2rem;
    background-color: #1b1b1c;
    margin-right: 2rem;
    margin-left: -4rem;
    display: inline-block
}

.toolkit-columns .text .meta-list,
.toolkit-columns .text ul.meta {
    max-width: none
}

@media (min-width:1024px) {
    .toolkit-columns .text .meta-list,
    .toolkit-columns .text ul.meta {
        max-width: 25em
    }
}

.toolkit-columns .text .meta-list li,
.toolkit-columns .text ul.meta li {
    line-height: 1.75
}

@media (max-width:1023px) {
    .toolkit-columns .spacer-bottom {
        display: none!important
    }
}

.awards-columns__image {
    margin-left: auto;
    margin-right: auto;
    max-width: 60%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 34.68085%;
    flex: 0 0 34.68085%
}

@media (max-width:767px) {
    .awards-columns__image {
        padding-right: 2.5rem;
        margin-bottom: 0!important
    }
}

.awards-columns__image-holder {
    margin-left: auto;
    margin-right: auto;
    width: 100%
}

.awards-columns__image-holder img,
.awards-columns__image-holder svg {
    max-width: 100%
}

@media (max-width:767px) {
    .awards-columns__text {
        -webkit-box-flex: 1;
        -ms-flex: 1 0;
        flex: 1 0
    }
}

@media (min-width:768px) {
    .awards-columns__text {
        text-align: center
    }
}

@media (max-width:767px) {
    .awards-columns .grid__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-bottom: 5rem
    }
}

.awards-columns h2 {
    margin-left: auto;
    margin-right: auto;
    max-width: 20em
}

.cf:after,
.cf:before {
    content: " ";
    display: table
}

.cf:after {
    clear: both
}

.cf {
    *zoom: 1
}

@-webkit-keyframes accordion-title-hover {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
}

@keyframes accordion-title-hover {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
}

.accordion {
    padding-bottom: 1rem
}

@media (min-width:768px) {
    .accordion {
        padding-bottom: 2.5rem
    }
}

@media (min-width:1800px) {
    .accordion {
        padding-bottom: 3rem
    }
}

.accordion.active .accordion__content {
    display: block
}

.accordion.active svg line:nth-child(2) {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg)
}

.accordion.active:focus svg line,
.accordion.active:hover svg line {
    stroke: #7b7b7b!important
}

.accordion__header {
    border: solid #3a3a3a;
    border-width: .1rem 0 0
}

.accordion:last-child {
    border-bottom: .1rem solid #3a3a3a
}

.accordion__toggle {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    background-color: transparent;
    font-weight: 700;
    padding: 3rem 0 1.5rem;
    margin: 0;
    display: block;
    width: 100%;
    text-align: left;
    line-height: 1;
    color: #fff
}

@media (min-width:768px) {
    .accordion__toggle {
        padding: 4.5rem 0 1.5rem
    }
}

@media (min-width:1800px) {
    .accordion__toggle {
        padding: 6.5rem 0 3rem
    }
}

.accordion__toggle:focus .title:after,
.accordion__toggle:hover .title:after {
    -webkit-animation: accordion-title-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: accordion-title-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.accordion__toggle:focus svg line,
.accordion__toggle:hover svg line {
    stroke: #c8a559
}

.accordion__toggle .title {
    display: inline-block;
    position: relative;
    padding: 0 1rem;
    margin-left: -1rem;
    overflow: hidden
}

.accordion__toggle .title:after {
    content: "";
    display: block;
    position: absolute;
    top: .5em;
    left: 0;
    width: 100%;
    height: .2rem;
    margin-top: -.1rem;
    background-color: #fff;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
}

.accordion__toggle svg line {
    -webkit-transform-origin: center;
    transform-origin: center;
    transition: all .4s cubic-bezier(.58, .3, .005, 1)
}

.accordion__content {
    display: none;
    overflow: hidden;
    color: #b9b9b9
}

.accordion__icon {
    width: 1rem;
    height: 1rem;
    stroke-width: .8rem;
    stroke: #7b7b7b;
    position: absolute;
    top: 3rem;
    right: 1rem;
    margin-top: .3rem
}

@media (min-width:768px) {
    .accordion__icon {
        top: 4.5rem;
        right: 4rem;
        margin-top: .5rem
    }
}

@media (min-width:1800px) {
    .accordion__icon {
        top: 6.5rem;
        margin-top: .6rem
    }
}

.pagination {
    max-width: none
}

.pagination .container {
    border-bottom: .1rem solid #d9d9d9;
    padding: 7.89889% 0
}

@media (min-width:768px) {
    .pagination .container {
        padding: 4.2654% 0
    }
}

.pagination .current,
.pagination a {
    display: inline-block;
    margin: 0 1rem
}

.pagination .ellipses,
.pagination a {
    color: #d9d9d9
}

.pagination .current {
    text-decoration: line-through
}

.waiting {
    position: fixed;
    z-index: 10;
    top: 50%;
    left: 50%;
    width: 14rem;
    height: 14rem;
    margin-left: -7rem;
    margin-top: -7rem;
    overflow: hidden
}

.waiting svg {
    fill: #1b1b1c;
    stroke: #1b1b1c;
    width: 100%;
    height: 100%
}

@-webkit-keyframes hero-category-hover {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
}

@keyframes hero-category-hover {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    to {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
}

.category-group {
    margin-right: 1.5rem
}

@media (min-width:768px) {
    .category-group {
        margin-right: 3rem
    }
}

@media (min-width:1280px) {
    .category-group {
        margin-right: 5rem
    }
}

.category-group:last-child {
    margin-right: 0
}

.category-group button {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    position: relative;
    background-color: transparent;
    padding: 0;
    color: #d9d9d9
}

@media (max-width:1023px) {
    .category-group button {
        max-width: 24rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis
    }
}

.category-group button.category-group__open {
    position: relative;
    color: #1b1b1c;
    font-size: 1.6rem;
    border-bottom: .2rem solid;
    min-width: 11rem;
    text-align: left;
    padding-bottom: .5rem;
    padding-right: 3rem
}

.category-group button.category-group__open svg {
    width: .6rem;
    height: 1em;
    position: absolute;
    top: .2rem;
    right: .2rem
}

.category-group .active {
    color: #1b1b1c
}

.category-group .active:after {
    -webkit-transform: none;
    transform: none
}

.category-group--desktop {
    margin-right: 0
}

@media (min-width:1280px) {
    .category-group--desktop {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}

.category-group--desktop h2 {
    color: #b9b9b9;
    margin-bottom: 2.5rem
}

@media (min-width:1280px) {
    .category-group--desktop h2 {
        margin-bottom: 0;
        margin-right: 5rem
    }
}

.category-group--desktop ul {
    font-size: 1.6rem;
    font-weight: 700;
    color: #1b1b1c
}

@media (min-width:1280px) {
    .category-group--desktop ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}

@media (min-width:1800px) {
    .category-group--desktop ul {
        font-size: 1.8rem
    }
}

.category-group--desktop li {
    margin-bottom: 1.5rem
}

@media (min-width:1280px) {
    .category-group--desktop li {
        margin-bottom: 0;
        margin-right: 5rem
    }
}

.category-group--desktop li a {
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding: 0 .5rem;
    margin-left: -.5rem
}

.category-group--desktop li a:after {
    content: "";
    position: absolute;
    top: 50%;
    left: -.5rem;
    width: calc(100% + 1rem);
    border: solid;
    border-width: .1rem 0;
    margin-top: -.1rem;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
}

.category-group--desktop li a:hover:after {
    -webkit-animation: hero-category-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: hero-category-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.category-group--columns {
    width: 65%
}

@media (min-width:1024px) {
    .category-group--columns {
        width: 50%
    }
}

.category-group--columns ul {
    -webkit-columns: 2 15rem;
    columns: 2 15rem
}

.category-group__list {
    display: none;
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    background-color: #f4f4f4
}

.category-group__list.category-group__list--active {
    display: block
}

.category-group__list ul {
    position: relative;
    z-index: 1;
    margin-top: .1em;
    margin-bottom: 20vh;
    display: inline-block
}

.category-group__list li {
    margin-bottom: 2rem;
    color: #1b1b1c
}

.category-group__list li.header,
.category-group__list li:first-child {
    color: #d9d9d9
}

.category-group__list li+.header {
    padding-top: 2rem
}

.category-group__list li a {
    display: inline-block;
    position: relative;
    overflow: hidden;
    color: #1b1b1c;
    padding: 0 1rem;
    margin-left: -1rem
}

.category-group__list li a:after {
    content: "";
    position: absolute;
    top: 50%;
    left: -1rem;
    width: calc(100% + 2rem);
    height: 0;
    border-bottom: .3rem solid;
    transition: all .8s cubic-bezier(.555, .205, .295, .975);
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    margin-top: -.1rem
}

.category-group__list li a:hover:after {
    -webkit-animation: hero-category-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: hero-category-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.category-group__close {
    color: #1b1b1c;
    font-size: 1.8rem
}

@media (min-width:550px) {
    .category-group__close {
        font-size: 2.4rem
    }
}

@media (min-width:768px) {
    .category-group__close {
        font-size: 1.8rem
    }
}

.category-group__close-holder {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    color: #1b1b1c;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 9.25rem
}

@media (min-width:768px) {
    .category-group__close-holder {
        min-height: 12rem
    }
}

@media (min-width:1440px) {
    .category-group__close-holder {
        min-height: 14rem
    }
}

@media (min-width:1800px) {
    .category-group__close-holder {
        min-height: 18.5rem
    }
}

.category-group__close-holder button {
    color: #1b1b1c
}

.radio {
    position: relative;
    line-height: 2rem;
    padding-left: 4rem
}

.radio .indicator {
    position: absolute;
    top: 0;
    left: 0;
    width: 2rem;
    height: 2rem;
    display: inline-block;
    background-color: #fff;
    border: .1rem solid #d9d9d9;
    transition: border-color .25s cubic-bezier(.58, .3, .005, 1)
}

.radio .indicator:after {
    content: "";
    position: absolute;
    top: .6rem;
    left: .6rem;
    width: 1.6rem;
    height: 1.6rem;
    background-color: #c8a559;
    opacity: 0;
    transition: opacity .25s cubic-bezier(.58, .3, .005, 1)
}

.radio input:focus~.indicator {
    border-color: #b9b9b9
}

.radio input:checked~.indicator:after {
    opacity: 1
}

.radio input {
    position: absolute;
    z-index: -1;
    opacity: 0
}

.checkbox,
.radio {
    position: relative;
    line-height: 3rem;
    padding-left: 4rem
}

.checkbox .indicator,
.radio .indicator {
    position: absolute;
    top: 0;
    left: 0;
    width: 3rem;
    height: 3rem;
    display: inline-block;
    background-color: #fff;
    border: .1rem solid #d9d9d9;
    transition: border-color .25s cubic-bezier(.58, .3, .005, 1)
}

.checkbox .indicator:after,
.radio .indicator:after {
    content: "";
    position: absolute;
    top: .6rem;
    left: .6rem;
    width: 1.6rem;
    height: 1.6rem;
    background-color: #c8a559;
    opacity: 0;
    transition: opacity .25s cubic-bezier(.58, .3, .005, 1)
}

.checkbox input:focus~.indicator,
.radio input:focus~.indicator {
    border-color: #777779
}

.checkbox input:checked~.indicator:after,
.radio input:checked~.indicator:after {
    opacity: 1
}

.checkbox input,
.radio input {
    z-index: -1
}

.radio .indicator,
.radio .indicator:after {
    border-radius: 50%
}

.combobox {
    position: relative
}

.combobox--active .input-holder button svg {
    -webkit-transform: scaleY(-1);
    transform: scaleY(-1)
}

.combobox .input-holder {
    position: relative;
    z-index: 2
}

.combobox .input-holder input {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.combobox .input-holder input:focus {
    border: .1rem solid #e2e2e2;
    margin-bottom: 0
}

.combobox ul {
    position: absolute;
    z-index: 1;
    top: 100%;
    left: 0;
    width: 100%;
    max-height: 30rem;
    overflow: auto;
    border: solid #e2e2e2;
    border-width: 0 .1rem .1rem
}

.combobox li {
    line-height: 5.5rem;
    white-space: nowrap;
    padding: 0 2rem;
    background-color: #fff;
    margin: 0;
    transition: background-color .35s cubic-bezier(.58, .3, .005, 1);
    cursor: pointer;
    border: solid transparent;
    border-width: .1rem 0;
    font-size: 1.6rem
}

.combobox li:focus {
    outline: 0
}

.combobox li:focus,
.combobox li:hover {
    background-color: #d9d9d9
}

.combobox button {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    background-color: transparent;
    width: 4rem;
    height: 5rem;
    padding: 0;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0
}

@media (min-width:1024px) {
    .combobox button {
        width: 7rem;
        height: 5.5rem
    }
}

@media (min-width:1440px) {
    .combobox button {
        height: 8rem
    }
}

.combobox button svg {
    width: 1.2rem;
    height: 100%;
    transition: all .25s cubic-bezier(.58, .3, .005, 1)
}

.combobox .hidden {
    display: none
}

.file-input {
    position: relative;
    padding: 0;
    cursor: pointer
}

.file-input button {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    background-color: transparent;
    padding: 0;
    width: 4rem;
    height: 5rem;
    pointer-events: none
}

@media (min-width:1024px) {
    .file-input button {
        width: 7rem
    }
}

.file-input svg {
    width: 1.5rem;
    height: 100%;
    stroke: #323232
}

form p {
    color: #777779
}

form [type=submit] {
    display: block;
    width: 100%;
    text-align: center;
    text-transform: none;
    font-size: 1.4rem
}

@media (min-width:1800px) {
    form [type=submit] {
        font-size: 2.5rem;
        line-height: 7.3rem;
        padding-top: .5rem
    }
}

form [type=submit]:focus {
    background-color: #777779
}

form [type=reset] {
    display: block;
    width: 100%;
    background-color: transparent;
    color: #b9b9b9;
    text-align: center;
    text-transform: none;
    font-size: 1.4rem
}

@media (min-width:1800px) {
    form [type=reset] {
        font-size: 1.8rem
    }
}

form [disabled=true] {
    opacity: .5
}

form [type=submit]+[type=reset] {
    margin-top: 2rem
}

form hr {
    border-color: #d9d9d9
}

.form-group,
form .h4 {
    margin-bottom: 3.5rem
}

.form-group {
    position: relative;
    padding-top: 1.5rem
}

@media (min-width:1024px) {
    .form-group {
        padding-top: 3.5rem;
        margin-bottom: 4.5rem
    }
}

.form-group .combobox+label,
.form-group input+label,
.form-group textarea+label {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    line-height: 1;
    margin: 0;
    opacity: 0;
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
    transition: all .4s cubic-bezier(.58, .3, .005, 1)
}

.form-group .combobox--active~label,
.form-group.invalid label,
.form-group input.non-empty~label,
.form-group input:focus~label,
.form-group textarea:focus~label {
    opacity: 1;
    -webkit-transform: none;
    transform: none
}

.form-group.full {
    width: 100%;
    max-width: none
}

.file-input label,
input[type=email],
input[type=text],
textarea {
    display: block;
    background-color: #f4f4f4;
    padding: 0 2rem;
    margin: 0;
    border: .2rem solid transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
    font-size: 1.6rem;
    line-height: 4.5rem;
    min-height: 4.5rem;
    width: 100%;
    font-family: inherit;
    font-weight: inherit;
    color: #323232;
    outline: .1rem solid #e2e2e2;
    outline-offset: 0;
    position: relative;
    transition: border-color .12s cubic-bezier(.555, .205, .295, .975), outline-color .12s cubic-bezier(.555, .205, .295, .975)
}

@media (min-width:1024px) {
    .file-input label,
    input[type=email],
    input[type=text],
    textarea {
        font-size: 1.8rem;
        line-height: 5.5rem;
        min-height: 5.5rem
    }
}

@media (min-width:1800px) {
    .file-input label,
    input[type=email],
    input[type=text],
    textarea {
        line-height: 6.8rem;
        min-height: 6.8rem;
        font-size: 2.5rem
    }
}

.file-input label:focus,
input[type=email]:focus,
input[type=text]:focus,
textarea:focus {
    border-color: #2c2c2c;
    outline-color: #2c2c2c
}

.file-input label:focus::-webkit-input-placeholder,
input[type=email]:focus::-webkit-input-placeholder,
input[type=text]:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
    color: transparent
}

.file-input label:focus:-moz-placeholder,
.file-input label:focus::-moz-placeholder,
input[type=email]:focus:-moz-placeholder,
input[type=email]:focus::-moz-placeholder,
input[type=text]:focus:-moz-placeholder,
input[type=text]:focus::-moz-placeholder,
textarea:focus:-moz-placeholder,
textarea:focus::-moz-placeholder {
    color: transparent
}

.file-input label:focus:-ms-input-placeholder,
input[type=email]:focus:-ms-input-placeholder,
input[type=text]:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
    color: transparent
}

.file-input label.error,
.invalid .file-input label,
.invalid input[type=email],
.invalid input[type=text],
.invalid textarea,
input[type=email].error,
input[type=text].error,
textarea.error {
    border-color: #e82b2d
}

.file-input label.input-inline,
input[type=email].input-inline,
input[type=text].input-inline,
textarea.input-inline {
    background-color: transparent;
    outline: 0;
    border: solid;
    border-width: 0 0 .2rem;
    padding: 0;
    margin-top: -.5em;
    line-height: 1;
    min-height: 3.9rem
}

@media (min-width:1024px) {
    .file-input label.input-inline,
    input[type=email].input-inline,
    input[type=text].input-inline,
    textarea.input-inline {
        font-size: 1.8rem;
        min-height: 4.25rem
    }
}

@media (min-width:1440px) {
    .file-input label.input-inline,
    input[type=email].input-inline,
    input[type=text].input-inline,
    textarea.input-inline {
        font-size: 2rem;
        margin-top: -.25em
    }
}

@media (min-width:1800px) {
    .file-input label.input-inline,
    input[type=email].input-inline,
    input[type=text].input-inline,
    textarea.input-inline {
        font-size: 2.5rem;
        margin-top: 0;
        position: relative;
        top: .1rem
    }
}

::-webkit-input-placeholder {
    color: #777779
}

:-moz-placeholder,
::-moz-placeholder {
    color: #777779
}

:-ms-input-placeholder {
    color: #777779
}

label {
    display: inline-block;
    margin-bottom: 2rem
}

label.required:before {
    content: "*";
    margin-right: .5rem
}

.invalid label {
    color: #e82b2d
}

[type=range] {
    -webkit-appearance: none;
    width: 100%;
    cursor: pointer
}

[type=range]::-webkit-slider-runnable-track {
    width: 100%
}

[type=range]::-webkit-slider-runnable-track,
[type=range]::-webkit-slider-thumb {
    height: .8rem;
    cursor: pointer;
    background: transparent;
    border: 0 solid transparent;
    border-radius: 0
}

[type=range]::-webkit-slider-thumb {
    width: 1rem;
    -webkit-appearance: none;
    margin-top: 0
}

[type=range]:focus::-webkit-slider-runnable-track {
    background: hsla(0, 0%, 5%, 0)
}

[type=range]::-moz-range-track {
    width: 100%
}

[type=range]::-moz-range-thumb,
[type=range]::-moz-range-track {
    height: .8rem;
    cursor: pointer;
    background: transparent;
    border: 0 solid transparent;
    border-radius: 0
}

[type=range]::-moz-range-thumb {
    width: 1rem
}

[type=range]::-ms-track {
    width: 100%;
    height: .8rem;
    cursor: pointer;
    background: transparent;
    border-color: transparent;
    border-width: 1rem 0;
    color: transparent
}

[type=range]::-ms-fill-lower,
[type=range]::-ms-fill-upper {
    background: transparent;
    border: 0 solid transparent;
    border-radius: 0
}

[type=range]::-ms-thumb {
    border: 0 solid transparent;
    height: .8rem;
    width: 1rem;
    border-radius: 0;
    background: transparent;
    cursor: pointer
}

[type=range]:focus::-ms-fill-lower {
    background: transparent
}

[type=range]:focus::-ms-fill-upper {
    background: hsla(0, 0%, 5%, 0)
}

textarea {
    line-height: 1.5;
    min-height: 20rem;
    padding: 2rem
}

textarea:focus {
    margin-bottom: 0!important
}

.event-registration-form__inner {
    padding: 7.88644% 0;
    background-color: #fff
}

.event-registration-form__info .grid__item:last-child {
    margin-bottom: 0
}

.event-registration-form p span {
    display: block
}

@media (min-width:1024px) {
    .event-registration-form a {
        border-bottom: .1rem solid
    }
}

.newsletter-signup-form .form-group {
    position: relative;
    max-width: none;
    padding: 0;
    margin: 0
}

.newsletter-signup-form input[type=email] {
    padding-right: 4rem
}

.newsletter-signup-form [type=submit] {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    background-color: transparent;
    padding: 0;
    width: 3rem
}

.newsletter-signup-form [type=submit] svg {
    width: 100%;
    height: 100%;
    fill: #c8a559;
    stroke: #c8a559;
    position: relative;
    left: .5rem
}

.page--contact .newsletter-signup-form-outer+hr {
    border-color: hsla(0, 0%, 100%, .25)
}

.page--contact .newsletter-signup-form-outer .container {
    max-width: 65rem
}

@media (min-width:2200px) {
    .page--contact .newsletter-signup-form-outer .container {
        max-width: 94rem
    }
}

@media (max-width:767px) {
    .page--contact .newsletter-signup-form-outer .container {
        width: 100%
    }
}

.page--contact .newsletter-signup-form-outer button[type=submit] {
    top: -.5em
}

.page--contact .newsletter-signup-form-outer button[type=submit] svg {
    transition: all .35s cubic-bezier(.555, .205, .295, .975)
}

.page--contact .newsletter-signup-form-outer button[type=submit]:focus,
.page--contact .newsletter-signup-form-outer button[type=submit]:hover {
    background-color: transparent
}

.page--contact .newsletter-signup-form-outer button[type=submit]:focus svg,
.page--contact .newsletter-signup-form-outer button[type=submit]:hover svg {
    -webkit-transform: translateX(1rem);
    transform: translateX(1rem)
}

.page--contact .newsletter-signup-form-outer input[type=email] {
    border-width: 0 0 .4rem;
    border-color: #d9d9d9;
    font-weight: 700;
    font-size: 4.58333vw;
    line-height: 1.63636;
    letter-spacing: .025em;
    color: #d9d9d9;
    padding-bottom: .6em
}

@media (min-width:550px) {
    .page--contact .newsletter-signup-form-outer input[type=email] {
        font-size: 4.5rem;
        line-height: 1.22222
    }
}

@media (min-width:768px) {
    .page--contact .newsletter-signup-form-outer input[type=email] {
        font-size: 3.125vw;
        line-height: 1.40625
    }
}

@media (min-width:1280px) {
    .page--contact .newsletter-signup-form-outer input[type=email] {
        font-size: 2.20901vw;
        line-height: 1.15385
    }
}

@media (min-width:1800px) {
    .page--contact .newsletter-signup-form-outer input[type=email] {
        font-size: 1.69924vw;
        line-height: 1.4
    }
}

@media (min-width:2200px) {
    .page--contact .newsletter-signup-form-outer input[type=email] {
        font-size: 4.8rem
    }
}

.page--contact .newsletter-signup-form-outer input[type=email]:focus {
    color: #fff;
    border-color: #fff
}

.page--contact .newsletter-signup-form-outer input[type=email]:focus::-webkit-input-placeholder {
    color: #fff
}

.page--contact .newsletter-signup-form-outer input[type=email]:focus:-moz-placeholder,
.page--contact .newsletter-signup-form-outer input[type=email]:focus::-moz-placeholder {
    color: #fff
}

.page--contact .newsletter-signup-form-outer input[type=email]:focus:-ms-input-placeholder {
    color: #fff
}

.page--contact .newsletter-signup-form-outer::-webkit-input-placeholder {
    color: #d9d9d9
}

.page--contact .newsletter-signup-form-outer:-moz-placeholder,
.page--contact .newsletter-signup-form-outer::-moz-placeholder {
    color: #d9d9d9
}

.page--contact .newsletter-signup-form-outer:-ms-input-placeholder {
    color: #d9d9d9
}

.article-footer .newsletter-signup-form-outer input[type=email] {
    font-size: 4.85vw;
    line-height: 2.24;
    min-height: 2.24em;
    font-weight: 700;
    padding-right: 4rem
}

@media (min-width:550px) {
    .article-footer .newsletter-signup-form-outer input[type=email] {
        font-size: 3.75vw
    }
}

@media (min-width:1024px) {
    .article-footer .newsletter-signup-form-outer input[type=email] {
        font-size: 3rem
    }
}

@media (min-width:1280px) {
    .article-footer .newsletter-signup-form-outer input[type=email] {
        border-bottom-width: .4rem;
        padding-left: 0;
        padding-right: 8rem;
        font-size: 3.5rem
    }
}

@media (min-width:1440px) {
    .article-footer .newsletter-signup-form-outer input[type=email] {
        font-size: 4rem;
        padding-right: 10rem
    }
}

@media (min-width:1800px) {
    .article-footer .newsletter-signup-form-outer input[type=email] {
        font-size: 5rem
    }
}

.article-footer .newsletter-signup-form-outer input[type=email]:focus {
    margin-bottom: 0
}

.article-footer .newsletter-signup-form-outer .invalid input[type=email] {
    border-bottom-color: #e82b2d
}

@media (min-width:1280px) {
    .article-footer .newsletter-signup-form-outer .newsletter-signup-form [type=submit] {
        width: 6rem
    }
    .article-footer .newsletter-signup-form-outer .newsletter-signup-form [type=submit] svg {
        left: 1rem
    }
}

@media (min-width:1440px) {
    .article-footer .newsletter-signup-form-outer .newsletter-signup-form [type=submit] {
        width: 7rem
    }
}

.article-footer .newsletter-signup-form-outer::-webkit-input-placeholder {
    color: #323232
}

.article-footer .newsletter-signup-form-outer:-moz-placeholder,
.article-footer .newsletter-signup-form-outer::-moz-placeholder {
    color: #323232
}

.article-footer .newsletter-signup-form-outer:-ms-input-placeholder {
    color: #323232
}

.career-detail-form__inner {
    margin-top: 11.82965%;
    padding: 7.88644%;
    background-color: #fff
}

.career-detail-form__inner>.container {
    max-width: 94rem
}

.career-detail-form hr {
    margin: 7.97872% auto 6.38298%
}

.career-detail-form p span {
    display: block
}

@media (min-width:1024px) {
    .career-detail-form a {
        border-bottom: .1rem solid
    }
}

.contact-form {
    max-width: 94rem;
    margin: 0 auto
}

@media (min-width:768px) {
    .contact-form .grid__item {
        width: 50%
    }
}

.carousel-controls {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    text-align: center;
    line-height: 1;
    color: #b9b9b9;
    margin-top: 2rem
}

.carousel-controls.carousel-controls--left {
    text-align: left
}

.carousel-controls .btn-next,
.carousel-controls .btn-prev {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    border-radius: 0;
    background-color: transparent;
    padding: 1.9rem 1.6rem;
    vertical-align: middle
}

.carousel-controls .btn-next .icon,
.carousel-controls .btn-prev .icon {
    stroke: #777779;
    fill: #777779;
    width: 1.8rem;
    height: .7rem
}

.carousel-controls .btn-prev .icon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
    position: relative;
    top: -1px
}

.carousel-controls li,
.carousel-controls ul {
    display: inline-block;
    vertical-align: middle
}

.carousel-controls li {
    margin: 0;
    width: 1.5rem;
    height: 1em;
    overflow: hidden;
    white-space: nowrap
}

.carousel-controls a {
    text-decoration: none;
    color: #323232;
    display: block;
    transition: all .45s cubic-bezier(.58, .3, .005, 1)
}

.carousel-controls a:focus {
    outline: none
}

.bg--dark .carousel-controls {
    color: #777779
}

.bg--dark .carousel-controls a {
    color: #fff
}

.media-block-share {
    position: absolute;
    top: 50%;
    right: 100%;
    line-height: 4rem;
    margin-top: -2rem;
    white-space: nowrap;
    margin-right: -1.75rem
}

@media (max-width:1023px) {
    .media-block-share {
        display: none
    }
}

.media-block-share li,
.media-block-share ul {
    display: inline-block
}

.media-block-share ul {
    visibility: hidden;
    opacity: 0;
    transition: all .2s ease-out;
    margin-right: 4rem
}

.media-block-share a {
    display: block;
    padding: .8rem;
    color: #1b1b1c;
    font-size: 1.5rem
}

.media-block-share a:hover {
    color: #c8a559
}

.media-block-share .share-icon {
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    display: inline-block;
    width: 4rem;
    height: 4rem;
    background-color: #f4f4f4;
    padding: 0;
    float: right
}

.media-block-share .share-icon svg {
    position: relative;
    top: -.2rem;
    left: .3rem;
    width: 1.8rem;
    height: .7rem;
    stroke: #323232;
    fill: #323232;
    -webkit-transform: rotate(-45deg) translateZ(0);
    transform: rotate(-45deg) translateZ(0);
    transition: all .2s ease-out
}

.media-block-share--active ul,
.media-block-share:hover ul {
    visibility: visible;
    opacity: 1
}

.media-block-share--active svg,
.media-block-share:hover svg {
    opacity: .5
}

.spacer-small {
    margin-bottom: 5.20833vw
}

@media (min-width:768px) {
    .spacer-small {
        margin-bottom: 2.92969vw
    }
}

@media (min-width:1024px) {
    .spacer-small {
        margin-bottom: 1.875vw
    }
}

@media (min-width:1440px) {
    .spacer-small {
        margin-bottom: 1.5vw
    }
}

@media (min-width:1800px) {
    .spacer-small {
        margin-bottom: 1.69924vw
    }
}

.spacer-smedium {
    margin-bottom: 6.25vw
}

@media (min-width:768px) {
    .spacer-smedium {
        margin-bottom: 3.90625vw
    }
}

@media (min-width:1024px) {
    .spacer-smedium {
        margin-bottom: 2.77778vw
    }
}

@media (min-width:1440px) {
    .spacer-smedium {
        margin-bottom: 2.22222vw
    }
}

@media (min-width:1800px) {
    .spacer-smedium {
        margin-bottom: 2.54885vw
    }
}

.spacer-xmedium {
    margin-bottom: 12.5vw
}

@media (min-width:768px) {
    .spacer-xmedium {
        margin-bottom: 7.8125vw
    }
}

@media (min-width:1024px) {
    .spacer-xmedium {
        margin-bottom: 6.94444vw
    }
}

@media (min-width:1440px) {
    .spacer-xmedium {
        margin-bottom: 6.66667vw
    }
}

@media (min-width:1800px) {
    .spacer-xmedium {
        margin-bottom: 5.09771vw
    }
}

.spacer-medium {
    margin-bottom: 10.41667vw
}

@media (min-width:768px) {
    .spacer-medium {
        margin-bottom: 3.90625vw
    }
}

@media (min-width:1024px) {
    .spacer-medium {
        margin-bottom: 3.47222vw
    }
}

@media (min-width:1440px) {
    .spacer-medium {
        margin-bottom: 3.33333vw
    }
}

@media (min-width:1800px) {
    .spacer-medium {
        margin-bottom: 3.39847vw
    }
}

.spacer-large {
    margin-bottom: 15.625vw
}

@media (min-width:768px) {
    .spacer-large {
        margin-bottom: 9.76562vw
    }
}

@media (min-width:1024px) {
    .spacer-large {
        margin-bottom: 10.41667vw
    }
}

@media (min-width:1440px) {
    .spacer-large {
        margin-bottom: 8.33333vw
    }
}

@media (min-width:1800px) {
    .spacer-large {
        margin-bottom: 8.49618vw
    }
}

.spacer-block {
    margin-bottom: 20.83333vw
}

@media (min-width:768px) {
    .spacer-block {
        margin-bottom: 19.53125vw
    }
}

@media (min-width:1024px) {
    .spacer-block {
        margin-bottom: 13.88889vw
    }
}

@media (min-width:1440px) {
    .spacer-block {
        margin-bottom: 12.5vw
    }
}

@media (min-width:1800px) {
    .spacer-block {
        margin-bottom: 12.74427vw
    }
}

.spacer-small-top {
    margin-top: 5.20833vw
}

@media (min-width:768px) {
    .spacer-small-top {
        margin-top: 2.92969vw
    }
}

@media (min-width:1024px) {
    .spacer-small-top {
        margin-top: 1.875vw
    }
}

@media (min-width:1440px) {
    .spacer-small-top {
        margin-top: 1.5vw
    }
}

@media (min-width:1800px) {
    .spacer-small-top {
        margin-top: 1.69924vw
    }
}

.spacer-smedium-top {
    margin-top: 6.25vw
}

@media (min-width:768px) {
    .spacer-smedium-top {
        margin-top: 3.90625vw
    }
}

@media (min-width:1024px) {
    .spacer-smedium-top {
        margin-top: 2.77778vw
    }
}

@media (min-width:1440px) {
    .spacer-smedium-top {
        margin-top: 2.22222vw
    }
}

@media (min-width:1800px) {
    .spacer-smedium-top {
        margin-top: 2.54885vw
    }
}

.spacer-medium-top {
    margin-top: 10.41667vw
}

@media (min-width:768px) {
    .spacer-medium-top {
        margin-top: 3.90625vw
    }
}

@media (min-width:1024px) {
    .spacer-medium-top {
        margin-top: 3.47222vw
    }
}

@media (min-width:1440px) {
    .spacer-medium-top {
        margin-top: 3.33333vw
    }
}

@media (min-width:1800px) {
    .spacer-medium-top {
        margin-top: 3.39847vw
    }
}

.spacer-xmedium-top {
    margin-top: 12.5vw
}

@media (min-width:768px) {
    .spacer-xmedium-top {
        margin-top: 7.8125vw
    }
}

@media (min-width:1024px) {
    .spacer-xmedium-top {
        margin-top: 6.94444vw
    }
}

@media (min-width:1440px) {
    .spacer-xmedium-top {
        margin-top: 6.66667vw
    }
}

@media (min-width:1800px) {
    .spacer-xmedium-top {
        margin-top: 5.09771vw
    }
}

.spacer-large-top {
    margin-top: 15.625vw
}

@media (min-width:768px) {
    .spacer-large-top {
        margin-top: 9.76562vw
    }
}

@media (min-width:1024px) {
    .spacer-large-top {
        margin-top: 10.41667vw
    }
}

@media (min-width:1440px) {
    .spacer-large-top {
        margin-top: 8.33333vw
    }
}

@media (min-width:1800px) {
    .spacer-large-top {
        margin-top: 8.49618vw
    }
}

.spacer-block-top {
    margin-top: 20.83333vw
}

@media (min-width:768px) {
    .spacer-block-top {
        margin-top: 19.53125vw
    }
}

@media (min-width:1024px) {
    .spacer-block-top {
        margin-top: 13.88889vw
    }
}

@media (min-width:1440px) {
    .spacer-block-top {
        margin-top: 12.5vw
    }
}

@media (min-width:1800px) {
    .spacer-block-top {
        margin-top: 12.74427vw
    }
}

.p0 {
    padding: 0!important
}

.pl0 {
    padding-left: 0!important
}

.pt0 {
    padding-top: 0!important
}

.pr0 {
    padding-right: 0!important
}

.pb0 {
    padding-bottom: 0!important
}

.px0,
.py0 {
    padding: 0!important
}

.m0 {
    margin: 0!important
}

.ml0 {
    margin-left: 0!important
}

.mt0 {
    margin-top: 0!important
}

.mr0 {
    margin-right: 0!important
}

.mb0 {
    margin-bottom: 0!important
}

.mx0,
.my0 {
    margin: 0!important
}

.p1 {
    padding: 1rem!important
}

.pl1 {
    padding-left: 1rem!important
}

.pt1 {
    padding-top: 1rem!important
}

.pr1 {
    padding-right: 1rem!important
}

.pb1 {
    padding-bottom: 1rem!important
}

.px1 {
    padding: 0 1rem!important
}

.py1 {
    padding: 1rem 0!important
}

.m1 {
    margin: 1rem!important
}

.ml1 {
    margin-left: 1rem!important
}

.mt1 {
    margin-top: 1rem!important
}

.mr1 {
    margin-right: 1rem!important
}

.mb1 {
    margin-bottom: 1rem!important
}

.mx1 {
    margin: 0 1rem!important
}

.my1 {
    margin: 1rem 0!important
}

.p2 {
    padding: 2rem!important
}

.pl2 {
    padding-left: 2rem!important
}

.pt2 {
    padding-top: 2rem!important
}

.pr2 {
    padding-right: 2rem!important
}

.pb2 {
    padding-bottom: 2rem!important
}

.px2 {
    padding: 0 2rem!important
}

.py2 {
    padding: 2rem 0!important
}

.m2 {
    margin: 2rem!important
}

.ml2 {
    margin-left: 2rem!important
}

.mt2 {
    margin-top: 2rem!important
}

.mr2 {
    margin-right: 2rem!important
}

.mb2 {
    margin-bottom: 2rem!important
}

.mx2 {
    margin: 0 2rem!important
}

.my2 {
    margin: 2rem 0!important
}

.p3 {
    padding: 3rem!important
}

.pl3 {
    padding-left: 3rem!important
}

.pt3 {
    padding-top: 3rem!important
}

.pr3 {
    padding-right: 3rem!important
}

.pb3 {
    padding-bottom: 3rem!important
}

.px3 {
    padding: 0 3rem!important
}

.py3 {
    padding: 3rem 0!important
}

.m3 {
    margin: 3rem!important
}

.ml3 {
    margin-left: 3rem!important
}

.mt3 {
    margin-top: 3rem!important
}

.mr3 {
    margin-right: 3rem!important
}

.mb3 {
    margin-bottom: 3rem!important
}

.mx3 {
    margin: 0 3rem!important
}

.my3 {
    margin: 3rem 0!important
}

.p4 {
    padding: 4rem!important
}

.pl4 {
    padding-left: 4rem!important
}

.pt4 {
    padding-top: 4rem!important
}

.pr4 {
    padding-right: 4rem!important
}

.pb4 {
    padding-bottom: 4rem!important
}

.px4 {
    padding: 0 4rem!important
}

.py4 {
    padding: 4rem 0!important
}

.m4 {
    margin: 4rem!important
}

.ml4 {
    margin-left: 4rem!important
}

.mt4 {
    margin-top: 4rem!important
}

.mr4 {
    margin-right: 4rem!important
}

.mb4 {
    margin-bottom: 4rem!important
}

.mx4 {
    margin: 0 4rem!important
}

.my4 {
    margin: 4rem 0!important
}

.p5 {
    padding: 5rem!important
}

.pl5 {
    padding-left: 5rem!important
}

.pt5 {
    padding-top: 5rem!important
}

.pr5 {
    padding-right: 5rem!important
}

.pb5 {
    padding-bottom: 5rem!important
}

.px5 {
    padding: 0 5rem!important
}

.py5 {
    padding: 5rem 0!important
}

.m5 {
    margin: 5rem!important
}

.ml5 {
    margin-left: 5rem!important
}

.mt5 {
    margin-top: 5rem!important
}

.mr5 {
    margin-right: 5rem!important
}

.mb5 {
    margin-bottom: 5rem!important
}

.mx5 {
    margin: 0 5rem!important
}

.my5 {
    margin: 5rem 0!important
}

.p6 {
    padding: 6rem!important
}

.pl6 {
    padding-left: 6rem!important
}

.pt6 {
    padding-top: 6rem!important
}

.pr6 {
    padding-right: 6rem!important
}

.pb6 {
    padding-bottom: 6rem!important
}

.px6 {
    padding: 0 6rem!important
}

.py6 {
    padding: 6rem 0!important
}

.m6 {
    margin: 6rem!important
}

.ml6 {
    margin-left: 6rem!important
}

.mt6 {
    margin-top: 6rem!important
}

.mr6 {
    margin-right: 6rem!important
}

.mb6 {
    margin-bottom: 6rem!important
}

.mx6 {
    margin: 0 6rem!important
}

.my6 {
    margin: 6rem 0!important
}

.p7 {
    padding: 7rem!important
}

.pl7 {
    padding-left: 7rem!important
}

.pt7 {
    padding-top: 7rem!important
}

.pr7 {
    padding-right: 7rem!important
}

.pb7 {
    padding-bottom: 7rem!important
}

.px7 {
    padding: 0 7rem!important
}

.py7 {
    padding: 7rem 0!important
}

.m7 {
    margin: 7rem!important
}

.ml7 {
    margin-left: 7rem!important
}

.mt7 {
    margin-top: 7rem!important
}

.mr7 {
    margin-right: 7rem!important
}

.mb7 {
    margin-bottom: 7rem!important
}

.mx7 {
    margin: 0 7rem!important
}

.my7 {
    margin: 7rem 0!important
}

.p8 {
    padding: 8rem!important
}

.pl8 {
    padding-left: 8rem!important
}

.pt8 {
    padding-top: 8rem!important
}

.pr8 {
    padding-right: 8rem!important
}

.pb8 {
    padding-bottom: 8rem!important
}

.px8 {
    padding: 0 8rem!important
}

.py8 {
    padding: 8rem 0!important
}

.m8 {
    margin: 8rem!important
}

.ml8 {
    margin-left: 8rem!important
}

.mt8 {
    margin-top: 8rem!important
}

.mr8 {
    margin-right: 8rem!important
}

.mb8 {
    margin-bottom: 8rem!important
}

.mx8 {
    margin: 0 8rem!important
}

.my8 {
    margin: 8rem 0!important
}

.p9 {
    padding: 9rem!important
}

.pl9 {
    padding-left: 9rem!important
}

.pt9 {
    padding-top: 9rem!important
}

.pr9 {
    padding-right: 9rem!important
}

.pb9 {
    padding-bottom: 9rem!important
}

.px9 {
    padding: 0 9rem!important
}

.py9 {
    padding: 9rem 0!important
}

.m9 {
    margin: 9rem!important
}

.ml9 {
    margin-left: 9rem!important
}

.mt9 {
    margin-top: 9rem!important
}

.mr9 {
    margin-right: 9rem!important
}

.mb9 {
    margin-bottom: 9rem!important
}

.mx9 {
    margin: 0 9rem!important
}

.my9 {
    margin: 9rem 0!important
}

.p10 {
    padding: 10rem!important
}

.pl10 {
    padding-left: 10rem!important
}

.pt10 {
    padding-top: 10rem!important
}

.pr10 {
    padding-right: 10rem!important
}

.pb10 {
    padding-bottom: 10rem!important
}

.px10 {
    padding: 0 10rem!important
}

.py10 {
    padding: 10rem 0!important
}

.m10 {
    margin: 10rem!important
}

.ml10 {
    margin-left: 10rem!important
}

.mt10 {
    margin-top: 10rem!important
}

.mr10 {
    margin-right: 10rem!important
}

.mb10 {
    margin-bottom: 10rem!important
}

.mx10 {
    margin: 0 10rem!important
}

.my10 {
    margin: 10rem 0!important
}

@media (min-width:550px) {
    .p0--tiny {
        padding: 0!important
    }
    .pl0--tiny {
        padding-left: 0!important
    }
    .pt0--tiny {
        padding-top: 0!important
    }
    .pr0--tiny {
        padding-right: 0!important
    }
    .pb0--tiny {
        padding-bottom: 0!important
    }
    .px0--tiny,
    .py0--tiny {
        padding: 0!important
    }
    .m0--tiny {
        margin: 0!important
    }
    .ml0--tiny {
        margin-left: 0!important
    }
    .mt0--tiny {
        margin-top: 0!important
    }
    .mr0--tiny {
        margin-right: 0!important
    }
    .mb0--tiny {
        margin-bottom: 0!important
    }
    .mx0--tiny,
    .my0--tiny {
        margin: 0!important
    }
    .p1--tiny {
        padding: 1rem!important
    }
    .pl1--tiny {
        padding-left: 1rem!important
    }
    .pt1--tiny {
        padding-top: 1rem!important
    }
    .pr1--tiny {
        padding-right: 1rem!important
    }
    .pb1--tiny {
        padding-bottom: 1rem!important
    }
    .px1--tiny {
        padding: 0 1rem!important
    }
    .py1--tiny {
        padding: 1rem 0!important
    }
    .m1--tiny {
        margin: 1rem!important
    }
    .ml1--tiny {
        margin-left: 1rem!important
    }
    .mt1--tiny {
        margin-top: 1rem!important
    }
    .mr1--tiny {
        margin-right: 1rem!important
    }
    .mb1--tiny {
        margin-bottom: 1rem!important
    }
    .mx1--tiny {
        margin: 0 1rem!important
    }
    .my1--tiny {
        margin: 1rem 0!important
    }
    .p2--tiny {
        padding: 2rem!important
    }
    .pl2--tiny {
        padding-left: 2rem!important
    }
    .pt2--tiny {
        padding-top: 2rem!important
    }
    .pr2--tiny {
        padding-right: 2rem!important
    }
    .pb2--tiny {
        padding-bottom: 2rem!important
    }
    .px2--tiny {
        padding: 0 2rem!important
    }
    .py2--tiny {
        padding: 2rem 0!important
    }
    .m2--tiny {
        margin: 2rem!important
    }
    .ml2--tiny {
        margin-left: 2rem!important
    }
    .mt2--tiny {
        margin-top: 2rem!important
    }
    .mr2--tiny {
        margin-right: 2rem!important
    }
    .mb2--tiny {
        margin-bottom: 2rem!important
    }
    .mx2--tiny {
        margin: 0 2rem!important
    }
    .my2--tiny {
        margin: 2rem 0!important
    }
    .p3--tiny {
        padding: 3rem!important
    }
    .pl3--tiny {
        padding-left: 3rem!important
    }
    .pt3--tiny {
        padding-top: 3rem!important
    }
    .pr3--tiny {
        padding-right: 3rem!important
    }
    .pb3--tiny {
        padding-bottom: 3rem!important
    }
    .px3--tiny {
        padding: 0 3rem!important
    }
    .py3--tiny {
        padding: 3rem 0!important
    }
    .m3--tiny {
        margin: 3rem!important
    }
    .ml3--tiny {
        margin-left: 3rem!important
    }
    .mt3--tiny {
        margin-top: 3rem!important
    }
    .mr3--tiny {
        margin-right: 3rem!important
    }
    .mb3--tiny {
        margin-bottom: 3rem!important
    }
    .mx3--tiny {
        margin: 0 3rem!important
    }
    .my3--tiny {
        margin: 3rem 0!important
    }
    .p4--tiny {
        padding: 4rem!important
    }
    .pl4--tiny {
        padding-left: 4rem!important
    }
    .pt4--tiny {
        padding-top: 4rem!important
    }
    .pr4--tiny {
        padding-right: 4rem!important
    }
    .pb4--tiny {
        padding-bottom: 4rem!important
    }
    .px4--tiny {
        padding: 0 4rem!important
    }
    .py4--tiny {
        padding: 4rem 0!important
    }
    .m4--tiny {
        margin: 4rem!important
    }
    .ml4--tiny {
        margin-left: 4rem!important
    }
    .mt4--tiny {
        margin-top: 4rem!important
    }
    .mr4--tiny {
        margin-right: 4rem!important
    }
    .mb4--tiny {
        margin-bottom: 4rem!important
    }
    .mx4--tiny {
        margin: 0 4rem!important
    }
    .my4--tiny {
        margin: 4rem 0!important
    }
    .p5--tiny {
        padding: 5rem!important
    }
    .pl5--tiny {
        padding-left: 5rem!important
    }
    .pt5--tiny {
        padding-top: 5rem!important
    }
    .pr5--tiny {
        padding-right: 5rem!important
    }
    .pb5--tiny {
        padding-bottom: 5rem!important
    }
    .px5--tiny {
        padding: 0 5rem!important
    }
    .py5--tiny {
        padding: 5rem 0!important
    }
    .m5--tiny {
        margin: 5rem!important
    }
    .ml5--tiny {
        margin-left: 5rem!important
    }
    .mt5--tiny {
        margin-top: 5rem!important
    }
    .mr5--tiny {
        margin-right: 5rem!important
    }
    .mb5--tiny {
        margin-bottom: 5rem!important
    }
    .mx5--tiny {
        margin: 0 5rem!important
    }
    .my5--tiny {
        margin: 5rem 0!important
    }
    .p6--tiny {
        padding: 6rem!important
    }
    .pl6--tiny {
        padding-left: 6rem!important
    }
    .pt6--tiny {
        padding-top: 6rem!important
    }
    .pr6--tiny {
        padding-right: 6rem!important
    }
    .pb6--tiny {
        padding-bottom: 6rem!important
    }
    .px6--tiny {
        padding: 0 6rem!important
    }
    .py6--tiny {
        padding: 6rem 0!important
    }
    .m6--tiny {
        margin: 6rem!important
    }
    .ml6--tiny {
        margin-left: 6rem!important
    }
    .mt6--tiny {
        margin-top: 6rem!important
    }
    .mr6--tiny {
        margin-right: 6rem!important
    }
    .mb6--tiny {
        margin-bottom: 6rem!important
    }
    .mx6--tiny {
        margin: 0 6rem!important
    }
    .my6--tiny {
        margin: 6rem 0!important
    }
    .p7--tiny {
        padding: 7rem!important
    }
    .pl7--tiny {
        padding-left: 7rem!important
    }
    .pt7--tiny {
        padding-top: 7rem!important
    }
    .pr7--tiny {
        padding-right: 7rem!important
    }
    .pb7--tiny {
        padding-bottom: 7rem!important
    }
    .px7--tiny {
        padding: 0 7rem!important
    }
    .py7--tiny {
        padding: 7rem 0!important
    }
    .m7--tiny {
        margin: 7rem!important
    }
    .ml7--tiny {
        margin-left: 7rem!important
    }
    .mt7--tiny {
        margin-top: 7rem!important
    }
    .mr7--tiny {
        margin-right: 7rem!important
    }
    .mb7--tiny {
        margin-bottom: 7rem!important
    }
    .mx7--tiny {
        margin: 0 7rem!important
    }
    .my7--tiny {
        margin: 7rem 0!important
    }
    .p8--tiny {
        padding: 8rem!important
    }
    .pl8--tiny {
        padding-left: 8rem!important
    }
    .pt8--tiny {
        padding-top: 8rem!important
    }
    .pr8--tiny {
        padding-right: 8rem!important
    }
    .pb8--tiny {
        padding-bottom: 8rem!important
    }
    .px8--tiny {
        padding: 0 8rem!important
    }
    .py8--tiny {
        padding: 8rem 0!important
    }
    .m8--tiny {
        margin: 8rem!important
    }
    .ml8--tiny {
        margin-left: 8rem!important
    }
    .mt8--tiny {
        margin-top: 8rem!important
    }
    .mr8--tiny {
        margin-right: 8rem!important
    }
    .mb8--tiny {
        margin-bottom: 8rem!important
    }
    .mx8--tiny {
        margin: 0 8rem!important
    }
    .my8--tiny {
        margin: 8rem 0!important
    }
    .p9--tiny {
        padding: 9rem!important
    }
    .pl9--tiny {
        padding-left: 9rem!important
    }
    .pt9--tiny {
        padding-top: 9rem!important
    }
    .pr9--tiny {
        padding-right: 9rem!important
    }
    .pb9--tiny {
        padding-bottom: 9rem!important
    }
    .px9--tiny {
        padding: 0 9rem!important
    }
    .py9--tiny {
        padding: 9rem 0!important
    }
    .m9--tiny {
        margin: 9rem!important
    }
    .ml9--tiny {
        margin-left: 9rem!important
    }
    .mt9--tiny {
        margin-top: 9rem!important
    }
    .mr9--tiny {
        margin-right: 9rem!important
    }
    .mb9--tiny {
        margin-bottom: 9rem!important
    }
    .mx9--tiny {
        margin: 0 9rem!important
    }
    .my9--tiny {
        margin: 9rem 0!important
    }
    .p10--tiny {
        padding: 10rem!important
    }
    .pl10--tiny {
        padding-left: 10rem!important
    }
    .pt10--tiny {
        padding-top: 10rem!important
    }
    .pr10--tiny {
        padding-right: 10rem!important
    }
    .pb10--tiny {
        padding-bottom: 10rem!important
    }
    .px10--tiny {
        padding: 0 10rem!important
    }
    .py10--tiny {
        padding: 10rem 0!important
    }
    .m10--tiny {
        margin: 10rem!important
    }
    .ml10--tiny {
        margin-left: 10rem!important
    }
    .mt10--tiny {
        margin-top: 10rem!important
    }
    .mr10--tiny {
        margin-right: 10rem!important
    }
    .mb10--tiny {
        margin-bottom: 10rem!important
    }
    .mx10--tiny {
        margin: 0 10rem!important
    }
    .my10--tiny {
        margin: 10rem 0!important
    }
}

@media (min-width:768px) {
    .p0--small {
        padding: 0!important
    }
    .pl0--small {
        padding-left: 0!important
    }
    .pt0--small {
        padding-top: 0!important
    }
    .pr0--small {
        padding-right: 0!important
    }
    .pb0--small {
        padding-bottom: 0!important
    }
    .px0--small,
    .py0--small {
        padding: 0!important
    }
    .m0--small {
        margin: 0!important
    }
    .ml0--small {
        margin-left: 0!important
    }
    .mt0--small {
        margin-top: 0!important
    }
    .mr0--small {
        margin-right: 0!important
    }
    .mb0--small {
        margin-bottom: 0!important
    }
    .mx0--small,
    .my0--small {
        margin: 0!important
    }
    .p1--small {
        padding: 1rem!important
    }
    .pl1--small {
        padding-left: 1rem!important
    }
    .pt1--small {
        padding-top: 1rem!important
    }
    .pr1--small {
        padding-right: 1rem!important
    }
    .pb1--small {
        padding-bottom: 1rem!important
    }
    .px1--small {
        padding: 0 1rem!important
    }
    .py1--small {
        padding: 1rem 0!important
    }
    .m1--small {
        margin: 1rem!important
    }
    .ml1--small {
        margin-left: 1rem!important
    }
    .mt1--small {
        margin-top: 1rem!important
    }
    .mr1--small {
        margin-right: 1rem!important
    }
    .mb1--small {
        margin-bottom: 1rem!important
    }
    .mx1--small {
        margin: 0 1rem!important
    }
    .my1--small {
        margin: 1rem 0!important
    }
    .p2--small {
        padding: 2rem!important
    }
    .pl2--small {
        padding-left: 2rem!important
    }
    .pt2--small {
        padding-top: 2rem!important
    }
    .pr2--small {
        padding-right: 2rem!important
    }
    .pb2--small {
        padding-bottom: 2rem!important
    }
    .px2--small {
        padding: 0 2rem!important
    }
    .py2--small {
        padding: 2rem 0!important
    }
    .m2--small {
        margin: 2rem!important
    }
    .ml2--small {
        margin-left: 2rem!important
    }
    .mt2--small {
        margin-top: 2rem!important
    }
    .mr2--small {
        margin-right: 2rem!important
    }
    .mb2--small {
        margin-bottom: 2rem!important
    }
    .mx2--small {
        margin: 0 2rem!important
    }
    .my2--small {
        margin: 2rem 0!important
    }
    .p3--small {
        padding: 3rem!important
    }
    .pl3--small {
        padding-left: 3rem!important
    }
    .pt3--small {
        padding-top: 3rem!important
    }
    .pr3--small {
        padding-right: 3rem!important
    }
    .pb3--small {
        padding-bottom: 3rem!important
    }
    .px3--small {
        padding: 0 3rem!important
    }
    .py3--small {
        padding: 3rem 0!important
    }
    .m3--small {
        margin: 3rem!important
    }
    .ml3--small {
        margin-left: 3rem!important
    }
    .mt3--small {
        margin-top: 3rem!important
    }
    .mr3--small {
        margin-right: 3rem!important
    }
    .mb3--small {
        margin-bottom: 3rem!important
    }
    .mx3--small {
        margin: 0 3rem!important
    }
    .my3--small {
        margin: 3rem 0!important
    }
    .p4--small {
        padding: 4rem!important
    }
    .pl4--small {
        padding-left: 4rem!important
    }
    .pt4--small {
        padding-top: 4rem!important
    }
    .pr4--small {
        padding-right: 4rem!important
    }
    .pb4--small {
        padding-bottom: 4rem!important
    }
    .px4--small {
        padding: 0 4rem!important
    }
    .py4--small {
        padding: 4rem 0!important
    }
    .m4--small {
        margin: 4rem!important
    }
    .ml4--small {
        margin-left: 4rem!important
    }
    .mt4--small {
        margin-top: 4rem!important
    }
    .mr4--small {
        margin-right: 4rem!important
    }
    .mb4--small {
        margin-bottom: 4rem!important
    }
    .mx4--small {
        margin: 0 4rem!important
    }
    .my4--small {
        margin: 4rem 0!important
    }
    .p5--small {
        padding: 5rem!important
    }
    .pl5--small {
        padding-left: 5rem!important
    }
    .pt5--small {
        padding-top: 5rem!important
    }
    .pr5--small {
        padding-right: 5rem!important
    }
    .pb5--small {
        padding-bottom: 5rem!important
    }
    .px5--small {
        padding: 0 5rem!important
    }
    .py5--small {
        padding: 5rem 0!important
    }
    .m5--small {
        margin: 5rem!important
    }
    .ml5--small {
        margin-left: 5rem!important
    }
    .mt5--small {
        margin-top: 5rem!important
    }
    .mr5--small {
        margin-right: 5rem!important
    }
    .mb5--small {
        margin-bottom: 5rem!important
    }
    .mx5--small {
        margin: 0 5rem!important
    }
    .my5--small {
        margin: 5rem 0!important
    }
    .p6--small {
        padding: 6rem!important
    }
    .pl6--small {
        padding-left: 6rem!important
    }
    .pt6--small {
        padding-top: 6rem!important
    }
    .pr6--small {
        padding-right: 6rem!important
    }
    .pb6--small {
        padding-bottom: 6rem!important
    }
    .px6--small {
        padding: 0 6rem!important
    }
    .py6--small {
        padding: 6rem 0!important
    }
    .m6--small {
        margin: 6rem!important
    }
    .ml6--small {
        margin-left: 6rem!important
    }
    .mt6--small {
        margin-top: 6rem!important
    }
    .mr6--small {
        margin-right: 6rem!important
    }
    .mb6--small {
        margin-bottom: 6rem!important
    }
    .mx6--small {
        margin: 0 6rem!important
    }
    .my6--small {
        margin: 6rem 0!important
    }
    .p7--small {
        padding: 7rem!important
    }
    .pl7--small {
        padding-left: 7rem!important
    }
    .pt7--small {
        padding-top: 7rem!important
    }
    .pr7--small {
        padding-right: 7rem!important
    }
    .pb7--small {
        padding-bottom: 7rem!important
    }
    .px7--small {
        padding: 0 7rem!important
    }
    .py7--small {
        padding: 7rem 0!important
    }
    .m7--small {
        margin: 7rem!important
    }
    .ml7--small {
        margin-left: 7rem!important
    }
    .mt7--small {
        margin-top: 7rem!important
    }
    .mr7--small {
        margin-right: 7rem!important
    }
    .mb7--small {
        margin-bottom: 7rem!important
    }
    .mx7--small {
        margin: 0 7rem!important
    }
    .my7--small {
        margin: 7rem 0!important
    }
    .p8--small {
        padding: 8rem!important
    }
    .pl8--small {
        padding-left: 8rem!important
    }
    .pt8--small {
        padding-top: 8rem!important
    }
    .pr8--small {
        padding-right: 8rem!important
    }
    .pb8--small {
        padding-bottom: 8rem!important
    }
    .px8--small {
        padding: 0 8rem!important
    }
    .py8--small {
        padding: 8rem 0!important
    }
    .m8--small {
        margin: 8rem!important
    }
    .ml8--small {
        margin-left: 8rem!important
    }
    .mt8--small {
        margin-top: 8rem!important
    }
    .mr8--small {
        margin-right: 8rem!important
    }
    .mb8--small {
        margin-bottom: 8rem!important
    }
    .mx8--small {
        margin: 0 8rem!important
    }
    .my8--small {
        margin: 8rem 0!important
    }
    .p9--small {
        padding: 9rem!important
    }
    .pl9--small {
        padding-left: 9rem!important
    }
    .pt9--small {
        padding-top: 9rem!important
    }
    .pr9--small {
        padding-right: 9rem!important
    }
    .pb9--small {
        padding-bottom: 9rem!important
    }
    .px9--small {
        padding: 0 9rem!important
    }
    .py9--small {
        padding: 9rem 0!important
    }
    .m9--small {
        margin: 9rem!important
    }
    .ml9--small {
        margin-left: 9rem!important
    }
    .mt9--small {
        margin-top: 9rem!important
    }
    .mr9--small {
        margin-right: 9rem!important
    }
    .mb9--small {
        margin-bottom: 9rem!important
    }
    .mx9--small {
        margin: 0 9rem!important
    }
    .my9--small {
        margin: 9rem 0!important
    }
    .p10--small {
        padding: 10rem!important
    }
    .pl10--small {
        padding-left: 10rem!important
    }
    .pt10--small {
        padding-top: 10rem!important
    }
    .pr10--small {
        padding-right: 10rem!important
    }
    .pb10--small {
        padding-bottom: 10rem!important
    }
    .px10--small {
        padding: 0 10rem!important
    }
    .py10--small {
        padding: 10rem 0!important
    }
    .m10--small {
        margin: 10rem!important
    }
    .ml10--small {
        margin-left: 10rem!important
    }
    .mt10--small {
        margin-top: 10rem!important
    }
    .mr10--small {
        margin-right: 10rem!important
    }
    .mb10--small {
        margin-bottom: 10rem!important
    }
    .mx10--small {
        margin: 0 10rem!important
    }
    .my10--small {
        margin: 10rem 0!important
    }
}

@media (min-width:1024px) {
    .p0--medium {
        padding: 0!important
    }
    .pl0--medium {
        padding-left: 0!important
    }
    .pt0--medium {
        padding-top: 0!important
    }
    .pr0--medium {
        padding-right: 0!important
    }
    .pb0--medium {
        padding-bottom: 0!important
    }
    .px0--medium,
    .py0--medium {
        padding: 0!important
    }
    .m0--medium {
        margin: 0!important
    }
    .ml0--medium {
        margin-left: 0!important
    }
    .mt0--medium {
        margin-top: 0!important
    }
    .mr0--medium {
        margin-right: 0!important
    }
    .mb0--medium {
        margin-bottom: 0!important
    }
    .mx0--medium,
    .my0--medium {
        margin: 0!important
    }
    .p1--medium {
        padding: 1rem!important
    }
    .pl1--medium {
        padding-left: 1rem!important
    }
    .pt1--medium {
        padding-top: 1rem!important
    }
    .pr1--medium {
        padding-right: 1rem!important
    }
    .pb1--medium {
        padding-bottom: 1rem!important
    }
    .px1--medium {
        padding: 0 1rem!important
    }
    .py1--medium {
        padding: 1rem 0!important
    }
    .m1--medium {
        margin: 1rem!important
    }
    .ml1--medium {
        margin-left: 1rem!important
    }
    .mt1--medium {
        margin-top: 1rem!important
    }
    .mr1--medium {
        margin-right: 1rem!important
    }
    .mb1--medium {
        margin-bottom: 1rem!important
    }
    .mx1--medium {
        margin: 0 1rem!important
    }
    .my1--medium {
        margin: 1rem 0!important
    }
    .p2--medium {
        padding: 2rem!important
    }
    .pl2--medium {
        padding-left: 2rem!important
    }
    .pt2--medium {
        padding-top: 2rem!important
    }
    .pr2--medium {
        padding-right: 2rem!important
    }
    .pb2--medium {
        padding-bottom: 2rem!important
    }
    .px2--medium {
        padding: 0 2rem!important
    }
    .py2--medium {
        padding: 2rem 0!important
    }
    .m2--medium {
        margin: 2rem!important
    }
    .ml2--medium {
        margin-left: 2rem!important
    }
    .mt2--medium {
        margin-top: 2rem!important
    }
    .mr2--medium {
        margin-right: 2rem!important
    }
    .mb2--medium {
        margin-bottom: 2rem!important
    }
    .mx2--medium {
        margin: 0 2rem!important
    }
    .my2--medium {
        margin: 2rem 0!important
    }
    .p3--medium {
        padding: 3rem!important
    }
    .pl3--medium {
        padding-left: 3rem!important
    }
    .pt3--medium {
        padding-top: 3rem!important
    }
    .pr3--medium {
        padding-right: 3rem!important
    }
    .pb3--medium {
        padding-bottom: 3rem!important
    }
    .px3--medium {
        padding: 0 3rem!important
    }
    .py3--medium {
        padding: 3rem 0!important
    }
    .m3--medium {
        margin: 3rem!important
    }
    .ml3--medium {
        margin-left: 3rem!important
    }
    .mt3--medium {
        margin-top: 3rem!important
    }
    .mr3--medium {
        margin-right: 3rem!important
    }
    .mb3--medium {
        margin-bottom: 3rem!important
    }
    .mx3--medium {
        margin: 0 3rem!important
    }
    .my3--medium {
        margin: 3rem 0!important
    }
    .p4--medium {
        padding: 4rem!important
    }
    .pl4--medium {
        padding-left: 4rem!important
    }
    .pt4--medium {
        padding-top: 4rem!important
    }
    .pr4--medium {
        padding-right: 4rem!important
    }
    .pb4--medium {
        padding-bottom: 4rem!important
    }
    .px4--medium {
        padding: 0 4rem!important
    }
    .py4--medium {
        padding: 4rem 0!important
    }
    .m4--medium {
        margin: 4rem!important
    }
    .ml4--medium {
        margin-left: 4rem!important
    }
    .mt4--medium {
        margin-top: 4rem!important
    }
    .mr4--medium {
        margin-right: 4rem!important
    }
    .mb4--medium {
        margin-bottom: 4rem!important
    }
    .mx4--medium {
        margin: 0 4rem!important
    }
    .my4--medium {
        margin: 4rem 0!important
    }
    .p5--medium {
        padding: 5rem!important
    }
    .pl5--medium {
        padding-left: 5rem!important
    }
    .pt5--medium {
        padding-top: 5rem!important
    }
    .pr5--medium {
        padding-right: 5rem!important
    }
    .pb5--medium {
        padding-bottom: 5rem!important
    }
    .px5--medium {
        padding: 0 5rem!important
    }
    .py5--medium {
        padding: 5rem 0!important
    }
    .m5--medium {
        margin: 5rem!important
    }
    .ml5--medium {
        margin-left: 5rem!important
    }
    .mt5--medium {
        margin-top: 5rem!important
    }
    .mr5--medium {
        margin-right: 5rem!important
    }
    .mb5--medium {
        margin-bottom: 5rem!important
    }
    .mx5--medium {
        margin: 0 5rem!important
    }
    .my5--medium {
        margin: 5rem 0!important
    }
    .p6--medium {
        padding: 6rem!important
    }
    .pl6--medium {
        padding-left: 6rem!important
    }
    .pt6--medium {
        padding-top: 6rem!important
    }
    .pr6--medium {
        padding-right: 6rem!important
    }
    .pb6--medium {
        padding-bottom: 6rem!important
    }
    .px6--medium {
        padding: 0 6rem!important
    }
    .py6--medium {
        padding: 6rem 0!important
    }
    .m6--medium {
        margin: 6rem!important
    }
    .ml6--medium {
        margin-left: 6rem!important
    }
    .mt6--medium {
        margin-top: 6rem!important
    }
    .mr6--medium {
        margin-right: 6rem!important
    }
    .mb6--medium {
        margin-bottom: 6rem!important
    }
    .mx6--medium {
        margin: 0 6rem!important
    }
    .my6--medium {
        margin: 6rem 0!important
    }
    .p7--medium {
        padding: 7rem!important
    }
    .pl7--medium {
        padding-left: 7rem!important
    }
    .pt7--medium {
        padding-top: 7rem!important
    }
    .pr7--medium {
        padding-right: 7rem!important
    }
    .pb7--medium {
        padding-bottom: 7rem!important
    }
    .px7--medium {
        padding: 0 7rem!important
    }
    .py7--medium {
        padding: 7rem 0!important
    }
    .m7--medium {
        margin: 7rem!important
    }
    .ml7--medium {
        margin-left: 7rem!important
    }
    .mt7--medium {
        margin-top: 7rem!important
    }
    .mr7--medium {
        margin-right: 7rem!important
    }
    .mb7--medium {
        margin-bottom: 7rem!important
    }
    .mx7--medium {
        margin: 0 7rem!important
    }
    .my7--medium {
        margin: 7rem 0!important
    }
    .p8--medium {
        padding: 8rem!important
    }
    .pl8--medium {
        padding-left: 8rem!important
    }
    .pt8--medium {
        padding-top: 8rem!important
    }
    .pr8--medium {
        padding-right: 8rem!important
    }
    .pb8--medium {
        padding-bottom: 8rem!important
    }
    .px8--medium {
        padding: 0 8rem!important
    }
    .py8--medium {
        padding: 8rem 0!important
    }
    .m8--medium {
        margin: 8rem!important
    }
    .ml8--medium {
        margin-left: 8rem!important
    }
    .mt8--medium {
        margin-top: 8rem!important
    }
    .mr8--medium {
        margin-right: 8rem!important
    }
    .mb8--medium {
        margin-bottom: 8rem!important
    }
    .mx8--medium {
        margin: 0 8rem!important
    }
    .my8--medium {
        margin: 8rem 0!important
    }
    .p9--medium {
        padding: 9rem!important
    }
    .pl9--medium {
        padding-left: 9rem!important
    }
    .pt9--medium {
        padding-top: 9rem!important
    }
    .pr9--medium {
        padding-right: 9rem!important
    }
    .pb9--medium {
        padding-bottom: 9rem!important
    }
    .px9--medium {
        padding: 0 9rem!important
    }
    .py9--medium {
        padding: 9rem 0!important
    }
    .m9--medium {
        margin: 9rem!important
    }
    .ml9--medium {
        margin-left: 9rem!important
    }
    .mt9--medium {
        margin-top: 9rem!important
    }
    .mr9--medium {
        margin-right: 9rem!important
    }
    .mb9--medium {
        margin-bottom: 9rem!important
    }
    .mx9--medium {
        margin: 0 9rem!important
    }
    .my9--medium {
        margin: 9rem 0!important
    }
    .p10--medium {
        padding: 10rem!important
    }
    .pl10--medium {
        padding-left: 10rem!important
    }
    .pt10--medium {
        padding-top: 10rem!important
    }
    .pr10--medium {
        padding-right: 10rem!important
    }
    .pb10--medium {
        padding-bottom: 10rem!important
    }
    .px10--medium {
        padding: 0 10rem!important
    }
    .py10--medium {
        padding: 10rem 0!important
    }
    .m10--medium {
        margin: 10rem!important
    }
    .ml10--medium {
        margin-left: 10rem!important
    }
    .mt10--medium {
        margin-top: 10rem!important
    }
    .mr10--medium {
        margin-right: 10rem!important
    }
    .mb10--medium {
        margin-bottom: 10rem!important
    }
    .mx10--medium {
        margin: 0 10rem!important
    }
    .my10--medium {
        margin: 10rem 0!important
    }
}

@media (min-width:1280px) {
    .p0--large {
        padding: 0!important
    }
    .pl0--large {
        padding-left: 0!important
    }
    .pt0--large {
        padding-top: 0!important
    }
    .pr0--large {
        padding-right: 0!important
    }
    .pb0--large {
        padding-bottom: 0!important
    }
    .px0--large,
    .py0--large {
        padding: 0!important
    }
    .m0--large {
        margin: 0!important
    }
    .ml0--large {
        margin-left: 0!important
    }
    .mt0--large {
        margin-top: 0!important
    }
    .mr0--large {
        margin-right: 0!important
    }
    .mb0--large {
        margin-bottom: 0!important
    }
    .mx0--large,
    .my0--large {
        margin: 0!important
    }
    .p1--large {
        padding: 1rem!important
    }
    .pl1--large {
        padding-left: 1rem!important
    }
    .pt1--large {
        padding-top: 1rem!important
    }
    .pr1--large {
        padding-right: 1rem!important
    }
    .pb1--large {
        padding-bottom: 1rem!important
    }
    .px1--large {
        padding: 0 1rem!important
    }
    .py1--large {
        padding: 1rem 0!important
    }
    .m1--large {
        margin: 1rem!important
    }
    .ml1--large {
        margin-left: 1rem!important
    }
    .mt1--large {
        margin-top: 1rem!important
    }
    .mr1--large {
        margin-right: 1rem!important
    }
    .mb1--large {
        margin-bottom: 1rem!important
    }
    .mx1--large {
        margin: 0 1rem!important
    }
    .my1--large {
        margin: 1rem 0!important
    }
    .p2--large {
        padding: 2rem!important
    }
    .pl2--large {
        padding-left: 2rem!important
    }
    .pt2--large {
        padding-top: 2rem!important
    }
    .pr2--large {
        padding-right: 2rem!important
    }
    .pb2--large {
        padding-bottom: 2rem!important
    }
    .px2--large {
        padding: 0 2rem!important
    }
    .py2--large {
        padding: 2rem 0!important
    }
    .m2--large {
        margin: 2rem!important
    }
    .ml2--large {
        margin-left: 2rem!important
    }
    .mt2--large {
        margin-top: 2rem!important
    }
    .mr2--large {
        margin-right: 2rem!important
    }
    .mb2--large {
        margin-bottom: 2rem!important
    }
    .mx2--large {
        margin: 0 2rem!important
    }
    .my2--large {
        margin: 2rem 0!important
    }
    .p3--large {
        padding: 3rem!important
    }
    .pl3--large {
        padding-left: 3rem!important
    }
    .pt3--large {
        padding-top: 3rem!important
    }
    .pr3--large {
        padding-right: 3rem!important
    }
    .pb3--large {
        padding-bottom: 3rem!important
    }
    .px3--large {
        padding: 0 3rem!important
    }
    .py3--large {
        padding: 3rem 0!important
    }
    .m3--large {
        margin: 3rem!important
    }
    .ml3--large {
        margin-left: 3rem!important
    }
    .mt3--large {
        margin-top: 3rem!important
    }
    .mr3--large {
        margin-right: 3rem!important
    }
    .mb3--large {
        margin-bottom: 3rem!important
    }
    .mx3--large {
        margin: 0 3rem!important
    }
    .my3--large {
        margin: 3rem 0!important
    }
    .p4--large {
        padding: 4rem!important
    }
    .pl4--large {
        padding-left: 4rem!important
    }
    .pt4--large {
        padding-top: 4rem!important
    }
    .pr4--large {
        padding-right: 4rem!important
    }
    .pb4--large {
        padding-bottom: 4rem!important
    }
    .px4--large {
        padding: 0 4rem!important
    }
    .py4--large {
        padding: 4rem 0!important
    }
    .m4--large {
        margin: 4rem!important
    }
    .ml4--large {
        margin-left: 4rem!important
    }
    .mt4--large {
        margin-top: 4rem!important
    }
    .mr4--large {
        margin-right: 4rem!important
    }
    .mb4--large {
        margin-bottom: 4rem!important
    }
    .mx4--large {
        margin: 0 4rem!important
    }
    .my4--large {
        margin: 4rem 0!important
    }
    .p5--large {
        padding: 5rem!important
    }
    .pl5--large {
        padding-left: 5rem!important
    }
    .pt5--large {
        padding-top: 5rem!important
    }
    .pr5--large {
        padding-right: 5rem!important
    }
    .pb5--large {
        padding-bottom: 5rem!important
    }
    .px5--large {
        padding: 0 5rem!important
    }
    .py5--large {
        padding: 5rem 0!important
    }
    .m5--large {
        margin: 5rem!important
    }
    .ml5--large {
        margin-left: 5rem!important
    }
    .mt5--large {
        margin-top: 5rem!important
    }
    .mr5--large {
        margin-right: 5rem!important
    }
    .mb5--large {
        margin-bottom: 5rem!important
    }
    .mx5--large {
        margin: 0 5rem!important
    }
    .my5--large {
        margin: 5rem 0!important
    }
    .p6--large {
        padding: 6rem!important
    }
    .pl6--large {
        padding-left: 6rem!important
    }
    .pt6--large {
        padding-top: 6rem!important
    }
    .pr6--large {
        padding-right: 6rem!important
    }
    .pb6--large {
        padding-bottom: 6rem!important
    }
    .px6--large {
        padding: 0 6rem!important
    }
    .py6--large {
        padding: 6rem 0!important
    }
    .m6--large {
        margin: 6rem!important
    }
    .ml6--large {
        margin-left: 6rem!important
    }
    .mt6--large {
        margin-top: 6rem!important
    }
    .mr6--large {
        margin-right: 6rem!important
    }
    .mb6--large {
        margin-bottom: 6rem!important
    }
    .mx6--large {
        margin: 0 6rem!important
    }
    .my6--large {
        margin: 6rem 0!important
    }
    .p7--large {
        padding: 7rem!important
    }
    .pl7--large {
        padding-left: 7rem!important
    }
    .pt7--large {
        padding-top: 7rem!important
    }
    .pr7--large {
        padding-right: 7rem!important
    }
    .pb7--large {
        padding-bottom: 7rem!important
    }
    .px7--large {
        padding: 0 7rem!important
    }
    .py7--large {
        padding: 7rem 0!important
    }
    .m7--large {
        margin: 7rem!important
    }
    .ml7--large {
        margin-left: 7rem!important
    }
    .mt7--large {
        margin-top: 7rem!important
    }
    .mr7--large {
        margin-right: 7rem!important
    }
    .mb7--large {
        margin-bottom: 7rem!important
    }
    .mx7--large {
        margin: 0 7rem!important
    }
    .my7--large {
        margin: 7rem 0!important
    }
    .p8--large {
        padding: 8rem!important
    }
    .pl8--large {
        padding-left: 8rem!important
    }
    .pt8--large {
        padding-top: 8rem!important
    }
    .pr8--large {
        padding-right: 8rem!important
    }
    .pb8--large {
        padding-bottom: 8rem!important
    }
    .px8--large {
        padding: 0 8rem!important
    }
    .py8--large {
        padding: 8rem 0!important
    }
    .m8--large {
        margin: 8rem!important
    }
    .ml8--large {
        margin-left: 8rem!important
    }
    .mt8--large {
        margin-top: 8rem!important
    }
    .mr8--large {
        margin-right: 8rem!important
    }
    .mb8--large {
        margin-bottom: 8rem!important
    }
    .mx8--large {
        margin: 0 8rem!important
    }
    .my8--large {
        margin: 8rem 0!important
    }
    .p9--large {
        padding: 9rem!important
    }
    .pl9--large {
        padding-left: 9rem!important
    }
    .pt9--large {
        padding-top: 9rem!important
    }
    .pr9--large {
        padding-right: 9rem!important
    }
    .pb9--large {
        padding-bottom: 9rem!important
    }
    .px9--large {
        padding: 0 9rem!important
    }
    .py9--large {
        padding: 9rem 0!important
    }
    .m9--large {
        margin: 9rem!important
    }
    .ml9--large {
        margin-left: 9rem!important
    }
    .mt9--large {
        margin-top: 9rem!important
    }
    .mr9--large {
        margin-right: 9rem!important
    }
    .mb9--large {
        margin-bottom: 9rem!important
    }
    .mx9--large {
        margin: 0 9rem!important
    }
    .my9--large {
        margin: 9rem 0!important
    }
    .p10--large {
        padding: 10rem!important
    }
    .pl10--large {
        padding-left: 10rem!important
    }
    .pt10--large {
        padding-top: 10rem!important
    }
    .pr10--large {
        padding-right: 10rem!important
    }
    .pb10--large {
        padding-bottom: 10rem!important
    }
    .px10--large {
        padding: 0 10rem!important
    }
    .py10--large {
        padding: 10rem 0!important
    }
    .m10--large {
        margin: 10rem!important
    }
    .ml10--large {
        margin-left: 10rem!important
    }
    .mt10--large {
        margin-top: 10rem!important
    }
    .mr10--large {
        margin-right: 10rem!important
    }
    .mb10--large {
        margin-bottom: 10rem!important
    }
    .mx10--large {
        margin: 0 10rem!important
    }
    .my10--large {
        margin: 10rem 0!important
    }
}

@media (min-width:1440px) {
    .p0--xlarge {
        padding: 0!important
    }
    .pl0--xlarge {
        padding-left: 0!important
    }
    .pt0--xlarge {
        padding-top: 0!important
    }
    .pr0--xlarge {
        padding-right: 0!important
    }
    .pb0--xlarge {
        padding-bottom: 0!important
    }
    .px0--xlarge,
    .py0--xlarge {
        padding: 0!important
    }
    .m0--xlarge {
        margin: 0!important
    }
    .ml0--xlarge {
        margin-left: 0!important
    }
    .mt0--xlarge {
        margin-top: 0!important
    }
    .mr0--xlarge {
        margin-right: 0!important
    }
    .mb0--xlarge {
        margin-bottom: 0!important
    }
    .mx0--xlarge,
    .my0--xlarge {
        margin: 0!important
    }
    .p1--xlarge {
        padding: 1rem!important
    }
    .pl1--xlarge {
        padding-left: 1rem!important
    }
    .pt1--xlarge {
        padding-top: 1rem!important
    }
    .pr1--xlarge {
        padding-right: 1rem!important
    }
    .pb1--xlarge {
        padding-bottom: 1rem!important
    }
    .px1--xlarge {
        padding: 0 1rem!important
    }
    .py1--xlarge {
        padding: 1rem 0!important
    }
    .m1--xlarge {
        margin: 1rem!important
    }
    .ml1--xlarge {
        margin-left: 1rem!important
    }
    .mt1--xlarge {
        margin-top: 1rem!important
    }
    .mr1--xlarge {
        margin-right: 1rem!important
    }
    .mb1--xlarge {
        margin-bottom: 1rem!important
    }
    .mx1--xlarge {
        margin: 0 1rem!important
    }
    .my1--xlarge {
        margin: 1rem 0!important
    }
    .p2--xlarge {
        padding: 2rem!important
    }
    .pl2--xlarge {
        padding-left: 2rem!important
    }
    .pt2--xlarge {
        padding-top: 2rem!important
    }
    .pr2--xlarge {
        padding-right: 2rem!important
    }
    .pb2--xlarge {
        padding-bottom: 2rem!important
    }
    .px2--xlarge {
        padding: 0 2rem!important
    }
    .py2--xlarge {
        padding: 2rem 0!important
    }
    .m2--xlarge {
        margin: 2rem!important
    }
    .ml2--xlarge {
        margin-left: 2rem!important
    }
    .mt2--xlarge {
        margin-top: 2rem!important
    }
    .mr2--xlarge {
        margin-right: 2rem!important
    }
    .mb2--xlarge {
        margin-bottom: 2rem!important
    }
    .mx2--xlarge {
        margin: 0 2rem!important
    }
    .my2--xlarge {
        margin: 2rem 0!important
    }
    .p3--xlarge {
        padding: 3rem!important
    }
    .pl3--xlarge {
        padding-left: 3rem!important
    }
    .pt3--xlarge {
        padding-top: 3rem!important
    }
    .pr3--xlarge {
        padding-right: 3rem!important
    }
    .pb3--xlarge {
        padding-bottom: 3rem!important
    }
    .px3--xlarge {
        padding: 0 3rem!important
    }
    .py3--xlarge {
        padding: 3rem 0!important
    }
    .m3--xlarge {
        margin: 3rem!important
    }
    .ml3--xlarge {
        margin-left: 3rem!important
    }
    .mt3--xlarge {
        margin-top: 3rem!important
    }
    .mr3--xlarge {
        margin-right: 3rem!important
    }
    .mb3--xlarge {
        margin-bottom: 3rem!important
    }
    .mx3--xlarge {
        margin: 0 3rem!important
    }
    .my3--xlarge {
        margin: 3rem 0!important
    }
    .p4--xlarge {
        padding: 4rem!important
    }
    .pl4--xlarge {
        padding-left: 4rem!important
    }
    .pt4--xlarge {
        padding-top: 4rem!important
    }
    .pr4--xlarge {
        padding-right: 4rem!important
    }
    .pb4--xlarge {
        padding-bottom: 4rem!important
    }
    .px4--xlarge {
        padding: 0 4rem!important
    }
    .py4--xlarge {
        padding: 4rem 0!important
    }
    .m4--xlarge {
        margin: 4rem!important
    }
    .ml4--xlarge {
        margin-left: 4rem!important
    }
    .mt4--xlarge {
        margin-top: 4rem!important
    }
    .mr4--xlarge {
        margin-right: 4rem!important
    }
    .mb4--xlarge {
        margin-bottom: 4rem!important
    }
    .mx4--xlarge {
        margin: 0 4rem!important
    }
    .my4--xlarge {
        margin: 4rem 0!important
    }
    .p5--xlarge {
        padding: 5rem!important
    }
    .pl5--xlarge {
        padding-left: 5rem!important
    }
    .pt5--xlarge {
        padding-top: 5rem!important
    }
    .pr5--xlarge {
        padding-right: 5rem!important
    }
    .pb5--xlarge {
        padding-bottom: 5rem!important
    }
    .px5--xlarge {
        padding: 0 5rem!important
    }
    .py5--xlarge {
        padding: 5rem 0!important
    }
    .m5--xlarge {
        margin: 5rem!important
    }
    .ml5--xlarge {
        margin-left: 5rem!important
    }
    .mt5--xlarge {
        margin-top: 5rem!important
    }
    .mr5--xlarge {
        margin-right: 5rem!important
    }
    .mb5--xlarge {
        margin-bottom: 5rem!important
    }
    .mx5--xlarge {
        margin: 0 5rem!important
    }
    .my5--xlarge {
        margin: 5rem 0!important
    }
    .p6--xlarge {
        padding: 6rem!important
    }
    .pl6--xlarge {
        padding-left: 6rem!important
    }
    .pt6--xlarge {
        padding-top: 6rem!important
    }
    .pr6--xlarge {
        padding-right: 6rem!important
    }
    .pb6--xlarge {
        padding-bottom: 6rem!important
    }
    .px6--xlarge {
        padding: 0 6rem!important
    }
    .py6--xlarge {
        padding: 6rem 0!important
    }
    .m6--xlarge {
        margin: 6rem!important
    }
    .ml6--xlarge {
        margin-left: 6rem!important
    }
    .mt6--xlarge {
        margin-top: 6rem!important
    }
    .mr6--xlarge {
        margin-right: 6rem!important
    }
    .mb6--xlarge {
        margin-bottom: 6rem!important
    }
    .mx6--xlarge {
        margin: 0 6rem!important
    }
    .my6--xlarge {
        margin: 6rem 0!important
    }
    .p7--xlarge {
        padding: 7rem!important
    }
    .pl7--xlarge {
        padding-left: 7rem!important
    }
    .pt7--xlarge {
        padding-top: 7rem!important
    }
    .pr7--xlarge {
        padding-right: 7rem!important
    }
    .pb7--xlarge {
        padding-bottom: 7rem!important
    }
    .px7--xlarge {
        padding: 0 7rem!important
    }
    .py7--xlarge {
        padding: 7rem 0!important
    }
    .m7--xlarge {
        margin: 7rem!important
    }
    .ml7--xlarge {
        margin-left: 7rem!important
    }
    .mt7--xlarge {
        margin-top: 7rem!important
    }
    .mr7--xlarge {
        margin-right: 7rem!important
    }
    .mb7--xlarge {
        margin-bottom: 7rem!important
    }
    .mx7--xlarge {
        margin: 0 7rem!important
    }
    .my7--xlarge {
        margin: 7rem 0!important
    }
    .p8--xlarge {
        padding: 8rem!important
    }
    .pl8--xlarge {
        padding-left: 8rem!important
    }
    .pt8--xlarge {
        padding-top: 8rem!important
    }
    .pr8--xlarge {
        padding-right: 8rem!important
    }
    .pb8--xlarge {
        padding-bottom: 8rem!important
    }
    .px8--xlarge {
        padding: 0 8rem!important
    }
    .py8--xlarge {
        padding: 8rem 0!important
    }
    .m8--xlarge {
        margin: 8rem!important
    }
    .ml8--xlarge {
        margin-left: 8rem!important
    }
    .mt8--xlarge {
        margin-top: 8rem!important
    }
    .mr8--xlarge {
        margin-right: 8rem!important
    }
    .mb8--xlarge {
        margin-bottom: 8rem!important
    }
    .mx8--xlarge {
        margin: 0 8rem!important
    }
    .my8--xlarge {
        margin: 8rem 0!important
    }
    .p9--xlarge {
        padding: 9rem!important
    }
    .pl9--xlarge {
        padding-left: 9rem!important
    }
    .pt9--xlarge {
        padding-top: 9rem!important
    }
    .pr9--xlarge {
        padding-right: 9rem!important
    }
    .pb9--xlarge {
        padding-bottom: 9rem!important
    }
    .px9--xlarge {
        padding: 0 9rem!important
    }
    .py9--xlarge {
        padding: 9rem 0!important
    }
    .m9--xlarge {
        margin: 9rem!important
    }
    .ml9--xlarge {
        margin-left: 9rem!important
    }
    .mt9--xlarge {
        margin-top: 9rem!important
    }
    .mr9--xlarge {
        margin-right: 9rem!important
    }
    .mb9--xlarge {
        margin-bottom: 9rem!important
    }
    .mx9--xlarge {
        margin: 0 9rem!important
    }
    .my9--xlarge {
        margin: 9rem 0!important
    }
    .p10--xlarge {
        padding: 10rem!important
    }
    .pl10--xlarge {
        padding-left: 10rem!important
    }
    .pt10--xlarge {
        padding-top: 10rem!important
    }
    .pr10--xlarge {
        padding-right: 10rem!important
    }
    .pb10--xlarge {
        padding-bottom: 10rem!important
    }
    .px10--xlarge {
        padding: 0 10rem!important
    }
    .py10--xlarge {
        padding: 10rem 0!important
    }
    .m10--xlarge {
        margin: 10rem!important
    }
    .ml10--xlarge {
        margin-left: 10rem!important
    }
    .mt10--xlarge {
        margin-top: 10rem!important
    }
    .mr10--xlarge {
        margin-right: 10rem!important
    }
    .mb10--xlarge {
        margin-bottom: 10rem!important
    }
    .mx10--xlarge {
        margin: 0 10rem!important
    }
    .my10--xlarge {
        margin: 10rem 0!important
    }
}

@media (min-width:1800px) {
    .p0--xxlarge {
        padding: 0!important
    }
    .pl0--xxlarge {
        padding-left: 0!important
    }
    .pt0--xxlarge {
        padding-top: 0!important
    }
    .pr0--xxlarge {
        padding-right: 0!important
    }
    .pb0--xxlarge {
        padding-bottom: 0!important
    }
    .px0--xxlarge,
    .py0--xxlarge {
        padding: 0!important
    }
    .m0--xxlarge {
        margin: 0!important
    }
    .ml0--xxlarge {
        margin-left: 0!important
    }
    .mt0--xxlarge {
        margin-top: 0!important
    }
    .mr0--xxlarge {
        margin-right: 0!important
    }
    .mb0--xxlarge {
        margin-bottom: 0!important
    }
    .mx0--xxlarge,
    .my0--xxlarge {
        margin: 0!important
    }
    .p1--xxlarge {
        padding: 1rem!important
    }
    .pl1--xxlarge {
        padding-left: 1rem!important
    }
    .pt1--xxlarge {
        padding-top: 1rem!important
    }
    .pr1--xxlarge {
        padding-right: 1rem!important
    }
    .pb1--xxlarge {
        padding-bottom: 1rem!important
    }
    .px1--xxlarge {
        padding: 0 1rem!important
    }
    .py1--xxlarge {
        padding: 1rem 0!important
    }
    .m1--xxlarge {
        margin: 1rem!important
    }
    .ml1--xxlarge {
        margin-left: 1rem!important
    }
    .mt1--xxlarge {
        margin-top: 1rem!important
    }
    .mr1--xxlarge {
        margin-right: 1rem!important
    }
    .mb1--xxlarge {
        margin-bottom: 1rem!important
    }
    .mx1--xxlarge {
        margin: 0 1rem!important
    }
    .my1--xxlarge {
        margin: 1rem 0!important
    }
    .p2--xxlarge {
        padding: 2rem!important
    }
    .pl2--xxlarge {
        padding-left: 2rem!important
    }
    .pt2--xxlarge {
        padding-top: 2rem!important
    }
    .pr2--xxlarge {
        padding-right: 2rem!important
    }
    .pb2--xxlarge {
        padding-bottom: 2rem!important
    }
    .px2--xxlarge {
        padding: 0 2rem!important
    }
    .py2--xxlarge {
        padding: 2rem 0!important
    }
    .m2--xxlarge {
        margin: 2rem!important
    }
    .ml2--xxlarge {
        margin-left: 2rem!important
    }
    .mt2--xxlarge {
        margin-top: 2rem!important
    }
    .mr2--xxlarge {
        margin-right: 2rem!important
    }
    .mb2--xxlarge {
        margin-bottom: 2rem!important
    }
    .mx2--xxlarge {
        margin: 0 2rem!important
    }
    .my2--xxlarge {
        margin: 2rem 0!important
    }
    .p3--xxlarge {
        padding: 3rem!important
    }
    .pl3--xxlarge {
        padding-left: 3rem!important
    }
    .pt3--xxlarge {
        padding-top: 3rem!important
    }
    .pr3--xxlarge {
        padding-right: 3rem!important
    }
    .pb3--xxlarge {
        padding-bottom: 3rem!important
    }
    .px3--xxlarge {
        padding: 0 3rem!important
    }
    .py3--xxlarge {
        padding: 3rem 0!important
    }
    .m3--xxlarge {
        margin: 3rem!important
    }
    .ml3--xxlarge {
        margin-left: 3rem!important
    }
    .mt3--xxlarge {
        margin-top: 3rem!important
    }
    .mr3--xxlarge {
        margin-right: 3rem!important
    }
    .mb3--xxlarge {
        margin-bottom: 3rem!important
    }
    .mx3--xxlarge {
        margin: 0 3rem!important
    }
    .my3--xxlarge {
        margin: 3rem 0!important
    }
    .p4--xxlarge {
        padding: 4rem!important
    }
    .pl4--xxlarge {
        padding-left: 4rem!important
    }
    .pt4--xxlarge {
        padding-top: 4rem!important
    }
    .pr4--xxlarge {
        padding-right: 4rem!important
    }
    .pb4--xxlarge {
        padding-bottom: 4rem!important
    }
    .px4--xxlarge {
        padding: 0 4rem!important
    }
    .py4--xxlarge {
        padding: 4rem 0!important
    }
    .m4--xxlarge {
        margin: 4rem!important
    }
    .ml4--xxlarge {
        margin-left: 4rem!important
    }
    .mt4--xxlarge {
        margin-top: 4rem!important
    }
    .mr4--xxlarge {
        margin-right: 4rem!important
    }
    .mb4--xxlarge {
        margin-bottom: 4rem!important
    }
    .mx4--xxlarge {
        margin: 0 4rem!important
    }
    .my4--xxlarge {
        margin: 4rem 0!important
    }
    .p5--xxlarge {
        padding: 5rem!important
    }
    .pl5--xxlarge {
        padding-left: 5rem!important
    }
    .pt5--xxlarge {
        padding-top: 5rem!important
    }
    .pr5--xxlarge {
        padding-right: 5rem!important
    }
    .pb5--xxlarge {
        padding-bottom: 5rem!important
    }
    .px5--xxlarge {
        padding: 0 5rem!important
    }
    .py5--xxlarge {
        padding: 5rem 0!important
    }
    .m5--xxlarge {
        margin: 5rem!important
    }
    .ml5--xxlarge {
        margin-left: 5rem!important
    }
    .mt5--xxlarge {
        margin-top: 5rem!important
    }
    .mr5--xxlarge {
        margin-right: 5rem!important
    }
    .mb5--xxlarge {
        margin-bottom: 5rem!important
    }
    .mx5--xxlarge {
        margin: 0 5rem!important
    }
    .my5--xxlarge {
        margin: 5rem 0!important
    }
    .p6--xxlarge {
        padding: 6rem!important
    }
    .pl6--xxlarge {
        padding-left: 6rem!important
    }
    .pt6--xxlarge {
        padding-top: 6rem!important
    }
    .pr6--xxlarge {
        padding-right: 6rem!important
    }
    .pb6--xxlarge {
        padding-bottom: 6rem!important
    }
    .px6--xxlarge {
        padding: 0 6rem!important
    }
    .py6--xxlarge {
        padding: 6rem 0!important
    }
    .m6--xxlarge {
        margin: 6rem!important
    }
    .ml6--xxlarge {
        margin-left: 6rem!important
    }
    .mt6--xxlarge {
        margin-top: 6rem!important
    }
    .mr6--xxlarge {
        margin-right: 6rem!important
    }
    .mb6--xxlarge {
        margin-bottom: 6rem!important
    }
    .mx6--xxlarge {
        margin: 0 6rem!important
    }
    .my6--xxlarge {
        margin: 6rem 0!important
    }
    .p7--xxlarge {
        padding: 7rem!important
    }
    .pl7--xxlarge {
        padding-left: 7rem!important
    }
    .pt7--xxlarge {
        padding-top: 7rem!important
    }
    .pr7--xxlarge {
        padding-right: 7rem!important
    }
    .pb7--xxlarge {
        padding-bottom: 7rem!important
    }
    .px7--xxlarge {
        padding: 0 7rem!important
    }
    .py7--xxlarge {
        padding: 7rem 0!important
    }
    .m7--xxlarge {
        margin: 7rem!important
    }
    .ml7--xxlarge {
        margin-left: 7rem!important
    }
    .mt7--xxlarge {
        margin-top: 7rem!important
    }
    .mr7--xxlarge {
        margin-right: 7rem!important
    }
    .mb7--xxlarge {
        margin-bottom: 7rem!important
    }
    .mx7--xxlarge {
        margin: 0 7rem!important
    }
    .my7--xxlarge {
        margin: 7rem 0!important
    }
    .p8--xxlarge {
        padding: 8rem!important
    }
    .pl8--xxlarge {
        padding-left: 8rem!important
    }
    .pt8--xxlarge {
        padding-top: 8rem!important
    }
    .pr8--xxlarge {
        padding-right: 8rem!important
    }
    .pb8--xxlarge {
        padding-bottom: 8rem!important
    }
    .px8--xxlarge {
        padding: 0 8rem!important
    }
    .py8--xxlarge {
        padding: 8rem 0!important
    }
    .m8--xxlarge {
        margin: 8rem!important
    }
    .ml8--xxlarge {
        margin-left: 8rem!important
    }
    .mt8--xxlarge {
        margin-top: 8rem!important
    }
    .mr8--xxlarge {
        margin-right: 8rem!important
    }
    .mb8--xxlarge {
        margin-bottom: 8rem!important
    }
    .mx8--xxlarge {
        margin: 0 8rem!important
    }
    .my8--xxlarge {
        margin: 8rem 0!important
    }
    .p9--xxlarge {
        padding: 9rem!important
    }
    .pl9--xxlarge {
        padding-left: 9rem!important
    }
    .pt9--xxlarge {
        padding-top: 9rem!important
    }
    .pr9--xxlarge {
        padding-right: 9rem!important
    }
    .pb9--xxlarge {
        padding-bottom: 9rem!important
    }
    .px9--xxlarge {
        padding: 0 9rem!important
    }
    .py9--xxlarge {
        padding: 9rem 0!important
    }
    .m9--xxlarge {
        margin: 9rem!important
    }
    .ml9--xxlarge {
        margin-left: 9rem!important
    }
    .mt9--xxlarge {
        margin-top: 9rem!important
    }
    .mr9--xxlarge {
        margin-right: 9rem!important
    }
    .mb9--xxlarge {
        margin-bottom: 9rem!important
    }
    .mx9--xxlarge {
        margin: 0 9rem!important
    }
    .my9--xxlarge {
        margin: 9rem 0!important
    }
    .p10--xxlarge {
        padding: 10rem!important
    }
    .pl10--xxlarge {
        padding-left: 10rem!important
    }
    .pt10--xxlarge {
        padding-top: 10rem!important
    }
    .pr10--xxlarge {
        padding-right: 10rem!important
    }
    .pb10--xxlarge {
        padding-bottom: 10rem!important
    }
    .px10--xxlarge {
        padding: 0 10rem!important
    }
    .py10--xxlarge {
        padding: 10rem 0!important
    }
    .m10--xxlarge {
        margin: 10rem!important
    }
    .ml10--xxlarge {
        margin-left: 10rem!important
    }
    .mt10--xxlarge {
        margin-top: 10rem!important
    }
    .mr10--xxlarge {
        margin-right: 10rem!important
    }
    .mb10--xxlarge {
        margin-bottom: 10rem!important
    }
    .mx10--xxlarge {
        margin: 0 10rem!important
    }
    .my10--xxlarge {
        margin: 10rem 0!important
    }
}

.dash {
    height: 0;
    width: 3rem;
    display: inline-block;
    vertical-align: middle;
    border-top: .2rem solid;
    top: -.1rem;
    position: relative
}

@media (min-width:1280px) {
    .dash {
        width: 4rem
    }
}

@media (min-width:1440px) {
    .dash {
        width: 4.5rem
    }
}

@media (min-width:1800px) {
    .dash {
        width: 6rem
    }
}

.dash--push-top {
    margin-top: .5em!important
}

@media (min-width:1024px) {
    .dash--push-top {
        margin-top: 1em!important
    }
}

.dash-holder {
    position: relative;
    padding-left: 4.5rem
}

@media (min-width:1280px) {
    .dash-holder {
        padding-left: 6.5rem
    }
}

@media (min-width:1440px) {
    .dash-holder {
        padding-left: 7rem
    }
}

@media (min-width:1800px) {
    .dash-holder {
        padding-left: 12.5rem
    }
}

.dash-holder .dash {
    position: absolute;
    top: .5rem;
    left: 0;
    margin-top: 0;
    margin-bottom: 0
}

@media (max-width:1279px) {
    .dash-holder--inline {
        padding-left: 0
    }
}

@media (max-width:1279px) {
    .dash-holder--inline .dash {
        position: relative;
        top: 0;
        margin-right: 1.5rem
    }
}

@media (min-width:1280px) {
    .dash-holder--outside {
        padding-left: 0
    }
}

.dash-holder--outside .dash {
    margin-right: 1.5rem
}

@media (min-width:1280px) {
    .dash-holder--outside .dash {
        left: auto;
        right: 100%
    }
}

@media (min-width:1440px) {
    .dash-holder--outside .dash {
        margin-right: 2.5rem
    }
}

@media (min-width:1800px) {
    .dash-holder--outside .dash {
        margin-right: 6rem
    }
}

.section-label {
    margin-bottom: 5.33333%
}

@media (min-width:768px) {
    .section-label {
        margin-bottom: 4.78469%
    }
}

@media (min-width:1280px) {
    .section-label {
        max-width: 192rem!important;
        height: 0;
        margin-bottom: 0;
        position: relative;
        top: .5em;
        width: 85%!important
    }
}

.section-label .section-label__number {
    display: block;
    color: #b9b9b9
}

.section-label svg {
    stroke: #b9b9b9;
    fill: #b9b9b9;
    -webkit-transform: rotate(180deg) translateY(.2rem);
    transform: rotate(180deg) translateY(.2rem);
    margin-right: .8rem;
    position: relative;
    top: .2rem
}

.section-label button {
    display: inline-block;
    -webkit-appearance: none;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: 0;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 0;
    background-color: transparent;
    color: #b9b9b9;
    padding: 0
}

@media (min-width:1024px) {
    .section-label button {
        margin-top: -.55em
    }
}

body,
html {
    overflow-x: hidden
}

.no-scroll {
    overflow: hidden
}

.pointer {
    cursor: pointer
}

.page-transition-mask {
    background-color: #f4f4f4;
    z-index: 100;
    visibility: hidden;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    z-index: 8
}

.page-transition-mask.active {
    visibility: visible
}

.pos-r {
    position: relative!important
}

.pos-a {
    position: absolute!important
}

.pos-f {
    position: fixed!important
}

.pos-s {
    position: static!important
}

.z1 {
    z-index: 1
}

.z2 {
    z-index: 2
}

.z3 {
    z-index: 3
}

.z4 {
    z-index: 4
}

.z5 {
    z-index: 5
}

.z6 {
    z-index: 6
}

.z7 {
    z-index: 7
}

.z8 {
    z-index: 8
}

.z9 {
    z-index: 9
}

.z10 {
    z-index: 10
}

hr.spacer {
    opacity: 0!important
}

.pre-wrap {
    white-space: pre-wrap
}

.icon--arrow {
    width: 1.8rem;
    height: .7rem
}

img.fullscreen,
video.fullscreen {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: none;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media screen and (min-aspect-ratio:16/9) {
    img.fullscreen,
    video.fullscreen {
        width: 100%;
        height: auto
    }
}

@media screen and (max-aspect-ratio:16/9) {
    img.fullscreen,
    video.fullscreen {
        width: auto;
        height: 100%
    }
}

.border {
    position: absolute;
    background-color: #fff
}

.border--top {
    top: 0;
    left: 0;
    width: 100%;
    height: 10vh
}

.border--right {
    top: 0;
    right: 0;
    height: 100%;
    width: 10vh
}

.border--bottom {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 10vh
}

.border--left {
    top: 0;
    left: 0;
    height: 100%;
    width: 10vh
}

.bg-white {
    background-color: #fff
}

.bg-x-light {
    background-color: #f4f4f4
}

.bg-light {
    background-color: #d9d9d9
}

.bg-medium {
    background-color: #b9b9b9
}

.bg-dark {
    background-color: #777779
}

.bg-black {
    background-color: #323232
}

.bg-x-dark {
    background-color: #1b1b1c
}

.d--block {
    display: block
}

.d--inline-block {
    display: inline-block
}

.page--dark {
    background-color: #1b1b1c;
    color: #fff
}

.no-wrap {
    white-space: nowrap
}

.card--featured-article {
    overflow: hidden
}

@media (max-width:767px) {
    .card--featured-article {
        margin-bottom: 0!important
    }
}

.card--featured-article:hover .icon {
    -webkit-transform: translateX(12px);
    transform: translateX(12px)
}

@media (min-width:1280px) {
    .card--featured-article__text>.container {
        width: 76.34042553%
    }
}

.card--featured-article__text .h6 {
    max-width: 18em
}

.card--featured-article__text p {
    max-width: 37em
}

@media (max-width:767px) {
    .card--featured-article__text p {
        display: none
    }
}

.card--featured-article__text-inner {
    position: relative;
    z-index: 1;
    background-color: #f4f4f4
}

@media (min-width:1024px) {
    .card--featured-article__text-inner {
        margin-top: -6.79694vw;
        padding-top: 5.09771vw;
        max-width: 83.61204%
    }
}

@media (min-width:1280px) {
    .card--featured-article__text-inner {
        margin-top: -6.79694vw;
        padding-top: 5.09771vw;
        max-width: 67.16834%;
        padding-right: 8rem
    }
}

.card--featured-article__text-inner:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    right: 100%;
    width: 100%;
    height: 100%;
    background-color: #f4f4f4
}

@media (max-width:1023px) {
    .card--featured-article__image {
        margin-bottom: 4rem
    }
}

.card--featured-article__image img {
    width: 100%
}

.card--featured-article .icon {
    width: 1.8rem;
    height: .7rem;
    margin-left: .5rem;
    transition: all .4s cubic-bezier(.58, .3, .005, 1);
    fill: #c8a559;
    stroke: #c8a559
}

@media (min-width:768px) {
    .card--featured-article+.card--news-article .container {
        border-top: .1rem solid #d9d9d9
    }
}

.card--partner {
    position: relative;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
    background-color: #fff;
    background-clip: content-box;
    white-space: normal;
    margin-bottom: 2rem
}

.card--partner:before {
    content: " ";
    float: left;
    padding-top: 100%
}

.card--partner:after {
    content: " ";
    display: table;
    clear: both
}

.card--partner>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:550px) {
    .card--partner {
        width: calc(50% - 2rem);
        margin: 1rem auto
    }
}

@media (min-width:1024px) {
    .card--partner {
        width: calc(33.333% - 2rem)
    }
}

@media (min-width:1280px) {
    .card--partner {
        margin: 2rem;
        width: calc(33.333% - 4rem)
    }
}

@media (min-width:1440px) {
    .card--partner {
        width: calc(25% - 4rem)
    }
}

.image-carousel__image .card--partner {
    margin-bottom: 0
}

.card--partner__logo {
    margin: 0 auto 2rem;
    -webkit-transform: scale(.75);
    transform: scale(.75)
}

@media (min-width:550px) {
    .card--partner__logo {
        -webkit-transform: scale(.65);
        transform: scale(.65);
        margin-bottom: 1rem
    }
}

@media (min-width:768px) {
    .card--partner__logo {
        -webkit-transform: scale(.75);
        transform: scale(.75);
        margin-bottom: 2rem
    }
}

@media (min-width:1800px) {
    .card--partner__logo {
        -webkit-transform: none;
        transform: none
    }
}

.card--partner__logo svg {
    width: 100%;
    height: 100%
}

.card--partner__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
}

.card--partner__content {
    width: 100%;
    padding: 2rem
}

.card--partner__excerpt {
    min-height: 6.5em;
    margin: 0 auto;
    max-width: 21.4285714286em
}

.card--partner__excerpt a {
    display: inline-block;
    position: relative;
    overflow: hidden;
    vertical-align: middle
}

.card--partner__excerpt a:after {
    content: "";
    position: absolute;
    bottom: .25em;
    left: 0;
    width: 100%;
    height: 0;
    border-bottom: .1rem solid;
    transition: all .8s cubic-bezier(.555, .205, .295, .975)
}

.card--partner__excerpt a:hover:after {
    -webkit-animation: footer-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: footer-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.card--partner__excerpt span {
    display: block
}

.card--related-post {
    position: relative;
    white-space: normal;
    font-size: 1rem
}

@media (min-width:1024px) {
    .card--related-post {
        margin: 0;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        padding: 0 1rem
    }
}

@media (max-width:767px) {
    .card--related-post {
        margin-bottom: 0!important
    }
}

@media (min-width:1024px) {
    .card--related-post {
        padding: 0 2rem
    }
}

.card--related-post__text-holder {
    margin-left: auto;
    margin-right: auto
}

.card--related-post__image {
    margin: 0 auto
}

@media (min-width:768px) {
    .card--related-post__image {
        margin: 0 9.77199%
    }
}

@media (min-width:1280px) {
    .card--related-post__image {
        margin: 0 10.65163% 0 8.5213%
    }
}

.card--related-post__image video {
    -o-object-fit: cover;
    object-fit: cover
}

.card--related-post .image-holder:before,
.card--related-post__image-inner:before {
    content: " ";
    float: left;
    padding-top: 80%
}

.card--related-post .image-holder:after,
.card--related-post__image-inner:after {
    content: " ";
    display: table;
    clear: both
}

.card--related-post .image-holder>:first-child,
.card--related-post__image-inner>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

.card--related-post .image-holder {
    height: auto
}

.card--related-post img {
    display: block;
    width: 100%
}

.card--related-insight {
    font-size: 1rem;
    white-space: normal;
    position: relative
}

@media (min-width:768px) {
    .card--related-insight {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        background: #fff
    }
}

.card--related-insight__image,
.card--related-insight__text {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%
}

@media (max-width:767px) {
    .card--related-insight__image {
        margin-bottom: 10.66667%
    }
}

@media (min-width:768px) {
    .card--related-insight__text {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 0 6.30915%
    }
}

.card--related-insight h3 {
    margin-bottom: 10.66667%
}

@media (min-width:1280px) {
    .card--related-insight h3 {
        margin-bottom: 6.30915%
    }
}

@media (max-width:1023px) {
    .card--related-insight .cta {
        display: none
    }
}

.card--related-insight .meta {
    margin-bottom: 10.66667%
}

@media (min-width:1280px) {
    .card--related-insight .meta {
        margin-bottom: 7.88644%
    }
}

.card--related-insight .excerpt {
    max-width: 23.833em
}

@media (min-width:1280px) {
    .card--related-insight .excerpt {
        margin-bottom: 6.30915%
    }
}

@media (max-width:1279px) {
    .card--related-insight .excerpt {
        display: none
    }
}

.card--four-up-grid-item {
    font-size: 1rem;
    position: relative;
    background-color: #fff;
    margin-bottom: 2rem;
    overflow: hidden
}

.card--four-up-grid-item:before {
    content: " ";
    float: left;
    padding-top: 100%
}

.card--four-up-grid-item:after {
    content: " ";
    display: table;
    clear: both
}

.card--four-up-grid-item>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:1280px) {
    .card--four-up-grid-item {
        margin-bottom: 4rem
    }
}

.card--four-up-grid-item video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.card--news {
    position: relative
}

.card--news__image {
    margin-left: auto;
    margin-right: auto
}

@media (min-width:768px) {
    .card--news__image {
        margin-left: 9.77199%;
        margin-right: 9.77199%
    }
}

@media (min-width:1280px) {
    .card--news__image {
        margin-left: 8.5213%;
        margin-right: 10.65163%
    }
}

.card--news__image video {
    -o-object-fit: cover;
    object-fit: cover
}

.card--news__text {
    margin: 0 auto
}

@media (min-width:768px) {
    .card--news__text {
        margin: 0 9.77199% 0 0
    }
}

@media (min-width:1280px) {
    .card--news__text {
        margin: 0 10.65163% 0 0
    }
}

.card--news__text h3 {
    margin-top: -.65vw
}

.card--news__text .meta {
    max-width: 100%
}

.card--news .image-holder:before,
.card--news__image-inner:before {
    content: " ";
    float: left;
    padding-top: 80.11928%
}

.card--news .image-holder:after,
.card--news__image-inner:after {
    content: " ";
    display: table;
    clear: both
}

.card--news .image-holder>:first-child,
.card--news__image-inner>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

.card--news .image-holder {
    height: auto;
    overflow: hidden
}

.card--news a:focus {
    outline: none
}

.brand-beats-carousel-slide {
    white-space: normal;
    background-color: #fff;
    color: #1b1b1c
}

.brand-beats-carousel-slide__cta a {
    display: inline-block
}

.brand-beats-carousel-slide__text {
    padding: 3rem 2rem
}

@media (min-width:768px) {
    .brand-beats-carousel-slide__text {
        padding: 0 7.88644%
    }
}

.brand-beats-carousel-slide__text .btn--mobile {
    width: 100%
}

@media (min-width:1024px) {
    .brand-beats-carousel-slide__text .btn--mobile {
        display: none
    }
}

@media (max-width:1023px) {
    .brand-beats-carousel-slide__text .btn--desktop {
        display: none
    }
}

.brand-beats-carousel-slide .meta,
.brand-beats-carousel-slide h3 {
    margin-bottom: 2rem
}

@media (min-width:768px) {
    .brand-beats-carousel-slide .meta,
    .brand-beats-carousel-slide h3 {
        margin-bottom: 3.5rem
    }
}

.card--platform {
    background-color: #fff
}

.card--platform:before {
    content: " ";
    float: left;
    padding-top: 100%
}

.card--platform:after {
    content: " ";
    display: table;
    clear: both
}

.card--platform>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

.card--platform__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.card--platform img {
    margin: 0 auto
}

.card--insight {
    background-color: #fff;
    white-space: normal
}

.card--insight__image {
    width: 100%;
    overflow: hidden;
    position: relative
}

.card--insight__image:before {
    content: " ";
    float: left;
    padding-top: 66.66667%
}

.card--insight__image:after {
    content: " ";
    display: table;
    clear: both
}

.card--insight__image>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:1024px) {
    .card--insight__image {
        width: 50%
    }
    .card--insight__image:before {
        content: " ";
        float: left;
        padding-top: 100%
    }
    .card--insight__image:after {
        content: " ";
        display: table;
        clear: both
    }
    .card--insight__image>:first-child {
        left: 0;
        height: 100%;
        position: absolute;
        top: 0;
        width: 100%
    }
}

.card--insight__image img {
    -o-object-fit: cover;
    object-fit: cover
}

.card--insight__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 3rem 7.88644% 4.5rem
}

@media (max-width:1023px) {
    .card--insight__text {
        width: 100%
    }
}

.card--insight__text .btn {
    display: inline-block;
    background-color: transparent;
    border: .1rem solid #1b1b1c
}

.card--insight__text .meta {
    margin-bottom: 2rem
}

@media (min-width:768px) {
    .card--insight__text .meta {
        margin-bottom: 3rem
    }
}

.card--insight__text h3 {
    margin-bottom: 2.5rem
}

@media (min-width:768px) {
    .card--insight__text h3 {
        margin-bottom: 3rem
    }
}

.card--insight__text p {
    margin-bottom: 2.5rem
}

@media (min-width:768px) {
    .card--insight__text p {
        margin-bottom: 4rem
    }
}

.bucket-careers {
    position: relative;
    background-color: #fff
}

@media (max-width:767px) {
    .bucket-careers .container {
        width: 100%
    }
}

.bucket-careers__inner {
    background-color: #fff;
    padding: 4rem 2rem
}

@media (min-width:768px) {
    .bucket-careers__inner {
        padding: 10rem 0
    }
}

@media (min-width:1024px) {
    .bucket-careers__inner {
        padding: 10rem 8rem;
        max-width: calc(100% - 10rem)
    }
}

@media (min-width:1280px) {
    .bucket-careers__inner {
        padding: 9.63542% 19.11458% 9.63542% 17.03125%
    }
}

@media (min-width:1440px) {
    .bucket-careers__inner {
        max-width: calc(100% - 15rem)
    }
}

@media (min-width:1800px) {
    .bucket-careers__inner {
        padding: 18.5rem 30rem;
        max-width: calc(100% - 25rem)
    }
}

.bucket-careers__no-entries.is-hidden {
    display: none
}

.bucket-careers__locations {
    padding-bottom: 3.5rem;
    border-bottom: .1rem solid #cfcfcf;
    font-size: 2.5rem;
    font-weight: 500;
    position: relative;
    margin-bottom: 0
}

@media (min-width:1440px) {
    .bucket-careers__locations {
        font-size: 3rem
    }
}

@media (min-width:1800px) {
    .bucket-careers__locations {
        font-size: 4rem
    }
}

@media (min-width:768px) {
    .bucket-careers__locations li {
        margin-right: 2rem
    }
}

@media (min-width:1024px) {
    .bucket-careers__locations li {
        margin-right: 6rem
    }
}

.bucket-careers__locations .meta {
    top: 1.7rem
}

.bucket-careers__locations a:after {
    border-width: .2rem 0 .1rem!important;
    margin-top: -.2rem!important
}

.bucket-careers__categories {
    position: relative;
    padding: 3.5rem 0 2.5rem;
    font-size: 1.6rem;
    font-weight: 500;
    border-bottom: .1rem solid #cfcfcf;
    margin-bottom: 5rem
}

@media (min-width:768px) {
    .bucket-careers__categories {
        font-size: 1.4rem
    }
}

@media (min-width:1280px) {
    .bucket-careers__categories {
        padding: 4.5rem 0 3.5rem
    }
}

@media (min-width:1800px) {
    .bucket-careers__categories {
        font-size: 1.6rem
    }
}

@media (min-width:768px) {
    .bucket-careers__categories li {
        margin-right: 2rem
    }
}

@media (min-width:1024px) {
    .bucket-careers__categories li {
        margin-bottom: 2rem
    }
}

@media (min-width:1800px) {
    .bucket-careers__categories li {
        margin-bottom: 1rem
    }
}

@media (min-width:2200px) {
    .bucket-careers__categories li {
        margin-right: 4rem
    }
}

.bucket-careers__categories .meta {
    top: 50%
}

@media (min-width:1024px) {
    .bucket-careers__selected-careers ul {
        margin: 0 -2rem
    }
}

.bucket-careers__selected-careers li {
    position: relative;
    width: 50%;
    margin-bottom: 0
}

@media (min-width:1024px) {
    .bucket-careers__selected-careers li {
        padding: 0 2rem
    }
}

.bucket-careers__selected-careers li:first-child hr {
    display: none
}

@media (min-width:1024px) {
    .bucket-careers__selected-careers li:nth-child(2) hr {
        display: none
    }
}

.bucket-careers__selected-careers li p {
    max-width: 30rem
}

.bucket-careers__selected-careers hr {
    margin: 3.5rem 0;
    width: 3rem;
    border-top: .2rem solid
}

@media (min-width:768px) {
    .bucket-careers ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}

.bucket-careers li:last-child {
    margin-right: 0
}

.bucket-careers .meta {
    opacity: .3;
    display: block;
    margin-bottom: 2rem;
    white-space: nowrap
}

@media (min-width:1280px) {
    .bucket-careers .meta {
        position: absolute;
        right: 100%;
        margin-top: -1em;
        margin-right: 4rem;
        margin-bottom: 0
    }
}

.bucket-careers__categories a,
.bucket-careers__locations a {
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding: 0 1rem;
    margin-left: -.5rem
}

@media (min-width:1024px) {
    .bucket-careers__categories a,
    .bucket-careers__locations a {
        display: block
    }
}

.bucket-careers__categories a:after,
.bucket-careers__locations a:after {
    content: "";
    position: absolute;
    top: 50%;
    left: -.5rem;
    width: calc(100% + 1rem);
    border: solid;
    border-width: .1rem 0;
    margin-top: -.1rem;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
}

.bucket-careers__categories a.active:after,
.bucket-careers__locations a.active:after {
    -webkit-transform: none;
    transform: none;
    -webkit-animation: none!important;
    animation: none!important
}

.bucket-careers__categories a:hover:after,
.bucket-careers__locations a:hover:after {
    -webkit-animation: hero-category-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: hero-category-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.bucket-careers__images {
    top: 0;
    left: 0;
    overflow: hidden;
    position: relative
}

.bucket-careers__images:before {
    content: " ";
    float: left;
    padding-top: 150%
}

.bucket-careers__images:after {
    content: " ";
    display: table;
    clear: both
}

.bucket-careers__images>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (max-width:767px) {
    .bucket-careers__images {
        margin: 0 2rem;
        display: none
    }
}

@media (min-width:768px) {
    .bucket-careers__images:before {
        content: " ";
        float: left;
        padding-top: 56.25%
    }
    .bucket-careers__images:after {
        content: " ";
        display: table;
        clear: both
    }
    .bucket-careers__images>:first-child {
        left: 0;
        height: 100%;
        position: absolute;
        top: 0;
        width: 100%
    }
}

@media (min-width:1024px) {
    .bucket-careers__images {
        position: absolute!important;
        width: 7.5%;
        height: 100%
    }
}

@media (min-width:2200px) {
    .bucket-careers__images {
        width: calc(7.5% + 10rem)
    }
}

.bucket-careers__images--right {
    right: 0;
    left: auto;
    width: calc(7.5% + 10rem)
}

@media (max-width:1023px) {
    .bucket-careers__images--right {
        display: none
    }
}

@media (min-width:1440px) {
    .bucket-careers__images--right {
        width: calc(7.5% + 15rem)
    }
}

@media (min-width:1800px) {
    .bucket-careers__images--right {
        width: calc(7.5% + 25rem)
    }
}

@media (min-width:2200px) {
    .bucket-careers__images--right {
        width: calc(7.5% + 45rem)
    }
}

.bucket-careers__images .location-images,
.bucket-careers__images img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0
}

@media (max-width:767px) {
    .bucket-careers__images .location-images,
    .bucket-careers__images img {
        padding-top: 2rem
    }
}

.bucket-careers__images img {
    -o-object-fit: cover;
    object-fit: cover
}

.bucket-careers__images .is-active {
    z-index: 1
}

.bucket-careers__images .is-entering {
    z-index: 2
}

@-webkit-keyframes careers-link-hover {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    50% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
    50.01% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes careers-link-hover {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    50% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
    50.01% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.bucket--contact {
    font-weight: 700
}

.bucket--contact__inner {
    padding-left: 4.5rem
}

@media (min-width:1280px) {
    .bucket--contact__inner {
        padding-left: 6.5rem
    }
}

@media (min-width:1440px) {
    .bucket--contact__inner {
        padding-left: 7.5rem
    }
}

@media (min-width:1800px) {
    .bucket--contact__inner {
        padding-left: 13rem
    }
}

.bucket--contact .address {
    line-height: 1.76
}

.bucket--contact a {
    display: inline-block;
    position: relative;
    overflow: hidden;
    padding-bottom: .7rem
}

.bucket--contact a .line:after,
.bucket--contact a:after {
    content: "";
    position: absolute;
    bottom: .3rem;
    left: 0;
    width: 100%;
    height: 0;
    border-bottom: .2rem solid;
    transition: all .8s cubic-bezier(.555, .205, .295, .975)
}

.bucket--contact a.no-hover:after {
    content: none
}

.bucket--contact a:hover .line:after,
.bucket--contact a:hover:after {
    -webkit-animation: careers-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
    animation: careers-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
}

.bucket--contact a.small-link {
    font-size: .5em
}

.bucket--contact a.small-link:after {
    display: none
}

.bucket--contact .lead {
    margin-bottom: 0;
    line-height: 1.5
}

.bucket--contact .lead+.lead {
    margin-top: 1em
}

.bucket--contact input[type=email] {
    padding: 0
}

.bucket--contact::-webkit-input-placeholder {
    color: #323232
}

.bucket--contact:-moz-placeholder,
.bucket--contact::-moz-placeholder {
    color: #323232
}

.bucket--contact:-ms-input-placeholder {
    color: #323232
}

.bucket__cta {
    border-top: .1rem solid #d9d9d9;
    max-width: none
}

.bucket__cta>span {
    display: block;
    float: right;
    line-height: 1;
    margin-top: -.65em;
    padding-left: 3rem;
    background-color: #f4f4f4;
    position: relative;
    overflow: hidden;
    color: #b9b9b9;
    transition: all .4s cubic-bezier(.555, .205, .295, .975)
}

.bucket__cta a {
    color: #b9b9b9;
    text-decoration: none
}

.bucket__cta .icon {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    width: 2rem;
    height: 1em;
    vertical-align: middle;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    transition: all .4s cubic-bezier(.555, .205, .295, .975)
}

.bucket__cta .icon svg {
    width: 100%;
    height: 100%;
    fill: #b9b9b9;
    stroke: #b9b9b9
}

.bucket__cta:hover>span {
    padding-right: 3rem
}

.bucket__cta:hover .icon {
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

@media (min-width:1280px) {
    .bucket__cta,
    .bucket__footer {
        margin-top: -3.47222vh
    }
}

@media (min-width:1440px) {
    .bucket__cta,
    .bucket__footer {
        margin-top: -1.38889vh
    }
}

@media (min-width:1800px) {
    .bucket__cta,
    .bucket__footer {
        margin-top: -4.24809vh
    }
}

.toolkit-mod:last-child .bucket {
    margin-bottom: 0
}

@media (max-width:767px) {
    .bucket--expertise-landing__item {
        margin-bottom: 4rem
    }
}

.bucket--expertise-landing__item:first-child .grid {
    padding-top: 2rem
}

.bucket--expertise-landing__item .grid {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

@media (max-width:1279px) {
    .bucket--expertise-landing__item .dash-holder {
        padding-left: 0
    }
}

.bucket--expertise-landing__top-items .item {
    color: #fff;
    position: relative;
    width: 100%;
    background-color: #1b1b1c
}

@media (min-width:768px) {
    .bucket--expertise-landing__top-items .item {
        width: 50%
    }
}

.bucket--expertise-landing__top-items .item__inner {
    position: relative;
    z-index: 1;
    padding: 14.89362% 12.93617%
}

@media (min-width:1024px) {
    .bucket--expertise-landing__top-items .item__inner {
        padding: 9.78723% 12.93617%
    }
}

.bucket--expertise-landing__top-items .item__background {
    opacity: .3
}

.bucket--expertise-landing__top-items .item hr {
    border-color: #fff;
    max-width: 6rem;
    margin: 2.5rem 0
}

@media (min-width:1024px) {
    .bucket--expertise-landing__top-items .item hr {
        opacity: 0;
        -webkit-transform: translateY(.6rem);
        transform: translateY(.6rem);
        transition: all .4s cubic-bezier(.74, .07, .34, .96)
    }
}

.bucket--expertise-landing__top-items .item p {
    max-width: 29em
}

@media (min-width:1024px) {
    .bucket--expertise-landing__top-items .item p {
        opacity: 0;
        -webkit-transform: translateY(.6rem);
        transform: translateY(.6rem);
        transition: all .4s cubic-bezier(.74, .07, .34, .96) .1s
    }
}

.bucket--expertise-landing__top-items .item:hover hr,
.bucket--expertise-landing__top-items .item:hover p {
    opacity: 1;
    -webkit-transform: none;
    transform: none
}

@media (min-width:768px) {
    .bucket--expertise-landing .item__image {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
}

@media (max-width:767px) {
    .bucket--expertise-landing .item__image {
        margin-bottom: 2.7rem
    }
}

@media (min-width:768px) {
    .bucket--expertise-landing .item__text {
        padding-right: 4rem
    }
}

.bucket--expertise-landing .item__text .excerpt {
    max-width: 33em;
    margin-bottom: 3rem
}

@media (max-width:1023px) {
    .bucket--expertise-landing .item__text .excerpt {
        display: none
    }
}

.bucket--expertise-landing .item__text .title {
    margin-bottom: 2.5rem
}

.bucket--expertise-landing .item-spacer {
    margin: 0 0 1rem
}

@media (min-width:768px) {
    .bucket--expertise-landing .item-spacer {
        width: calc(50% - 4rem);
        margin: 0 0 -.1rem
    }
}

@media (max-width:767px) {
    .bucket--expertise-landing .item-spacer:last-child {
        display: none
    }
}

.bucket--expertise-tiles,
.bucket--expertise-tiles__inner {
    position: relative;
    overflow: hidden
}

.bucket--expertise-tiles__tiles {
    position: relative;
    z-index: 1
}

@media (min-width:1280px) {
    .bucket--expertise-tiles__tiles {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch
    }
}

.bucket--expertise-tiles__background {
    z-index: 0;
    white-space: nowrap;
    font-size: 0;
    background-color: #1b1b1c
}

.bucket--expertise-tiles__tile {
    position: relative;
    z-index: 1
}

.bucket--expertise-tiles__tile:before {
    content: " ";
    float: left;
    padding-top: 66.66667%
}

.bucket--expertise-tiles__tile:after {
    content: " ";
    display: table;
    clear: both
}

.bucket--expertise-tiles__tile>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:768px) {
    .bucket--expertise-tiles__tile:before {
        content: " ";
        float: left;
        padding-top: 30.76172%
    }
    .bucket--expertise-tiles__tile:after {
        content: " ";
        display: table;
        clear: both
    }
    .bucket--expertise-tiles__tile>:first-child {
        left: 0;
        height: 100%;
        position: absolute;
        top: 0;
        width: 100%
    }
}

@media (min-width:1280px) {
    .bucket--expertise-tiles__tile {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1
    }
    .bucket--expertise-tiles__tile:before {
        content: " ";
        float: left;
        padding-top: 169.49153%
    }
    .bucket--expertise-tiles__tile:after {
        content: " ";
        display: table;
        clear: both
    }
    .bucket--expertise-tiles__tile>:first-child {
        left: 0;
        height: 100%;
        position: absolute;
        top: 0;
        width: 100%
    }
}

@media (max-width:1279px) {
    .bucket--expertise-tiles__tile {
        background-color: #323232
    }
}

.bucket--expertise-tiles__tile .tile-border {
    position: absolute;
    bottom: 100%;
    right: 0;
    width: .1rem;
    height: 100%;
    background-color: #fff;
    opacity: .1
}

.bucket--expertise-tiles__tile:last-child .tile-border {
    display: none
}

.bucket--expertise-tiles__tile-inner {
    position: relative;
    z-index: 1;
    background: transparent;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media (min-width:1280px) {
    .bucket--expertise-tiles__tile-inner {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.bucket--expertise-tiles__tile-inner .cta {
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -2.5rem
}

@media (max-width:767px) {
    .bucket--expertise-tiles__tile-inner .cta {
        display: none
    }
}

@media (min-width:1280px) {
    .bucket--expertise-tiles__tile-inner .cta {
        bottom: 11.86441%;
        left: 0;
        right: auto;
        top: auto
    }
}

.bucket--expertise-tiles__tile-inner .inner {
    position: relative;
    margin: 0 auto;
    width: 78.75%
}

@media (min-width:768px) {
    .bucket--expertise-tiles__tile-inner .inner {
        width: 81.62162%
    }
}

@media (min-width:1280px) {
    .bucket--expertise-tiles__tile-inner .inner {
        height: 100%;
        padding-top: 14.40678%;
        width: 69.49153%
    }
}

@media (min-width:1280px) {
    .bucket--expertise-tiles__tile-inner .meta {
        margin-bottom: 2rem
    }
}

.bucket--expertise-tiles__tile-inner .excerpt {
    opacity: 0
}

@media (max-width:1279px) {
    .bucket--expertise-tiles__tile-inner .excerpt {
        display: none
    }
}

.bucket--expertise-tiles__background-tile {
    position: relative;
    display: inline-block;
    width: 25%;
    height: 100%;
    overflow: hidden;
    background-color: #1b1b1c
}

.bucket--expertise-tiles__background-tile video {
    width: 100vw;
    height: 100vh;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    position: absolute;
    top: 50%;
    left: 50%;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: .1
}

@media (max-width:1279px) {
    .bucket--expertise-tiles__background-tile video {
        display: none
    }
}

.bucket--expertise-tiles__background-tile.hover-active {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.bucket--expertise-tiles__background-tile .image {
    z-index: 1;
    background-color: #1b1b1c
}

.bucket--expertise-tiles__background-tile .image .bg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: .2
}

.bucket--expertise-tiles__tile-bg {
    background-color: #323232
}

@media (min-width:1280px) {
    .bucket--expertise-tiles__tile-bg {
        display: none!important
    }
}

.bucket--expertise-tiles__tile-bg .bg {
    opacity: .3
}

.bucket--expertise-tiles__tile h2,
.bucket--expertise-tiles__tile h3 {
    max-width: 10em;
    font-weight: 500
}

.bucket--expertise-tiles__background,
.bucket--expertise-tiles__tile-bg,
.bucket--expertise-tiles__tile-bg .bg {
    position: absolute!important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.bucket--featured h2 {
    max-width: 17em
}

@media (max-width:1279px) {
    .bucket--featured .card--case-study:nth-child(3),
    .bucket--featured .grid__item:nth-child(3) {
        display: none
    }
}

.bucket--partners__partner {
    position: relative;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.333%;
    flex: 0 0 33.333%
}

.bucket--partners__partner:before {
    content: " ";
    float: left;
    padding-top: 100%
}

.bucket--partners__partner:after {
    content: " ";
    display: table;
    clear: both
}

.bucket--partners__partner>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:1800px) {
    .bucket--partners__partner {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
        flex: 0 0 25%
    }
}

.bucket--partners__partner-inner {
    padding: 2rem;
    background-color: #fff;
    background-clip: content-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.bucket--partners__partner-inner .inner {
    padding: 0 2rem;
    max-width: 31rem;
    margin: 0 auto;
    text-align: center
}

.bucket--partners__grid {
    margin-top: -1rem
}

@media (min-width:1280px) {
    .bucket--partners__grid {
        margin-top: -2rem
    }
}

.bucket--partners h2 {
    max-width: 20em
}

.toolkit-mod .bucket--partners hr {
    display: block
}

.bucket--partners .image-carousel__image-track {
    width: 100%
}

.toolkit-mod--full-bleed+.toolkit-mod--contained .bucket--partners hr {
    display: none!important
}

.bucket--related-insights hr {
    margin: 0 auto 10.41667%
}

.bucket--related-posts__entries {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

@media (min-width:768px) {
    .bucket--related-posts__entries {
        margin: 0 -1rem
    }
}

@media (min-width:1024px) {
    .bucket--related-posts__entries {
        margin: 0 -2.25rem
    }
}

.bucket--related-posts .container {
    max-width: 160rem
}

.bucket--related-posts h2 {
    margin-bottom: 7.8125%;
    text-align: center;
    max-width: none
}

.bucket--related-posts .image-carousel__image-track {
    width: 100%
}

.bucket--related-posts .image-carousel__image-track .image-carousel__image {
    vertical-align: top
}

@media (min-width:1024px) {
    .bucket--four-up-grid .grid--four-up .grid__item {
        width: 25%
    }
}

.brand-beats-callout {
    background-color: #1b1b1c;
    color: #fff
}

.brand-beats-callout__meta {
    margin-bottom: 3rem
}

@media (min-width:1280px) {
    .brand-beats-callout__meta {
        margin-bottom: 4rem
    }
}

@media (min-width:1800px) {
    .brand-beats-callout__meta {
        margin-bottom: 7rem
    }
}

.brand-beats-callout .carousel-controls a {
    color: #fff
}

.brand-beats-callout .carousel-controls .btn-next .icon,
.brand-beats-callout .carousel-controls .btn-prev .icon {
    fill: #b9b9b9;
    stroke: #b9b9b9
}

.brand-beats-callout h2 {
    max-width: 18em
}

.awards-block__award {
    text-align: center
}

.awards-block__award .logo-holder {
    max-width: 20rem;
    margin: 0 auto
}

.awards-block__award hr {
    width: 6rem;
    border-color: #1b1b1c;
    margin: 2rem auto
}

@media (min-width:768px) {
    .awards-block__award hr {
        margin: 3.5rem auto
    }
}

.awards-block .grid__item {
    width: 50%
}

@media (min-width:768px) {
    .awards-block .grid__item {
        width: 25%
    }
}

@media (max-width:767px) {
    .awards-block .grid__item {
        margin-bottom: 5rem
    }
}

@media (min-width:768px) {
    .awards-block .grid__item:nth-last-child(-n+4) {
        margin-bottom: 0
    }
}

.awards-block h2 {
    max-width: 20em;
    margin-bottom: 2rem
}

@media (min-width:768px) {
    .awards-block h2 {
        margin-bottom: 4rem
    }
}

@media (min-width:1280px) {
    .awards-block h2 {
        margin-bottom: 6rem
    }
}

.awards-block .lead {
    max-width: 35em
}

@media (min-width:1024px) {
    .service-blocks__item:nth-child(2n) .item__media,
    .service-blocks__item:nth-child(2n) .item__text {
        left: 6.26305%
    }
}

.service-blocks__item .item__media,
.service-blocks__item .item__text {
    position: relative
}

@media (min-width:1024px) {
    .service-blocks__item .item__media,
    .service-blocks__item .item__text {
        margin-right: 6.26305%
    }
}

.service-blocks__item .item__text h2 {
    margin-bottom: 1.5rem
}

.service-blocks__item .item__text .excerpt {
    margin-bottom: 3rem
}

.service-blocks__item .item__text .dash {
    top: .7em
}

@media (min-width:1024px) {
    .service-blocks__item .item__text .dash {
        top: .9em
    }
}

.service-blocks__item .meta {
    max-width: none
}

.service-blocks .grid__item {
    width: 100%;
    margin-bottom: 5rem
}

@media (min-width:768px) {
    .service-blocks .grid__item {
        margin-bottom: 8rem
    }
}

@media (min-width:1024px) {
    .service-blocks .grid__item {
        width: 50%
    }
}

@-webkit-keyframes footer-link-hover {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    50% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
    50.01% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes footer-link-hover {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    50% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
    50.01% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

#footer {
    background-color: #1b1b1c;
    color: #fff;
    padding-top: 8.49618vw;
    padding-bottom: 10.62022vw
}

@media (min-width:2200px) {
    #footer {
        padding-top: 10rem;
        padding-bottom: 25rem
    }
}

@media (min-width:1280px) {
    #footer .footer__contact-info {
        margin-bottom: 4rem
    }
}

#footer .footer__copy {
    margin-bottom: 8.49618vw
}

@media (min-width:2200px) {
    #footer .footer__copy {
        margin-bottom: 20rem
    }
}

#footer .link-hover {
    display: inline-block;
    position: relative;
    overflow: hidden
}

@media (max-width:1023px) {
    #footer .link-hover {
        text-decoration: underline
    }
}

@media (min-width:1024px) {
    #footer .link-hover.no-underline:after {
        display: none!important
    }
}

@media (min-width:1024px) {
    #footer .link-hover .line:after,
    #footer .link-hover:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 0;
        border-bottom: .2rem solid;
        transition: all .8s cubic-bezier(.555, .205, .295, .975)
    }
}

@media (min-width:1024px) {
    #footer .link-hover:hover:after {
        -webkit-animation: footer-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1;
        animation: footer-link-hover .8s cubic-bezier(.58, .3, .005, 1) 0s 1
    }
}

#footer .footer__copyright,
#footer .footer__copyright p {
    font-size: 1rem;
    font-weight: 700
}

#footer .footer__copyright a,
#footer .footer__copyright p a {
    text-transform: uppercase
}

@media (min-width:1024px) {
    #footer .footer__copyright a,
    #footer .footer__copyright p a {
        padding-bottom: .5em
    }
}

#footer .footer__copyright .copyright,
#footer .footer__copyright p .copyright {
    opacity: .2
}

#footer svg {
    width: 5rem;
    height: 5rem;
    display: block;
    fill: #fff;
    opacity: .1;
    margin-bottom: 5rem
}

#footer p {
    max-width: 30em
}

.news-article-share nav {
    overflow-x: auto;
    max-width: 65rem;
    margin: 0 auto
}

.news-article-share ul {
    font-size: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: center
}

.news-article-share li {
    position: relative;
    overflow: hidden;
    font-size: 1.5rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border: .1rem solid #d9d9d9;
    margin: 0 .75rem;
    text-align: center
}

.news-article-share li:before {
    content: " ";
    float: left;
    padding-top: 100%
}

.news-article-share li:after {
    content: " ";
    display: table;
    clear: both
}

.news-article-share li>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:768px) {
    .news-article-share li {
        font-size: 2rem;
        margin: 0 1rem
    }
}

@media (min-width:1800px) {
    .news-article-share li {
        font-size: 2.2rem
    }
}

.news-article-share li:hover span {
    -webkit-transform: translateY(0) translateZ(0);
    transform: translateY(0) translateZ(0);
    margin-top: 0
}

.news-article-share li:hover a {
    color: #fff
}

.news-article-share li:first-child {
    margin-left: 0
}

.news-article-share li:last-child {
    margin-right: 0
}

.news-article-share a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #323232;
    transition: color .35s cubic-bezier(.58, .3, .005, 1)
}

.news-article-share span:not(.a11y) {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #323232;
    transition: all .35s cubic-bezier(.58, .3, .005, 1);
    -webkit-transform: translateY(100%) translateZ(0);
    transform: translateY(100%) translateZ(0);
    margin-top: -.5rem
}

.news-article-share .share-twitter span {
    background-color: #2face2
}

.news-article-share .share-facebook span {
    background-color: #435dab
}

.news-article-share .share-pinterest span {
    background-color: #e82b2d
}

.news-article-share .share-linkedin span {
    background-color: #0e78b2
}

.news-article-share .fa {
    position: relative;
    z-index: 1;
    display: block;
    margin: 0 auto
}

.blurb--our-agency h2 {
    max-width: 23em
}

@-webkit-keyframes case-study-card {
    0% {
        background-position: 0 50%
    }
    50% {
        background-position: 100% 50%
    }
    to {
        background-position: 0 50%
    }
}

@keyframes case-study-card {
    0% {
        background-position: 0 50%
    }
    50% {
        background-position: 100% 50%
    }
    to {
        background-position: 0 50%
    }
}

.card--case-study {
    position: relative
}

.grid .card--case-study {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    width: 100%
}

@media (min-width:768px) {
    .grid .card--case-study {
        width: 50%
    }
}

.card--case-study__image {
    position: relative;
    margin-left: auto;
    margin-right: auto
}

@media (min-width:768px) {
    .card--case-study__image {
        margin-right: 2rem
    }
}

@media (min-width:1024px) {
    .card--case-study__image {
        margin-right: 6.26305%;
        margin-left: 0
    }
}

.card--case-study__image video {
    -o-object-fit: cover;
    object-fit: cover
}

.card--case-study__text {
    position: relative;
    margin: 0 auto
}

@media (min-width:768px) {
    .card--case-study__text {
        margin: 0 9.77199% 0 0
    }
}

@media (min-width:1280px) {
    .card--case-study__text {
        margin: 0 10.65163% 0 0
    }
}

.card--case-study__text h3 {
    margin-top: -.65vw;
    margin-bottom: 2.5rem
}

.card--case-study__text .meta {
    max-width: 100%
}

.card--case-study .image-holder:before,
.card--case-study__image-inner:before {
    content: " ";
    float: left;
    padding-top: 62.5%
}

.card--case-study .image-holder:after,
.card--case-study__image-inner:after {
    content: " ";
    display: table;
    clear: both
}

.card--case-study .image-holder>:first-child,
.card--case-study__image-inner>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

.card--case-study .image-holder {
    height: auto;
    overflow: hidden
}

.card--case-study a:focus {
    outline: none
}

.card--featured-work {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    overflow: hidden;
    height: 100%
}

.card--featured-work:before {
    content: " ";
    float: left;
    padding-top: 150%
}

.card--featured-work:after {
    content: " ";
    display: table;
    clear: both
}

.card--featured-work>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:550px) {
    .card--featured-work:before {
        content: " ";
        float: left;
        padding-top: 125%
    }
    .card--featured-work:after {
        content: " ";
        display: table;
        clear: both
    }
    .card--featured-work>:first-child {
        left: 0;
        height: 100%;
        position: absolute;
        top: 0;
        width: 100%
    }
}

@media (min-width:768px) {
    .card--featured-work {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .card--featured-work:before {
        content: " ";
        float: left;
        padding-top: 66.66667%
    }
    .card--featured-work:after {
        content: " ";
        display: table;
        clear: both
    }
    .card--featured-work>:first-child {
        left: 0;
        height: 100%;
        position: absolute;
        top: 0;
        width: 100%
    }
}

@media (min-width:1280px) {
    .card--featured-work:before {
        content: " ";
        float: left;
        padding-top: 42.40882%
    }
    .card--featured-work:after {
        content: " ";
        display: table;
        clear: both
    }
    .card--featured-work>:first-child {
        left: 0;
        height: 100%;
        position: absolute;
        top: 0;
        width: 100%
    }
}

.no-object-fit .card--featured-work .card--featured-work .bg,
.no-object-fit .card--featured-work .card--featured-work video {
    width: auto;
    max-width: none
}

.card--featured-work.is-playing .card--featured-work__image video {
    opacity: 1
}

.card--featured-work__image {
    background-color: #1b1b1c;
    overflow: hidden
}

.card--featured-work__image .bg {
    z-index: 1;
    -o-object-fit: cover;
    object-fit: cover
}

.card--featured-work__image video {
    position: relative;
    z-index: 0;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    opacity: 0
}

.card--featured-work__text {
    position: relative;
    z-index: 1;
    width: 100%;
    margin-bottom: 12.5%;
    white-space: normal
}

@media (min-width:768px) {
    .card--featured-work__text {
        margin-bottom: 0
    }
}

.card--featured-work__text .text-inner {
    position: relative
}

.card--featured-work__text .text-inner:before {
    content: " ";
    float: left;
    padding-top: 100%
}

.card--featured-work__text .text-inner:after {
    content: " ";
    display: table;
    clear: both
}

.card--featured-work__text .text-inner>:first-child {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

@media (min-width:768px) {
    .card--featured-work__text .text-inner {
        max-width: 50%
    }
}

@media (min-width:1280px) {
    .card--featured-work__text .text-inner {
        max-width: 31.97917%
    }
}

.card--featured-work__text .text-inner__content {
    padding: 0 7.91667%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff
}

@media (min-width:768px) {
    .card--featured-work__text .text-inner__content {
        padding: 0 13.00813%
    }
}

.card--featured-work__text .btn {
    background-color: transparent;
    border: .1rem solid #1b1b1c;
    display: inline-block;
    white-space: nowrap
}

.card--featured-work__meta {
    margin: 0 0 1.5rem
}

@media (min-width:768px) {
    .card--featured-work__meta {
        margin: 2.25rem 0 2.5rem
    }
}

@media (min-width:1440px) {
    .card--featured-work__meta {
        margin: 3.25rem 0 3.5rem
    }
}

.card--featured-work__logo {
    margin: 0 0 .5rem;
    -webkit-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: scale(.5);
    transform: scale(.5)
}

@media (min-width:550px) {
    .card--featured-work__logo {
        -webkit-transform: scale(.65);
        transform: scale(.65)
    }
}

@media (min-width:768px) {
    .card--featured-work__logo {
        -webkit-transform: scale(.75);
        transform: scale(.75)
    }
}

@media (min-width:1800px) {
    .card--featured-work__logo {
        -webkit-transform: none;
        transform: none;
        margin: 0
    }
}

.card--featured-work__logo svg {
    width: 100%;
    height: 100%
}

.card--featured-work__title {
    margin-bottom: 1.5rem;
    max-width: 12em
}

@media (min-width:768px) {
    .card--featured-work__title {
        margin-bottom: 3.5rem
    }
}