
@import url("css");

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden],
template {
    display: none;
}

a {
    background-color: transparent;
}

a:active,
a:hover {
    outline: 0;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b,
strong {
    font-weight: bold;
}

dfn {
    font-style: italic;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

mark {
    background: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 1em 40px;
}

hr {
    box-sizing: content-box;
    height: 0;
}

pre {
    overflow: auto;
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}

button {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input {
    line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

input[type="search"] {
    -webkit-appearance: textfield;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
}

optgroup {
    font-weight: bold;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

td,
th {
    padding: 0;
}

@keyframes dropin{
    0% {
        transform: translateY(-120%);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes charHover{
    0% {
        transform: translateY(-10px);
    }

    50% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(-10px);
    }
}

@keyframes charShadow{
    0% {
        transform: scaleX(1.1);
        opacity: .9;
    }

    50% {
        transform: scaleX(1);
        opacity: 1;
    }

    100% {
        transform: scaleX(1.1);
        opacity: .9;
    }
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

#wrap {
    overflow: hidden;
}

html {
    font-size: 16px;
}

body {
    font-family: 'Sniglet', 'Open sans', 'Helvetica', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 1.27;
    color: #1423A5;
}

p {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    line-height: 1.5;
    margin-bottom: 0.8em;
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
}

em,
i {
    font-style: italic;
}

.visually-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

#wrap *:focus {
    box-shadow: 0 0 6px 6px #CCFFFD;
    outline: 2px dashed #1423A5;
    outline-offset: 2px;
}

#wrap .focus-within:focus-within {
    box-shadow: 0 0 6px 6px #CCFFFD;
    outline: 2px dashed #1423A5;
    outline-offset: 2px;
}

#wrap .focus-within *:focus {
    outline: none;
}

#wrap .modal .modal__focus-start:focus {
    box-shadow: 0 0 6px 6px #CCFFFD;
    outline: 2px dashed #1423A5;
    outline-offset: 2px;
    outline: none;
    box-shadow: none;
}

#wrap .modal .modal__focus-start .focus-within:focus-within {
    box-shadow: none;
}

#wrap .modal .modal__focus-start .focus-within:focus {
    outline: none;
    box-shadow: none;
}

span.nobr {
    white-space: nowrap;
}

.font-fallback {
    font-family: 'Sniglet', 'Open sans', 'Helvetica', sans-serif;
    transform: translateY(-0.5em);
    font-size: 0.5em;
    display: inline-block;
}

.text-center {
    text-align: center;
}

.text-black {
    color: #000;
}

.text-white {
    color: #fff;
}

.text-red {
    color: #E60012;
}

.text-light-coral {
    color: #F5637E;
}

.text-coral {
    color: #C72549;
}

.text-dark-coral {
    color: #B11A45;
}

.text-grey {
    color: #888;
}

.text-cobalt {
    color: #324C95;
}

.text-cyan {
    color: #71C9E9;
}

.text-light-cyan {
    color: #CCFFFD;
}

.text-dark-cyan {
    color: #2289AE;
}

.text-light-magenta {
    color: #EEAEDB;
}

.text-yellow {
    color: #FFEC40;
}

.text-light-orange {
    color: #FBDA61;
}

.text-orange {
    color: #F7981C;
}

.text-blue {
    color: #7ED6FF;
}

.text-blue-grey {
    color: #C4CFE2;
}

.text-fb-blue {
    color: #324C95;
}

.text-dark-blue {
    color: #1423A5;
}

.text-shadow {
    color: rgba(0,0,0,0.2);
}

.text-shadow-dark {
    color: rgba(0,0,0,0.5);
}

.text-acid {
    color: rgba(203,212,68,0.75);
}

.text-shadow {
    text-shadow: 2px 2px 5px rgba(0,0,0,0.8);
}

.img-block {
    display: block;
}

.img-full {
    display: block;
    width: 100%;
}

.img-max {
    display: block;
    max-width: 100%;
}

.hr--stars {
    position: relative;
    background: url('decoration-star.png') no-repeat center center;
    width: 21px;
    height: 22px;
    border: none;
    margin: 0 auto;
    overflow: visible;
}

.hr--stars:before,
.hr--stars:after {
    content: '';
    background: url('decoration-star.png') no-repeat center center;
    background-size: 100%;
    position: absolute;
    top: 50%;
    width: 15px;
    height: 15px;
    margin-top: -7.5px;
}

.hr--stars:before {
    right: 150%;
}

.hr--stars:after {
    left: 150%;
}

a,
a:visited {
    font-family: inherit;
    color: inherit;
}

