/*
Show / Hide
*/

.hide {
    display: none !important; }

.invisible {
    visibility: hidden; }

@media screen and (max-width: 39.9375em) {
    .hide-for-small-only {
        display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
    .show-for-small-only {
        display: none !important; } }

@media print, screen and (min-width: 40em) {
    .hide-for-medium {
        display: none !important; } }

@media screen and (max-width: 39.9375em) {
    .show-for-medium {
        display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .hide-for-medium-only {
        display: none !important; } }

@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
    .show-for-medium-only {
        display: none !important; } }

@media print, screen and (min-width: 64em) {
    .hide-for-large {
        display: none !important; } }

@media screen and (max-width: 63.9375em) {
    .show-for-large {
        display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
    .hide-for-large-only {
        display: none !important; } }

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
    .show-for-large-only {
        display: none !important; } }

.show-for-sr,
.show-on-focus {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    border: 0; }

.show-on-focus:active, .show-on-focus:focus {
    position: static !important;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal;
    -webkit-clip-path: none;
    clip-path: none; }

.show-for-landscape,
.hide-for-portrait {
    display: block !important; }
@media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
        display: block !important; } }
@media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
        display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
    display: none !important; }
@media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
        display: none !important; } }
@media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
        display: block !important; } }


/*
Close Button
*/
.close-button {
    position: absolute;
    color: #8a8a8a;
    cursor: pointer;
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
    overflow: visible;
    text-transform: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    border-radius: 0;
    background: transparent;
}
[data-whatinput='mouse'] .close-button {
    outline: 0; }
.close-button:hover, .close-button:focus {
    color: #0a0a0a; }
.close-button.small {
    right: 0.66rem;
    top: 0.33em;
    font-size: 1.5em;
    line-height: 1; }
.close-button, .close-button.medium {
    right: 1rem;
    top: 0.5rem;
    font-size: 2em;
    line-height: 1; }

.close-button::-moz-focus-inner {
    border-style: none;
    padding: 0; }
.close-button:-moz-focusring {
    outline: 1px dotted ButtonText; }


/*
Off Canvas
*/

.is-off-canvas-open {
    overflow: hidden; }

.js-off-canvas-overlay {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 11;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
    transition: opacity 0.5s ease, visibility 0.5s ease;
    background: rgba(254, 254, 254, 0.25);
    opacity: 0;
    visibility: hidden;
    overflow: hidden; }
.js-off-canvas-overlay.is-visible {
    opacity: 1;
    visibility: visible; }
.js-off-canvas-overlay.is-closable {
    cursor: pointer; }
.js-off-canvas-overlay.is-overlay-absolute {
    position: absolute; }
.js-off-canvas-overlay.is-overlay-fixed {
    position: fixed; }

.off-canvas-wrapper {
    position: relative;
    overflow: hidden; }

.off-canvas {
    position: fixed;
    z-index: 12;
    -webkit-transition: -webkit-transform 0.5s ease;
    transition: -webkit-transform 0.5s ease;
    transition: transform 0.5s ease;
    transition: transform 0.5s ease, -webkit-transform 0.5s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background: #e6e6e6; }
[data-whatinput='mouse'] .off-canvas {
    outline: 0; }
.off-canvas.is-transition-push {
    z-index: 12; }
.off-canvas.is-closed {
    visibility: hidden; }
.off-canvas.is-transition-overlap {
    z-index: 13; }
.off-canvas.is-transition-overlap.is-open {
    -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
    box-shadow: 0 0 10px rgba(10, 10, 10, 0.7); }
.off-canvas.is-open {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }

.off-canvas-absolute {
    position: absolute;
    z-index: 12;
    -webkit-transition: -webkit-transform 0.5s ease;
    transition: -webkit-transform 0.5s ease;
    transition: transform 0.5s ease;
    transition: transform 0.5s ease, -webkit-transform 0.5s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background: #e6e6e6; }
[data-whatinput='mouse'] .off-canvas-absolute {
    outline: 0; }
.off-canvas-absolute.is-transition-push {
    z-index: 12; }
.off-canvas-absolute.is-closed {
    visibility: hidden; }
.off-canvas-absolute.is-transition-overlap {
    z-index: 13; }
.off-canvas-absolute.is-transition-overlap.is-open {
    -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
    box-shadow: 0 0 10px rgba(10, 10, 10, 0.7); }
.off-canvas-absolute.is-open {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }

.position-left {
    top: 0;
    left: 0;
    height: 100%;
    overflow-y: auto;
    width: 250px;
    -webkit-transform: translateX(-250px);
    -ms-transform: translateX(-250px);
    transform: translateX(-250px); }
.off-canvas-content .off-canvas.position-left {
    -webkit-transform: translateX(-250px);
    -ms-transform: translateX(-250px);
    transform: translateX(-250px); }
.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
.off-canvas-content.is-open-left.has-transition-push {
    -webkit-transform: translateX(250px);
    -ms-transform: translateX(250px);
    transform: translateX(250px); }
.position-left.is-transition-push {
    -webkit-box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
    box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25); }

.position-right {
    top: 0;
    right: 0;
    height: 100%;
    overflow-y: auto;
    width: 250px;
    -webkit-transform: translateX(250px);
    -ms-transform: translateX(250px);
    transform: translateX(250px); }
.off-canvas-content .off-canvas.position-right {
    -webkit-transform: translateX(250px);
    -ms-transform: translateX(250px);
    transform: translateX(250px); }
.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
.off-canvas-content.is-open-right.has-transition-push {
    -webkit-transform: translateX(-250px);
    -ms-transform: translateX(-250px);
    transform: translateX(-250px); }
.position-right.is-transition-push {
    -webkit-box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25);
    box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25); }

.position-top {
    top: 0;
    left: 0;
    width: 100%;
    overflow-x: auto;
    height: 250px;
    -webkit-transform: translateY(-250px);
    -ms-transform: translateY(-250px);
    transform: translateY(-250px); }
.off-canvas-content .off-canvas.position-top {
    -webkit-transform: translateY(-250px);
    -ms-transform: translateY(-250px);
    transform: translateY(-250px); }
.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
.off-canvas-content.is-open-top.has-transition-push {
    -webkit-transform: translateY(250px);
    -ms-transform: translateY(250px);
    transform: translateY(250px); }
.position-top.is-transition-push {
    -webkit-box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25);
    box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25); }

.position-bottom {
    bottom: 0;
    left: 0;
    width: 100%;
    overflow-x: auto;
    height: 250px;
    -webkit-transform: translateY(250px);
    -ms-transform: translateY(250px);
    transform: translateY(250px); }
.off-canvas-content .off-canvas.position-bottom {
    -webkit-transform: translateY(250px);
    -ms-transform: translateY(250px);
    transform: translateY(250px); }
.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
.off-canvas-content.is-open-bottom.has-transition-push {
    -webkit-transform: translateY(-250px);
    -ms-transform: translateY(-250px);
    transform: translateY(-250px); }
.position-bottom.is-transition-push {
    -webkit-box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25);
    box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25); }

.off-canvas-content {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    -webkit-transition: -webkit-transform 0.5s ease;
    transition: -webkit-transform 0.5s ease;
    transition: transform 0.5s ease;
    transition: transform 0.5s ease, -webkit-transform 0.5s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
.off-canvas-content.has-transition-push {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
.off-canvas-content .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }

@media print, screen and (min-width: 40em) {
    .position-left.reveal-for-medium {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        -webkit-transition: none;
        transition: none;
        visibility: visible; }
    .position-left.reveal-for-medium .close-button {
        display: none; }
    .off-canvas-content .position-left.reveal-for-medium {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas-content.has-reveal-left {
        margin-left: 250px; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
        margin-left: 250px; }
    .position-right.reveal-for-medium {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        -webkit-transition: none;
        transition: none;
        visibility: visible; }
    .position-right.reveal-for-medium .close-button {
        display: none; }
    .off-canvas-content .position-right.reveal-for-medium {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas-content.has-reveal-right {
        margin-right: 250px; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
        margin-right: 250px; }
    .position-top.reveal-for-medium {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        -webkit-transition: none;
        transition: none;
        visibility: visible; }
    .position-top.reveal-for-medium .close-button {
        display: none; }
    .off-canvas-content .position-top.reveal-for-medium {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas-content.has-reveal-top {
        margin-top: 250px; }
    .position-top.reveal-for-medium ~ .off-canvas-content {
        margin-top: 250px; }
    .position-bottom.reveal-for-medium {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        -webkit-transition: none;
        transition: none;
        visibility: visible; }
    .position-bottom.reveal-for-medium .close-button {
        display: none; }
    .off-canvas-content .position-bottom.reveal-for-medium {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas-content.has-reveal-bottom {
        margin-bottom: 250px; }
    .position-bottom.reveal-for-medium ~ .off-canvas-content {
        margin-bottom: 250px; } }

@media print, screen and (min-width: 64em) {
    .position-left.reveal-for-large {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        -webkit-transition: none;
        transition: none;
        visibility: visible; }
    .position-left.reveal-for-large .close-button {
        display: none; }
    .off-canvas-content .position-left.reveal-for-large {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas-content.has-reveal-left {
        margin-left: 250px; }
    .position-left.reveal-for-large ~ .off-canvas-content {
        margin-left: 250px; }
    .position-right.reveal-for-large {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        -webkit-transition: none;
        transition: none;
        visibility: visible; }
    .position-right.reveal-for-large .close-button {
        display: none; }
    .off-canvas-content .position-right.reveal-for-large {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas-content.has-reveal-right {
        margin-right: 250px; }
    .position-right.reveal-for-large ~ .off-canvas-content {
        margin-right: 250px; }
    .position-top.reveal-for-large {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        -webkit-transition: none;
        transition: none;
        visibility: visible; }
    .position-top.reveal-for-large .close-button {
        display: none; }
    .off-canvas-content .position-top.reveal-for-large {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas-content.has-reveal-top {
        margin-top: 250px; }
    .position-top.reveal-for-large ~ .off-canvas-content {
        margin-top: 250px; }
    .position-bottom.reveal-for-large {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        -webkit-transition: none;
        transition: none;
        visibility: visible; }
    .position-bottom.reveal-for-large .close-button {
        display: none; }
    .off-canvas-content .position-bottom.reveal-for-large {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas-content.has-reveal-bottom {
        margin-bottom: 250px; }
    .position-bottom.reveal-for-large ~ .off-canvas-content {
        margin-bottom: 250px; } }

@media print, screen and (min-width: 40em) {
    .off-canvas.in-canvas-for-medium {
        visibility: visible;
        height: auto;
        position: static;
        background: inherit;
        width: inherit;
        overflow: inherit;
        -webkit-transition: inherit;
        transition: inherit; }
    .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas.in-canvas-for-medium .close-button {
        display: none; } }

@media print, screen and (min-width: 64em) {
    .off-canvas.in-canvas-for-large {
        visibility: visible;
        height: auto;
        position: static;
        background: inherit;
        width: inherit;
        overflow: inherit;
        -webkit-transition: inherit;
        transition: inherit; }
    .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    .off-canvas.in-canvas-for-large .close-button {
        display: none; } }