h1,
h2,
h3,
h4,
h5 {
    margin: 0.65em 0 0.45em 0;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child {
    margin-top: 0;
}

.title-1 {
    font-size: 3.5rem;
}

.title-2 {
    font-family: 'Sniglet', 'Open sans', 'Helvetica', sans-serif;
    font-size: 3rem;
    font-weight: 800;
    padding: 0 10px;
}

.title-3 {
    font-family: 'Sniglet', 'Open sans', 'Helvetica', sans-serif;
    font-size: 2rem;
    font-weight: 800;
}

.title-4 {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    font-size: 1.375rem;
    font-weight: bold;
    letter-spacing: 0.5px;
}

.title-4.large {
    font-size: 3rem;
}

.title-5 {
    font-size: 1rem;
    font-weight: bold;
}

@media only screen and (min-width: 40.063em){
    .title-3 {
        font-size: 2.25rem;
    }

    p {
        font-size: 1.125rem;
    }
}

.modal {
    display: block;
    height: 100%;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    transition: opacity 0s linear 0.4s;
    width: 100%;
}

.modal--open {
    opacity: 1;
    pointer-events: auto;
    transition-delay: 0s;
}

.modal--open .modal__overlay,
.modal--open .modal__close,
.modal--open .modal__content {
    opacity: 1;
}

.modal--open .modal__content {
    transform: scale(1);
}

.modal__overlay {
    background: rgba(0,0,0,0.5);
    height: 100%;
    opacity: 0;
    position: absolute;
    transition: opacity 0.3s ease;
    width: 100%;
}

.modal__wrapper {
    left: 50%;
    max-width: 90%;
    padding: 0 10px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.modal__close {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    display: block;
    margin: 0 0 10px auto;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.modal__content {
    background: white;
    opacity: 0;
    transform: scale(0);
    transition: transform 0.4s ease, opacity 0.4s ease;
}

.modal__focus-start:focus,
.modal__focus-end:focus {
    outline: none;
}

.gallery {
    position: relative;
}

.gallery .visually-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.gallery.is-loading .gallery__wrapper {
    height: 0;
    opacity: 0;
    overflow: hidden;
    padding-bottom: 50%;
}

.gallery.is-loading .gallery__overlay {
    opacity: 1;
    pointer-events: auto;
}

.gallery__wrapper {
    margin: 0;
    padding: 0;
    position: relative;
    transition: opacity 0.4s ease;
    width: 100%;
}

.gallery__item {
    display: block;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: scale(0.9) translateY(-50%);
    transition: opacity 0.4s ease;
    width: 100%;
}

.gallery__item.is-transitioning {
    transition: transform 0.6s ease, opacity 0.6s ease;
}

.gallery__item.is-transitioning--backward {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(-20deg);
}

.gallery__item.is-transitioning--forward {
    opacity: 0;
    transform: translate(50%, -50%) rotate(20deg);
}

.gallery__item.is-active {
    opacity: 1;
    transform: scale(1) translateY(-50%);
    z-index: 1;
}

.gallery__item.is-active button,
.gallery__item.is-active [href],
.gallery__item.is-active [tabindex] {
    visibility: visible;
}

.gallery__item img {
    display: block;
    max-width: 100%;
}

.gallery__item button,
.gallery__item [href],
.gallery__item [tabindex] {
    visibility: hidden;
}

.gallery__overlay {
    background-color: white;
    height: 100%;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    transition: opacity 0.4s ease;
    width: 100%;
}

.gallery__overlay::after {
    animation: galleryPreloader 1s ease infinite;
    background-color: black;
    border-radius: 50%;
    content: "";
    height: 40px;
    left: 50%;
    margin: -20px 0 0 -20px;
    position: absolute;
    top: 50%;
    width: 40px;
}

.gallery__nav {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: rgba(255,255,255,0.7);
    border: none;
    border-radius: 50%;
    height: 60px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 60px;
}

.gallery__nav:hover {
    cursor: pointer;
}

.gallery__nav-next {
    right: 10px;
}

.gallery__nav-prev {
    left: 10px;
}

@keyframes galleryPreloader{
    50% {
        background-color: gray;
        transform: scaleX(0.1);
    }

    100% {
        transform: scaleX(1) rotate(90deg);
    }
}

.medium-up,
.medium-only,
.large-up,
.large-only,
.xlarge-up,
.xlarge-only .xxlarge-up,
.xxlarge-only {
    display: none;
}

@media only screen and (min-width: 40.063em){
    .small-only {
        display: none;
    }

    .medium-up {
        display: block;
    }
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .medium-only {
        display: block;
    }
}

@media only screen and (min-width: 54.063em){
    .large-up {
        display: block;
    }
}

@media only screen and (min-width: 54.063em) and (max-width: 71em){
    .large-only {
        display: block;
    }
}

@media only screen and (min-width: 71.063em){
    .xlarge-up {
        display: block;
    }
}

@media only screen and (min-width: 120.063em){
    .xxlarge-up {
        display: block;
    }
}

html,
body {
    height: 100%;
}

[class*='row-flex'],
.row {
    margin: 0 auto;
    max-width: 1140px;
    width: 100%;
}

[class*='row-flex'] [class*='row-flex'],
[class*='row-flex'] .row,
.row [class*='row-flex'],
.row .row {
    padding-left: 0;
    padding-right: 0;
}

[class*='row-flex'] [class*='row-flex'] [class*='column-flex'],
[class*='row-flex'] .row [class*='column-flex'],
.row [class*='row-flex'] [class*='column-flex'],
.row .row [class*='column-flex'] {
    padding-left: 0;
    padding-right: 0;
}

.row {
    padding-left: 11px;
    padding-right: 11px;
}

[class*='column-flex'] {
    -ms-flex: 0 1 auto;
    padding-left: 11px;
    padding-right: 11px;
}

@media only screen and (min-width: 40.063em){
    .row,
    [class*='row-flex'] {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: center;
        -webkit-flex-pack: center;
        justify-content: center;
    }

    .row .row [class*='column-flex']:first-child,
    .row [class*='row-flex'] [class*='column-flex']:first-child,
    [class*='row-flex'] .row [class*='column-flex']:first-child,
    [class*='row-flex'] [class*='row-flex'] [class*='column-flex']:first-child {
        padding-right: 11px;
        padding-left: 0;
    }

    .row .row [class*='column-flex']:last-child,
    .row [class*='row-flex'] [class*='column-flex']:last-child,
    [class*='row-flex'] .row [class*='column-flex']:last-child,
    [class*='row-flex'] [class*='row-flex'] [class*='column-flex']:last-child {
        padding-left: 11px;
        padding-right: 0;
    }

    .row-flex {
        display: -ms-flexbox;
        display: -webkit-flexbox;
        display: flex;
    }

    .row-flex-nowrap {
        -ms-flex-wrap: none;
        flex-wrap: nowrap;
    }

    .row-flex-vertical-center {
        -ms-flex-align: center;
        -webkit-flex-align: center;
        align-items: center;
    }

    .row-flex-vertical-center [class*="column-flex"] {
        margin-top: 0;
        margin-bottom: 0;
    }

    .row-flex-vertical-uncenter {
        -ms-flex-align: baseline;
        -webkit-flex-align: baseline;
        align-items: baseline;
    }

    .row-flex-horizontal-uncenter {
        -ms-flex-pack: start;
        -webkit-flex-pack: start;
        justify-content: flex-start;
    }

    .column-flex-1 {
        -ms-flex-preferred-size: 8.33333%;
        flex-basis: 8.33333%;
        width: 8.33333%;
        max-width: 8.33333%;
    }

    .column-flex-2 {
        -ms-flex-preferred-size: 16.66667%;
        flex-basis: 16.66667%;
        width: 16.66667%;
        max-width: 16.66667%;
    }

    .column-flex-3 {
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        width: 25%;
        max-width: 25%;
    }

    .column-flex-4 {
        -ms-flex-preferred-size: 33.33333%;
        flex-basis: 33.33333%;
        width: 33.33333%;
        max-width: 33.33333%;
    }

    .column-flex-5 {
        -ms-flex-preferred-size: 41.66667%;
        flex-basis: 41.66667%;
        width: 41.66667%;
        max-width: 41.66667%;
    }

    .column-flex-6 {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        width: 50%;
        max-width: 50%;
    }

    .column-flex-7 {
        -ms-flex-preferred-size: 58.33333%;
        flex-basis: 58.33333%;
        width: 58.33333%;
        max-width: 58.33333%;
    }

    .column-flex-8 {
        -ms-flex-preferred-size: 66.66667%;
        flex-basis: 66.66667%;
        width: 66.66667%;
        max-width: 66.66667%;
    }

    .column-flex-9 {
        -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
        width: 75%;
        max-width: 75%;
    }

    .column-flex-10 {
        -ms-flex-preferred-size: 83.33333%;
        flex-basis: 83.33333%;
        width: 83.33333%;
        max-width: 83.33333%;
    }

    .column-flex-11 {
        -ms-flex-preferred-size: 91.66667%;
        flex-basis: 91.66667%;
        width: 91.66667%;
        max-width: 91.66667%;
    }

    .column-flex-12 {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        width: 100%;
        max-width: 100%;
    }
}

@media only screen and (min-width: 54.063em){
    .row-flex-large {
        display: -ms-flexbox;
        display: -webkit-flexbox;
        display: flex;
    }

    .row-flex-large-nowrap {
        -ms-flex-wrap: none;
        flex-wrap: nowrap;
    }

    .row-flex-large-vertical-center {
        -ms-flex-align: center;
        -webkit-flex-align: center;
        align-items: center;
    }

    .row-flex-large-vertical-center [class*="column-flex"] {
        margin-top: 0;
        margin-bottom: 0;
    }

    .row-flex-large-vertical-uncenter {
        -ms-flex-align: baseline;
        -webkit-flex-align: baseline;
        align-items: baseline;
    }

    .row-flex-large-horizontal-uncenter {
        -ms-flex-pack: start;
        -webkit-flex-pack: start;
        justify-content: flex-start;
    }

    .column-flex-large-1 {
        -ms-flex-preferred-size: 8.33333%;
        flex-basis: 8.33333%;
        width: 8.33333%;
        max-width: 8.33333%;
    }

    .column-flex-large-2 {
        -ms-flex-preferred-size: 16.66667%;
        flex-basis: 16.66667%;
        width: 16.66667%;
        max-width: 16.66667%;
    }

    .column-flex-large-3 {
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        width: 25%;
        max-width: 25%;
    }

    .column-flex-large-4 {
        -ms-flex-preferred-size: 33.33333%;
        flex-basis: 33.33333%;
        width: 33.33333%;
        max-width: 33.33333%;
    }

    .column-flex-large-5 {
        -ms-flex-preferred-size: 41.66667%;
        flex-basis: 41.66667%;
        width: 41.66667%;
        max-width: 41.66667%;
    }

    .column-flex-large-6 {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        width: 50%;
        max-width: 50%;
    }

    .column-flex-large-7 {
        -ms-flex-preferred-size: 58.33333%;
        flex-basis: 58.33333%;
        width: 58.33333%;
        max-width: 58.33333%;
    }

    .column-flex-large-8 {
        -ms-flex-preferred-size: 66.66667%;
        flex-basis: 66.66667%;
        width: 66.66667%;
        max-width: 66.66667%;
    }

    .column-flex-large-9 {
        -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
        width: 75%;
        max-width: 75%;
    }

    .column-flex-large-10 {
        -ms-flex-preferred-size: 83.33333%;
        flex-basis: 83.33333%;
        width: 83.33333%;
        max-width: 83.33333%;
    }

    .column-flex-large-11 {
        -ms-flex-preferred-size: 91.66667%;
        flex-basis: 91.66667%;
        width: 91.66667%;
        max-width: 91.66667%;
    }

    .column-flex-large-12 {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        width: 100%;
        max-width: 100%;
    }

    .row .row [class*='column-flex'],
    .row [class*='row-flex'] [class*='column-flex'],
    [class*='row-flex'] .row [class*='column-flex'],
    [class*='row-flex'] [class*='row-flex'] [class*='column-flex'] {
        padding-left: 11px;
        padding-right: 11px;
    }
}

@media only screen and (min-width: 71.063em){
    .row-flex-xlarge {
        display: -ms-flexbox;
        display: -webkit-flexbox;
        display: flex;
    }

    .row-flex-xlarge-nowrap {
        -ms-flex-wrap: none;
        flex-wrap: nowrap;
    }

    .row-flex-xlarge-vertical-center {
        -ms-flex-align: center;
        -webkit-flex-align: center;
        align-items: center;
    }

    .row-flex-xlarge-vertical-center [class*="column-flex"] {
        margin-top: 0;
        margin-bottom: 0;
    }

    .row-flex-xlarge-vertical-uncenter {
        -ms-flex-align: baseline;
        -webkit-flex-align: baseline;
        align-items: baseline;
    }

    .row-flex-xlarge-horizontal-uncenter {
        -ms-flex-pack: start;
        -webkit-flex-pack: start;
        justify-content: flex-start;
    }

    .column-flex-xlarge-1 {
        -ms-flex-preferred-size: 8.33333%;
        flex-basis: 8.33333%;
        width: 8.33333%;
        max-width: 8.33333%;
    }

    .column-flex-xlarge-2 {
        -ms-flex-preferred-size: 16.66667%;
        flex-basis: 16.66667%;
        width: 16.66667%;
        max-width: 16.66667%;
    }

    .column-flex-xlarge-3 {
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        width: 25%;
        max-width: 25%;
    }

    .column-flex-xlarge-4 {
        -ms-flex-preferred-size: 33.33333%;
        flex-basis: 33.33333%;
        width: 33.33333%;
        max-width: 33.33333%;
    }

    .column-flex-xlarge-5 {
        -ms-flex-preferred-size: 41.66667%;
        flex-basis: 41.66667%;
        width: 41.66667%;
        max-width: 41.66667%;
    }

    .column-flex-xlarge-6 {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        width: 50%;
        max-width: 50%;
    }

    .column-flex-xlarge-7 {
        -ms-flex-preferred-size: 58.33333%;
        flex-basis: 58.33333%;
        width: 58.33333%;
        max-width: 58.33333%;
    }

    .column-flex-xlarge-8 {
        -ms-flex-preferred-size: 66.66667%;
        flex-basis: 66.66667%;
        width: 66.66667%;
        max-width: 66.66667%;
    }

    .column-flex-xlarge-9 {
        -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
        width: 75%;
        max-width: 75%;
    }

    .column-flex-xlarge-10 {
        -ms-flex-preferred-size: 83.33333%;
        flex-basis: 83.33333%;
        width: 83.33333%;
        max-width: 83.33333%;
    }

    .column-flex-xlarge-11 {
        -ms-flex-preferred-size: 91.66667%;
        flex-basis: 91.66667%;
        width: 91.66667%;
        max-width: 91.66667%;
    }

    .column-flex-xlarge-12 {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        width: 100%;
        max-width: 100%;
    }
}

@media only screen and (min-width: 120.063em){
    .row-flex-xxlarge {
        display: -ms-flexbox;
        display: -webkit-flexbox;
        display: flex;
    }

    .row-flex-xxlarge-nowrap {
        -ms-flex-wrap: none;
        flex-wrap: nowrap;
    }

    .row-flex-xxlarge-vertical-center {
        -ms-flex-align: center;
        -webkit-flex-align: center;
        align-items: center;
    }

    .row-flex-xxlarge-vertical-center [class*="column-flex"] {
        margin-top: 0;
        margin-bottom: 0;
    }

    .row-flex-xxlarge-vertical-uncenter {
        -ms-flex-align: baseline;
        -webkit-flex-align: baseline;
        align-items: baseline;
    }

    .row-flex-xxlarge-horizontal-uncenter {
        -ms-flex-pack: start;
        -webkit-flex-pack: start;
        justify-content: flex-start;
    }

    .column-flex-xxlarge-1 {
        -ms-flex-preferred-size: 8.33333%;
        flex-basis: 8.33333%;
        width: 8.33333%;
        max-width: 8.33333%;
    }

    .column-flex-xxlarge-2 {
        -ms-flex-preferred-size: 16.66667%;
        flex-basis: 16.66667%;
        width: 16.66667%;
        max-width: 16.66667%;
    }

    .column-flex-xxlarge-3 {
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        width: 25%;
        max-width: 25%;
    }

    .column-flex-xxlarge-4 {
        -ms-flex-preferred-size: 33.33333%;
        flex-basis: 33.33333%;
        width: 33.33333%;
        max-width: 33.33333%;
    }

    .column-flex-xxlarge-5 {
        -ms-flex-preferred-size: 41.66667%;
        flex-basis: 41.66667%;
        width: 41.66667%;
        max-width: 41.66667%;
    }

    .column-flex-xxlarge-6 {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        width: 50%;
        max-width: 50%;
    }

    .column-flex-xxlarge-7 {
        -ms-flex-preferred-size: 58.33333%;
        flex-basis: 58.33333%;
        width: 58.33333%;
        max-width: 58.33333%;
    }

    .column-flex-xxlarge-8 {
        -ms-flex-preferred-size: 66.66667%;
        flex-basis: 66.66667%;
        width: 66.66667%;
        max-width: 66.66667%;
    }

    .column-flex-xxlarge-9 {
        -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
        width: 75%;
        max-width: 75%;
    }

    .column-flex-xxlarge-10 {
        -ms-flex-preferred-size: 83.33333%;
        flex-basis: 83.33333%;
        width: 83.33333%;
        max-width: 83.33333%;
    }

    .column-flex-xxlarge-11 {
        -ms-flex-preferred-size: 91.66667%;
        flex-basis: 91.66667%;
        width: 91.66667%;
        max-width: 91.66667%;
    }

    .column-flex-xxlarge-12 {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        width: 100%;
        max-width: 100%;
    }
}

body[data-useragent*='WiiU'] [class*='column-flex'] {
    -webkit-flex: 1 1;
}

.modal {
    z-index: 101;
}

.modal.is-open {
    z-index: 10001;
}

.modal .button:hover,
.modal .button:focus {
    transform: translateY(-50%);
}

.modal__wrapper {
    border: solid 0px transparent;
}

.modal__content {
    padding: 10px;
}

.modal--retailer .modal__wrapper {
    width: 90%;
}

.modal--retailer .modal__content {
    height: 70vh;
    padding: 10px;
    background: white;
}

.modal--video .modal__overlay {
    background: rgba(3,32,100,0.75);
}

.modal__close {
    width: 38px;
    height: 38px;
    border-radius: 20px;
    background: url('/assets/img/common/modal-close.svg') center no-repeat #FFEC40;
    padding: 0;
    margin: 0 0 0 auto;
    transform: translate(15px, 30px);
    z-index: 100;
    font: 0/0 a;
    overflow: hidden;
    z-index: 11500;
    right: 10px;
    top: -90px;
    position: absolute;
}

.modal__close:hover {
    background: url('/assets/img/common/modal-close.svg') center no-repeat;
}

.modal__close:after {
    display: none;
}

@media only screen and (max-width: 40em){
    .modal__close {
        right: 10px;
        top: -90px;
    }
}

@media only screen and (max-width: 40em){
    .modal__wrapper {
        max-width: 100%;
        padding: 0;
    }

    .modal__content {
        margin: 0;
        padding: 10px;
        border: none;
    }
}

@media only screen and (min-width: 54.063em){
    .modal__wrapper {
        max-width: 900px;
    }

    .modal__close {
        top: -80px;
        right: -22px;
    }
}

@media screen and (min-height: 500px){
    .modal--retailer .modal__content {
        height: 440px;
        padding: 20px 10px;
    }
}

.nclood-nav__container {
    position: relative;
    z-index: 99;
}

.nav-kirby {
    height: 50px;
    position: absolute;
    text-align: right;
    width: 100%;
    z-index: 30;
}

.nav-kirby:before {
    background-color: #fff;
    content: '';
    height: 100%;
    left: 0;
    opacity: .75;
    position: absolute;
    top: 0;
    width: 100%;
}

.nav-sticky .nav-kirby {
    position: fixed;
    top: 0;
}

.nav-sticky .nav-kirby::before {
    opacity: 0.95;
}

.nav-kirby__logo {
    position: absolute;
    top: 50%;
    left: 10px;
    margin-top: -20px;
}

#kirby-nav__toggle {
    display: none;
}

.nav-kirby__menu {
    display: inline-block;
    position: relative;
    padding-right: 10px;
    cursor: pointer;
}

.nav-kirby__menu>span {
    color: transparent;
    font: 0/0 a;
    width: 17px;
    height: 17px;
    background-repeat: no-repeat;
    background-position: center center;
}

.nav-kirby__closed {
    background-image: url('nav-menu.svg');
    display: block;
}

.nav-kirby__open {
    background-image: url('nav-close.svg');
    display: none;
}

.nav-kirby__list {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    display: block;
    font-size: 1.375rem;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1.2727272727;
    list-style: none;
    margin: 0;
    opacity: 0;
    padding: 0;
    text-align: center;
    visibility: hidden;
}

.nav-kirby__link {
    margin: 0 12px;
}

.nav-kirby__link a {
    display: inline-block;
    text-decoration: none;
    padding: 13px 23px;
    position: relative;
}

.nav-kirby__link a:before,
.nav-kirby__link a:after {
    background: url('nav-star_2x.png') no-repeat left top;
    background-size: 100%;
    content: '';
    height: 15px;
    margin-top: -7.5px;
    opacity: 0;
    position: absolute;
    top: 52%;
    transform: scale(0);
    transition: transform .2s ease-out, opacity .1s ease-out, visibility .2s ease-out;
    visibility: hidden;
    width: 15px;
}

.nav-kirby__link a:before {
    left: 0;
}

.nav-kirby__link a:after {
    right: 0;
}

.nav-kirby__link a.is-active:before,
.nav-kirby__link a.is-active:after,
.nav-kirby__link a:hover:before,
.nav-kirby__link a:hover:after {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
}

#wrap .nav-kirby__link a:focus {
    box-shadow: inset 0 0 3px 3px #CCFFFD, 0 0 3px 3px #CCFFFD;
    outline: 2px dashed #1423A5;
    outline-offset: -2px;
}

.nav-kirby__link-logo {
    display: none;
}

#kirby-nav__toggle:checked ~ .nav-kirby__menu .nav-kirby__closed {
    display: none;
}

#kirby-nav__toggle:checked ~ .nav-kirby__menu .nav-kirby__open {
    display: block;
}

#kirby-nav__toggle:checked ~ .nav-kirby__list {
    opacity: 1;
    position: absolute;
    top: 50px;
    visibility: visible;
    width: 100%;
}

#kirby-nav__toggle:checked ~ .nav-kirby__list:before {
    background-color: #fff;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.nav-sticky #kirby-nav__toggle:checked ~ .nav-kirby__list:before {
    opacity: 0.95;
}

@media only screen and (min-width: 40.063em){
    .nav-kirby {
        height: auto;
    }

    .nav-kirby:before {
        transition: opacity .2s ease-in;
    }

    .nav-kirby__logo,
    .nav-kirby__menu {
        display: none;
    }

    .nav-kirby__list {
        -ms-flex-align: center;
        align-items: center;
        display: -ms-flexbox;
        display: flex;
        margin: 0 auto;
        opacity: 1;
        position: relative;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        visibility: visible;
        max-width: 820px;
    }

    .page-home .nav-kirby__list {
        max-width: 650px;
    }

    .nav-kirby__link a {
        display: block;
        text-decoration: none;
        padding: 13px 23px;
        position: relative;
    }

    .nav-kirby__link-logo {
        display: block;
        margin: 0px 40px;
    }

    .page-home .nav-kirby__link-logo {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce){
    .nav-kirby__link a:before,
    .nav-kirby__link a:after {
        opacity: 0;
        transform: scale(1);
    }

    .nav-kirby__link a:hover:before,
    .nav-kirby__link a:hover:after,
    .nav-kirby__link a.is-active:before,
    .nav-kirby__link a.is-active:after {
        opacity: 1;
    }
}

.is-reduced-motion .nav-kirby__link a:before,
.is-reduced-motion .nav-kirby__link a:after {
    opacity: 0;
    transform: scale(1);
}

.is-reduced-motion .nav-kirby__link a:hover:before,
.is-reduced-motion .nav-kirby__link a:hover:after,
.is-reduced-motion .nav-kirby__link a.is-active:before,
.is-reduced-motion .nav-kirby__link a.is-active:after {
    opacity: 1;
}

.hamburgerOpen {
    background: #fff;
}

.news-list,
.videos-list {
    padding: 0;
}

.news-list .card-wrapper {
    -ms-flex: 1 1 50%;
    flex: 1 1 50%;
    max-width: 50%;
    padding: 0 11px;
    width: 50%;
}

.videos-list {
    position: relative;
    margin-top: 50px;
}

.videos-list .card-wrapper {
    padding: 0 11px;
}

.cards {
    -ms-flex-align: stretch;
    align-items: stretch;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: left;
}

.cards.animate .card-wrapper {
    opacity: 0;
    transition: opacity .2s ease, transform .25s ease;
}

.cards.animate.vp-on-30 .card-wrapper {
    opacity: 1;
    transform: translate(0, 0);
}

.cards-cta {
    margin: 35px auto 0;
    max-width: 560px;
    width: 90%;
}

.card-wrapper {
    -ms-flex-align: stretch;
    align-items: stretch;
    display: -ms-flexbox;
    display: flex;
    padding: 11px;
}

.card {
    background: #FFFFFF;
    border-radius: 20px;
    border: 3px solid #FFFFFF;
    box-shadow: 4px 4px 0 0 rgba(0,0,0,0.2);
    display: block;
    padding-bottom: 10px;
    text-decoration: none;
    width: 100%;
}

.card:hover .card__header img {
    transform: scale(1.05);
}

.card__header {
    border-top-right-radius: 18px;
    border-top-left-radius: 18px;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translate3d(0, 0, 0);
}

.card__header img {
    display: block;
    transition: transform .2s ease;
    width: 100%;
}

.card__content {
    color: #324C95;
    font-size: 1.125rem;
    padding: 12px 20px;
}

.card__content time {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    display: inline-block;
    font-size: 0.7777777778em;
    font-weight: 700;
    margin-bottom: 7px;
}

.card__content h5,
.card__content p {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    font-size: 1rem;
    line-height: 1.3333333333;
}

.card__content h5 {
    margin: 0 0 10px 0;
    font-weight: 900;
    letter-spacing: 1px;
}

.card--video:hover {
    cursor: pointer;
}

.card--video:hover .icon--play:after {
    transform: scale(1.1);
    transition-duration: .1s;
}

.card--video .card__header {
    position: relative;
}

.card--video .icon {
    background: #D27D7A;
    border-radius: 50%;
    border: solid 4px #AD2C3D;
    height: 71px;
    left: 50%;
    margin-left: -35.5px;
    margin-top: -35.5px;
    overflow: hidden;
    position: absolute;
    top: 50%;
    width: 71px;
    z-index: 2;
}

.card--video .icon:before {
    background: #F6CDCC;
    content: '';
    height: 50%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.card--video .icon .icon--play {
    background: #F49B98;
    border-radius: 50%;
    border: none;
    height: 56px;
    left: 50%;
    margin-left: -33.5px;
    margin-top: -28px;
    position: absolute;
    top: 50%;
    width: 67px;
}

.card--video .icon .icon--play:before {
    background-color: rgba(255,255,255,0.2);
    border-radius: 50%;
    bottom: 50%;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    width: 100%;
}

.card--video .icon .icon--play:after {
    background: url('icon-play--white.svg') no-repeat center center;
    content: '';
    height: 34px;
    left: 52%;
    margin-left: -13.5px;
    margin-top: -17px;
    position: absolute;
    top: 50%;
    transition: transform .3s ease;
    width: 27px;
}

.card--video .card__content {
    text-align: center;
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .animate .card-wrapper {
        transform: translate(-40%, 0);
    }

    .animate .card-wrapper:nth-of-type(2n+2) {
        transform: translate(40%, 0);
    }
}

@media only screen and (max-width: 25em){
    .news-list .card-wrapper {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        width: 100%;
        max-width: 100%;
        margin-bottom: 15px;
    }
}

@media only screen and (min-width: 40.063em){
    .card__content h5,
    .card__content p {
        font-size: 1.125rem;
    }
}

@media only screen and (min-width: 54.063em){
    .animate .card-wrapper {
        transform: translate(-40%, 0);
    }

    .animate .card-wrapper:nth-of-type(3n+2) {
        transform: translate(0, 30%);
    }

    .animate .card-wrapper:nth-of-type(3n+3) {
        transform: translate(40%, 0);
    }

    .videos-list {
        margin-top: 0;
    }

    .videos-list .cards-cta {
        bottom: 0;
        left: 50%;
        position: absolute;
        transform: translateX(-50%);
    }
}

a.button {
    color: #fff;
}

.button {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    color: #fff;
    font-weight: 700;
    font-size: 1.375rem;
    border-radius: 25px;
    display: block;
    overflow: hidden;
    padding: 2px 0;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: all 0.5s ease;
    border: solid 3px transparent;
    z-index: 1;
}

.button:hover,
.button:focus {
    transform: scale(1.0325);
    transition-duration: 0.2s;
}

.button::before {
    content: "";
    height: 50%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.button::after {
    content: "";
    border-radius: 0 0 3em 3em;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 50%;
    width: 100%;
}

.button span {
    text-shadow: 0 2px rgba(0,0,0,0.2);
    display: block;
    position: relative;
    z-index: 2;
    padding: 4px 0 9px 0;
    border-radius: 25px;
}

.button span:before {
    background-color: rgba(255,255,255,0.1);
    content: "";
    height: 55px;
    width: 100%;
    border-radius: 50%;
    position: absolute;
    left: 0;
    bottom: 40%;
    z-index: 1;
}

.button--arrow span:after {
    content: "";
    background: url('arrow-1.png') no-repeat left top;
    width: 10px;
    height: 15px;
    position: absolute;
    right: 25px;
    margin-top: -7.5px;
    top: 50%;
    filter: drop-shadow(0 2px rgba(0,0,0,0.2));
}

.button--arrow--left span:after {
    transform: scaleX(-1);
    left: 25px;
    right: auto;
}

.button--blue {
    background-color: #7197ff;
    border-color: #1423A5;
}

.button--blue:after {
    background-color: #1646c9;
}

.button--blue span {
    background-color: #2457e4;
}

.button--red {
    border-color: #ad2c3d;
}

.button--red:before {
    background: #f6cdcc;
}

.button--red:after {
    background: #d27d7a;
}

.button--red span {
    background: #f49b98;
}

.button--dark-red {
    border-color: #B11A45;
}

.button--dark-red:before {
    background: #f5637e;
}

.button--dark-red:after {
    background: #cc3b5b;
}

.button--dark-red span {
    background: #C72549;
}

.button--coral {
    background-color: #F5637E;
    border-color: #B11A45;
}

.button--coral:after {
    background-color: #9e1534;
}

.button--coral span {
    background-color: #C72549;
}

.button--container--sm {
    max-width: 325px;
}

@media (prefers-reduced-motion: reduce){
    .button {
        transition: none;
    }
}

.is-reduced-motion .button {
    transition: none;
}

.playframe {
    position: relative;
    z-index: 2;
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 10%;
}

.playframe h2 {
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    text-align: center;
    text-align: center;
    padding: 40px 0 0;
}

.playframe__container {
    position: relative;
    padding-bottom: 12%;
}

.playframe__hero {
    position: absolute;
    width: 35%;
    top: 0;
    left: 0;
}

.playframe__hero img {
    width: 100%;
    display: none;
}

.playframe__frame {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 200%;
}

.playframe__frame iframe {
    border: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media only screen and (min-width: 40.063em){
    .playframe h2 {
        margin-left: auto;
        margin-right: 0;
        padding-right: 10px;
        width: 60%;
    }

    .playframe__hero img {
        display: block;
    }
}

@media only screen and (min-width: 43.125em){
    .playframe__frame {
        padding-bottom: 55.69106%;
        max-width: 990px;
        margin: 0 auto;
    }
}

@media only screen and (min-width: 690px) and (max-width: 714px){
    body.is-ie11 .playframe__frame {
        padding-bottom: 200%;
    }
}

@media only screen and (min-width: 690px) and (max-width: 707px){
    body.is-edge .playframe__frame {
        padding-bottom: 200%;
    }
}

@media only screen and (min-width: 54.063em){
    .playframe {
        padding-bottom: 6rem;
    }

    .playframe__container {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        max-width: 100%;
        padding-top: 0;
        padding-bottom: 0;
        width: 100%;
    }

    .playframe__hero {
        max-width: 300px;
        left: 3%;
    }
}

@media only screen and (min-width: 66.75em){
    .playframe {
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .playframe__hero {
        width: 40%;
        max-width: none;
        position: absolute;
        display: block;
        left: -3%;
        top: 8%;
    }

    .playframe__container {
        -ms-flex-preferred-size: 66.66667%;
        flex-basis: 66.66667%;
        width: 66.66667%;
        max-width: 66.66667%;
    }

    .playframe__container h2 {
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        width: auto;
    }
}

@media only screen and (min-width: 71.063em){
    .playframe__hero {
        left: -10%;
    }

    .playframe__container {
        -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
        width: 75%;
        max-width: 75%;
    }
}

.amiibo__cards {
    display: -ms-flexbox;
    display: -webkit-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    -webkit-flex-pack: center;
    justify-content: center;
    list-style-type: none;
    padding: 0;
}

.amiibo__cardcontainer {
    max-width: 300px;
    min-width: 150px;
    padding: 10px;
    width: 50%;
    position: relative;
    z-index: 1;
}

.amiibo__card {
    display: block;
    text-decoration: none;
    cursor: pointer;
    border: 3px solid #fff;
    background-color: rgba(203,212,68,0.75);
    border-radius: 20px;
    position: relative;
    box-shadow: 4px 4px 0 rgba(0,0,0,0.2);
    transition: all 0.8s ease;
    z-index: 2;
    padding: 100% 10px 2rem;
}

.amiibo__card:hover,
.amiibo__card:focus {
    transform: scale(1.025);
    transition: all 0.3s ease;
}

.amiibo__card img {
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.amiibo__card .name {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    font-size: 1.375rem;
    font-weight: 800;
    letter-spacing: 0.5px;
    position: relative;
    top: 0.5rem;
    white-space: nowrap;
}

@media only screen and (max-width: 40em){
    .amiibo__card img {
        top: 40%;
    }
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .amiibo__cardcontainer:nth-of-type(2n) {
        transition: transform 0.6s cubic-bezier(0.46, 0.09, 0.38, 1.02),opacity 0.4s cubic-bezier(0.46, 0.09, 0.38, 1.02);
        opacity: 0;
        transform: translateX(50%);
    }
}

@media only screen and (min-width: 54.063em){
    .amiibo__cardcontainer {
        width: 25%;
    }

    .amiibo__cardcontainer:nth-of-type(4n+4),
    .amiibo__cardcontainer:nth-of-type(4n+3) {
        transition: transform 0.6s cubic-bezier(0.46, 0.09, 0.38, 1.02),opacity 0.4s cubic-bezier(0.46, 0.09, 0.38, 1.02);
        opacity: 0;
        transform: translateX(50%);
    }

    .amiibo__cards {
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }
}

@media (prefers-reduced-motion: reduce){
    .amiibo__card {
        transition: none;
    }
}

.is-reduced-motion .amiibo__card {
    transition: none;
}

.featured-games__list {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
    justify-content: space-between;
    list-style: none;
    padding: 0 0 5px 0;
    width: 100%;
    -webkit-overflow-scrolling: touch;
    overflow-y: hidden;
    overflow-x: scroll;
}

.featured-games__list a {
    text-decoration: none;
}

.featured-games__list .wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
    justify-content: space-between;
    list-style: none;
    margin: 0;
    padding: 0;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    width: auto;
    justify-content: space-between;
    padding-left: 5px;
    padding-right: 5px;
}

@media only screen and (min-width: 54.063em){
    .featured-games__list {
        overflow-y: visible;
        overflow-x: visible;
    }

    .featured-games__list .wrapper {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        width: 100%;
    }
}

.featured-games__item {
    z-index: 19;
    position: relative;
    transition: transform .15s ease-in-out;
    text-align: center;
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    font-size: .875rem;
    width: 86.5vw;
    text-align: left;
    box-shadow: none;
}

.featured-games__item .button {
    text-decoration: none;
    display: block;
    position: relative;
    overflow: hidden;
    z-index: 1;
    left: 1px;
    text-align: center;
    height: 46px;
    background-color: #7197FF;
    border: 3px solid #1423A5;
    letter-spacing: 0.045454545em;
    pointer-events: none;
    text-decoration: none;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    transition: all 0.5s ease;
    line-height: 35px;
}

.featured-games__item .button:hover {
    transform: scale(1.0325);
    transition: all 0.2s ease;
}

.featured-games__item .button img {
    position: absolute;
    left: calc(100% - 35px);
    z-index: 1;
    top: 50%;
    transform: translateY(-50%);
    filter: drop-shadow(0 2px rgba(0,0,0,0.2));
}

.featured-games__item .button::before {
    background-color: rgba(255,255,255,0.1);
    content: '';
    height: 55px;
    width: 100%;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: -2.1rem;
    z-index: 1;
}

.featured-games__item .button::after {
    background-color: #2457E4;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom: 2px solid #1646C9;
    position: absolute;
    top: 2px;
    left: 0;
    content: '';
    height: calc(100% - 1px);
    width: 100%;
    z-index: -1;
}

.featured-games__item .button span {
    color: #fff;
    font-weight: 700;
    font-size: 1.375rem;
    text-shadow: 0 2px rgba(0,0,0,0.2);
    top: 13%;
    position: relative;
    z-index: 2;
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .featured-games__item {
        width: 32vw;
        -ms-flex: 1 1 32vw;
        flex: 1 1 32vw;
        min-width: 32vw;
    }
}

@media only screen and (max-width: 40em){
    .featured-games__item {
        width: 86.5vw;
        -ms-flex: 1 1 86.5vw;
        flex: 1 1 86.5vw;
        min-width: 86.5vw;
    }
}

.featured-games__item-wrap {
    display: block;
    background-color: #fff;
    margin-left: 3px;
    margin-right: 3px;
    padding-top: 1px;
    border-radius: 12px;
    left: 0;
    box-shadow: 4px 4px rgba(0,0,0,0.2);
    position: relative;
}

@media only screen and (min-width: 54.063em){
    .featured-games__item-wrap {
        background-color: transparent;
        margin: 0;
    }
}

.featured-games__image {
    width: 100%;
    margin-top: 0;
    transform: scale(0.98);
    transition: transform .10s ease-out;
    border: 3px solid #fff;
    border-radius: 12px;
    box-shadow: none;
}

.featured-games__image img {
    width: 100%;
    display: block;
    border-radius: 12px;
}

.featured-games__platform-tag-wrap {
    padding: 0px 0 0px 8px;
    color: #E60012;
    font-size: .875rem;
    font-weight: 700;
}

.featured-games__platform-tag-wrap .platform--wiiu {
    color: #0096c8;
}

.featured-games__platform-tag-wrap .platform--nintendo3ds {
    color: #ce181e;
}

.featured-games__platform-tag-wrap .platform--switch {
    color: #e60012;
}

.featured-games__platform-tag-wrap span {
    font-weight: 600;
    letter-spacing: 0.071428571em;
    padding-left: 12px;
}

@media only screen and (min-width: 54.063em){
    .featured-games__platform-tag-wrap {
        padding: 0px 0 8px 8px;
    }

    .featured-games__platform-tag-wrap span {
        background-color: #fff;
        padding: 6px 12px 6px 12px;
        margin-bottom: 5px;
        display: inline-block;
        margin-right: 25px;
        border-bottom-left-radius: 12px;
        border-bottom-right-radius: 12px;
        box-shadow: 0px 2px rgba(0,0,0,0.2);
    }
}

.featured-games__hidden {
    background: #fff;
    z-index: 20;
    width: 100%;
    position: static;
    top: 0;
    text-align: left;
    left: 0px;
    border-radius: 12px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    padding: 8px 20px 80px;
}

.featured-games__details-button {
    position: absolute;
    bottom: 20px;
    width: 100%;
    padding: 0 20px;
    left: 0;
}

.featured-games__title {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    color: #324C95;
    letter-spacing: 0.055555556em;
    font-size: 1.125rem;
    font-weight: 800;
}

.featured-games__cta {
    text-decoration: none;
    display: block;
    text-align: center;
    height: 46px;
    line-height: 46px;
    width: 100%;
    margin-top: 16px;
    font-weight: bold;
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    font-size: 1.375rem;
    text-shadow: 0 2px rgba(0,0,0,0.2);
}

.featured-games__cta:hover {
    color: #fff;
}

@media only screen and (min-width: 54.063em){
    .featured-games__item {
        width: 33.3333%;
        background: transparent;
    }

    .featured-games__item .featured-games__item-wrap {
        margin-left: 6px;
        margin-right: 6px;
    }

    .featured-games__item .featured-games__image {
        box-shadow: 4px 4px rgba(0,0,0,0.2);
    }

    .featured-games__item .featured-games__platform-tag-wrap {
        text-align: right;
    }

    .featured-games__item .featured-games__hidden {
        display: none;
        left: -3px;
        position: absolute;
    }

    .featured-games__item:hover {
        box-shadow: 4px 4px rgba(0,0,0,0.2);
    }

    .featured-games__item:hover,
    .featured-games__item:focus-within {
        background-color: #fff;
        z-index: 21;
        border: 3px solid #fff;
        border-radius: 12px;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        margin-bottom: 5px;
    }

    .featured-games__item:hover .featured-games__image,
    .featured-games__item:focus-within .featured-games__image {
        transform: scale(1) translateY(4px);
        border-radius: 8px;
        border: none;
        box-shadow: none;
    }

    .featured-games__item:hover .featured-games__image img,
    .featured-games__item:focus-within .featured-games__image img {
        border-radius: 8px;
    }

    .featured-games__item:hover .featured-games__platform-tag-wrap,
    .featured-games__item:focus-within .featured-games__platform-tag-wrap {
        text-align: left;
        padding-left: 14px;
        padding-bottom: 0;
    }

    .featured-games__item:hover .featured-games__platform-tag-wrap span,
    .featured-games__item:focus-within .featured-games__platform-tag-wrap span {
        background-color: #fff;
        padding: 12px 6px 0px 0px;
        margin-bottom: 0px;
        display: inline-block;
        margin-right: 0;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        box-shadow: none;
    }

    .featured-games__item:hover .featured-games__hidden,
    .featured-games__item:focus-within .featured-games__hidden {
        display: block;
        z-index: 22;
        top: 100.75%;
        border: 3px solid #fff;
        border-radius: 12px;
        width: calc(100% + 18px);
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        box-shadow: 4px 4px rgba(0,0,0,0.2);
        padding-top: 10px;
        left: -9px;
    }

    .featured-games__item:hover .featured-games__item-wrap,
    .featured-games__item:focus-within .featured-games__item-wrap {
        height: calc(100% - 12px);
    }

    .featured-games__item .featured-games__item-wrap {
        height: calc(100% - 12px);
        box-shadow: none;
    }
}

@media (prefers-reduced-motion: reduce){
    .featured-games__item .featured-games__image {
        transition: none;
    }
}

.is-reduced-motion .featured-games__item .featured-games__image {
    transition: none;
}

.BSParticle {
    display: block;
    height: 1px;
    left: 50%;
    position: absolute;
    pointer-events: none;
    top: 50%;
    width: 1px;
    z-index: 3;
}

.BSParticle::after {
    background: url('star-single.png');
    background-size: 100% 100%;
    content: '';
    display: block;
    height: 102px;
    position: absolute;
    transform: translate(-51px, -51px);
    width: 102px;
}

.BSParticle--2::after {
    background: url('star-single-blue.png');
}

.BSParticle--3::after {
    background: url('star-single-green.png');
}

.BSParticle--4::after {
    background: url('star-single-pink.png');
}

.BSParticle--5::after {
    background: url('star-single-yellow.png');
}

@media (prefers-reduced-motion: reduce){
    .BSParticle {
        display: none;
    }
}

.is-reduced-motion .BSParticle {
    display: none;
}

@keyframes rotating{
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(-360deg);
    }
}

.hero {
    transition: all .5s ease;
    position: relative;
}

.hero h1,
.hero .h1 {
    text-shadow: 0 4px 0 rgba(255,255,255,0.5);
    font-weight: 900;
    font-size: 15vw;
    letter-spacing: 1px;
    margin: 0;
}

.hero-wrapper {
    overflow: hidden;
    position: relative;
}

.hero__bg__container,
.hero__bg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.hero__bg--pink {
    background-image: linear-gradient(to bottom, #FFB6D9 0%, #FCD454 100%);
}

.hero__bg--puffy {
    background-image: linear-gradient(to bottom, #CBB0FF 0%, #CCFFFD 100%);
}

.hero__bg--powerful {
    background-image: linear-gradient(to bottom, #FFAE29 0%, #FCD555 100%);
}

.hero__bg--final {
    background-image: linear-gradient(to bottom, #CCFFFD 0%, #FFB6D9 100%);
}

.hero__frame {
    position: absolute;
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 2;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    opacity: 0;
}

.hero__frame .img-max {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}

.hero__frame__img {
    -ms-flex-preferred-size: 70%;
    flex-basis: 70%;
    width: 70%;
    max-width: 70%;
}

.hero__frame__txt {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    width: 100%;
    max-width: 100%;
    text-align: center;
}

.hero-splat {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 10;
    display: none;
}

.hero-splat__img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
}

.hero-splat__img img {
    display: block;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.hero-splat__img--incoming {
    transform: translate(-50%, -50%) scale(0);
}

.hero__particlesystem {
    height: 100%;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 2;
}

.hero__particlesystem__particle {
    background: url('star-glow.png') no-repeat;
    background-size: contain;
    background-position: 50%;
    height: 50px;
    left: 50%;
    position: absolute;
    top: 50%;
    width: 50px;
    opacity: 0;
}

.hero__spiral {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.hero__spiral__pattern {
    animation: rotating 20s linear infinite;
    background: url('spiral.png');
    height: 1500px;
    transform-origin: 50%;
    width: 1500px;
}

.hero__final {
    position: relative;
    z-index: 5;
    opacity: 0;
}

.audio-btn {
    width: 70px;
    height: 40px;
    padding-right: 10px;
    position: absolute;
    padding-left: 5px;
    background-color: #fff;
    box-shadow: 0px 2px 1px rgba(0,0,0,0.15);
    right: 0;
    top: 70px;
    border: none;
    transform: translateX(70px);
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
    display: block;
    cursor: pointer;
    z-index: 90;
    transition: transform .15s ease-in-out;
}

.is-loaded .audio-btn {
    transform: translateX(10px);
}

.audio-btn:hover {
    transform: translateX(0px);
    transition-delay: 0;
}

.audio-btn__status {
    background-color: transparent;
    background-image: url('sound-icons-off.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 25px 25px;
    width: 100%;
    height: 100%;
    display: block;
}

.is-playing .audio-btn__status {
    background-image: url('sound-icons-on.svg');
}

.hero__content {
    position: relative;
    text-align: center;
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    font-weight: 700;
    letter-spacing: 0.5px;
    padding-top: 70px;
}

.hero__content span.img {
    display: block;
    position: relative;
    max-width: 220px;
    width: 100%;
    margin: 0 auto;
    padding-top: 10px;
}

.hero__content h1,
.hero__content .h1 {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.5px;
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
}

.hero__content h1 img,
.hero__content .h1 img {
    position: relative;
    z-index: 2;
    display: block;
    max-width: 100%;
    margin: 0 auto;
}

.hero__content p {
    font-size: 1rem;
}

.hero__image-group {
    width: 100%;
    margin-top: 8rem;
    position: relative;
}

.hero__image-group .kirby {
    position: absolute;
    top: -6rem;
    left: 12.5rem;
    z-index: 1;
}

.hero__image-group .metaknight {
    position: absolute;
    top: -15rem;
    left: 24.5rem;
}

.hero__image-group .dedede {
    position: absolute;
    top: -1rem;
    left: 0;
}

.hero__image-group .waddledee {
    position: absolute;
    top: -11rem;
    left: 5rem;
}

@media only screen and (max-width: 40em){
    .hero__container {
        padding: 0;
    }

    .hero__image-group {
        top: 7rem;
        height: 10rem;
        width: 275px;
        margin-left: 50%;
        transform: translateX(-50%);
    }

    .hero__image-group .kirby {
        width: 215px;
        height: auto;
        top: -10rem;
        left: 20%;
    }

    .hero__image-group .metaknight {
        width: 150px;
        height: auto;
        top: -14rem;
        left: 60%;
    }

    .hero__image-group .dedede {
        height: auto;
        top: -7rem;
        width: 118px;
        left: calc(5% - 50px);
    }

    .hero__image-group .waddledee {
        height: auto;
        width: 90px;
        top: -12rem;
        left: calc(18% - 40px);
    }
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .hero__image-group {
        height: 450px;
        top: 6rem;
        left: 55%;
        transform: translateX(-50%);
    }

    .hero__image-group .kirby {
        width: 408px;
        height: auto;
        bottom: 0;
        left: calc(27% - 30px);
    }

    .hero__image-group .metaknight {
        width: 279px;
        height: auto;
        top: -12rem;
        left: calc(65% - 70px);
    }

    .hero__image-group .dedede {
        width: 234px;
        height: auto;
        top: -2rem;
        left: calc(10% - 90px);
    }

    .hero__image-group .waddledee {
        width: 181px;
        height: auto;
        top: -10.5rem;
        left: calc(15% - 50px);
    }
}

@media only screen and (min-width: 40.063em){
    .hero__container {
        padding: 3rem 0 0;
    }

    .hero__content h1,
    .hero__content .h1 {
        font-size: 1.875rem;
    }

    .hero__content span.img {
        padding-top: 20px;
        max-width: 350px;
    }

    .hero__content p {
        font-size: 1.125rem;
    }
}

@media only screen and (min-width: 54.063em) and (max-width: 71em){
    .hero__image-group {
        top: 6rem;
        left: 30%;
        transform: translateX(-50%);
    }

    .hero__image-group .kirby {
        width: 400px;
        height: auto;
        bottom: 0;
        left: 10.5rem;
    }

    .hero__image-group .metaknight {
        width: 250px;
        height: auto;
        top: -14rem;
        left: 20rem;
    }

    .hero__image-group .dedede {
        width: 225px;
        height: auto;
        top: -1rem;
        left: 0rem;
    }

    .hero__image-group .waddledee {
        width: 165px;
        height: auto;
        top: -10.5rem;
        left: 5rem;
    }
}

@media only screen and (min-width: 54.063em){
    .hero-wrapper {
        min-height: 603px;
    }

    .hero__frame {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        height: 100%;
        left: 50%;
        margin: 0 auto;
        max-width: 1140px;
        top: 0;
        transform: translateX(-50%);
        width: 100%;
    }

    .hero__frame h1,
    .hero__frame .h1 {
        font-size: 7.5rem;
    }

    .hero__frame__img,
    .hero__frame__txt {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
        max-width: none;
        text-align: left;
        width: auto;
    }

    .hero__frame--1 .hero__frame__txt {
        -ms-flex-item-align: end;
        align-self: flex-end;
        margin: 0 0 0 -5%;
        padding-bottom: 95px;
    }

    .hero__frame--2 .hero__frame__txt {
        -ms-flex-order: 0;
        order: 0;
    }

    .hero__frame--2 .hero__frame__img {
        -ms-flex-order: 1;
        order: 1;
        padding-left: 3%;
    }

    .hero__frame--3 {
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .hero__frame--3 .hero__frame__img {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        margin-left: -3%;
    }

    .hero__frame--3 .hero__frame__txt {
        position: absolute;
        bottom: 0;
        left: 25%;
    }

    .hero__final {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        transform: translate(-50%, -50%);
    }

    .hero__content {
        padding-top: 0;
    }

    .hero__content span.img {
        max-width: none;
        width: auto;
    }

    .hero__container {
        padding: 7rem 0 4rem 2.5rem;
    }
}

@media only screen and (min-width: 71.063em){
    .hero__image-group {
        margin-top: 10rem;
    }
}

@media (prefers-reduced-motion: reduce){
    .hero__spiral__pattern {
        animation: none;
    }

    .audio-btn {
        opacity: 0;
    }

    .is-loaded .audio-btn {
        opacity: 1;
        transition: transform 0s, opacity .3s;
    }
}

.is-reduced-motion .hero__spiral__pattern {
    animation: none;
}

.is-reduced-motion .audio-btn {
    opacity: 0;
}

.is-reduced-motion .is-loaded .audio-btn {
    opacity: 1;
    transition: transform 0s, opacity .3s;
}

@keyframes rotating{
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(-360deg);
    }
}

.pageheader {
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    overflow: hidden;
    position: relative;
    text-align: center;
}

.pageheader h1 {
    font-size: 2.5rem;
    letter-spacing: 1.33px;
    margin: 0 0 4px 0;
}

.pageheader p {
    margin-top: 13px;
}

.pageheader__spiral {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.pageheader__spiral__pattern {
    animation: rotating 20s linear infinite;
    background: url('spiral.png');
    height: 1500px;
    transform-origin: 50%;
    width: 1500px;
}

.pageheader__container {
    position: relative;
    z-index: 2;
    padding: 54px 0 0;
    -ms-flex-align: center;
    align-items: center;
}

.pageheader__content,
.pageheader__characters {
    position: relative;
}

.pageheader__content {
    padding: 20px 0;
}

@media only screen and (min-width: 40.063em){
    .pageheader h1 {
        font-size: 3rem;
    }
}

@media (prefers-reduced-motion: reduce){
    .pageheader__spiral__pattern {
        animation: none;
    }
}

.is-reduced-motion .pageheader__spiral__pattern {
    animation: none;
}

.reduce-motion-bar {
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 3px 0 2px;
    position: relative;
    z-index: 30;
}

.reduce-motion-bar a,
.reduce-motion {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    border-radius: 0;
    color: #AD2C3D;
    font-weight: 700;
    letter-spacing: 0.055625em;
    padding: 4px 18px;
    text-decoration: none;
    text-transform: uppercase;
}

@media (prefers-reduced-motion: reduce){
    .reduce-motion-bar a,
    .reduce-motion {
        display: none;
    }
}

.reduce-motion__label {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
}

.reduce-motion__label .icon {
    height: 10px;
    margin-left: 8px;
    width: 8px;
}

.reduce-motion__label--off {
    display: none;
}

.reduce-motion__label--off .icon {
    height: 8px;
    width: 8px;
}

@media (prefers-reduced-motion: reduce){
    .reduce-motion__label--off {
        display: -ms-flexbox;
        display: flex;
    }

    .reduce-motion__label--on {
        display: none;
    }
}

.is-reduced-motion .reduce-motion__label--off {
    display: -ms-flexbox;
    display: flex;
}

.is-reduced-motion .reduce-motion__label--on {
    display: none;
}

.skippers {
    left: calc(50% + 100px);
    position: absolute;
}

.skippers__item {
    opacity: 0;
    pointer-events: none;
}

.skippers__item:focus {
    opacity: 1;
    pointer-events: all;
}

.skippers__item:focus {
    box-shadow: 0 0 6px 6px #CCFFFD;
    outline: 2px dashed #1423A5;
    outline-offset: 2px;
}

#skippers-main {
    left: 0;
    position: fixed;
    top: 0;
    pointer-events: none;
}

.reduce-motion-bar {
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 3px 0 2px;
    position: relative;
    z-index: 30;
}

.reduce-motion-bar a,
.reduce-motion {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    border-radius: 0;
    color: #AD2C3D;
    font-weight: 700;
    letter-spacing: 0.055625em;
    padding: 4px 18px;
    text-decoration: none;
    text-transform: uppercase;
}

@media (prefers-reduced-motion: reduce){
    .reduce-motion-bar a,
    .reduce-motion {
        display: none;
    }
}

.reduce-motion__label {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
}

.reduce-motion__label .icon {
    height: 10px;
    margin-left: 8px;
    width: 8px;
}

.reduce-motion__label--off {
    display: none;
}

.reduce-motion__label--off .icon {
    height: 8px;
    width: 8px;
}

@media (prefers-reduced-motion: reduce){
    .reduce-motion__label--off {
        display: -ms-flexbox;
        display: flex;
    }

    .reduce-motion__label--on {
        display: none;
    }
}

.is-reduced-motion .reduce-motion__label--off {
    display: -ms-flexbox;
    display: flex;
}

.is-reduced-motion .reduce-motion__label--on {
    display: none;
}

.loader {
    display: none;
    height: 330px;
    -ms-flex-pack: center;
    justify-content: center;
}

.loader--loading {
    display: -ms-flexbox;
    display: flex;
}

.loader--loading .loader__icon:before {
    animation: rotate 1s linear infinite;
}

.loader__icon {
    --dim: 81px;
    --loader-scale: 58px;
    background-color: white;
    border-radius: 50%;
    box-shadow: 0 5px 5px rgba(0,0,0,0.3);
    height: var(--dim);
    margin-top: 80px;
    position: relative;
    width: var(--dim);
}

.loader__icon::before {
    background: url('icon-loading.svg');
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: "";
    height: var(--loader-scale);
    left: 50%;
    margin-left: calc(var(--loader-scale) * -0.5);
    margin-top: calc(var(--loader-scale) * -0.5);
    position: absolute;
    top: 50%;
    width: var(--loader-scale);
}

@keyframes rotate{
    to {
        transform: rotate(359deg);
    }
}

@media only screen and (min-width: 40.063em){
    .loader {
        height: 428px;
    }
}

@media (prefers-reduced-motion: reduce){
    .loader__icon::before {
        animation-play-state: paused;
    }
}

.is-reduced-motion .loader__icon::before {
    animation-play-state: paused;
}

.news-error {
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
}

.news-error div {
    background: white;
    border-radius: 12px;
    box-shadow: 0 5px 5px 0 rgba(0,0,0,0.3);
    padding: 36px 24px 38px;
}

[data-news="loaded"] .news-item {
    opacity: 1;
    transform: translate(0, 0);
    transition: transform 0.4s ease, opacity 0.4s ease;
}

li {
    list-style: none;
}

.news-item {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    margin-bottom: 24px;
    margin-left: auto;
    margin-right: auto;
    max-width: 400px;
    opacity: 0;
    transform: translateY(30px);
}

.news-item:nth-child(9n+1) {
    transition-delay: .1s;
}

.news-item:nth-child(9n+2) {
    transition-delay: .2s;
}

.news-item:nth-child(9n+3) {
    transition-delay: .3s;
}

.news-item:nth-child(9n+4) {
    transition-delay: .4s;
}

.news-item:nth-child(9n+5) {
    transition-delay: .5s;
}

.news-item:nth-child(9n+6) {
    transition-delay: .6s;
}

.news-item:nth-child(9n+7) {
    transition-delay: .7s;
}

.news-item:nth-child(9n+8) {
    transition-delay: .8s;
}

.news-item:nth-child(9n+9) {
    transition-delay: .9s;
}

.news-item article,
.news-item a {
    display: block;
    height: 100%;
    text-decoration: none;
}

.news-item a {
    --card-scale: 1;
    transform: scale(var(--card-scale));
    transition: transform .2s;
}

.news-article {
    background-color: white;
    border-radius: 12px;
    box-shadow: 0 5px 5px 0 rgba(0,0,0,0.3);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    font-weight: bold;
    height: 100%;
    padding: 24px 12px 15px;
}

.news-article__date {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    display: block;
    font-size: 13px;
    font-weight: normal;
    padding: 0 16px 12px 16px;
}

.news-article__title {
    font-size: 1.1rem;
    line-height: 1.4;
    padding: 0 16px;
    margin-bottom: 20px;
}

.news-article__thumb {
    border-radius: 12px;
    display: block;
    margin-bottom: 12px;
    width: 100%;
}

.news-article__more {
    color: #E60012;
    display: inline-block;
    font-weight: bold;
}

@media (hover: hover){
    .news-item a:hover {
        --card-scale: 1.02;
        border-radius: 12px;
    }

    .news-item a:hover .news-article__more {
        text-decoration: underline;
    }
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .news-item {
        -ms-flex: 0 0 304px;
        flex: 0 0 304px;
        max-width: none;
    }

    .news-article__title {
        font-size: 0.9rem;
        padding: 0 8px;
    }
}

@media only screen and (min-width: 40.063em){
    .news-item {
        margin-left: 0;
        margin-right: 0;
    }
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .news-item {
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    }
}

@media (prefers-reduced-motion: reduce){
    .news-item {
        transition-property: opacity;
    }

    .news-item a {
        --card-scale: 1;
    }
}

.is-reduced-motion .news-item {
    transition-property: opacity;
}

.is-reduced-motion .news-item a {
    --card-scale: 1;
}

.news-modal--close {
    width: 40px;
    height: 40px;
    position: absolute;
    right: 17px;
    top: 75px;
}

.news-modal--close img {
    width: 100%;
}

.news-modal-bg {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    opacity: 0;
    position: fixed;
    transition: opacity 0.4s linear 0s, z-index 0s linear 0.4s;
    z-index: -10;
}

.news-modal-bg--shown {
    transition: opacity 0.4s linear 0s, z-index 0s linear 0s;
    z-index: 60;
}

.news-modal-bg--gradient {
    opacity: 0.85;
    background-image: linear-gradient(0deg, #F6A8B3 0%, #FDD6BD 100%);
}

body.news-modal-open {
    overflow: hidden;
}

.modal--news {
    --top-offset: 80px;
    overflow: scroll;
    z-index: 65;
}

.modal--news .modal__overlay {
    display: none;
}

.modal--news .modal__close {
    display: none;
}

.modal--news .modal__focus-start {
    box-shadow: none;
}

.modal--news .modal__focus-start:focus {
    outline: none;
}

.modal--news .modal__focus-start:not(:focus-visible) {
    box-shadow: none;
}

.modal--news .modal__wrapper {
    max-height: 100%;
    max-width: 926px;
    overflow: visible;
}

.modal--news .modal__content {
    background: transparent;
    padding: 120px 0 80px;
    text-align: center;
}

.modal--news .modal__content::before,
.modal--news .modal__content::after {
    display: none;
}

.modal--news .news-article__modal-content-inner {
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 5px 5px 0 rgba(0,0,0,0.3);
    padding: 0 16px;
    text-align: left;
}

.modal--news .news-article__title {
    font-size: 1.3em;
    line-height: 1.25;
    margin: 0 auto 16px;
    padding: 0;
    text-align: center;
}

.modal--news .news-article__date {
    font-size: 0.9rem;
    font-weight: bold;
    margin-bottom: 28px;
    padding: 0;
    text-align: center;
}

.modal--news .news-article__thumb-wrapper {
    border-radius: 20px;
    box-shadow: 0 2px 3px 0 rgba(0,0,0,0.5);
    margin-bottom: 40px;
    max-width: none;
    width: 100%;
}

.modal--news .news-article__thumb {
    box-shadow: none;
    display: block;
    margin-bottom: 0;
    opacity: 1;
    width: 100%;
}

.modal--news .news-article__body {
    line-height: 1.6;
    margin-bottom: 48px;
}

.modal--news .news-article__body p {
    margin-bottom: 0;
}

.modal--news .news-article__body p+p {
    margin-top: 32px;
}

.modal--news .news-article__body ul {
    margin: 24px 0 40px;
}

.modal--news .news-article__body li+li {
    margin-top: 12px;
}

.modal--news .news-article__body img {
    width: 100%;
}

.modal--news .news-article__legal {
    margin-bottom: 48px;
}

.modal--news .news-article__legal p {
    font-size: 0.85rem;
}

.modal--news .news-article__legal p+.modal--news .news-article__legal p {
    margin-top: 1em;
}

.news-article__logo {
    display: inline-block;
    margin: 0 auto 48px;
    width: 200px;
}

.news-article__logo img {
    display: block;
    width: 100%;
}

@media only screen and (max-width: 40em){
    .modal--news .modal__wrapper {
        height: 100%;
        left: 0;
        max-height: none;
        max-width: none;
        overflow: hidden;
        top: 0;
        transform: none;
        width: 100%;
    }

    .modal--news .modal__content {
        height: 100%;
        max-height: none;
        overflow: auto;
    }

    .news-article__body p a {
        word-break: break-word;
    }
}

@media only screen and (min-width: 40.063em){
    .modal--news .modal__wrapper {
        margin-top: var(--top-offset);
    }

    .modal--news .modal__content {
        margin-bottom: 100px;
        overflow: visible;
        padding: 36px 0 100px;
    }

    .modal--news .news-article__modal-content-inner {
        padding: 0 75px 75px 75px;
    }

    .modal--news .news-article__title {
        font-size: 1.9em;
    }

    .modal--news .news-article__thumb-wrapper {
        border-radius: 20px;
        position: relative;
        width: 100%;
    }

    .news-article__logo {
        margin-bottom: 64px;
        width: auto;
    }
}

@media only screen and (min-width: 71.063em){
    .modal--news .news-article__thumb-wrapper {
        border-radius: 20px;
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce){
    .modal--news .modal__content {
        transition-property: opacity;
    }
}

.is-reduced-motion .modal--news .modal__content {
    transition-property: opacity;
}

.pageheader__content {
    padding-left: 11px;
    padding-right: 11px;
}

.footer-main {
    background: #fff;
    color: #000;
    padding: 20px 0 20px;
    position: relative;
}

.footer-main::before {
    animation: cloudAnimation 60s linear infinite;
    background: transparent url('footer-bg.png') left top;
    position: absolute;
    content: '';
    height: 217px;
    width: 9775px;
    top: -60px;
    overflow-x: hidden;
}

.footer-main .customer__support {
    font-family: Lato, Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-decoration: none;
}

.footer-main .customer__support:hover {
    text-decoration: underline;
}

.footer-main__lang {
    text-align: center;
    color: white;
    padding-top: 20px;
    padding-bottom: 30px;
}

.footer-main__lang p {
    font-size: 1.5rem;
}

.footer-main__share,
.footer-main__links,
.footer-main__legal {
    top: 3rem;
}

.footer-main__share {
    display: -ms-flexbox;
    display: -webkit-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 30px;
    padding: 0 11px;
    text-align: center;
}

.footer-main__share__facebook,
.footer-main__share__support {
    font-size: 1.25rem;
    padding: 21px 15px 17px;
}

.footer-main__share__facebook {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
    -webkit-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-flex-pack: center;
    justify-content: center;
    display: -ms-flexbox;
    display: flex;
    max-height: 46px;
    border: 3px solid #8EB8CC;
    background-color: #E4F1F7;
    padding: 7px 2rem;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.footer-main__share__facebook::before {
    background-color: rgba(255,255,255,0.5);
    content: '';
    height: 55px;
    width: 100%;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: -2rem;
}

.footer-main__share__facebook::after {
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom: 2px solid #BDD4DF;
    position: absolute;
    top: 2px;
    left: 0;
    content: '';
    height: 38px;
    width: 100%;
}

.footer-main__share__facebook p {
    margin-top: 0;
    margin-right: 12px;
    width: 7rem;
    font-size: 1rem !important;
    margin-bottom: 0;
    z-index: 1;
}

.footer-main__share__facebook nclood-social,
.footer-main__share__facebook .fb_iframe_widget,
.footer-main__share__facebook .fb_iframe_widget span {
    display: block;
}

.footer-main__share__facebook nclood-social {
    z-index: 2;
}

.footer-main__share__support {
    display: -ms-inline-flexbox;
    display: -webkit-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
    -webkit-flex-align: center;
    align-items: center;
    margin: 0 auto;
}

.footer-main__links {
    margin-bottom: 30px;
}

.footer-main__links a.esrb-rating {
    min-height: 81px;
}

.footer-main__legal {
    text-align: center;
    min-height: 85px;
}

.footer-main__legal p {
    font: normal 12px Arial, Helvetica, sans-serif;
    margin-bottom: 3px;
}

.footer-main__legal p:last-of-type {
    margin-bottom: 20px;
}

@keyframes cloudAnimation{
    from {
        transform: translateX(-1955px);
    }

    to {
        transform: translateX(0px);
    }
}

.coral-button {
    background-color: #F5637E;
    border: 3px solid #B11A45;
    padding: 4px 4rem 7px;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    transition: all 0.4s ease;
    white-space: nowrap;
    height: 46px;
}

.coral-button:hover {
    transform: scale(1.0325);
    transition: all 0.2s ease;
}

.coral-button::before {
    background-color: rgba(255,255,255,0.1);
    content: '';
    height: 55px;
    width: 100%;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: -2rem;
    z-index: 1;
}

.coral-button::after {
    background-color: #C72549;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom: 2px solid #9E1534;
    position: absolute;
    top: 2px;
    left: 0;
    content: '';
    height: 38px;
    width: 100%;
}

.coral-button span {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    color: #fff;
    font-size: 1.375rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-shadow: 0 2px rgba(0,0,0,0.2);
    position: relative;
    z-index: 2;
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .coral-button {
        padding: 5px 3.5rem;
    }
}

@media only screen and (min-width: 40.063em){
    .footer-main__share {
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-pack: center;
        -webkit-flex-pack: center;
        justify-content: center;
        -ms-flex-align: initial;
        -webkit-flex-align: initial;
        align-items: initial;
    }

    .footer-main__share__support {
        font-size: 1.625rem;
    }

    .footer-main__share__facebook {
        margin-right: 5px;
        margin-bottom: 0;
    }

    .footer-main__share__facebook p {
        font-size: 1.625rem;
    }

    .footer-main__share__support {
        margin: 0;
    }
}

@media only screen and (min-width: 54.063em){
    .footer-main__share__facebook {
        position: relative;
        padding-left: 43px;
        margin-right: 30px;
    }
}

@media (prefers-reduced-motion: reduce){
    .footer-main::before {
        animation: none;
    }

    .coral-button {
        transition: none;
    }
}

.is-reduced-motion .footer-main::before {
    animation: none;
}

.is-reduced-motion .coral-button {
    transition: none;
}

.page-home section {
    position: relative;
}

.page-home .hero-wrapper {
    z-index: 2;
}

.page-home main {
    z-index: 5;
}

.page-home .section-title {
    font-family: 'Sniglet', 'Open sans', 'Helvetica', sans-serif;
    font-size: 3rem;
    font-weight: 800;
}

.page-home .hero {
    text-align: center;
}

.page-home .hero .cta {
    margin-top: 20px;
}

.page-home .hero .starburst {
    max-width: 300px;
    min-width: 300px;
    margin-left: auto;
    margin-right: auto !important;
    display: inline-block;
}

.page-home .section--ability {
    background-image: url('bg-starpattern-purple_2x.jpg');
    background-size: 120px 120px;
    padding: 40px 0;
    color: #fff;
    z-index: 2;
    position: relative;
}

.page-home .section--ability h3 {
    margin-bottom: 10px;
}

.page-home .section--ability h4 {
    margin: 0;
}

.page-home .section--ability p {
    color: #fff;
    text-shadow: 0 2px 0 rgba(0,0,0,0.2);
}

.page-home .section--ability .img-max {
    display: block;
    margin: 0 auto;
}

.page-home .section--30-years {
    background: url('anniversary-bg.jpg') center center;
    background-size: cover;
    padding: 7rem 0;
}

.page-home .section--30-years .column {
    background: white;
    border-radius: 1.25rem;
    margin-left: 18rem;
    padding: 2.5rem 8rem;
    position: relative;
}

.page-home .section--30-years .column .char-30 {
    position: absolute;
    left: -280px;
    top: -40px;
    height: 300px;
    width: 300px;
}

.page-home .section--30-years .column .char-30 img {
    width: 100%;
}

.page-home .section--30-years .column .starburst {
    margin: 25px auto 0px auto !important;
    max-width: 300px;
}

.page-home .section--news-and-videos {
    background: url('star-gradient-bg.jpg') center center;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 5rem 0;
}

.page-home .section--news-and-videos h2 {
    color: white;
}

.page-home .section--news-and-videos .starburst {
    margin: 25px auto 0px auto !important;
    max-width: 300px;
}

.page-home .section--news-and-videos ul {
    padding-left: 0;
}

.page-home .section--feature {
    background-color: #ffec40;
    color: #324C95;
    padding: 5rem 0;
    position: relative;
    z-index: 2;
}

.page-home .section--feature .bg {
    background: url('bg_starpattern-white.png') repeat center center;
    z-index: -1;
    height: 100%;
    left: 0;
    opacity: .35;
    position: absolute;
    top: 0;
    width: 100%;
}

.page-home .section--feature .feature__image {
    border: 3px solid #ffffff;
    border-radius: 1.75rem;
    display: block;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.page-home .section--feature .feature__image:not(:focus) {
    box-shadow: 4px 4px 0 0 rgba(0,0,0,0.2);
}

.page-home .section--feature .feature__image img {
    display: block;
    max-width: 100%;
    width: 100%;
}

.page-home .section--feature .feature__text {
    color: #1423A5;
    margin-top: 30px;
}

.page-home .section--feature .starburst {
    margin: 25px auto 0px auto !important;
    max-width: 300px;
}

.page-home .section--games {
    position: relative;
    padding: 4rem 0 6rem;
    background: url('history-bg-pattern-pink-2x.jpg');
    background-size: 500px;
}

.page-home .section--games h2 {
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    font-size: 3rem;
    margin-bottom: 1.5rem;
}

.page-home .section--games .button__games .starburst {
    max-width: 300px;
    min-width: 300px;
    margin: 30px auto 10px auto !important;
}

.page-home .section--games .games__links {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    font-size: 1.125rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin-top: 2rem;
    padding-bottom: 1rem;
    line-height: 1.5;
}

.page-home .section--games .games__links .link {
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    display: inline-block;
    transition-duration: 0.3s;
    transition-property: transform;
    transform: translateZ(0);
}

.page-home .section--games .games__links .link:hover {
    transform: translateY(-3px);
}

.page-home .section--games .games__links span {
    padding: 0 0.5em;
    display: none;
    margin-bottom: 2rem;
}

.page-home .section--games .games__links span.heading {
    display: inline-block;
}

.page-home .section--games .games__links .platform-links {
    text-align: center;
}

.page-home .section--games .games__links .platform-link,
.page-home .section--games .games__links .link {
    display: block;
}

.page-home .section--amiibo {
    position: relative;
    background: linear-gradient(to bottom, #F0F878 10%, #A2BA30 100%);
    padding: calc(5rem - 118px) 0 4rem;
}

.page-home .section--amiibo::before {
    background: url('platform1-top.png') top center;
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 118px;
    z-index: 1;
}

.page-home .section--amiibo::after {
    background-image: url('platform-1-bg.gif');
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0.5;
}

.page-home .section--amiibo .amiibo__small-characters {
    position: relative;
    top: -5.75rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    z-index: 1;
}

.page-home .section--amiibo .amiibo__small-characters .kirby {
    margin-left: 4rem;
    margin-right: 2rem;
}

.page-home .section--amiibo .amiibo__small-characters .kirby .shadow {
    background: radial-gradient(ellipse, rgba(0,0,0,0.2) 0%, transparent 80%);
    height: 10px;
    width: 90px;
    border-radius: 50%;
    margin-left: 0.75rem;
}

.page-home .section--amiibo .amiibo__small-characters .baddy {
    -ms-flex-item-align: end;
    align-self: flex-end;
}

.page-home .section--amiibo .amiibo__small-characters .baddy .shadow {
    background: radial-gradient(ellipse, rgba(0,0,0,0.2) 0%, transparent 80%);
    height: 10px;
    width: 60px;
    border-radius: 50%;
    margin-left: 0.5rem;
}

.page-home .section--amiibo .amiibo__content {
    position: relative;
    z-index: 2;
}

.page-home .section--amiibo .amiibo__content h2 {
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    font-size: 3rem;
    margin-bottom: 1.5rem;
}

.page-home .section--amiibo .button-container {
    margin-top: 2rem;
    padding: 0 10px;
}

.page-home .section--amiibo .button-container .starburst {
    width: 400px;
    width: 100%;
    max-width: 400px;
}

.page-home .section--amiibo .amiibo__button {
    display: block;
    clear: both;
    position: relative;
    overflow: hidden;
    background-color: #F5637E;
    border: 3px solid #B11A45;
    padding-top: 4px;
    max-height: 46px;
    height: 46px;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    text-align: center;
    text-decoration: none;
    z-index: 1;
    transition: all 0.4s ease;
}

.page-home .section--amiibo .amiibo__button:hover {
    transform: scale(1.0325);
    transition: all 0.2s ease;
}

.page-home .section--amiibo .amiibo__button::before {
    background-color: rgba(255,255,255,0.1);
    content: '';
    height: 55px;
    width: 100%;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: -2.125rem;
    z-index: 1;
}

.page-home .section--amiibo .amiibo__button::after {
    background-color: #C72549;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom: 2px solid #D27D7A;
    position: absolute;
    top: 2px;
    left: 0;
    content: '';
    height: calc(100% - 2px);
    width: 100%;
}

.page-home .section--amiibo .amiibo__button span {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    text-shadow: 0 2px rgba(0,0,0,0.2);
    color: #fff;
    font-size: 1.375rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    position: relative;
    z-index: 2;
    white-space: nowrap;
}

.page-home .section--amiibo .amiibo__button img {
    position: absolute;
    left: calc(100% - 35px);
    z-index: 5;
    top: 50%;
    transform: translateY(-50%);
    filter: drop-shadow(0 2px rgba(0,0,0,0.2));
}

.page-home .section--amiibo .section--my-nintendo {
    padding: 7rem 0;
    position: relative;
    z-index: 2;
}

.page-home .section--amiibo .section--my-nintendo .column {
    background: white;
    border-radius: 1.25rem;
    margin-left: 18rem;
    padding: 2.5rem 8rem;
    position: relative;
}

.page-home .section--amiibo .section--my-nintendo .column .char-30 {
    position: absolute;
    width: 364px;
    height: 364px;
    left: -280px;
    top: -40px;
}

.page-home .section--amiibo .section--my-nintendo .column .char-30 img {
    width: 100%;
}

.page-home .section--amiibo .section--my-nintendo .column .starburst {
    margin: 25px auto 0px auto !important;
    max-width: 300px;
}

.page-home .section--play {
    position: relative;
    height: 100%;
    background: linear-gradient(to bottom, #FCD555 10%, #FFAE29 100%);
}

.page-home .section--play::after {
    background-image: url('star-single.png');
    background-size: 4.4rem;
    opacity: 0.5;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 750px;
    content: '';
}

.page-home .section--news-videos {
    background: #7ED6FF url('platform2-top-tile.jpg') repeat-x left top;
    color: #fff;
    padding: 6.75rem 0 4rem;
    text-align: center;
    position: relative;
}

.page-home .section--news-videos h3 {
    letter-spacing: 1px;
    text-shadow: 0 2px 0 rgba(0,0,0,0.2);
}

.page-home .section--news-videos .characters {
    width: 100%;
    height: 73px;
    position: absolute;
    bottom: 100%;
    left: 0;
}

.page-home .section--news-videos .baddy {
    position: absolute;
    top: 0;
    width: 78px;
    height: 73px;
    right: 18%;
}

.page-home .section--news-videos .baddy:before {
    content: '';
    animation: 4s charHover infinite;
    background: url('char-baddy.png') no-repeat center center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.page-home .section--news-videos .baddy:after {
    content: '';
    animation: 4s charShadow infinite;
    position: absolute;
    top: 114%;
    background: rgba(0,0,0,0.2);
    border-radius: 50%;
    width: 50px;
    height: 4px;
    left: 50%;
    margin-left: -25px;
}

.page-home .section--facebook {
    color: #fff;
    padding-bottom: 2.5rem;
    background: #C4CFE2;
}

.page-home .section--facebook .facebook__content {
    position: relative;
    max-width: 800px;
    margin: 0 auto;
    padding: 0 11px;
}

.page-home .section--facebook .facebook__kirby {
    padding-right: 8px;
}

.page-home .section--facebook .facebook__kirby img {
    display: inline-block;
    transition: transform .2s ease;
    margin-top: -25px;
}

.page-home .section--facebook .facebook__text {
    position: relative;
}

.page-home .section--facebook .facebook__text h3 {
    margin: 0;
    padding: 0 10px;
    letter-spacing: 1px;
    text-shadow: 0 2px 0 rgba(0,0,0,0.2);
}

.page-home .section--facebook .facebook__text h3 a {
    color: #324C95;
    text-decoration: none;
}

.page-home .section--facebook:before {
    background: url('scallop-edge-2x.png') repeat-x left top;
    background-size: 29.5px 37px;
    content: '';
    width: 100%;
    height: 37px;
    position: absolute;
    top: -14px;
    left: 0;
}

.page-home .section--facebook:hover .facebook__kirby img {
    transition-duration: .3s;
    transform: translateY(-10px);
}

@media only screen and (max-width: 40em){
    .page-home h2 {
        font-size: 2.5rem !important;
    }

    .page-home__image-group {
        top: 7rem;
        height: 10rem;
        width: 275px;
        margin-left: 50%;
        transform: translateX(-50%);
    }

    .page-home__image-group .kirby {
        width: 215px;
        height: auto;
        top: -10rem;
        left: 3.5rem;
    }

    .page-home__image-group .metaknight {
        width: 150px;
        height: auto;
        top: -15rem;
        left: 9rem;
    }

    .page-home__image-group .dedede {
        width: 108px;
        height: auto;
        top: -7rem;
        left: -1.5rem;
    }

    .page-home__image-group .waddledee {
        width: 50px;
        height: auto;
        top: -10.5rem;
        left: 2rem;
    }

    .page-home .section--30-years {
        padding: 5rem 0rem;
    }

    .page-home .section--30-years .wallpaper {
        margin-bottom: 2rem;
    }

    .page-home .section--30-years .txt {
        padding: 4rem 0.5rem 2.5rem 0.5rem;
    }

    .page-home .section--30-years .column {
        margin: 200px 1rem 0rem 1rem;
        padding: 2.5rem 1.5rem;
    }

    .page-home .section--30-years .column .char-30 {
        left: -30px;
        right: 0;
        margin: auto;
        top: -250px;
    }

    .page-home .seciton--feature p {
        font-size: 1rem;
        margin-right: 0 !important;
        position: relative;
        left: 50%;
        transform: translateX(-50%);
    }

    .page-home .section--games .games__game-links .link {
        display: -webkit-inline-box;
    }

    .page-home .section--amiibo .button-container {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media only screen and (min-width: 40.063em){
    .page-home .section--feature {
        padding: 5.375rem 0 3.5rem;
    }

    .page-home .section--facebook .facebook__content {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .page-home .section--facebook .facebook__kirby img {
        margin-bottom: -35px;
    }

    .page-home .section--facebook .facebook__text {
        max-width: 440px;
    }
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .page-home .section--30-years .column {
        margin-right: 30px;
        padding: 1.5rem 3.5rem;
    }

    .page-home .section--30-years .column h3 {
        margin-top: 0px;
    }

    .char-30 {
        top: 0px;
        left: -250px;
    }
}

@media only screen and (min-width: 54.063em) and (max-width: 71em){
    .page-home .section--30-years .column {
        margin-right: 30px;
    }

    .wallpaper {
        margin-bottom: 50px;
    }
}

@media only screen and (min-width: 54.063em){
    .page-home .home-hero {
        height: 700px;
    }

    .page-home .home-hero__overlay {
        position: absolute;
        bottom: 0;
        width: 100%;
        height: 100%;
        left: 0;
    }

    .page-home .hero__links {
        position: absolute;
        bottom: 0;
        width: 100%;
        padding: 80px 0;
    }

    .page-home .hero__button {
        padding-bottom: 0;
    }

    .page-home .section--games .games__links {
        padding-bottom: 0;
    }

    .page-home .section--facebook .facebook__text {
        max-width: none;
    }

    .page-home .section--games .games__links span {
        padding: 0 0.5em;
        display: inline;
    }

    .page-home .section--games .games__links .platform-links {
        text-align: center;
    }

    .page-home .section--games .games__links .platform-link,
    .page-home .section--games .games__links .link {
        display: inline;
    }

    .page-home .section--games .games__links .starburst {
        margin-bottom: 0;
    }
}

@media only screen and (min-width: 71.063em){
    .page-home .section--games {
        padding-top: 4rem;
    }
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){
    .page-home .section--amiibo .amiibo__small-characters {
        top: -3.75rem;
    }
}

@media (prefers-reduced-motion: reduce){
    .page-home .section--games .games__links .BSParticle {
        display: none;
    }
}

.is-reduced-motion .page-home .section--games .games__links .BSParticle {
    display: none;
}

.page-news-and-videos .pageheader {
    background-image: linear-gradient(-180deg, #F6A8B3 0%, #FDD6BD 100%);
}

.page-news-and-videos .pageheader.loaded .knight,
.page-news-and-videos .pageheader.loaded .kirby {
    transform: scale(1) translate3d(0, 0, 0);
}

.page-news-and-videos .pageheader.loaded .cat {
    transform: scale(1);
}

.page-news-and-videos .pageheader .pageheader__container {
    padding: 55px 0;
}

.page-news-and-videos .pageheader .pageheader__content {
    padding: 55px 11px 0px 11px;
}

.page-news-and-videos .pageheader .pageheader__characters {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 52px 0 -58px;
}

.page-news-and-videos .pageheader .knight {
    position: absolute;
    top: -13%;
    right: 10%;
    width: 32.14457831%;
    transform: scale(0) translate3d(-950%, 20%, 0);
    transition: .4s transform .1s ease-out;
}

.page-news-and-videos .pageheader .kirby {
    position: relative;
    z-index: 2;
    width: 56.15060241%;
    left: -10%;
    transform: scale(0) translate3d(-100%, -20%, 0);
    transition: .4s transform ease-out;
}

.page-news-and-videos .pageheader .cat {
    position: absolute;
    top: -15%;
    left: 9%;
    width: 23.75301205%;
    transform: scale(0);
    transition: .2s transform .5s ease-out;
}

.page-news-and-videos .section--cards {
    background-image: linear-gradient(-180deg, #7641D4 0%, #C57CB1 100%);
    padding: 60px 0 205px 0;
    position: relative;
}

.page-news-and-videos .bg {
    content: '';
    position: absolute;
    background: url('bg_starpattern-white.png') repeat center center;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: .1;
}

.page-news-and-videos .cta {
    margin: 0 auto !important;
}

.page-news-and-videos .cta .load-more {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 500px;
    width: 100%;
}

.page-news-and-videos .cta .load-more--hidden {
    display: none;
}

.page-news-and-videos .section--cards ul {
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding: 0px;
}

.page-news-and-videos .section--cards ul li {
    list-style: none;
}

.page-news-and-videos .section--cards .news-article__modal-content {
    display: none;
}

.page-news-and-videos .customer__support {
    position: relative;
    z-index: 10;
    margin-bottom: 10px;
    margin-top: 60px;
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .news-item {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        width: 50%;
        max-width: 50%;
    }
}

.page-news-and-videos .header-main {
    filter: drop-shadow(0 6px 5px rgba(0,0,0,0.2));
    text-align: center;
}

.page-news-and-videos .header-main__title {
    color: white;
    display: inline-block;
    filter: drop-shadow(0 6px 5px rgba(0,0,0,0.24));
    position: relative;
    transform: translateY(-50%);
}

.page-news-and-videos .header-main__title h1 {
    background-color: #961115;
    background-image: linear-gradient(90deg, #961115 0%, #C4161C 48%, #961115 97%);
    margin: 0;
    padding: 12px 110px;
}

@supports ((-webkit-clip-path: polygon(0% 0%, 0% 0%, 0% 0%)) or (clip-path: polygon(0% 0%, 0% 0%, 0% 0%))){
    .page-news-and-videos .header-main__title h1 {
        --angle: 16px;
        -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - var(--angle)) 50%, 100% 100%, 0 100%, var(--angle) 50%);
        clip-path: polygon(0 0, 100% 0, calc(100% - var(--angle)) 50%, 100% 100%, 0 100%, var(--angle) 50%);
    }
}

.page-news-and-videos .section--news {
    margin-bottom: 72px;
    min-height: 100vh;
    padding-top: 16px;
    position: relative;
}

.page-news-and-videos .load-more {
    position: absolute;
    bottom: -80px;
    left: 50%;
    transform: translateX(-50%);
}

.header-main__scene {
    --curve-factor: 60vw;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 220px;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-mask-image: radial-gradient(ellipse at 50% 20%, #000 70.5%, transparent 70.5%);
    mask-image: radial-gradient(ellipse at 50% 20%, #000 70.5%, transparent 70.5%);
    margin: 0 calc(var(--curve-factor) * -1);
    position: relative;
}

.header-main__scene-bg {
    background-color: #FBBB37;
    background-image: url('/assets/img/news/scene-bg.jpg');
    background-position: 50% 100%;
    background-size: cover;
    height: 100%;
    position: absolute;
    top: 0;
    left: var(--curve-factor);
    width: calc(100% - var(--curve-factor) * 2);
}

.main-header__scene-logo {
    -ms-flex: 0 1 200px;
    flex: 0 1 200px;
    margin: -20px 0 0;
    position: relative;
    z-index: 1;
}

.main-header__scene-logo img {
    display: block;
    width: 100%;
}

.main-header__scene-character {
    -ms-flex-item-align: start;
    align-self: flex-start;
    margin-top: -12px;
    position: relative;
}

.button-js-clone {
    display: none;
}

.button--back {
    -ms-flex-align: center;
    align-items: center;
    border: 6px solid #fff;
    border-radius: 3em;
    box-shadow: none;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    position: relative;
    transform: translateY(-50%);
    width: 300px;
    z-index: 1;
}

.button--back:last-child {
    transform: translateY(50%);
}

.button--back .button__text span {
    padding: 2px 0 4px 0;
    width: 290px;
}

.button--back .button__arrow {
    display: inline-block;
    margin-right: 12px;
    position: absolute;
    left: 20px;
    top: 14px;
    z-index: 4;
}

@media (hover: hover){
    .button--back .button__arrow {
        position: absolute;
        transform: translateX(0);
        transition: transform .2s;
    }

    .button--back:hover .button__arrow {
        transform: translateX(-5px);
    }
}

@media only screen and (max-width: 40em){
    .page-news .header-main__title h1 {
        font-size: 2rem;
        padding: 8px 50px;
    }

    .page-news .section--news {
        padding-bottom: 64px;
    }
}

@media only screen and (min-width: 40.063em){
    .header-main__scene {
        --curve-factor: 30vw;
        height: 310px;
    }

    .page-news-and-videos .pageheader .pageheader__characters {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
        margin: 39px 0 -58px;
    }

    .main-header__scene-logo {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        margin-right: -1%;
    }
}

.page-videos .pageheader {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-image: linear-gradient(0deg, #F6A8B3 0%, #FDD6BD 100%);
}

.page-videos .pageheader.loaded .flying,
.page-videos .pageheader.loaded .kirby {
    transform: scale(1) translate3d(0, 0, 0);
}

.page-videos .pageheader.loaded .bell {
    transform: scale(1);
}

.page-videos .pageheader .pageheader__characters {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 56px;
    margin-bottom: -14px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
}

.page-videos .pageheader .flying {
    position: absolute;
    top: -10%;
    right: -2%;
    width: 31.1746988%;
    transform: scale(0) translate3d(-950%, 30%, 0);
    transition: transform .4s ease-out;
}

.page-videos .pageheader .kirby {
    position: relative;
    width: 52.71084337%;
    transform: scale(0) translate3d(-160%, 0, 0);
    transition: .4s transform .25s ease-out;
}

.page-videos .pageheader .bell {
    position: absolute;
    width: 26.05421687%;
    top: 0;
    left: 0;
    transform: scale(0);
    transition: .2s transform .6s ease-out;
}

.page-videos .section--cards {
    background-image: linear-gradient(-180deg, #7641D4 0%, #C57CB1 100%);
    padding: 60px 0 120px 0;
    position: relative;
}

.page-videos .bg {
    background: url('bg_starpattern-white.png') repeat center center;
    height: 100%;
    left: 0;
    opacity: .2;
    position: absolute;
    top: 0;
    width: 100%;
}

.page-videos .cards {
    position: relative;
    z-index: 2;
}

.page-about .button {
    cursor: pointer;
}

.page-about .pageheader {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-image: linear-gradient(0deg, #CCFFFD 0%, #CBB0FF 100%);
}

.page-about .pageheader.loaded .char2,
.page-about .pageheader.loaded .kirby {
    opacity: 1;
    transform: scale(1) translate3d(0, 0, 0);
}

.page-about .pageheader.loaded .char3 {
    opacity: 1;
    transform: scale(1);
}

.page-about .pageheader .pageheader__characters {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 25px;
    margin-bottom: 15px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
}

.page-about .pageheader .char2 {
    opacity: 0;
    position: absolute;
    text-outline: -2px;
    top: -12%;
    right: 72%;
    width: 24%;
    transform: scale(0) translate3d(-950%, 30%, 0);
    transition: transform .4s ease-out, opacity 0s linear;
}

.page-about .pageheader .kirby {
    opacity: 0;
    position: relative;
    width: 60%;
    z-index: 3;
    transform: scale(0) translate3d(-160%, 0, 0);
    transition: .4s transform ease-out, opacity 0s linear;
    transition-delay: .25s;
    left: -5%;
}

.page-about .pageheader .char3 {
    opacity: 0;
    position: absolute;
    width: 26.05421687%;
    top: 50%;
    left: 64%;
    z-index: 2;
    transform: scale(0);
    transition: .2s transform ease-out, opacity 0s linear;
    transition-delay: .6s;
}

.page-about .section--characters {
    background-image: linear-gradient(-180deg, #FCD555 0%, #FFAE29 100%);
    padding: 60px 0 120px 0;
    position: relative;
}

.page-about .bg {
    background: url('bg_starpattern-white.png') repeat center center;
    height: 100%;
    left: 0;
    opacity: .2;
    position: absolute;
    top: 0;
    width: 100%;
}

.page-about .cards {
    position: relative;
    z-index: 2;
}

.page-about .section--characters {
    padding: 60px 0 80px 0;
    text-shadow: 0 2px rgba(255,255,255,0.5);
}

.page-about .section--characters .wrap {
    position: relative;
}

.page-about .section--characters .feature__image {
    position: relative;
    z-index: 1;
    border: 3px solid #ffffff;
    border-radius: 1.75rem;
    overflow: hidden;
    box-shadow: 4px 4px 0 0 rgba(0,0,0,0.2);
}

.page-about .section--characters .feature__image img {
    display: block;
    max-width: 100%;
}

.page-about .section--characters .kirby {
    padding: 45px;
    padding-top: 0;
}

@media only screen and (max-width: 40em){
    .page-about .section--characters .kirby .char {
        max-width: 400px;
        margin: 0 auto;
    }
}

.page-about .section--characters .char {
    left: auto;
    right: -50px;
    transition: transform 0.25s cubic-bezier(0, 0.62, 0, 1.21);
    opacity: 0;
}

.page-about .section--characters .character:nth-of-type(1) .char {
    opacity: 0;
    transform: translateX(-50vw);
}

.page-about .section--characters .character:nth-of-type(3) .char {
    opacity: 0;
    transform: translateX(50vw);
}

.page-about .section--characters .vp-onf-40 .character .char {
    transform: translateX(0);
    opacity: 1;
}

@media only screen and (max-width: 40em){
    .page-about .section--characters .character,
    .page-about .section--characters .kirby {
        text-align: center !important;
        padding: 0 10vw;
    }

    .page-about .section--characters .character.kirby,
    .page-about .section--characters .kirby.kirby {
        margin-bottom: 30px;
    }

    .page-about .section--characters .character .char--kirby,
    .page-about .section--characters .kirby .char--kirby {
        margin-bottom: 30px;
    }

    .page-about .section--characters .character .char--meta-knight,
    .page-about .section--characters .kirby .char--meta-knight {
        margin-top: -20px;
    }

    .page-about .section--characters .character .char--waddle-dee,
    .page-about .section--characters .kirby .char--waddle-dee {
        margin-top: -50px;
    }

    .page-about .section--characters .character .char--king-dedede,
    .page-about .section--characters .kirby .char--king-dedede {
        margin-top: 30px;
        margin-bottom: 10px;
    }
}

.page-about .section--characters .characters__image {
    position: relative;
}

.page-about .section--characters .characters__image .char {
    margin: 0 auto;
    max-width: 150px;
    bottom: -70px;
}

.page-about .section--characters .characters__copy {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-item-align: middle;
    align-self: middle;
    max-width: 500px;
}

.page-about .character {
    padding: 20px;
}

.page-about .intro--characters {
    text-align: center;
    margin-bottom: 50px;
}

.page-about .intro--characters p {
    margin-top: 0;
}

.page-about .intro--characters h2 {
    margin-bottom: 10px;
}

@media only screen and (max-width: 40em){
    .page-about .intro--characters h2 {
        font-size: 2.5rem;
    }
}

.page-about .section--games {
    padding: 60px 0 120px 0;
    position: relative;
    background-image: url('history-bg-pattern-pink-2x.jpg');
    background-size: 500px 500px;
}

.page-about .intro--games {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    max-width: 525px;
    text-align: center;
}

.page-about .intro--games p {
    margin-top: 0;
}

.page-about .intro--games h2 {
    margin-bottom: 5px;
}

@media only screen and (max-width: 40em){
    .page-about .intro--games h2 {
        font-size: 2.5rem;
    }
}

.page-about .games {
    transform: scale(1);
    opacity: 1;
    transition: transform .25s ease-in-out, opacity .25s ease-in-out;
    overflow: visible;
    -ms-flex-pack: stretch;
    justify-content: stretch;
    padding: 0;
}

.page-about .games.is-hidden {
    transform: scale(0.85);
    opacity: 0;
}

.page-about .games__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: none;
    overflow: visible;
    margin: 200px 11px 0px 11px;
    max-width: calc(100% - 22px);
}

.page-about .games__item:nth-child(-n+3) {
    display: -ms-flexbox;
    display: flex;
}

.games.is-load-all .games__item {
    display: -ms-flexbox;
    display: flex;
}

.page-about .games__item a {
    text-decoration: none;
}

.page-about .games__item .games__title {
    height: auto !important;
}

.page-about .games__item .games__nso {
    background: #fff;
    border-radius: 5px;
    color: #E60012;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 1px;
    padding: 5px;
}

@media only screen and (min-width: 40.063em) and (max-width: 54em){
    .page-about .games__item {
        max-width: calc(33% - 22px);
    }

    .page-about .games__item:nth-child(-n+6) {
        display: -ms-flexbox;
        display: flex;
    }

    .page-about .games__item .games__copy {
        min-height: 293px;
    }
}

@media only screen and (min-width: 40.063em){
    .page-about .games__item {
        margin: 200px 11px 0px 11px;
        margin-top: 200px;
    }
}

@media only screen and (min-width: 54.063em){
    .page-about .games__item {
        max-width: calc(25% - 22px);
    }

    .page-about .games__item:nth-child(-n+8) {
        display: -ms-flexbox;
        display: flex;
    }
}

.page-about .games__copy {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    padding: 0px;
    position: relative;
    z-index: 1;
    border: 3px solid #ffffff;
    border-radius: 1rem;
    overflow: visible;
    box-shadow: 4px 4px 0 0 rgba(0,0,0,0.2);
    background: rgba(255,255,255,0.5);
    text-align: center;
    margin-bottom: 4px;
    transition: background .15s ease-out;
}

.page-about .games__copy img {
    display: block;
    max-width: 100%;
}

.page-about .games__copy span,
.page-about .games__copy h5 {
    display: block;
    margin: 15px 0;
}

.page-about .games__copy span:last-of-type,
.page-about .games__copy h5:last-of-type {
    margin-bottom: 0;
}

.page-about .games__copy a {
    height: 100%;
    width: 100%;
}

.page-about .games__copy a:hover {
    background: rgba(255,255,255,0.75);
}

.page-about .games__copy-content {
    padding: 30px 25px 25px 25px;
}

.page-about .games__packshot {
    width: 150px;
    position: absolute;
    bottom: 83%;
    z-index: 20;
    left: calc(50% - 75px);
}

.page-about .games__year {
    font-size: 2.25rem;
    font-weight: 800;
    letter-spacing: 0.055555556em;
}

.page-about .games__platform {
    font-weight: bold;
    color: #AD2C3D;
    font-size: .875rem;
    letter-spacing: 0.062142857em;
}

.page-about .games__load-all {
    margin-top: 50px;
}

.page-about .games__load-all .button {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 500px;
    width: 100%;
}

.page-about .games__title {
    font-size: 1.5rem;
    font-weight: bold;
    font-size: 1.125rem;
    font-weight: 800;
    letter-spacing: 0.055555556em;
}

.page-about .game-sort {
    font-family: "Dosis", "Open sans", "Helvetica", sans-serif;
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: end;
    justify-content: flex-end;
    height: 40px;
    font-weight: bold;
}

.page-about .game-sort__label {
    line-height: 2.5rem;
    padding-right: 1rem;
    font-size: 1.125rem;
}

.page-about .game-sort__toggle {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: rgba(255,255,255,0.5);
    border: 2px solid #ffffff;
    border-radius: 1.75rem;
    cursor: pointer;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    height: 100%;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    list-style: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
    position: relative;
    width: 175px;
}

.page-about .game-sort__option {
    text-align: center;
    position: relative;
    z-index: 30;
    font-size: .9rem;
    line-height: 2rem;
    letter-spacing: 0.78px;
    text-shadow: 0 2px 0 rgba(255,255,255,0.5);
    width: 50%;
}

.page-about .game-sort__option span {
    position: relative;
    top: -1px;
}

.page-about .game-sort__status {
    width: 50%;
    left: 0;
    top: 0;
    position: absolute;
    height: 100%;
    background-color: #fff;
    transform: translateX(0%);
    border-radius: 1.75rem;
    z-index: 29;
    transition: transform .15s ease-in-out;
}

.sort-oldest .game-sort__status {
    transform: translateX(100%);
}

.page-about .customer__support {
    position: relative;
    z-index: 10;
    margin-bottom: 10px;
    margin-top: 60px;
}

@media only screen and (min-width: 54.063em){
    .page-about .section--characters .feature__image {
        margin-left: 100px;
        background-color: #ff00B7;
    }

    .page-about .section--characters .feature__image img {
        opacity: 0;
    }

    .page-about .section--characters .row--characters:nth-of-type(odd) {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }

    .page-about .section--characters .row--characters:nth-of-type(odd) .feature__image {
        margin-right: 100px;
        margin-left: 0;
    }

    .page-about .section--characters .characters__copy {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce){
    .page-about .pageheader__characters .kirby,
    .page-about .pageheader__characters .char2,
    .page-about .pageheader__characters .char3 {
        opacity: 0;
        transform: none;
        transition: opacity .4s linear;
    }

    .page-about .pageheader__characters .kirby {
        transition-delay: .25s;
    }

    .page-about .pageheader__characters .char3 {
        transition-delay: .6s;
    }

    .page-about .pageheader.loaded .pageheader__characters>* {
        opacity: 1;
        transform: none;
    }

    .page-about .section--characters .character:nth-of-type(1) .char {
        opacity: 0;
        transform: none;
        transition: opacity 0.3s linear 0s;
    }

    .page-about .section--characters .character:nth-of-type(2) .char {
        opacity: 0;
        transform: none;
        transition: opacity 0.3s linear .25s;
    }

    .page-about .section--characters .character:nth-of-type(3) .char {
        opacity: 0;
        transform: none;
        transition: opacity 0.3s linear .5s;
    }

    .page-about .section--characters .vp-onf-40 .character:nth-of-type(1) .char,
    .page-about .section--characters .vp-onf-40 .character:nth-of-type(2) .char,
    .page-about .section--characters .vp-onf-40 .character:nth-of-type(3) .char {
        opacity: 1;
    }

    .page-about .game-sort__status,
    .page-about .sort-oldest .game-sort__status {
        transition: none;
    }

    .page-about .games,
    .page-about .games.is-hidden {
        transform: scale(1);
    }
}

.is-reduced-motion .page-about .pageheader__characters .kirby,
.is-reduced-motion .page-about .pageheader__characters .char2,
.is-reduced-motion .page-about .pageheader__characters .char3 {
    opacity: 0;
    transform: none;
    transition: opacity .4s linear;
}

.is-reduced-motion .page-about .pageheader__characters .kirby {
    transition-delay: .25s;
}

.is-reduced-motion .page-about .pageheader__characters .char3 {
    transition-delay: .6s;
}

.is-reduced-motion .page-about .pageheader.loaded .pageheader__characters>* {
    opacity: 1;
    transform: none;
}

.is-reduced-motion .page-about .section--characters .character:nth-of-type(1) .char {
    opacity: 0;
    transform: none;
    transition: opacity 0.3s linear 0s;
}

.is-reduced-motion .page-about .section--characters .character:nth-of-type(2) .char {
    opacity: 0;
    transform: none;
    transition: opacity 0.3s linear .25s;
}

.is-reduced-motion .page-about .section--characters .character:nth-of-type(3) .char {
    opacity: 0;
    transform: none;
    transition: opacity 0.3s linear .5s;
}

.is-reduced-motion .page-about .section--characters .vp-onf-40 .character:nth-of-type(1) .char,
.is-reduced-motion .page-about .section--characters .vp-onf-40 .character:nth-of-type(2) .char,
.is-reduced-motion .page-about .section--characters .vp-onf-40 .character:nth-of-type(3) .char {
    opacity: 1;
}

.is-reduced-motion .page-about .game-sort__status,
.is-reduced-motion .page-about .sort-oldest .game-sort__status {
    transition: none;
}

.is-reduced-motion .page-about .games,
.is-reduced-motion .page-about .games.is-hidden {
    transform: scale(1);
}

.border__zig-zag::before,
.border__zig-zag::after {
    z-index: 5;
    position: absolute;
    background: url('zig-zag-border.png');
    width: 100%;
    height: 35px;
    content: '';
    left: 0;
}

.border__zig-zag::before {
    top: -1rem;
}

.border__zig-zag::after {
    bottom: -1rem;
}

.border__zig-zag-top::before {
    position: absolute;
    background: url('zig-zag-border.png');
    width: 100%;
    height: 35px;
    content: '';
    left: 0;
    top: -1rem;
    z-index: 3;
}

.border__wave-top::before {
    position: absolute;
    background: url('wave-border.png');
    width: 100%;
    height: 25px;
    content: '';
    left: 0;
    top: -1.5rem;
    filter: drop-shadow(0 -10px 6px rgba(0,0,0,0.2));
}

.slide-effect {
    transition: transform 0.6s cubic-bezier(0.46, 0.09, 0.38, 1.02),opacity 0.4s cubic-bezier(0.46, 0.09, 0.38, 1.02);
    opacity: 0;
    transform: translateX(-50%);
}

.slide-effect--right {
    transition: transform 0.6s cubic-bezier(0.46, 0.09, 0.38, 1.02),opacity 0.4s cubic-bezier(0.46, 0.09, 0.38, 1.02);
    opacity: 0;
    transform: translateX(50%);
}

.slide-effect--center {
    transform: translateX(0);
}

.vp-on-30 .slide-effect,
.vp-on-30 .slide-effect--right {
    transform: translateX(0);
    opacity: 1;
}

@media (prefers-reduced-motion: reduce){
    .slide-effect,
    .slide-effect--right,
    .slide-effect--center {
        opacity: 0;
        transition: opacity .3s linear 0s;
    }

    .vp-on-30 .slide-effect,
    .vp-on-30 .slide-effect--right,
    .vp-on-30 .slide-effect--center {
        opacity: 1;
    }
}

.is-reduced-motion .slide-effect,
.is-reduced-motion .slide-effect--right,
.is-reduced-motion .slide-effect--center {
    opacity: 0;
    transition: opacity .3s linear 0s;
}

.is-reduced-motion .vp-on-30 .slide-effect,
.is-reduced-motion .vp-on-30 .slide-effect--right,
.is-reduced-motion .vp-on-30 .slide-effect--center {
    opacity: 1;
}

body::after {
    content: 'S';
    display: none;
    position: fixed;
    padding: 10px;
    background: #FFF;
    bottom: 0px;
    right: 0px;
    z-index: 9999;
}

body[data-env="dev"]:after,
body[data-env="local"]:after {
    display: block;
}

@media only screen and (min-width: 40.063em){
    body::after {
        content: 'M';
    }
}

@media only screen and (min-width: 54.063em){
    body::after {
        content: 'L';
    }
}

@media only screen and (min-width: 71.063em){
    body::after {
        content: 'XL';
    }
}

@media only screen and (min-width: 120.063em){
    body::after {
        content: 'XXL';
    }
}
