@charset "UTF-8";

/* Шрифты Raleway и Great Vibes раньше подключались через @import с серверов
   Google Fonts - это создавало последовательную цепочку внешних запросов
   (сначала CSS, потом сами файлы шрифтов), заметно замедляя загрузку и
   зависящую от ответа стороннего сервера в моменте. Теперь оба шрифта
   лежат прямо на нашем хостинге и подключаются локально. */
/* Caveat (SIL OFL) — рукописные заголовки услуг и страницы «Расчёт смет» (с 05.10 вместо Marck Script) */
@font-face {
    font-family: 'Caveat';
    src: url(../../fonts/Caveat-cyrillic.woff2) format('woff2');
    font-weight: 400 700;
    font-display: swap;
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
    font-family: 'Caveat';
    src: url(../../fonts/Caveat-latin.woff2) format('woff2');
    font-weight: 400 700;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Marck Script (SIL OFL) — рукописные заголовки услуг */
@font-face {
    font-family: 'Marck Script';
    src: url(../../fonts/MarckScript-cyrillic.woff2) format('woff2');
    font-weight: 400;
    font-display: swap;
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
    font-family: 'Marck Script';
    src: url(../../fonts/MarckScript-latin.woff2) format('woff2');
    font-weight: 400;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Raleway';
    src: url(../../fonts/Raleway-Thin.woff2) format('woff2'), url(../../fonts/Raleway-Thin.ttf) format('truetype');
    font-weight: 100;
    font-display: swap;
}
@font-face {
    font-family: 'Raleway';
    src: url(../../fonts/Raleway-Light.woff2) format('woff2'), url(../../fonts/Raleway-Light.ttf) format('truetype');
    font-weight: 300;
    font-display: swap;
}
@font-face {
    font-family: 'Raleway';
    src: url(../../fonts/Raleway-Regular.woff2) format('woff2'), url(../../fonts/Raleway-Regular.ttf) format('truetype');
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'Raleway';
    src: url(../../fonts/Raleway-Bold.woff2) format('woff2'), url(../../fonts/Raleway-Bold.ttf) format('truetype');
    font-weight: 700;
    font-display: swap;
}
@font-face {
    font-family: 'Great Vibes';
    src: url(../../fonts/GreatVibes-Regular.woff2) format('woff2'), url(../../fonts/GreatVibes-Regular.ttf) format('truetype');
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: Clemente;
    src: url(../../fonts/clemente-extralight.woff2) format('woff2'), url(../../fonts/clemente-extralight.ttf) format('truetype');
    font-weight: 300
}

@font-face {
    font-family: Clemente;
    src: url(../../fonts/clemente-light.woff2) format('woff2'), url(../../fonts/clemente-light.ttf) format('truetype');
    font-weight: 400
}

@media print,
screen and (min-width:40em) {

    .reveal,
    .reveal.large,
    .reveal.small,
    .reveal.tiny {
        right: auto;
        left: auto;
        margin: 0 auto
    }
}

/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
html {
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    /* Единая плавная прокрутка при переходе по ссылкам-якорям (стрелочки
       между разделами) — раньше на одних страницах скролл был мгновенным
       (обычный переход по ссылке), на других — с разной кастомной
       анимацией, из-за чего ощущалось непоследовательно. */
    scroll-behavior: smooth;
}

body {
    margin: 0
}

article,
aside,
footer,
header,
nav,
section {
    display: block
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

figcaption,
figure {
    display: block
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

main {
    display: block
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:active,
a:hover {
    outline-width: 0
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: inherit
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

dfn {
    font-style: italic
}

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

audio,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

button,
input,
optgroup,
select,
textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button {
    overflow: visible
}

button,
select {
    text-transform: none
}

[type=reset],[type=submit],button,html [type=button]{
    -webkit-appearance: button;
    appearance: button;
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

input {
    overflow: visible
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
-webkit-appearance: textfield;
    appearance: textfield;
    outline-offset: -2px;
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    box-sizing: border-box;
    display: table;
    max-width: 100%;
    padding: 0;
    color: inherit;
    white-space: normal
}

progress {
    display: inline-block;
    vertical-align: baseline
}

textarea {
    overflow: auto
}

details {
    display: block
}

summary {
    display: list-item
}

menu {
    display: block
}

canvas {
    display: inline-block
}

template {
    display: none
}

[hidden] {
    display: none
}

.foundation-mq {
    font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"
}

html {
    box-sizing: border-box;
    font-size: 100%
}

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

body {
    margin: 0;
    padding: 0;
    background: #fefefe;
    font-family: Raleway, Helvetica, Roboto, Arial, sans-serif;
    font-weight: 400;
    line-height: 1.5;
    color: #f4c09d;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

img {
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
    height: auto;
    -ms-interpolation-mode: bicubic
}

textarea {
    height: auto;
    min-height: 50px;
    border-radius: 0
}

select {
    box-sizing: border-box;
    width: 100%;
    border-radius: 0
}

.map_canvas embed,
.map_canvas img,
.map_canvas object,
.mqa-display embed,
.mqa-display img,
.mqa-display object {
    max-width: none !important
}

button {
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    border-radius: 0;
    background: 0 0;
    line-height: 1;
    cursor: auto
}

[data-whatinput=mouse] button {
    outline: 0
}

pre {
    overflow: auto
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit
}

.is-visible {
    display: block !important
}

.is-hidden {
    display: none !important
}

.grid-container {
    padding-right: .625rem;
    padding-left: .625rem;
    max-width: 75rem;
    margin: 0 auto
}

@media print,
screen and (min-width:40em) {
    .grid-container {
        padding-right: .9375rem;
        padding-left: .9375rem
    }
}

.grid-container.fluid {
    padding-right: .625rem;
    padding-left: .625rem;
    max-width: 100%;
    margin: 0 auto
}

@media print,
screen and (min-width:40em) {
    .grid-container.fluid {
        padding-right: .9375rem;
        padding-left: .9375rem
    }
}

.grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin: 0 auto
}

.grid-x {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap
}

.cell {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    min-height: 0;
    min-width: 0;
    width: 100%
}

.cell.auto {
    -webkit-flex: 1 1 0px;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px
}

.cell.shrink {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.grid-x>.auto {
    width: auto
}

.grid-x>.shrink {
    width: auto
}

.grid-x>.small-1,
.grid-x>.small-10,
.grid-x>.small-11,
.grid-x>.small-12,
.grid-x>.small-2,
.grid-x>.small-3,
.grid-x>.small-4,
.grid-x>.small-5,
.grid-x>.small-6,
.grid-x>.small-7,
.grid-x>.small-8,
.grid-x>.small-9,
.grid-x>.small-full,
.grid-x>.small-shrink {
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto
}

@media print,
screen and (min-width:40em) {

    .grid-x>.medium-1,
    .grid-x>.medium-10,
    .grid-x>.medium-11,
    .grid-x>.medium-12,
    .grid-x>.medium-2,
    .grid-x>.medium-3,
    .grid-x>.medium-4,
    .grid-x>.medium-5,
    .grid-x>.medium-6,
    .grid-x>.medium-7,
    .grid-x>.medium-8,
    .grid-x>.medium-9,
    .grid-x>.medium-full,
    .grid-x>.medium-shrink {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }
}

@media print,
screen and (min-width:64em) {

    .grid-x>.large-1,
    .grid-x>.large-10,
    .grid-x>.large-11,
    .grid-x>.large-12,
    .grid-x>.large-2,
    .grid-x>.large-3,
    .grid-x>.large-4,
    .grid-x>.large-5,
    .grid-x>.large-6,
    .grid-x>.large-7,
    .grid-x>.large-8,
    .grid-x>.large-9,
    .grid-x>.large-full,
    .grid-x>.large-shrink {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }
}

@media screen and (min-width:75em) {

    .grid-x>.xlarge-1,
    .grid-x>.xlarge-10,
    .grid-x>.xlarge-11,
    .grid-x>.xlarge-12,
    .grid-x>.xlarge-2,
    .grid-x>.xlarge-3,
    .grid-x>.xlarge-4,
    .grid-x>.xlarge-5,
    .grid-x>.xlarge-6,
    .grid-x>.xlarge-7,
    .grid-x>.xlarge-8,
    .grid-x>.xlarge-9,
    .grid-x>.xlarge-full,
    .grid-x>.xlarge-shrink {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }
}

.grid-x>.small-1 {
    width: 8.33333%
}

.grid-x>.small-2 {
    width: 16.66667%
}

.grid-x>.small-3 {
    width: 25%
}

.grid-x>.small-4 {
    width: 33.33333%
}

.grid-x>.small-5 {
    width: 41.66667%
}

.grid-x>.small-6 {
    width: 50%
}

.grid-x>.small-7 {
    width: 58.33333%
}

.grid-x>.small-8 {
    width: 66.66667%
}

.grid-x>.small-9 {
    width: 75%
}

.grid-x>.small-10 {
    width: 83.33333%
}

.grid-x>.small-11 {
    width: 91.66667%
}

.grid-x>.small-12 {
    width: 100%
}

@media print,
screen and (min-width:40em) {
    .grid-x>.medium-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto
    }

    .grid-x>.medium-shrink {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto
    }

    .grid-x>.medium-1 {
        width: 8.33333%
    }

    .grid-x>.medium-2 {
        width: 16.66667%
    }

    .grid-x>.medium-3 {
        width: 25%
    }

    .grid-x>.medium-4 {
        width: 33.33333%
    }

    .grid-x>.medium-5 {
        width: 41.66667%
    }

    .grid-x>.medium-6 {
        width: 50%
    }

    .grid-x>.medium-7 {
        width: 58.33333%
    }

    .grid-x>.medium-8 {
        width: 66.66667%
    }

    .grid-x>.medium-9 {
        width: 75%
    }

    .grid-x>.medium-10 {
        width: 83.33333%
    }

    .grid-x>.medium-11 {
        width: 91.66667%
    }

    .grid-x>.medium-12 {
        width: 100%
    }
}

@media print,
screen and (min-width:64em) {
    .grid-x>.large-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto
    }

    .grid-x>.large-shrink {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto
    }

    .grid-x>.large-1 {
        width: 8.33333%
    }

    .grid-x>.large-2 {
        width: 16.66667%
    }

    .grid-x>.large-3 {
        width: 25%
    }

    .grid-x>.large-4 {
        width: 33.33333%
    }

    .grid-x>.large-5 {
        width: 41.66667%
    }

    .grid-x>.large-6 {
        width: 50%
    }

    .grid-x>.large-7 {
        width: 58.33333%
    }

    .grid-x>.large-8 {
        width: 66.66667%
    }

    .grid-x>.large-9 {
        width: 75%
    }

    .grid-x>.large-10 {
        width: 83.33333%
    }

    .grid-x>.large-11 {
        width: 91.66667%
    }

    .grid-x>.large-12 {
        width: 100%
    }
}

@media screen and (min-width:75em) {
    .grid-x>.xlarge-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto
    }

    .grid-x>.xlarge-shrink {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto
    }

    .grid-x>.xlarge-1 {
        width: 8.33333%
    }

    .grid-x>.xlarge-2 {
        width: 16.66667%
    }

    .grid-x>.xlarge-3 {
        width: 25%
    }

    .grid-x>.xlarge-4 {
        width: 33.33333%
    }

    .grid-x>.xlarge-5 {
        width: 41.66667%
    }

    .grid-x>.xlarge-6 {
        width: 50%
    }

    .grid-x>.xlarge-7 {
        width: 58.33333%
    }

    .grid-x>.xlarge-8 {
        width: 66.66667%
    }

    .grid-x>.xlarge-9 {
        width: 75%
    }

    .grid-x>.xlarge-10 {
        width: 83.33333%
    }

    .grid-x>.xlarge-11 {
        width: 91.66667%
    }

    .grid-x>.xlarge-12 {
        width: 100%
    }
}

.grid-margin-x:not(.grid-x)>.cell {
    width: auto
}

.grid-margin-y:not(.grid-y)>.cell {
    height: auto
}

.grid-margin-x {
    margin-left: -.625rem;
    margin-right: -.625rem
}

@media print,
screen and (min-width:40em) {
    .grid-margin-x {
        margin-left: -.9375rem;
        margin-right: -.9375rem
    }
}

.grid-margin-x>.cell {
    width: calc(100% - 1.25rem);
    margin-left: .625rem;
    margin-right: .625rem
}

@media print,
screen and (min-width:40em) {
    .grid-margin-x>.cell {
        width: calc(100% - 1.875rem);
        margin-left: .9375rem;
        margin-right: .9375rem
    }
}

.grid-margin-x>.auto {
    width: auto
}

.grid-margin-x>.shrink {
    width: auto
}

.grid-margin-x>.small-1 {
    width: calc(8.33333% - 1.25rem)
}

.grid-margin-x>.small-2 {
    width: calc(16.66667% - 1.25rem)
}

.grid-margin-x>.small-3 {
    width: calc(25% - 1.25rem)
}

.grid-margin-x>.small-4 {
    width: calc(33.33333% - 1.25rem)
}

.grid-margin-x>.small-5 {
    width: calc(41.66667% - 1.25rem)
}

.grid-margin-x>.small-6 {
    width: calc(50% - 1.25rem)
}

.grid-margin-x>.small-7 {
    width: calc(58.33333% - 1.25rem)
}

.grid-margin-x>.small-8 {
    width: calc(66.66667% - 1.25rem)
}

.grid-margin-x>.small-9 {
    width: calc(75% - 1.25rem)
}

.grid-margin-x>.small-10 {
    width: calc(83.33333% - 1.25rem)
}

.grid-margin-x>.small-11 {
    width: calc(91.66667% - 1.25rem)
}

.grid-margin-x>.small-12 {
    width: calc(100% - 1.25rem)
}

@media print,
screen and (min-width:40em) {
    .grid-margin-x>.auto {
        width: auto
    }

    .grid-margin-x>.shrink {
        width: auto
    }

    .grid-margin-x>.small-1 {
        width: calc(8.33333% - 1.875rem)
    }

    .grid-margin-x>.small-2 {
        width: calc(16.66667% - 1.875rem)
    }

    .grid-margin-x>.small-3 {
        width: calc(25% - 1.875rem)
    }

    .grid-margin-x>.small-4 {
        width: calc(33.33333% - 1.875rem)
    }

    .grid-margin-x>.small-5 {
        width: calc(41.66667% - 1.875rem)
    }

    .grid-margin-x>.small-6 {
        width: calc(50% - 1.875rem)
    }

    .grid-margin-x>.small-7 {
        width: calc(58.33333% - 1.875rem)
    }

    .grid-margin-x>.small-8 {
        width: calc(66.66667% - 1.875rem)
    }

    .grid-margin-x>.small-9 {
        width: calc(75% - 1.875rem)
    }

    .grid-margin-x>.small-10 {
        width: calc(83.33333% - 1.875rem)
    }

    .grid-margin-x>.small-11 {
        width: calc(91.66667% - 1.875rem)
    }

    .grid-margin-x>.small-12 {
        width: calc(100% - 1.875rem)
    }

    .grid-margin-x>.medium-auto {
        width: auto
    }

    .grid-margin-x>.medium-shrink {
        width: auto
    }

    .grid-margin-x>.medium-1 {
        width: calc(8.33333% - 1.875rem)
    }

    .grid-margin-x>.medium-2 {
        width: calc(16.66667% - 1.875rem)
    }

    .grid-margin-x>.medium-3 {
        width: calc(25% - 1.875rem)
    }

    .grid-margin-x>.medium-4 {
        width: calc(33.33333% - 1.875rem)
    }

    .grid-margin-x>.medium-5 {
        width: calc(41.66667% - 1.875rem)
    }

    .grid-margin-x>.medium-6 {
        width: calc(50% - 1.875rem)
    }

    .grid-margin-x>.medium-7 {
        width: calc(58.33333% - 1.875rem)
    }

    .grid-margin-x>.medium-8 {
        width: calc(66.66667% - 1.875rem)
    }

    .grid-margin-x>.medium-9 {
        width: calc(75% - 1.875rem)
    }

    .grid-margin-x>.medium-10 {
        width: calc(83.33333% - 1.875rem)
    }

    .grid-margin-x>.medium-11 {
        width: calc(91.66667% - 1.875rem)
    }

    .grid-margin-x>.medium-12 {
        width: calc(100% - 1.875rem)
    }
}

@media print,
screen and (min-width:64em) {
    .grid-margin-x>.large-auto {
        width: auto
    }

    .grid-margin-x>.large-shrink {
        width: auto
    }

    .grid-margin-x>.large-1 {
        width: calc(8.33333% - 1.875rem)
    }

    .grid-margin-x>.large-2 {
        width: calc(16.66667% - 1.875rem)
    }

    .grid-margin-x>.large-3 {
        width: calc(25% - 1.875rem)
    }

    .grid-margin-x>.large-4 {
        width: calc(33.33333% - 1.875rem)
    }

    .grid-margin-x>.large-5 {
        width: calc(41.66667% - 1.875rem)
    }

    .grid-margin-x>.large-6 {
        width: calc(50% - 1.875rem)
    }

    .grid-margin-x>.large-7 {
        width: calc(58.33333% - 1.875rem)
    }

    .grid-margin-x>.large-8 {
        width: calc(66.66667% - 1.875rem)
    }

    .grid-margin-x>.large-9 {
        width: calc(75% - 1.875rem)
    }

    .grid-margin-x>.large-10 {
        width: calc(83.33333% - 1.875rem)
    }

    .grid-margin-x>.large-11 {
        width: calc(91.66667% - 1.875rem)
    }

    .grid-margin-x>.large-12 {
        width: calc(100% - 1.875rem)
    }
}

@media screen and (min-width:75em) {
    .grid-margin-x>.xlarge-auto {
        width: auto
    }

    .grid-margin-x>.xlarge-shrink {
        width: auto
    }

    .grid-margin-x>.xlarge-1 {
        width: calc(8.33333% - 1.875rem)
    }

    .grid-margin-x>.xlarge-2 {
        width: calc(16.66667% - 1.875rem)
    }

    .grid-margin-x>.xlarge-3 {
        width: calc(25% - 1.875rem)
    }

    .grid-margin-x>.xlarge-4 {
        width: calc(33.33333% - 1.875rem)
    }

    .grid-margin-x>.xlarge-5 {
        width: calc(41.66667% - 1.875rem)
    }

    .grid-margin-x>.xlarge-6 {
        width: calc(50% - 1.875rem)
    }

    .grid-margin-x>.xlarge-7 {
        width: calc(58.33333% - 1.875rem)
    }

    .grid-margin-x>.xlarge-8 {
        width: calc(66.66667% - 1.875rem)
    }

    .grid-margin-x>.xlarge-9 {
        width: calc(75% - 1.875rem)
    }

    .grid-margin-x>.xlarge-10 {
        width: calc(83.33333% - 1.875rem)
    }

    .grid-margin-x>.xlarge-11 {
        width: calc(91.66667% - 1.875rem)
    }

    .grid-margin-x>.xlarge-12 {
        width: calc(100% - 1.875rem)
    }
}

.grid-padding-x .grid-padding-x {
    margin-right: -.625rem;
    margin-left: -.625rem
}

@media print,
screen and (min-width:40em) {
    .grid-padding-x .grid-padding-x {
        margin-right: -.9375rem;
        margin-left: -.9375rem
    }
}

.grid-container:not(.full)>.grid-padding-x {
    margin-right: -.625rem;
    margin-left: -.625rem
}

@media print,
screen and (min-width:40em) {
    .grid-container:not(.full)>.grid-padding-x {
        margin-right: -.9375rem;
        margin-left: -.9375rem
    }
}

.grid-padding-x>.cell {
    padding-right: .625rem;
    padding-left: .625rem
}

@media print,
screen and (min-width:40em) {
    .grid-padding-x>.cell {
        padding-right: .9375rem;
        padding-left: .9375rem
    }
}

.small-up-1>.cell {
    width: 100%
}

.small-up-2>.cell {
    width: 50%
}

.small-up-3>.cell {
    width: 33.33333%
}

.small-up-4>.cell {
    width: 25%
}

.small-up-5>.cell {
    width: 20%
}

.small-up-6>.cell {
    width: 16.66667%
}

.small-up-7>.cell {
    width: 14.28571%
}

.small-up-8>.cell {
    width: 12.5%
}

@media print,
screen and (min-width:40em) {
    .medium-up-1>.cell {
        width: 100%
    }

    .medium-up-2>.cell {
        width: 50%
    }

    .medium-up-3>.cell {
        width: 33.33333%
    }

    .medium-up-4>.cell {
        width: 25%
    }

    .medium-up-5>.cell {
        width: 20%
    }

    .medium-up-6>.cell {
        width: 16.66667%
    }

    .medium-up-7>.cell {
        width: 14.28571%
    }

    .medium-up-8>.cell {
        width: 12.5%
    }
}

@media print,
screen and (min-width:64em) {
    .large-up-1>.cell {
        width: 100%
    }

    .large-up-2>.cell {
        width: 50%
    }

    .large-up-3>.cell {
        width: 33.33333%
    }

    .large-up-4>.cell {
        width: 25%
    }

    .large-up-5>.cell {
        width: 20%
    }

    .large-up-6>.cell {
        width: 16.66667%
    }

    .large-up-7>.cell {
        width: 14.28571%
    }

    .large-up-8>.cell {
        width: 12.5%
    }
}

@media screen and (min-width:75em) {
    .xlarge-up-1>.cell {
        width: 100%
    }

    .xlarge-up-2>.cell {
        width: 50%
    }

    .xlarge-up-3>.cell {
        width: 33.33333%
    }

    .xlarge-up-4>.cell {
        width: 25%
    }

    .xlarge-up-5>.cell {
        width: 20%
    }

    .xlarge-up-6>.cell {
        width: 16.66667%
    }

    .xlarge-up-7>.cell {
        width: 14.28571%
    }

    .xlarge-up-8>.cell {
        width: 12.5%
    }
}

.grid-margin-x.small-up-1>.cell {
    width: calc(100% - 1.25rem)
}

.grid-margin-x.small-up-2>.cell {
    width: calc(50% - 1.25rem)
}

.grid-margin-x.small-up-3>.cell {
    width: calc(33.33333% - 1.25rem)
}

.grid-margin-x.small-up-4>.cell {
    width: calc(25% - 1.25rem)
}

.grid-margin-x.small-up-5>.cell {
    width: calc(20% - 1.25rem)
}

.grid-margin-x.small-up-6>.cell {
    width: calc(16.66667% - 1.25rem)
}

.grid-margin-x.small-up-7>.cell {
    width: calc(14.28571% - 1.25rem)
}

.grid-margin-x.small-up-8>.cell {
    width: calc(12.5% - 1.25rem)
}

@media print,
screen and (min-width:40em) {
    .grid-margin-x.small-up-1>.cell {
        width: calc(100% - 1.25rem)
    }

    .grid-margin-x.small-up-2>.cell {
        width: calc(50% - 1.25rem)
    }

    .grid-margin-x.small-up-3>.cell {
        width: calc(33.33333% - 1.25rem)
    }

    .grid-margin-x.small-up-4>.cell {
        width: calc(25% - 1.25rem)
    }

    .grid-margin-x.small-up-5>.cell {
        width: calc(20% - 1.25rem)
    }

    .grid-margin-x.small-up-6>.cell {
        width: calc(16.66667% - 1.25rem)
    }

    .grid-margin-x.small-up-7>.cell {
        width: calc(14.28571% - 1.25rem)
    }

    .grid-margin-x.small-up-8>.cell {
        width: calc(12.5% - 1.25rem)
    }

    .grid-margin-x.medium-up-1>.cell {
        width: calc(100% - 1.875rem)
    }

    .grid-margin-x.medium-up-2>.cell {
        width: calc(50% - 1.875rem)
    }

    .grid-margin-x.medium-up-3>.cell {
        width: calc(33.33333% - 1.875rem)
    }

    .grid-margin-x.medium-up-4>.cell {
        width: calc(25% - 1.875rem)
    }

    .grid-margin-x.medium-up-5>.cell {
        width: calc(20% - 1.875rem)
    }

    .grid-margin-x.medium-up-6>.cell {
        width: calc(16.66667% - 1.875rem)
    }

    .grid-margin-x.medium-up-7>.cell {
        width: calc(14.28571% - 1.875rem)
    }

    .grid-margin-x.medium-up-8>.cell {
        width: calc(12.5% - 1.875rem)
    }
}

@media print,
screen and (min-width:64em) {
    .grid-margin-x.large-up-1>.cell {
        width: calc(100% - 1.875rem)
    }

    .grid-margin-x.large-up-2>.cell {
        width: calc(50% - 1.875rem)
    }

    .grid-margin-x.large-up-3>.cell {
        width: calc(33.33333% - 1.875rem)
    }

    .grid-margin-x.large-up-4>.cell {
        width: calc(25% - 1.875rem)
    }

    .grid-margin-x.large-up-5>.cell {
        width: calc(20% - 1.875rem)
    }

    .grid-margin-x.large-up-6>.cell {
        width: calc(16.66667% - 1.875rem)
    }

    .grid-margin-x.large-up-7>.cell {
        width: calc(14.28571% - 1.875rem)
    }

    .grid-margin-x.large-up-8>.cell {
        width: calc(12.5% - 1.875rem)
    }
}

@media screen and (min-width:75em) {
    .grid-margin-x.xlarge-up-1>.cell {
        width: calc(100% - 1.875rem)
    }

    .grid-margin-x.xlarge-up-2>.cell {
        width: calc(50% - 1.875rem)
    }

    .grid-margin-x.xlarge-up-3>.cell {
        width: calc(33.33333% - 1.875rem)
    }

    .grid-margin-x.xlarge-up-4>.cell {
        width: calc(25% - 1.875rem)
    }

    .grid-margin-x.xlarge-up-5>.cell {
        width: calc(20% - 1.875rem)
    }

    .grid-margin-x.xlarge-up-6>.cell {
        width: calc(16.66667% - 1.875rem)
    }

    .grid-margin-x.xlarge-up-7>.cell {
        width: calc(14.28571% - 1.875rem)
    }

    .grid-margin-x.xlarge-up-8>.cell {
        width: calc(12.5% - 1.875rem)
    }
}

.small-margin-collapse {
    margin-right: 0;
    margin-left: 0
}

.small-margin-collapse>.cell {
    margin-right: 0;
    margin-left: 0
}

.small-margin-collapse>.small-1 {
    width: 8.33333%
}

.small-margin-collapse>.small-2 {
    width: 16.66667%
}

.small-margin-collapse>.small-3 {
    width: 25%
}

.small-margin-collapse>.small-4 {
    width: 33.33333%
}

.small-margin-collapse>.small-5 {
    width: 41.66667%
}

.small-margin-collapse>.small-6 {
    width: 50%
}

.small-margin-collapse>.small-7 {
    width: 58.33333%
}

.small-margin-collapse>.small-8 {
    width: 66.66667%
}

.small-margin-collapse>.small-9 {
    width: 75%
}

.small-margin-collapse>.small-10 {
    width: 83.33333%
}

.small-margin-collapse>.small-11 {
    width: 91.66667%
}

.small-margin-collapse>.small-12 {
    width: 100%
}

@media print,
screen and (min-width:40em) {
    .small-margin-collapse>.medium-1 {
        width: 8.33333%
    }

    .small-margin-collapse>.medium-2 {
        width: 16.66667%
    }

    .small-margin-collapse>.medium-3 {
        width: 25%
    }

    .small-margin-collapse>.medium-4 {
        width: 33.33333%
    }

    .small-margin-collapse>.medium-5 {
        width: 41.66667%
    }

    .small-margin-collapse>.medium-6 {
        width: 50%
    }

    .small-margin-collapse>.medium-7 {
        width: 58.33333%
    }

    .small-margin-collapse>.medium-8 {
        width: 66.66667%
    }

    .small-margin-collapse>.medium-9 {
        width: 75%
    }

    .small-margin-collapse>.medium-10 {
        width: 83.33333%
    }

    .small-margin-collapse>.medium-11 {
        width: 91.66667%
    }

    .small-margin-collapse>.medium-12 {
        width: 100%
    }
}

@media print,
screen and (min-width:64em) {
    .small-margin-collapse>.large-1 {
        width: 8.33333%
    }

    .small-margin-collapse>.large-2 {
        width: 16.66667%
    }

    .small-margin-collapse>.large-3 {
        width: 25%
    }

    .small-margin-collapse>.large-4 {
        width: 33.33333%
    }

    .small-margin-collapse>.large-5 {
        width: 41.66667%
    }

    .small-margin-collapse>.large-6 {
        width: 50%
    }

    .small-margin-collapse>.large-7 {
        width: 58.33333%
    }

    .small-margin-collapse>.large-8 {
        width: 66.66667%
    }

    .small-margin-collapse>.large-9 {
        width: 75%
    }

    .small-margin-collapse>.large-10 {
        width: 83.33333%
    }

    .small-margin-collapse>.large-11 {
        width: 91.66667%
    }

    .small-margin-collapse>.large-12 {
        width: 100%
    }
}

@media screen and (min-width:75em) {
    .small-margin-collapse>.xlarge-1 {
        width: 8.33333%
    }

    .small-margin-collapse>.xlarge-2 {
        width: 16.66667%
    }

    .small-margin-collapse>.xlarge-3 {
        width: 25%
    }

    .small-margin-collapse>.xlarge-4 {
        width: 33.33333%
    }

    .small-margin-collapse>.xlarge-5 {
        width: 41.66667%
    }

    .small-margin-collapse>.xlarge-6 {
        width: 50%
    }

    .small-margin-collapse>.xlarge-7 {
        width: 58.33333%
    }

    .small-margin-collapse>.xlarge-8 {
        width: 66.66667%
    }

    .small-margin-collapse>.xlarge-9 {
        width: 75%
    }

    .small-margin-collapse>.xlarge-10 {
        width: 83.33333%
    }

    .small-margin-collapse>.xlarge-11 {
        width: 91.66667%
    }

    .small-margin-collapse>.xlarge-12 {
        width: 100%
    }
}

.small-padding-collapse {
    margin-right: 0;
    margin-left: 0
}

.small-padding-collapse>.cell {
    padding-right: 0;
    padding-left: 0
}

@media print,
screen and (min-width:40em) {
    .medium-margin-collapse {
        margin-right: 0;
        margin-left: 0
    }

    .medium-margin-collapse>.cell {
        margin-right: 0;
        margin-left: 0
    }
}

@media print,
screen and (min-width:40em) {
    .medium-margin-collapse>.small-1 {
        width: 8.33333%
    }

    .medium-margin-collapse>.small-2 {
        width: 16.66667%
    }

    .medium-margin-collapse>.small-3 {
        width: 25%
    }

    .medium-margin-collapse>.small-4 {
        width: 33.33333%
    }

    .medium-margin-collapse>.small-5 {
        width: 41.66667%
    }

    .medium-margin-collapse>.small-6 {
        width: 50%
    }

    .medium-margin-collapse>.small-7 {
        width: 58.33333%
    }

    .medium-margin-collapse>.small-8 {
        width: 66.66667%
    }

    .medium-margin-collapse>.small-9 {
        width: 75%
    }

    .medium-margin-collapse>.small-10 {
        width: 83.33333%
    }

    .medium-margin-collapse>.small-11 {
        width: 91.66667%
    }

    .medium-margin-collapse>.small-12 {
        width: 100%
    }
}

@media print,
screen and (min-width:40em) {
    .medium-margin-collapse>.medium-1 {
        width: 8.33333%
    }

    .medium-margin-collapse>.medium-2 {
        width: 16.66667%
    }

    .medium-margin-collapse>.medium-3 {
        width: 25%
    }

    .medium-margin-collapse>.medium-4 {
        width: 33.33333%
    }

    .medium-margin-collapse>.medium-5 {
        width: 41.66667%
    }

    .medium-margin-collapse>.medium-6 {
        width: 50%
    }

    .medium-margin-collapse>.medium-7 {
        width: 58.33333%
    }

    .medium-margin-collapse>.medium-8 {
        width: 66.66667%
    }

    .medium-margin-collapse>.medium-9 {
        width: 75%
    }

    .medium-margin-collapse>.medium-10 {
        width: 83.33333%
    }

    .medium-margin-collapse>.medium-11 {
        width: 91.66667%
    }

    .medium-margin-collapse>.medium-12 {
        width: 100%
    }
}

@media print,
screen and (min-width:64em) {
    .medium-margin-collapse>.large-1 {
        width: 8.33333%
    }

    .medium-margin-collapse>.large-2 {
        width: 16.66667%
    }

    .medium-margin-collapse>.large-3 {
        width: 25%
    }

    .medium-margin-collapse>.large-4 {
        width: 33.33333%
    }

    .medium-margin-collapse>.large-5 {
        width: 41.66667%
    }

    .medium-margin-collapse>.large-6 {
        width: 50%
    }

    .medium-margin-collapse>.large-7 {
        width: 58.33333%
    }

    .medium-margin-collapse>.large-8 {
        width: 66.66667%
    }

    .medium-margin-collapse>.large-9 {
        width: 75%
    }

    .medium-margin-collapse>.large-10 {
        width: 83.33333%
    }

    .medium-margin-collapse>.large-11 {
        width: 91.66667%
    }

    .medium-margin-collapse>.large-12 {
        width: 100%
    }
}

@media screen and (min-width:75em) {
    .medium-margin-collapse>.xlarge-1 {
        width: 8.33333%
    }

    .medium-margin-collapse>.xlarge-2 {
        width: 16.66667%
    }

    .medium-margin-collapse>.xlarge-3 {
        width: 25%
    }

    .medium-margin-collapse>.xlarge-4 {
        width: 33.33333%
    }

    .medium-margin-collapse>.xlarge-5 {
        width: 41.66667%
    }

    .medium-margin-collapse>.xlarge-6 {
        width: 50%
    }

    .medium-margin-collapse>.xlarge-7 {
        width: 58.33333%
    }

    .medium-margin-collapse>.xlarge-8 {
        width: 66.66667%
    }

    .medium-margin-collapse>.xlarge-9 {
        width: 75%
    }

    .medium-margin-collapse>.xlarge-10 {
        width: 83.33333%
    }

    .medium-margin-collapse>.xlarge-11 {
        width: 91.66667%
    }

    .medium-margin-collapse>.xlarge-12 {
        width: 100%
    }
}

@media print,
screen and (min-width:40em) {
    .medium-padding-collapse {
        margin-right: 0;
        margin-left: 0
    }

    .medium-padding-collapse>.cell {
        padding-right: 0;
        padding-left: 0
    }
}

@media print,
screen and (min-width:64em) {
    .large-margin-collapse {
        margin-right: 0;
        margin-left: 0
    }

    .large-margin-collapse>.cell {
        margin-right: 0;
        margin-left: 0
    }
}

@media print,
screen and (min-width:64em) {
    .large-margin-collapse>.small-1 {
        width: 8.33333%
    }

    .large-margin-collapse>.small-2 {
        width: 16.66667%
    }

    .large-margin-collapse>.small-3 {
        width: 25%
    }

    .large-margin-collapse>.small-4 {
        width: 33.33333%
    }

    .large-margin-collapse>.small-5 {
        width: 41.66667%
    }

    .large-margin-collapse>.small-6 {
        width: 50%
    }

    .large-margin-collapse>.small-7 {
        width: 58.33333%
    }

    .large-margin-collapse>.small-8 {
        width: 66.66667%
    }

    .large-margin-collapse>.small-9 {
        width: 75%
    }

    .large-margin-collapse>.small-10 {
        width: 83.33333%
    }

    .large-margin-collapse>.small-11 {
        width: 91.66667%
    }

    .large-margin-collapse>.small-12 {
        width: 100%
    }
}

@media print,
screen and (min-width:64em) {
    .large-margin-collapse>.medium-1 {
        width: 8.33333%
    }

    .large-margin-collapse>.medium-2 {
        width: 16.66667%
    }

    .large-margin-collapse>.medium-3 {
        width: 25%
    }

    .large-margin-collapse>.medium-4 {
        width: 33.33333%
    }

    .large-margin-collapse>.medium-5 {
        width: 41.66667%
    }

    .large-margin-collapse>.medium-6 {
        width: 50%
    }

    .large-margin-collapse>.medium-7 {
        width: 58.33333%
    }

    .large-margin-collapse>.medium-8 {
        width: 66.66667%
    }

    .large-margin-collapse>.medium-9 {
        width: 75%
    }

    .large-margin-collapse>.medium-10 {
        width: 83.33333%
    }

    .large-margin-collapse>.medium-11 {
        width: 91.66667%
    }

    .large-margin-collapse>.medium-12 {
        width: 100%
    }
}

@media print,
screen and (min-width:64em) {
    .large-margin-collapse>.large-1 {
        width: 8.33333%
    }

    .large-margin-collapse>.large-2 {
        width: 16.66667%
    }

    .large-margin-collapse>.large-3 {
        width: 25%
    }

    .large-margin-collapse>.large-4 {
        width: 33.33333%
    }

    .large-margin-collapse>.large-5 {
        width: 41.66667%
    }

    .large-margin-collapse>.large-6 {
        width: 50%
    }

    .large-margin-collapse>.large-7 {
        width: 58.33333%
    }

    .large-margin-collapse>.large-8 {
        width: 66.66667%
    }

    .large-margin-collapse>.large-9 {
        width: 75%
    }

    .large-margin-collapse>.large-10 {
        width: 83.33333%
    }

    .large-margin-collapse>.large-11 {
        width: 91.66667%
    }

    .large-margin-collapse>.large-12 {
        width: 100%
    }
}

@media screen and (min-width:75em) {
    .large-margin-collapse>.xlarge-1 {
        width: 8.33333%
    }

    .large-margin-collapse>.xlarge-2 {
        width: 16.66667%
    }

    .large-margin-collapse>.xlarge-3 {
        width: 25%
    }

    .large-margin-collapse>.xlarge-4 {
        width: 33.33333%
    }

    .large-margin-collapse>.xlarge-5 {
        width: 41.66667%
    }

    .large-margin-collapse>.xlarge-6 {
        width: 50%
    }

    .large-margin-collapse>.xlarge-7 {
        width: 58.33333%
    }

    .large-margin-collapse>.xlarge-8 {
        width: 66.66667%
    }

    .large-margin-collapse>.xlarge-9 {
        width: 75%
    }

    .large-margin-collapse>.xlarge-10 {
        width: 83.33333%
    }

    .large-margin-collapse>.xlarge-11 {
        width: 91.66667%
    }

    .large-margin-collapse>.xlarge-12 {
        width: 100%
    }
}

@media print,
screen and (min-width:64em) {
    .large-padding-collapse {
        margin-right: 0;
        margin-left: 0
    }

    .large-padding-collapse>.cell {
        padding-right: 0;
        padding-left: 0
    }
}

@media screen and (min-width:75em) {
    .xlarge-margin-collapse {
        margin-right: 0;
        margin-left: 0
    }

    .xlarge-margin-collapse>.cell {
        margin-right: 0;
        margin-left: 0
    }
}

@media screen and (min-width:75em) {
    .xlarge-margin-collapse>.small-1 {
        width: 8.33333%
    }

    .xlarge-margin-collapse>.small-2 {
        width: 16.66667%
    }

    .xlarge-margin-collapse>.small-3 {
        width: 25%
    }

    .xlarge-margin-collapse>.small-4 {
        width: 33.33333%
    }

    .xlarge-margin-collapse>.small-5 {
        width: 41.66667%
    }

    .xlarge-margin-collapse>.small-6 {
        width: 50%
    }

    .xlarge-margin-collapse>.small-7 {
        width: 58.33333%
    }

    .xlarge-margin-collapse>.small-8 {
        width: 66.66667%
    }

    .xlarge-margin-collapse>.small-9 {
        width: 75%
    }

    .xlarge-margin-collapse>.small-10 {
        width: 83.33333%
    }

    .xlarge-margin-collapse>.small-11 {
        width: 91.66667%
    }

    .xlarge-margin-collapse>.small-12 {
        width: 100%
    }
}

@media screen and (min-width:75em) {
    .xlarge-margin-collapse>.medium-1 {
        width: 8.33333%
    }

    .xlarge-margin-collapse>.medium-2 {
        width: 16.66667%
    }

    .xlarge-margin-collapse>.medium-3 {
        width: 25%
    }

    .xlarge-margin-collapse>.medium-4 {
        width: 33.33333%
    }

    .xlarge-margin-collapse>.medium-5 {
        width: 41.66667%
    }

    .xlarge-margin-collapse>.medium-6 {
        width: 50%
    }

    .xlarge-margin-collapse>.medium-7 {
        width: 58.33333%
    }

    .xlarge-margin-collapse>.medium-8 {
        width: 66.66667%
    }

    .xlarge-margin-collapse>.medium-9 {
        width: 75%
    }

    .xlarge-margin-collapse>.medium-10 {
        width: 83.33333%
    }

    .xlarge-margin-collapse>.medium-11 {
        width: 91.66667%
    }

    .xlarge-margin-collapse>.medium-12 {
        width: 100%
    }
}

@media screen and (min-width:75em) {
    .xlarge-margin-collapse>.large-1 {
        width: 8.33333%
    }

    .xlarge-margin-collapse>.large-2 {
        width: 16.66667%
    }

    .xlarge-margin-collapse>.large-3 {
        width: 25%
    }

    .xlarge-margin-collapse>.large-4 {
        width: 33.33333%
    }

    .xlarge-margin-collapse>.large-5 {
        width: 41.66667%
    }

    .xlarge-margin-collapse>.large-6 {
        width: 50%
    }

    .xlarge-margin-collapse>.large-7 {
        width: 58.33333%
    }

    .xlarge-margin-collapse>.large-8 {
        width: 66.66667%
    }

    .xlarge-margin-collapse>.large-9 {
        width: 75%
    }

    .xlarge-margin-collapse>.large-10 {
        width: 83.33333%
    }

    .xlarge-margin-collapse>.large-11 {
        width: 91.66667%
    }

    .xlarge-margin-collapse>.large-12 {
        width: 100%
    }
}

@media screen and (min-width:75em) {
    .xlarge-margin-collapse>.xlarge-1 {
        width: 8.33333%
    }

    .xlarge-margin-collapse>.xlarge-2 {
        width: 16.66667%
    }

    .xlarge-margin-collapse>.xlarge-3 {
        width: 25%
    }

    .xlarge-margin-collapse>.xlarge-4 {
        width: 33.33333%
    }

    .xlarge-margin-collapse>.xlarge-5 {
        width: 41.66667%
    }

    .xlarge-margin-collapse>.xlarge-6 {
        width: 50%
    }

    .xlarge-margin-collapse>.xlarge-7 {
        width: 58.33333%
    }

    .xlarge-margin-collapse>.xlarge-8 {
        width: 66.66667%
    }

    .xlarge-margin-collapse>.xlarge-9 {
        width: 75%
    }

    .xlarge-margin-collapse>.xlarge-10 {
        width: 83.33333%
    }

    .xlarge-margin-collapse>.xlarge-11 {
        width: 91.66667%
    }

    .xlarge-margin-collapse>.xlarge-12 {
        width: 100%
    }
}

@media screen and (min-width:75em) {
    .xlarge-padding-collapse {
        margin-right: 0;
        margin-left: 0
    }

    .xlarge-padding-collapse>.cell {
        padding-right: 0;
        padding-left: 0
    }
}

.small-offset-0 {
    margin-left: 0
}

.grid-margin-x>.small-offset-0 {
    margin-left: calc(0% + .625rem)
}

.small-offset-1 {
    margin-left: 8.33333%
}

.grid-margin-x>.small-offset-1 {
    margin-left: calc(8.33333% + .625rem)
}

.small-offset-2 {
    margin-left: 16.66667%
}

.grid-margin-x>.small-offset-2 {
    margin-left: calc(16.66667% + .625rem)
}

.small-offset-3 {
    margin-left: 25%
}

.grid-margin-x>.small-offset-3 {
    margin-left: calc(25% + .625rem)
}

.small-offset-4 {
    margin-left: 33.33333%
}

.grid-margin-x>.small-offset-4 {
    margin-left: calc(33.33333% + .625rem)
}

.small-offset-5 {
    margin-left: 41.66667%
}

.grid-margin-x>.small-offset-5 {
    margin-left: calc(41.66667% + .625rem)
}

.small-offset-6 {
    margin-left: 50%
}

.grid-margin-x>.small-offset-6 {
    margin-left: calc(50% + .625rem)
}

.small-offset-7 {
    margin-left: 58.33333%
}

.grid-margin-x>.small-offset-7 {
    margin-left: calc(58.33333% + .625rem)
}

.small-offset-8 {
    margin-left: 66.66667%
}

.grid-margin-x>.small-offset-8 {
    margin-left: calc(66.66667% + .625rem)
}

.small-offset-9 {
    margin-left: 75%
}

.grid-margin-x>.small-offset-9 {
    margin-left: calc(75% + .625rem)
}

.small-offset-10 {
    margin-left: 83.33333%
}

.grid-margin-x>.small-offset-10 {
    margin-left: calc(83.33333% + .625rem)
}

.small-offset-11 {
    margin-left: 91.66667%
}

.grid-margin-x>.small-offset-11 {
    margin-left: calc(91.66667% + .625rem)
}

@media print,
screen and (min-width:40em) {
    .medium-offset-0 {
        margin-left: 0
    }

    .grid-margin-x>.medium-offset-0 {
        margin-left: calc(0% + .9375rem)
    }

    .medium-offset-1 {
        margin-left: 8.33333%
    }

    .grid-margin-x>.medium-offset-1 {
        margin-left: calc(8.33333% + .9375rem)
    }

    .medium-offset-2 {
        margin-left: 16.66667%
    }

    .grid-margin-x>.medium-offset-2 {
        margin-left: calc(16.66667% + .9375rem)
    }

    .medium-offset-3 {
        margin-left: 25%
    }

    .grid-margin-x>.medium-offset-3 {
        margin-left: calc(25% + .9375rem)
    }

    .medium-offset-4 {
        margin-left: 33.33333%
    }

    .grid-margin-x>.medium-offset-4 {
        margin-left: calc(33.33333% + .9375rem)
    }

    .medium-offset-5 {
        margin-left: 41.66667%
    }

    .grid-margin-x>.medium-offset-5 {
        margin-left: calc(41.66667% + .9375rem)
    }

    .medium-offset-6 {
        margin-left: 50%
    }

    .grid-margin-x>.medium-offset-6 {
        margin-left: calc(50% + .9375rem)
    }

    .medium-offset-7 {
        margin-left: 58.33333%
    }

    .grid-margin-x>.medium-offset-7 {
        margin-left: calc(58.33333% + .9375rem)
    }

    .medium-offset-8 {
        margin-left: 66.66667%
    }

    .grid-margin-x>.medium-offset-8 {
        margin-left: calc(66.66667% + .9375rem)
    }

    .medium-offset-9 {
        margin-left: 75%
    }

    .grid-margin-x>.medium-offset-9 {
        margin-left: calc(75% + .9375rem)
    }

    .medium-offset-10 {
        margin-left: 83.33333%
    }

    .grid-margin-x>.medium-offset-10 {
        margin-left: calc(83.33333% + .9375rem)
    }

    .medium-offset-11 {
        margin-left: 91.66667%
    }

    .grid-margin-x>.medium-offset-11 {
        margin-left: calc(91.66667% + .9375rem)
    }
}

@media print,
screen and (min-width:64em) {
    .large-offset-0 {
        margin-left: 0
    }

    .grid-margin-x>.large-offset-0 {
        margin-left: calc(0% + .9375rem)
    }

    .large-offset-1 {
        margin-left: 8.33333%
    }

    .grid-margin-x>.large-offset-1 {
        margin-left: calc(8.33333% + .9375rem)
    }

    .large-offset-2 {
        margin-left: 16.66667%
    }

    .grid-margin-x>.large-offset-2 {
        margin-left: calc(16.66667% + .9375rem)
    }

    .large-offset-3 {
        margin-left: 25%
    }

    .grid-margin-x>.large-offset-3 {
        margin-left: calc(25% + .9375rem)
    }

    .large-offset-4 {
        margin-left: 33.33333%
    }

    .grid-margin-x>.large-offset-4 {
        margin-left: calc(33.33333% + .9375rem)
    }

    .large-offset-5 {
        margin-left: 41.66667%
    }

    .grid-margin-x>.large-offset-5 {
        margin-left: calc(41.66667% + .9375rem)
    }

    .large-offset-6 {
        margin-left: 50%
    }

    .grid-margin-x>.large-offset-6 {
        margin-left: calc(50% + .9375rem)
    }

    .large-offset-7 {
        margin-left: 58.33333%
    }

    .grid-margin-x>.large-offset-7 {
        margin-left: calc(58.33333% + .9375rem)
    }

    .large-offset-8 {
        margin-left: 66.66667%
    }

    .grid-margin-x>.large-offset-8 {
        margin-left: calc(66.66667% + .9375rem)
    }

    .large-offset-9 {
        margin-left: 75%
    }

    .grid-margin-x>.large-offset-9 {
        margin-left: calc(75% + .9375rem)
    }

    .large-offset-10 {
        margin-left: 83.33333%
    }

    .grid-margin-x>.large-offset-10 {
        margin-left: calc(83.33333% + .9375rem)
    }

    .large-offset-11 {
        margin-left: 91.66667%
    }

    .grid-margin-x>.large-offset-11 {
        margin-left: calc(91.66667% + .9375rem)
    }
}

@media screen and (min-width:75em) {
    .xlarge-offset-0 {
        margin-left: 0
    }

    .grid-margin-x>.xlarge-offset-0 {
        margin-left: calc(0% + .9375rem)
    }

    .xlarge-offset-1 {
        margin-left: 8.33333%
    }

    .grid-margin-x>.xlarge-offset-1 {
        margin-left: calc(8.33333% + .9375rem)
    }

    .xlarge-offset-2 {
        margin-left: 16.66667%
    }

    .grid-margin-x>.xlarge-offset-2 {
        margin-left: calc(16.66667% + .9375rem)
    }

    .xlarge-offset-3 {
        margin-left: 25%
    }

    .grid-margin-x>.xlarge-offset-3 {
        margin-left: calc(25% + .9375rem)
    }

    .xlarge-offset-4 {
        margin-left: 33.33333%
    }

    .grid-margin-x>.xlarge-offset-4 {
        margin-left: calc(33.33333% + .9375rem)
    }

    .xlarge-offset-5 {
        margin-left: 41.66667%
    }

    .grid-margin-x>.xlarge-offset-5 {
        margin-left: calc(41.66667% + .9375rem)
    }

    .xlarge-offset-6 {
        margin-left: 50%
    }

    .grid-margin-x>.xlarge-offset-6 {
        margin-left: calc(50% + .9375rem)
    }

    .xlarge-offset-7 {
        margin-left: 58.33333%
    }

    .grid-margin-x>.xlarge-offset-7 {
        margin-left: calc(58.33333% + .9375rem)
    }

    .xlarge-offset-8 {
        margin-left: 66.66667%
    }

    .grid-margin-x>.xlarge-offset-8 {
        margin-left: calc(66.66667% + .9375rem)
    }

    .xlarge-offset-9 {
        margin-left: 75%
    }

    .grid-margin-x>.xlarge-offset-9 {
        margin-left: calc(75% + .9375rem)
    }

    .xlarge-offset-10 {
        margin-left: 83.33333%
    }

    .grid-margin-x>.xlarge-offset-10 {
        margin-left: calc(83.33333% + .9375rem)
    }

    .xlarge-offset-11 {
        margin-left: 91.66667%
    }

    .grid-margin-x>.xlarge-offset-11 {
        margin-left: calc(91.66667% + .9375rem)
    }
}

.grid-y {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column nowrap;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap
}

.grid-y>.cell {
    width: auto
}

.grid-y>.auto {
    height: auto
}

.grid-y>.shrink {
    height: auto
}

.grid-y>.small-1,
.grid-y>.small-10,
.grid-y>.small-11,
.grid-y>.small-12,
.grid-y>.small-2,
.grid-y>.small-3,
.grid-y>.small-4,
.grid-y>.small-5,
.grid-y>.small-6,
.grid-y>.small-7,
.grid-y>.small-8,
.grid-y>.small-9,
.grid-y>.small-full,
.grid-y>.small-shrink {
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto
}

@media print,
screen and (min-width:40em) {

    .grid-y>.medium-1,
    .grid-y>.medium-10,
    .grid-y>.medium-11,
    .grid-y>.medium-12,
    .grid-y>.medium-2,
    .grid-y>.medium-3,
    .grid-y>.medium-4,
    .grid-y>.medium-5,
    .grid-y>.medium-6,
    .grid-y>.medium-7,
    .grid-y>.medium-8,
    .grid-y>.medium-9,
    .grid-y>.medium-full,
    .grid-y>.medium-shrink {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }
}

@media print,
screen and (min-width:64em) {

    .grid-y>.large-1,
    .grid-y>.large-10,
    .grid-y>.large-11,
    .grid-y>.large-12,
    .grid-y>.large-2,
    .grid-y>.large-3,
    .grid-y>.large-4,
    .grid-y>.large-5,
    .grid-y>.large-6,
    .grid-y>.large-7,
    .grid-y>.large-8,
    .grid-y>.large-9,
    .grid-y>.large-full,
    .grid-y>.large-shrink {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }
}

@media screen and (min-width:75em) {

    .grid-y>.xlarge-1,
    .grid-y>.xlarge-10,
    .grid-y>.xlarge-11,
    .grid-y>.xlarge-12,
    .grid-y>.xlarge-2,
    .grid-y>.xlarge-3,
    .grid-y>.xlarge-4,
    .grid-y>.xlarge-5,
    .grid-y>.xlarge-6,
    .grid-y>.xlarge-7,
    .grid-y>.xlarge-8,
    .grid-y>.xlarge-9,
    .grid-y>.xlarge-full,
    .grid-y>.xlarge-shrink {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }
}

.grid-y>.small-1 {
    height: 8.33333%
}

.grid-y>.small-2 {
    height: 16.66667%
}

.grid-y>.small-3 {
    height: 25%
}

.grid-y>.small-4 {
    height: 33.33333%
}

.grid-y>.small-5 {
    height: 41.66667%
}

.grid-y>.small-6 {
    height: 50%
}

.grid-y>.small-7 {
    height: 58.33333%
}

.grid-y>.small-8 {
    height: 66.66667%
}

.grid-y>.small-9 {
    height: 75%
}

.grid-y>.small-10 {
    height: 83.33333%
}

.grid-y>.small-11 {
    height: 91.66667%
}

.grid-y>.small-12 {
    height: 100%
}

@media print,
screen and (min-width:40em) {
    .grid-y>.medium-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto
    }

    .grid-y>.medium-shrink {
        height: auto
    }

    .grid-y>.medium-1 {
        height: 8.33333%
    }

    .grid-y>.medium-2 {
        height: 16.66667%
    }

    .grid-y>.medium-3 {
        height: 25%
    }

    .grid-y>.medium-4 {
        height: 33.33333%
    }

    .grid-y>.medium-5 {
        height: 41.66667%
    }

    .grid-y>.medium-6 {
        height: 50%
    }

    .grid-y>.medium-7 {
        height: 58.33333%
    }

    .grid-y>.medium-8 {
        height: 66.66667%
    }

    .grid-y>.medium-9 {
        height: 75%
    }

    .grid-y>.medium-10 {
        height: 83.33333%
    }

    .grid-y>.medium-11 {
        height: 91.66667%
    }

    .grid-y>.medium-12 {
        height: 100%
    }
}

@media print,
screen and (min-width:64em) {
    .grid-y>.large-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto
    }

    .grid-y>.large-shrink {
        height: auto
    }

    .grid-y>.large-1 {
        height: 8.33333%
    }

    .grid-y>.large-2 {
        height: 16.66667%
    }

    .grid-y>.large-3 {
        height: 25%
    }

    .grid-y>.large-4 {
        height: 33.33333%
    }

    .grid-y>.large-5 {
        height: 41.66667%
    }

    .grid-y>.large-6 {
        height: 50%
    }

    .grid-y>.large-7 {
        height: 58.33333%
    }

    .grid-y>.large-8 {
        height: 66.66667%
    }

    .grid-y>.large-9 {
        height: 75%
    }

    .grid-y>.large-10 {
        height: 83.33333%
    }

    .grid-y>.large-11 {
        height: 91.66667%
    }

    .grid-y>.large-12 {
        height: 100%
    }
}

@media screen and (min-width:75em) {
    .grid-y>.xlarge-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto
    }

    .grid-y>.xlarge-shrink {
        height: auto
    }

    .grid-y>.xlarge-1 {
        height: 8.33333%
    }

    .grid-y>.xlarge-2 {
        height: 16.66667%
    }

    .grid-y>.xlarge-3 {
        height: 25%
    }

    .grid-y>.xlarge-4 {
        height: 33.33333%
    }

    .grid-y>.xlarge-5 {
        height: 41.66667%
    }

    .grid-y>.xlarge-6 {
        height: 50%
    }

    .grid-y>.xlarge-7 {
        height: 58.33333%
    }

    .grid-y>.xlarge-8 {
        height: 66.66667%
    }

    .grid-y>.xlarge-9 {
        height: 75%
    }

    .grid-y>.xlarge-10 {
        height: 83.33333%
    }

    .grid-y>.xlarge-11 {
        height: 91.66667%
    }

    .grid-y>.xlarge-12 {
        height: 100%
    }
}

.grid-padding-y .grid-padding-y {
    margin-top: -.625rem;
    margin-bottom: -.625rem
}

@media print,
screen and (min-width:40em) {
    .grid-padding-y .grid-padding-y {
        margin-top: -.9375rem;
        margin-bottom: -.9375rem
    }
}

.grid-padding-y>.cell {
    padding-top: .625rem;
    padding-bottom: .625rem
}

@media print,
screen and (min-width:40em) {
    .grid-padding-y>.cell {
        padding-top: .9375rem;
        padding-bottom: .9375rem
    }
}

.grid-margin-y {
    margin-top: -.625rem;
    margin-bottom: -.625rem
}

@media print,
screen and (min-width:40em) {
    .grid-margin-y {
        margin-top: -.9375rem;
        margin-bottom: -.9375rem
    }
}

.grid-margin-y>.cell {
    height: calc(100% - 1.25rem);
    margin-top: .625rem;
    margin-bottom: .625rem
}

@media print,
screen and (min-width:40em) {
    .grid-margin-y>.cell {
        height: calc(100% - 1.875rem);
        margin-top: .9375rem;
        margin-bottom: .9375rem
    }
}

.grid-margin-y>.auto {
    height: auto
}

.grid-margin-y>.shrink {
    height: auto
}

.grid-margin-y>.small-1 {
    height: calc(8.33333% - 1.25rem)
}

.grid-margin-y>.small-2 {
    height: calc(16.66667% - 1.25rem)
}

.grid-margin-y>.small-3 {
    height: calc(25% - 1.25rem)
}

.grid-margin-y>.small-4 {
    height: calc(33.33333% - 1.25rem)
}

.grid-margin-y>.small-5 {
    height: calc(41.66667% - 1.25rem)
}

.grid-margin-y>.small-6 {
    height: calc(50% - 1.25rem)
}

.grid-margin-y>.small-7 {
    height: calc(58.33333% - 1.25rem)
}

.grid-margin-y>.small-8 {
    height: calc(66.66667% - 1.25rem)
}

.grid-margin-y>.small-9 {
    height: calc(75% - 1.25rem)
}

.grid-margin-y>.small-10 {
    height: calc(83.33333% - 1.25rem)
}

.grid-margin-y>.small-11 {
    height: calc(91.66667% - 1.25rem)
}

.grid-margin-y>.small-12 {
    height: calc(100% - 1.25rem)
}

@media print,
screen and (min-width:40em) {
    .grid-margin-y>.auto {
        height: auto
    }

    .grid-margin-y>.shrink {
        height: auto
    }

    .grid-margin-y>.small-1 {
        height: calc(8.33333% - 1.875rem)
    }

    .grid-margin-y>.small-2 {
        height: calc(16.66667% - 1.875rem)
    }

    .grid-margin-y>.small-3 {
        height: calc(25% - 1.875rem)
    }

    .grid-margin-y>.small-4 {
        height: calc(33.33333% - 1.875rem)
    }

    .grid-margin-y>.small-5 {
        height: calc(41.66667% - 1.875rem)
    }

    .grid-margin-y>.small-6 {
        height: calc(50% - 1.875rem)
    }

    .grid-margin-y>.small-7 {
        height: calc(58.33333% - 1.875rem)
    }

    .grid-margin-y>.small-8 {
        height: calc(66.66667% - 1.875rem)
    }

    .grid-margin-y>.small-9 {
        height: calc(75% - 1.875rem)
    }

    .grid-margin-y>.small-10 {
        height: calc(83.33333% - 1.875rem)
    }

    .grid-margin-y>.small-11 {
        height: calc(91.66667% - 1.875rem)
    }

    .grid-margin-y>.small-12 {
        height: calc(100% - 1.875rem)
    }

    .grid-margin-y>.medium-auto {
        height: auto
    }

    .grid-margin-y>.medium-shrink {
        height: auto
    }

    .grid-margin-y>.medium-1 {
        height: calc(8.33333% - 1.875rem)
    }

    .grid-margin-y>.medium-2 {
        height: calc(16.66667% - 1.875rem)
    }

    .grid-margin-y>.medium-3 {
        height: calc(25% - 1.875rem)
    }

    .grid-margin-y>.medium-4 {
        height: calc(33.33333% - 1.875rem)
    }

    .grid-margin-y>.medium-5 {
        height: calc(41.66667% - 1.875rem)
    }

    .grid-margin-y>.medium-6 {
        height: calc(50% - 1.875rem)
    }

    .grid-margin-y>.medium-7 {
        height: calc(58.33333% - 1.875rem)
    }

    .grid-margin-y>.medium-8 {
        height: calc(66.66667% - 1.875rem)
    }

    .grid-margin-y>.medium-9 {
        height: calc(75% - 1.875rem)
    }

    .grid-margin-y>.medium-10 {
        height: calc(83.33333% - 1.875rem)
    }

    .grid-margin-y>.medium-11 {
        height: calc(91.66667% - 1.875rem)
    }

    .grid-margin-y>.medium-12 {
        height: calc(100% - 1.875rem)
    }
}

@media print,
screen and (min-width:64em) {
    .grid-margin-y>.large-auto {
        height: auto
    }

    .grid-margin-y>.large-shrink {
        height: auto
    }

    .grid-margin-y>.large-1 {
        height: calc(8.33333% - 1.875rem)
    }

    .grid-margin-y>.large-2 {
        height: calc(16.66667% - 1.875rem)
    }

    .grid-margin-y>.large-3 {
        height: calc(25% - 1.875rem)
    }

    .grid-margin-y>.large-4 {
        height: calc(33.33333% - 1.875rem)
    }

    .grid-margin-y>.large-5 {
        height: calc(41.66667% - 1.875rem)
    }

    .grid-margin-y>.large-6 {
        height: calc(50% - 1.875rem)
    }

    .grid-margin-y>.large-7 {
        height: calc(58.33333% - 1.875rem)
    }

    .grid-margin-y>.large-8 {
        height: calc(66.66667% - 1.875rem)
    }

    .grid-margin-y>.large-9 {
        height: calc(75% - 1.875rem)
    }

    .grid-margin-y>.large-10 {
        height: calc(83.33333% - 1.875rem)
    }

    .grid-margin-y>.large-11 {
        height: calc(91.66667% - 1.875rem)
    }

    .grid-margin-y>.large-12 {
        height: calc(100% - 1.875rem)
    }
}

@media screen and (min-width:75em) {
    .grid-margin-y>.xlarge-auto {
        height: auto
    }

    .grid-margin-y>.xlarge-shrink {
        height: auto
    }

    .grid-margin-y>.xlarge-1 {
        height: calc(8.33333% - 1.875rem)
    }

    .grid-margin-y>.xlarge-2 {
        height: calc(16.66667% - 1.875rem)
    }

    .grid-margin-y>.xlarge-3 {
        height: calc(25% - 1.875rem)
    }

    .grid-margin-y>.xlarge-4 {
        height: calc(33.33333% - 1.875rem)
    }

    .grid-margin-y>.xlarge-5 {
        height: calc(41.66667% - 1.875rem)
    }

    .grid-margin-y>.xlarge-6 {
        height: calc(50% - 1.875rem)
    }

    .grid-margin-y>.xlarge-7 {
        height: calc(58.33333% - 1.875rem)
    }

    .grid-margin-y>.xlarge-8 {
        height: calc(66.66667% - 1.875rem)
    }

    .grid-margin-y>.xlarge-9 {
        height: calc(75% - 1.875rem)
    }

    .grid-margin-y>.xlarge-10 {
        height: calc(83.33333% - 1.875rem)
    }

    .grid-margin-y>.xlarge-11 {
        height: calc(91.66667% - 1.875rem)
    }

    .grid-margin-y>.xlarge-12 {
        height: calc(100% - 1.875rem)
    }
}

.grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100vw
}

.cell .grid-frame {
    width: 100%
}

.cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar
}

.cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-stype: -ms-autohiding-scrollbar
}

.cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    max-height: 100%
}

.cell-block-container>.grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

@media print,
screen and (min-width:40em) {
    .medium-grid-frame {
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw
    }

    .cell .medium-grid-frame {
        width: 100%
    }

    .medium-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar
    }

    .medium-cell-block-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%
    }

    .medium-cell-block-container>.grid-x {
        max-height: 100%;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    .medium-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar
    }
}

@media print,
screen and (min-width:64em) {
    .large-grid-frame {
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw
    }

    .cell .large-grid-frame {
        width: 100%
    }

    .large-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar
    }

    .large-cell-block-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%
    }

    .large-cell-block-container>.grid-x {
        max-height: 100%;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    .large-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar
    }
}

@media screen and (min-width:75em) {
    .xlarge-grid-frame {
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw
    }

    .cell .xlarge-grid-frame {
        width: 100%
    }

    .xlarge-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar
    }

    .xlarge-cell-block-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%
    }

    .xlarge-cell-block-container>.grid-x {
        max-height: 100%;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    .xlarge-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-stype: -ms-autohiding-scrollbar
    }
}

.grid-y.grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: 100vh
}

@media print,
screen and (min-width:40em) {
    .grid-y.medium-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh
    }
}

@media print,
screen and (min-width:64em) {
    .grid-y.large-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh
    }
}

@media screen and (min-width:75em) {
    .grid-y.xlarge-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh
    }
}

.cell .grid-y.grid-frame {
    height: 100%
}

@media print,
screen and (min-width:40em) {
    .cell .grid-y.medium-grid-frame {
        height: 100%
    }
}

@media print,
screen and (min-width:64em) {
    .cell .grid-y.large-grid-frame {
        height: 100%
    }
}

@media screen and (min-width:75em) {
    .cell .grid-y.xlarge-grid-frame {
        height: 100%
    }
}

.grid-margin-y {
    margin-top: -.625rem;
    margin-bottom: -.625rem
}

@media print,
screen and (min-width:40em) {
    .grid-margin-y {
        margin-top: -.9375rem;
        margin-bottom: -.9375rem
    }
}

.grid-margin-y>.cell {
    height: calc(100% - 1.25rem);
    margin-top: .625rem;
    margin-bottom: .625rem
}

@media print,
screen and (min-width:40em) {
    .grid-margin-y>.cell {
        height: calc(100% - 1.875rem);
        margin-top: .9375rem;
        margin-bottom: .9375rem
    }
}

.grid-margin-y>.auto {
    height: auto
}

.grid-margin-y>.shrink {
    height: auto
}

.grid-margin-y>.small-1 {
    height: calc(8.33333% - 1.25rem)
}

.grid-margin-y>.small-2 {
    height: calc(16.66667% - 1.25rem)
}

.grid-margin-y>.small-3 {
    height: calc(25% - 1.25rem)
}

.grid-margin-y>.small-4 {
    height: calc(33.33333% - 1.25rem)
}

.grid-margin-y>.small-5 {
    height: calc(41.66667% - 1.25rem)
}

.grid-margin-y>.small-6 {
    height: calc(50% - 1.25rem)
}

.grid-margin-y>.small-7 {
    height: calc(58.33333% - 1.25rem)
}

.grid-margin-y>.small-8 {
    height: calc(66.66667% - 1.25rem)
}

.grid-margin-y>.small-9 {
    height: calc(75% - 1.25rem)
}

.grid-margin-y>.small-10 {
    height: calc(83.33333% - 1.25rem)
}

.grid-margin-y>.small-11 {
    height: calc(91.66667% - 1.25rem)
}

.grid-margin-y>.small-12 {
    height: calc(100% - 1.25rem)
}

@media print,
screen and (min-width:40em) {
    .grid-margin-y>.auto {
        height: auto
    }

    .grid-margin-y>.shrink {
        height: auto
    }

    .grid-margin-y>.small-1 {
        height: calc(8.33333% - 1.875rem)
    }

    .grid-margin-y>.small-2 {
        height: calc(16.66667% - 1.875rem)
    }

    .grid-margin-y>.small-3 {
        height: calc(25% - 1.875rem)
    }

    .grid-margin-y>.small-4 {
        height: calc(33.33333% - 1.875rem)
    }

    .grid-margin-y>.small-5 {
        height: calc(41.66667% - 1.875rem)
    }

    .grid-margin-y>.small-6 {
        height: calc(50% - 1.875rem)
    }

    .grid-margin-y>.small-7 {
        height: calc(58.33333% - 1.875rem)
    }

    .grid-margin-y>.small-8 {
        height: calc(66.66667% - 1.875rem)
    }

    .grid-margin-y>.small-9 {
        height: calc(75% - 1.875rem)
    }

    .grid-margin-y>.small-10 {
        height: calc(83.33333% - 1.875rem)
    }

    .grid-margin-y>.small-11 {
        height: calc(91.66667% - 1.875rem)
    }

    .grid-margin-y>.small-12 {
        height: calc(100% - 1.875rem)
    }

    .grid-margin-y>.medium-auto {
        height: auto
    }

    .grid-margin-y>.medium-shrink {
        height: auto
    }

    .grid-margin-y>.medium-1 {
        height: calc(8.33333% - 1.875rem)
    }

    .grid-margin-y>.medium-2 {
        height: calc(16.66667% - 1.875rem)
    }

    .grid-margin-y>.medium-3 {
        height: calc(25% - 1.875rem)
    }

    .grid-margin-y>.medium-4 {
        height: calc(33.33333% - 1.875rem)
    }

    .grid-margin-y>.medium-5 {
        height: calc(41.66667% - 1.875rem)
    }

    .grid-margin-y>.medium-6 {
        height: calc(50% - 1.875rem)
    }

    .grid-margin-y>.medium-7 {
        height: calc(58.33333% - 1.875rem)
    }

    .grid-margin-y>.medium-8 {
        height: calc(66.66667% - 1.875rem)
    }

    .grid-margin-y>.medium-9 {
        height: calc(75% - 1.875rem)
    }

    .grid-margin-y>.medium-10 {
        height: calc(83.33333% - 1.875rem)
    }

    .grid-margin-y>.medium-11 {
        height: calc(91.66667% - 1.875rem)
    }

    .grid-margin-y>.medium-12 {
        height: calc(100% - 1.875rem)
    }
}

@media print,
screen and (min-width:64em) {
    .grid-margin-y>.large-auto {
        height: auto
    }

    .grid-margin-y>.large-shrink {
        height: auto
    }

    .grid-margin-y>.large-1 {
        height: calc(8.33333% - 1.875rem)
    }

    .grid-margin-y>.large-2 {
        height: calc(16.66667% - 1.875rem)
    }

    .grid-margin-y>.large-3 {
        height: calc(25% - 1.875rem)
    }

    .grid-margin-y>.large-4 {
        height: calc(33.33333% - 1.875rem)
    }

    .grid-margin-y>.large-5 {
        height: calc(41.66667% - 1.875rem)
    }

    .grid-margin-y>.large-6 {
        height: calc(50% - 1.875rem)
    }

    .grid-margin-y>.large-7 {
        height: calc(58.33333% - 1.875rem)
    }

    .grid-margin-y>.large-8 {
        height: calc(66.66667% - 1.875rem)
    }

    .grid-margin-y>.large-9 {
        height: calc(75% - 1.875rem)
    }

    .grid-margin-y>.large-10 {
        height: calc(83.33333% - 1.875rem)
    }

    .grid-margin-y>.large-11 {
        height: calc(91.66667% - 1.875rem)
    }

    .grid-margin-y>.large-12 {
        height: calc(100% - 1.875rem)
    }
}

@media screen and (min-width:75em) {
    .grid-margin-y>.xlarge-auto {
        height: auto
    }

    .grid-margin-y>.xlarge-shrink {
        height: auto
    }

    .grid-margin-y>.xlarge-1 {
        height: calc(8.33333% - 1.875rem)
    }

    .grid-margin-y>.xlarge-2 {
        height: calc(16.66667% - 1.875rem)
    }

    .grid-margin-y>.xlarge-3 {
        height: calc(25% - 1.875rem)
    }

    .grid-margin-y>.xlarge-4 {
        height: calc(33.33333% - 1.875rem)
    }

    .grid-margin-y>.xlarge-5 {
        height: calc(41.66667% - 1.875rem)
    }

    .grid-margin-y>.xlarge-6 {
        height: calc(50% - 1.875rem)
    }

    .grid-margin-y>.xlarge-7 {
        height: calc(58.33333% - 1.875rem)
    }

    .grid-margin-y>.xlarge-8 {
        height: calc(66.66667% - 1.875rem)
    }

    .grid-margin-y>.xlarge-9 {
        height: calc(75% - 1.875rem)
    }

    .grid-margin-y>.xlarge-10 {
        height: calc(83.33333% - 1.875rem)
    }

    .grid-margin-y>.xlarge-11 {
        height: calc(91.66667% - 1.875rem)
    }

    .grid-margin-y>.xlarge-12 {
        height: calc(100% - 1.875rem)
    }
}

.grid-frame.grid-margin-y {
    height: calc(100vh + 1.25rem)
}

@media print,
screen and (min-width:40em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1.875rem)
    }
}

@media print,
screen and (min-width:64em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1.875rem)
    }
}

@media screen and (min-width:75em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1.875rem)
    }
}

@media print,
screen and (min-width:40em) {
    .grid-margin-y.medium-grid-frame {
        height: calc(100vh + 1.875rem)
    }
}

@media print,
screen and (min-width:64em) {
    .grid-margin-y.large-grid-frame {
        height: calc(100vh + 1.875rem)
    }
}

@media screen and (min-width:75em) {
    .grid-margin-y.xlarge-grid-frame {
        height: calc(100vh + 1.875rem)
    }
}

blockquote,
dd,
div,
dl,
dt,
form,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
pre,
td,
th,
ul {
    margin: 0;
    padding: 0
}

p {
    margin-bottom: 1rem;
    font-size: inherit;
    line-height: 1.6;
    text-rendering: optimizeLegibility
}

em,
i {
    font-style: italic;
    line-height: inherit
}

b,
strong {
    font-weight: 700;
    line-height: inherit
}

small {
    font-size: 80%;
    line-height: inherit
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Raleway, Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    color: inherit;
    text-rendering: optimizeLegibility
}

.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
    line-height: 0;
    color: #cacaca
}

.h1,
h1 {
    font-size: 2.5rem;
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: .5rem
}

.h2,
h2 {
    font-size: 2.1875rem;
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: .5rem
}

.h3,
h3 {
    font-size: 1.5625rem;
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: .5rem
}

.h4,
h4 {
    font-size: 1.375rem;
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: .5rem
}

.h5,
h5 {
    font-size: 1.25rem;
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: .5rem
}

.h6,
h6 {
    font-size: 1.125rem;
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: .5rem
}

@media print,
screen and (min-width:40em) {

    .h1,
    h1 {
        font-size: 3rem
    }

    .h2,
    h2 {
        font-size: 2.5rem
    }

    .h3,
    h3 {
        font-size: 1.9375rem
    }

    .h4,
    h4 {
        font-size: 1.5625rem
    }

    .h5,
    h5 {
        font-size: 1.25rem
    }

    .h6,
    h6 {
        font-size: 1.125rem
    }
}

a {
    line-height: inherit;
    color: #1779ba;
    text-decoration: none;
    cursor: pointer
}

a:focus,
a:hover {
    color: #1468a0
}

a img {
    border: 0
}

hr {
    clear: both;
    max-width: 75rem;
    height: 0;
    margin: 1.25rem auto;
    border-top: 0;
    border-right: 0;
    border-bottom: 1px solid #cacaca;
    border-left: 0
}

dl,
ol,
ul {
    margin-bottom: 1rem;
    list-style-position: outside;
    line-height: 1.6
}

li {
    font-size: inherit
}

ul {
    margin-left: 1.25rem;
    list-style-type: disc
}

ol {
    margin-left: 1.25rem
}

ol ol,
ol ul,
ul ol,
ul ul {
    margin-left: 1.25rem;
    margin-bottom: 0
}

dl {
    margin-bottom: 1rem
}

dl dt {
    margin-bottom: .3rem;
    font-weight: 700
}

blockquote {
    margin: 0 0 1rem;
    padding: .5625rem 1.25rem 0 1.1875rem;
    border-left: 1px solid #cacaca
}

blockquote,
blockquote p {
    line-height: 1.6;
    color: #8a8a8a
}

cite {
    display: block;
    font-size: .8125rem;
    color: #8a8a8a
}

cite:before {
    content: "— "
}

abbr,
abbr[title] {
    border-bottom: 1px dotted #232838;
    cursor: help;
    text-decoration: none
}

figure {
    margin: 0
}

code {
    padding: .125rem .3125rem .0625rem;
    border: 1px solid #cacaca;
    background-color: #e6e6e6;
    font-family: Consolas, "Liberation Mono", Courier, monospace;
    font-weight: 400;
    color: #232838
}

kbd {
    margin: 0;
    padding: .125rem .25rem 0;
    background-color: #e6e6e6;
    font-family: Consolas, "Liberation Mono", Courier, monospace;
    color: #232838
}

.subheader {
    margin-top: .2rem;
    margin-bottom: .5rem;
    font-weight: 400;
    line-height: 1.4;
    color: #8a8a8a
}

.lead {
    font-size: 125%;
    line-height: 1.6
}

.stat {
    font-size: 2.5rem;
    line-height: 1
}

p+.stat {
    margin-top: -1rem
}

ol.no-bullet,
ul.no-bullet {
    margin-left: 0;
    list-style: none
}

.text-left {
    text-align: left
}

.text-right {
    text-align: right
}

.text-center {
    text-align: center
}

.text-justify {
    text-align: justify
}

@media print,
screen and (min-width:40em) {
    .medium-text-left {
        text-align: left
    }

    .medium-text-right {
        text-align: right
    }

    .medium-text-center {
        text-align: center
    }

    .medium-text-justify {
        text-align: justify
    }
}

@media print,
screen and (min-width:64em) {
    .large-text-left {
        text-align: left
    }

    .large-text-right {
        text-align: right
    }

    .large-text-center {
        text-align: center
    }

    .large-text-justify {
        text-align: justify
    }
}

@media screen and (min-width:75em) {
    .xlarge-text-left {
        text-align: left
    }

    .xlarge-text-right {
        text-align: right
    }

    .xlarge-text-center {
        text-align: center
    }

    .xlarge-text-justify {
        text-align: justify
    }
}

.show-for-print {
    display: none !important
}

@media print {
    * {
        background: 0 0 !important;
        box-shadow: none !important;
        color: #000 !important;
        text-shadow: none !important
    }

    .show-for-print {
        display: block !important
    }

    .hide-for-print {
        display: none !important
    }

    table.show-for-print {
        display: table !important
    }

    thead.show-for-print {
        display: table-header-group !important
    }

    tbody.show-for-print {
        display: table-row-group !important
    }

    tr.show-for-print {
        display: table-row !important
    }

    td.show-for-print {
        display: table-cell !important
    }

    th.show-for-print {
        display: table-cell !important
    }

    a,
    a:visited {
        text-decoration: underline
    }

    a[href]:after {
        content: " (" attr(href) ")"
    }

    .ir a:after,
    a[href^='#']:after,
    a[href^='javascript:']:after {
        content: ''
    }

    abbr[title]:after {
        content: " (" attr(title) ")"
    }

    blockquote,
    pre {
        border: 1px solid #8a8a8a;
        page-break-inside: avoid
    }

    thead {
        display: table-header-group
    }

    img,
    tr {
        page-break-inside: avoid
    }

    img {
        max-width: 100% !important
    }

    @page {
        margin: .5cm
    }

    h2,
    h3,
    p {
        orphans: 3;
        widows: 3
    }

    h2,
    h3 {
        page-break-after: avoid
    }

    .print-break-inside {
        page-break-inside: auto
    }
}

.button {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    font-family: inherit;
padding: .85em 1em;
    -webkit-appearance: none;
    appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color .25s ease-out, color .25s ease-out;
    font-size: .9rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #1779ba;
    color: #fefefe
}

[data-whatinput=mouse] .button {
    outline: 0
}

.button:focus,
.button:hover {
    background-color: #14679e;
    color: #fefefe
}

.button.tiny {
    font-size: .6rem
}

.button.small {
    font-size: .75rem
}

.button.large {
    font-size: 1.25rem
}

.button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0
}

.button.primary {
    background-color: #1779ba;
    color: #fefefe
}

.button.primary:focus,
.button.primary:hover {
    background-color: #126195;
    color: #fefefe
}

.button.secondary {
    background-color: #c2957a;
    color: #232838
}

.button.secondary:focus,
.button.secondary:hover {
    background-color: #ad734f;
    color: #232838
}

.button.success {
    background-color: #3adb76;
    color: #232838
}

.button.success:focus,
.button.success:hover {
    background-color: #22bb5b;
    color: #232838
}

.button.warning {
    background-color: #ffae00;
    color: #232838
}

.button.warning:focus,
.button.warning:hover {
    background-color: #cc8b00;
    color: #232838
}

.button.alert {
    background-color: #cc4b37;
    color: #fefefe
}

.button.alert:focus,
.button.alert:hover {
    background-color: #a53b2a;
    color: #fefefe
}

.button.disabled,
.button[disabled] {
    opacity: .25;
    cursor: not-allowed
}

.button.disabled,
.button.disabled:focus,
.button.disabled:hover,
.button[disabled],
.button[disabled]:focus,
.button[disabled]:hover {
    background-color: #1779ba;
    color: #fefefe
}

.button.disabled.primary,
.button[disabled].primary {
    opacity: .25;
    cursor: not-allowed
}

.button.disabled.primary,
.button.disabled.primary:focus,
.button.disabled.primary:hover,
.button[disabled].primary,
.button[disabled].primary:focus,
.button[disabled].primary:hover {
    background-color: #1779ba;
    color: #fefefe
}

.button.disabled.secondary,
.button[disabled].secondary {
    opacity: .25;
    cursor: not-allowed
}

.button.disabled.secondary,
.button.disabled.secondary:focus,
.button.disabled.secondary:hover,
.button[disabled].secondary,
.button[disabled].secondary:focus,
.button[disabled].secondary:hover {
    background-color: #c2957a;
    color: #232838
}

.button.disabled.success,
.button[disabled].success {
    opacity: .25;
    cursor: not-allowed
}

.button.disabled.success,
.button.disabled.success:focus,
.button.disabled.success:hover,
.button[disabled].success,
.button[disabled].success:focus,
.button[disabled].success:hover {
    background-color: #3adb76;
    color: #232838
}

.button.disabled.warning,
.button[disabled].warning {
    opacity: .25;
    cursor: not-allowed
}

.button.disabled.warning,
.button.disabled.warning:focus,
.button.disabled.warning:hover,
.button[disabled].warning,
.button[disabled].warning:focus,
.button[disabled].warning:hover {
    background-color: #ffae00;
    color: #232838
}

.button.disabled.alert,
.button[disabled].alert {
    opacity: .25;
    cursor: not-allowed
}

.button.disabled.alert,
.button.disabled.alert:focus,
.button.disabled.alert:hover,
.button[disabled].alert,
.button[disabled].alert:focus,
.button[disabled].alert:hover {
    background-color: #cc4b37;
    color: #fefefe
}

.button.hollow {
    border: 1px solid #1779ba;
    color: #1779ba
}

.button.hollow,
.button.hollow:focus,
.button.hollow:hover {
    background-color: transparent
}

.button.hollow.disabled,
.button.hollow.disabled:focus,
.button.hollow.disabled:hover,
.button.hollow[disabled],
.button.hollow[disabled]:focus,
.button.hollow[disabled]:hover {
    background-color: transparent
}

.button.hollow:focus,
.button.hollow:hover {
    border-color: #0c3d5d;
    color: #0c3d5d
}

.button.hollow:focus.disabled,
.button.hollow:focus[disabled],
.button.hollow:hover.disabled,
.button.hollow:hover[disabled] {
    border: 1px solid #1779ba;
    color: #1779ba
}

.button.hollow.primary {
    border: 1px solid #1779ba;
    color: #1779ba
}

.button.hollow.primary:focus,
.button.hollow.primary:hover {
    border-color: #0c3d5d;
    color: #0c3d5d
}

.button.hollow.primary:focus.disabled,
.button.hollow.primary:focus[disabled],
.button.hollow.primary:hover.disabled,
.button.hollow.primary:hover[disabled] {
    border: 1px solid #1779ba;
    color: #1779ba
}

.button.hollow.secondary {
    border: 1px solid #c2957a;
    color: #c2957a
}

.button.hollow.secondary:focus,
.button.hollow.secondary:hover {
    border-color: #6c4832;
    color: #6c4832
}

.button.hollow.secondary:focus.disabled,
.button.hollow.secondary:focus[disabled],
.button.hollow.secondary:hover.disabled,
.button.hollow.secondary:hover[disabled] {
    border: 1px solid #c2957a;
    color: #c2957a
}

.button.hollow.success {
    border: 1px solid #3adb76;
    color: #3adb76
}

.button.hollow.success:focus,
.button.hollow.success:hover {
    border-color: #157539;
    color: #157539
}

.button.hollow.success:focus.disabled,
.button.hollow.success:focus[disabled],
.button.hollow.success:hover.disabled,
.button.hollow.success:hover[disabled] {
    border: 1px solid #3adb76;
    color: #3adb76
}

.button.hollow.warning {
    border: 1px solid #ffae00;
    color: #ffae00
}

.button.hollow.warning:focus,
.button.hollow.warning:hover {
    border-color: #805700;
    color: #805700
}

.button.hollow.warning:focus.disabled,
.button.hollow.warning:focus[disabled],
.button.hollow.warning:hover.disabled,
.button.hollow.warning:hover[disabled] {
    border: 1px solid #ffae00;
    color: #ffae00
}

.button.hollow.alert {
    border: 1px solid #cc4b37;
    color: #cc4b37
}

.button.hollow.alert:focus,
.button.hollow.alert:hover {
    border-color: #67251a;
    color: #67251a
}

.button.hollow.alert:focus.disabled,
.button.hollow.alert:focus[disabled],
.button.hollow.alert:hover.disabled,
.button.hollow.alert:hover[disabled] {
    border: 1px solid #cc4b37;
    color: #cc4b37
}

.button.clear {
    border: 1px solid #1779ba;
    color: #1779ba
}

.button.clear,
.button.clear:focus,
.button.clear:hover {
    background-color: transparent
}

.button.clear.disabled,
.button.clear.disabled:focus,
.button.clear.disabled:hover,
.button.clear[disabled],
.button.clear[disabled]:focus,
.button.clear[disabled]:hover {
    background-color: transparent
}

.button.clear:focus,
.button.clear:hover {
    border-color: #0c3d5d;
    color: #0c3d5d
}

.button.clear:focus.disabled,
.button.clear:focus[disabled],
.button.clear:hover.disabled,
.button.clear:hover[disabled] {
    border: 1px solid #1779ba;
    color: #1779ba
}

.button.clear,
.button.clear.disabled,
.button.clear:focus,
.button.clear:focus.disabled,
.button.clear:focus[disabled],
.button.clear:hover,
.button.clear:hover.disabled,
.button.clear:hover[disabled],
.button.clear[disabled] {
    border-color: transparent
}

.button.clear.primary {
    border: 1px solid #1779ba;
    color: #1779ba
}

.button.clear.primary:focus,
.button.clear.primary:hover {
    border-color: #0c3d5d;
    color: #0c3d5d
}

.button.clear.primary:focus.disabled,
.button.clear.primary:focus[disabled],
.button.clear.primary:hover.disabled,
.button.clear.primary:hover[disabled] {
    border: 1px solid #1779ba;
    color: #1779ba
}

.button.clear.primary,
.button.clear.primary.disabled,
.button.clear.primary:focus,
.button.clear.primary:focus.disabled,
.button.clear.primary:focus[disabled],
.button.clear.primary:hover,
.button.clear.primary:hover.disabled,
.button.clear.primary:hover[disabled],
.button.clear.primary[disabled] {
    border-color: transparent
}

.button.clear.secondary {
    border: 1px solid #c2957a;
    color: #c2957a
}

.button.clear.secondary:focus,
.button.clear.secondary:hover {
    border-color: #6c4832;
    color: #6c4832
}

.button.clear.secondary:focus.disabled,
.button.clear.secondary:focus[disabled],
.button.clear.secondary:hover.disabled,
.button.clear.secondary:hover[disabled] {
    border: 1px solid #c2957a;
    color: #c2957a
}

.button.clear.secondary,
.button.clear.secondary.disabled,
.button.clear.secondary:focus,
.button.clear.secondary:focus.disabled,
.button.clear.secondary:focus[disabled],
.button.clear.secondary:hover,
.button.clear.secondary:hover.disabled,
.button.clear.secondary:hover[disabled],
.button.clear.secondary[disabled] {
    border-color: transparent
}

.button.clear.success {
    border: 1px solid #3adb76;
    color: #3adb76
}

.button.clear.success:focus,
.button.clear.success:hover {
    border-color: #157539;
    color: #157539
}

.button.clear.success:focus.disabled,
.button.clear.success:focus[disabled],
.button.clear.success:hover.disabled,
.button.clear.success:hover[disabled] {
    border: 1px solid #3adb76;
    color: #3adb76
}

.button.clear.success,
.button.clear.success.disabled,
.button.clear.success:focus,
.button.clear.success:focus.disabled,
.button.clear.success:focus[disabled],
.button.clear.success:hover,
.button.clear.success:hover.disabled,
.button.clear.success:hover[disabled],
.button.clear.success[disabled] {
    border-color: transparent
}

.button.clear.warning {
    border: 1px solid #ffae00;
    color: #ffae00
}

.button.clear.warning:focus,
.button.clear.warning:hover {
    border-color: #805700;
    color: #805700
}

.button.clear.warning:focus.disabled,
.button.clear.warning:focus[disabled],
.button.clear.warning:hover.disabled,
.button.clear.warning:hover[disabled] {
    border: 1px solid #ffae00;
    color: #ffae00
}

.button.clear.warning,
.button.clear.warning.disabled,
.button.clear.warning:focus,
.button.clear.warning:focus.disabled,
.button.clear.warning:focus[disabled],
.button.clear.warning:hover,
.button.clear.warning:hover.disabled,
.button.clear.warning:hover[disabled],
.button.clear.warning[disabled] {
    border-color: transparent
}

.button.clear.alert {
    border: 1px solid #cc4b37;
    color: #cc4b37
}

.button.clear.alert:focus,
.button.clear.alert:hover {
    border-color: #67251a;
    color: #67251a
}

.button.clear.alert:focus.disabled,
.button.clear.alert:focus[disabled],
.button.clear.alert:hover.disabled,
.button.clear.alert:hover[disabled] {
    border: 1px solid #cc4b37;
    color: #cc4b37
}

.button.clear.alert,
.button.clear.alert.disabled,
.button.clear.alert:focus,
.button.clear.alert:focus.disabled,
.button.clear.alert:focus[disabled],
.button.clear.alert:hover,
.button.clear.alert:hover.disabled,
.button.clear.alert:hover[disabled],
.button.clear.alert[disabled] {
    border-color: transparent
}

.button.dropdown::after {
    width: 0;
    height: 0;
    border: inset .4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe transparent transparent;
    position: relative;
    top: .4em;
    float: right;
    margin-left: 1em;
}

.button.dropdown.hollow::after {
    border-top-color: #1779ba
}

.button.dropdown.hollow.primary::after {
    border-top-color: #1779ba
}

.button.dropdown.hollow.secondary::after {
    border-top-color: #c2957a
}

.button.dropdown.hollow.success::after {
    border-top-color: #3adb76
}

.button.dropdown.hollow.warning::after {
    border-top-color: #ffae00
}

.button.dropdown.hollow.alert::after {
    border-top-color: #cc4b37
}

.button.arrow-only::after {
    top: -.1em;
    float: none;
    margin-left: 0
}

a.button:focus,
a.button:hover {
    text-decoration: none
}

[type=color],
[type=date],
[type=datetime-local],
[type=datetime],
[type=email],
[type=month],
[type=number],
[type=password],
[type=search],
[type=tel],
[type=text],
[type=time],
[type=url],
[type=week],
textarea {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 2.4375rem;
    margin: 0 0 1rem;
    padding: .5rem;
    border: 1px solid #cacaca;
    border-radius: 0;
    background-color: #fefefe;
    box-shadow: inset 0 1px 2px rgba(35, 40, 56, .1);
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #232838;
    transition: box-shadow .5s, border-color .25s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

[type=color]:focus,
[type=date]:focus,
[type=datetime-local]:focus,
[type=datetime]:focus,
[type=email]:focus,
[type=month]:focus,
[type=number]:focus,
[type=password]:focus,
[type=search]:focus,
[type=tel]:focus,
[type=text]:focus,
[type=time]:focus,
[type=url]:focus,
[type=week]:focus,
textarea:focus {
    outline: 0;
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    box-shadow: 0 0 5px #cacaca;
    transition: box-shadow .5s, border-color .25s ease-in-out
}

textarea {
    max-width: 100%
}

textarea[rows] {
    height: auto
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #cacaca
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #cacaca
}

input::placeholder,
textarea::placeholder {
    color: #cacaca
}

input:disabled,
input[readonly],
textarea:disabled,
textarea[readonly] {
    background-color: #e6e6e6;
    cursor: not-allowed
}

[type=button],
[type=submit] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0
}

input[type=search] {
    box-sizing: border-box
}

[type=checkbox],
[type=file],
[type=radio] {
    margin: 0 0 1rem
}

[type=checkbox]+label,
[type=radio]+label {
    display: inline-block;
    vertical-align: baseline;
    margin-left: .5rem;
    margin-right: 1rem;
    margin-bottom: 0
}

[type=checkbox]+label[for],
[type=radio]+label[for] {
    cursor: pointer
}

label>[type=checkbox],
label>[type=radio] {
    margin-right: .5rem
}

[type=file] {
    width: 100%
}

label {
    display: block;
    margin: 0;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.8;
    color: #232838
}

label.middle {
    margin: 0 0 1rem;
    padding: .5625rem 0
}

.help-text {
    margin-top: -.5rem;
    font-size: .8125rem;
    font-style: italic;
    color: #232838
}

.input-group {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-bottom: 1rem;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.input-group>:first-child {
    border-radius: 0
}

.input-group>:last-child>* {
    border-radius: 0
}

.input-group-button,
.input-group-button a,
.input-group-button button,
.input-group-button input,
.input-group-button label,
.input-group-field,
.input-group-label {
    margin: 0;
    white-space: nowrap
}

.input-group-label {
    padding: 0 1rem;
    border: 1px solid #cacaca;
    background: #e6e6e6;
    color: #232838;
    text-align: center;
    white-space: nowrap;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.input-group-label:first-child {
    border-right: 0
}

.input-group-label:last-child {
    border-left: 0
}

.input-group-field {
    border-radius: 0;
    -webkit-flex: 1 1 0px;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px;
    height: auto;
    min-width: 0
}

.input-group-button {
    padding-top: 0;
    padding-bottom: 0;
    text-align: center;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.input-group-button a,
.input-group-button button,
.input-group-button input,
.input-group-button label {
    height: auto;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1rem
}

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

legend {
    max-width: 100%;
    margin-bottom: .5rem
}

.fieldset {
    margin: 1.125rem 0;
    padding: 1.25rem;
    border: 1px solid #cacaca
}

.fieldset legend {
    margin: 0;
    margin-left: -.1875rem;
    padding: 0 .1875rem
}

select {
    height: 2.4375rem;
    margin: 0 0 1rem;
    padding: .5rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #cacaca;
    border-radius: 0;
    background-color: #fefefe;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #232838;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
    background-origin: content-box;
    background-position: right -1rem center;
    background-repeat: no-repeat;
    background-size: 9px 6px;
    padding-right: 1.5rem;
    transition: box-shadow .5s, border-color .25s ease-in-out
}

@media screen and (min-width:0\0) {
    select {
        background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==)
    }
}

select:focus {
    outline: 0;
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    box-shadow: 0 0 5px #cacaca;
    transition: box-shadow .5s, border-color .25s ease-in-out
}

select:disabled {
    background-color: #e6e6e6;
    cursor: not-allowed
}

select::-ms-expand {
    display: none
}

select[multiple] {
    height: auto;
    background-image: none
}

.is-invalid-input:not(:focus) {
    border-color: #cc4b37;
    background-color: #f9ecea
}

.is-invalid-input:not(:focus)::-webkit-input-placeholder {
    color: #cc4b37
}

.is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #cc4b37
}

.is-invalid-input:not(:focus)::placeholder {
    color: #cc4b37
}

.is-invalid-label {
    color: #cc4b37
}

.form-error {
    display: none;
    margin-top: -.5rem;
    margin-bottom: 1rem;
    font-size: .75rem;
    font-weight: 700;
    color: #cc4b37
}

.form-error.is-visible {
    display: block
}

.accordion {
    margin-left: 0;
    background: 0 0;
    list-style-type: none
}

.accordion[disabled] .accordion-title {
    cursor: not-allowed
}

.accordion-item:first-child>:first-child {
    border-radius: 0
}

.accordion-item:last-child>:last-child {
    border-radius: 0
}

.accordion-title {
    position: relative;
    display: block;
    padding: 1.25rem 1rem;
    border: 0 solid #e6e6e6;
    border-bottom: 0;
    font-size: 1.125rem;
    line-height: 1;
    color: #f4c09d
}

:last-child:not(.is-active)>.accordion-title {
    border-bottom: 0 solid #e6e6e6;
    border-radius: 0
}

.accordion-title:focus,
.accordion-title:hover {
    background-color: transparent
}

.accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -.5rem;
    content: '+'
}

.is-active>.accordion-title::before {
    content: '\2013'
}

.accordion-content {
    display: none;
    padding: 1rem;
    border: 0 solid #e6e6e6;
    border-bottom: 0;
    background-color: transparent;
    color: #f4c09d
}

:last-child>.accordion-content:last-child {
    border-bottom: 0 solid #e6e6e6
}

.accordion-menu li {
    width: 100%
}

.accordion-menu a {
    padding: .7rem 1rem
}

.accordion-menu .is-accordion-submenu a {
    padding: .7rem 1rem
}

.accordion-menu .nested.is-accordion-submenu {
    margin-right: 0;
    margin-left: 1rem
}

.accordion-menu.align-right .nested.is-accordion-submenu {
    margin-right: 1rem;
    margin-left: 0
}

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle)>a {
    position: relative
}

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle)>a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 1rem
}

.accordion-menu.align-left .is-accordion-submenu-parent>a::after {
    left: auto;
    right: 1rem
}

.accordion-menu.align-right .is-accordion-submenu-parent>a::after {
    right: auto;
    left: 1rem
}

.accordion-menu .is-accordion-submenu-parent[aria-expanded=true]>a::after {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%
}

.is-accordion-submenu-parent {
    position: relative
}

.has-submenu-toggle>a {
    margin-right: 40px
}

.submenu-toggle {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
    width: 40px;
    height: 40px
}

.submenu-toggle::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    top: 0;
    bottom: 0;
    margin: auto
}

.submenu-toggle[aria-expanded=true]::after {
    -webkit-transform: scaleY(-1);
    -ms-transform: scaleY(-1);
    transform: scaleY(-1);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%
}

.submenu-toggle-text {
    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
}

.badge {
    display: inline-block;
    min-width: 2.1em;
    padding: .3em;
    border-radius: 50%;
    font-size: .6rem;
    text-align: center;
    background: #1779ba;
    color: #fefefe
}

.badge.primary {
    background: #1779ba;
    color: #fefefe
}

.badge.secondary {
    background: #c2957a;
    color: #232838
}

.badge.success {
    background: #3adb76;
    color: #232838
}

.badge.warning {
    background: #ffae00;
    color: #232838
}

.badge.alert {
    background: #cc4b37;
    color: #fefefe
}

.breadcrumbs {
    margin: 0 0 1rem 0;
    list-style: none
}

.breadcrumbs::after,
.breadcrumbs::before {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1
}

.breadcrumbs::after {
    clear: both
}

.breadcrumbs li {
    float: left;
    font-size: .6875rem;
    color: #232838;
    cursor: default;
    text-transform: uppercase
}

.breadcrumbs li:not(:last-child)::after {
    position: relative;
    margin: 0 .75rem;
    opacity: 1;
    content: "/";
    color: #cacaca
}

.breadcrumbs a {
    color: #1779ba
}

.breadcrumbs a:hover {
    text-decoration: underline
}

.breadcrumbs .disabled {
    color: #cacaca;
    cursor: not-allowed
}

.button-group {
    margin-bottom: 1rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.button-group::after,
.button-group::before {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1
}

.button-group::after {
    clear: both
}

.button-group .button {
    margin: 0;
    margin-right: 1px;
    margin-bottom: 1px;
    font-size: .9rem;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.button-group .button:last-child {
    margin-right: 0
}

.button-group.tiny .button {
    font-size: .6rem
}

.button-group.small .button {
    font-size: .75rem
}

.button-group.large .button {
    font-size: 1.25rem
}

.button-group.expanded .button {
    -webkit-flex: 1 1 0px;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px
}

.button-group.primary .button {
    background-color: #1779ba;
    color: #fefefe
}

.button-group.primary .button:focus,
.button-group.primary .button:hover {
    background-color: #126195;
    color: #fefefe
}

.button-group.secondary .button {
    background-color: #c2957a;
    color: #232838
}

.button-group.secondary .button:focus,
.button-group.secondary .button:hover {
    background-color: #ad734f;
    color: #232838
}

.button-group.success .button {
    background-color: #3adb76;
    color: #232838
}

.button-group.success .button:focus,
.button-group.success .button:hover {
    background-color: #22bb5b;
    color: #232838
}

.button-group.warning .button {
    background-color: #ffae00;
    color: #232838
}

.button-group.warning .button:focus,
.button-group.warning .button:hover {
    background-color: #cc8b00;
    color: #232838
}

.button-group.alert .button {
    background-color: #cc4b37;
    color: #fefefe
}

.button-group.alert .button:focus,
.button-group.alert .button:hover {
    background-color: #a53b2a;
    color: #fefefe
}

.button-group.stacked,
.button-group.stacked-for-medium,
.button-group.stacked-for-small {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.button-group.stacked .button,
.button-group.stacked-for-medium .button,
.button-group.stacked-for-small .button {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%
}

.button-group.stacked .button:last-child,
.button-group.stacked-for-medium .button:last-child,
.button-group.stacked-for-small .button:last-child {
    margin-bottom: 0
}

@media print,
screen and (min-width:40em) {
    .button-group.stacked-for-small .button {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        margin-bottom: 0
    }
}

@media print,
screen and (min-width:64em) {
    .button-group.stacked-for-medium .button {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        margin-bottom: 0
    }
}

@media screen and (max-width:39.9375em) {
    .button-group.stacked-for-small.expanded {
        display: block
    }

    .button-group.stacked-for-small.expanded .button {
        display: block;
        margin-right: 0
    }
}

.callout {
    position: relative;
    margin: 0 0 1rem 0;
    padding: 1rem;
    border: 1px solid rgba(35, 40, 56, .25);
    border-radius: 0;
    background-color: #fff;
    color: #f4c09d
}

.callout>:first-child {
    margin-top: 0
}

.callout>:last-child {
    margin-bottom: 0
}

.callout.primary {
    background-color: #d7ecfa;
    color: #f4c09d
}

.callout.secondary {
    background-color: #f6efeb;
    color: #f4c09d
}

.callout.success {
    background-color: #e1faea;
    color: #f4c09d
}

.callout.warning {
    background-color: #fff3d9;
    color: #f4c09d
}

.callout.alert {
    background-color: #f7e4e1;
    color: #f4c09d
}

.callout.small {
    padding-top: .5rem;
    padding-right: .5rem;
    padding-bottom: .5rem;
    padding-left: .5rem
}

.callout.large {
    padding-top: 3rem;
    padding-right: 3rem;
    padding-bottom: 3rem;
    padding-left: 3rem
}

.card {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-bottom: 1rem;
    border: 1px solid #e6e6e6;
    border-radius: 0;
    background: #fefefe;
    box-shadow: none;
    overflow: hidden;
    color: #f4c09d
}

.card>:last-child {
    margin-bottom: 0
}

.card-divider {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 1rem;
    background: #e6e6e6
}

.card-divider>:last-child {
    margin-bottom: 0
}

.card-section {
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    padding: 1rem
}

.card-section>:last-child {
    margin-bottom: 0
}

.card-image {
    min-height: 1px
}

.close-button {
    position: absolute;
    color: #c2957a;
    cursor: pointer
}

[data-whatinput=mouse] .close-button {
    outline: 0
}

.close-button:focus,
.close-button:hover {
    color: #f4c09d
}

.close-button.small {
    right: .66rem;
    top: .33em;
    font-size: 2em;
    line-height: 1
}

.close-button,
.close-button.medium {
    right: 1rem;
    top: .5rem;
    font-size: 3em;
    line-height: 1
}

.menu {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

[data-whatinput=mouse] .menu li {
    outline: 0
}

.menu .button,
.menu a {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: .7rem 1rem
}

.menu a,
.menu button,
.menu input,
.menu select {
    margin-bottom: 0
}

.menu input {
    display: inline-block
}

.menu,
.menu.horizontal {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row
}

.menu.vertical {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

.menu.expanded li {
    -webkit-flex: 1 1 0px;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px
}

.menu.simple {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.menu.simple li+li {
    margin-left: 1rem
}

.menu.simple a {
    padding: 0
}

@media print,
screen and (min-width:40em) {
    .menu.medium-horizontal {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .menu.medium-vertical {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .menu.medium-expanded li {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px
    }

    .menu.medium-simple li {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px
    }
}

@media print,
screen and (min-width:64em) {
    .menu.large-horizontal {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .menu.large-vertical {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .menu.large-expanded li {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px
    }

    .menu.large-simple li {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px
    }
}

@media screen and (min-width:75em) {
    .menu.xlarge-horizontal {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .menu.xlarge-vertical {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .menu.xlarge-expanded li {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px
    }

    .menu.xlarge-simple li {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px
    }
}

.menu.nested {
    margin-right: 0;
    margin-left: 1rem
}

.menu.icons a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.menu.icon-bottom a,
.menu.icon-left a,
.menu.icon-right a,
.menu.icon-top a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.menu.icon-left li a {
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap
}

.menu.icon-left li a i,
.menu.icon-left li a img,
.menu.icon-left li a svg {
    margin-right: .25rem
}

.menu.icon-right li a {
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap
}

.menu.icon-right li a i,
.menu.icon-right li a img,
.menu.icon-right li a svg {
    margin-left: .25rem
}

.menu.icon-top li a {
    -webkit-flex-flow: column nowrap;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap
}

.menu.icon-top li a i,
.menu.icon-top li a img,
.menu.icon-top li a svg {
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
    margin-bottom: .25rem;
    text-align: center
}

.menu.icon-bottom li a {
    -webkit-flex-flow: column nowrap;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap
}

.menu.icon-bottom li a i,
.menu.icon-bottom li a img,
.menu.icon-bottom li a svg {
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
    margin-bottom: .25rem;
    text-align: center
}

.menu .is-active>a {
    background: #1779ba;
    color: #fefefe
}

.menu .active>a {
    background: #1779ba;
    color: #fefefe
}

.menu.align-left {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.menu.align-right li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.menu.align-right li .submenu li {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.menu.align-right.vertical li {
    display: block;
    text-align: right
}

.menu.align-right.vertical li .submenu li {
    text-align: right
}

.menu.align-right .nested {
    margin-right: 1rem;
    margin-left: 0
}

.menu.align-center li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.menu.align-center li .submenu li {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.menu .menu-text {
    padding: .7rem 1rem;
    font-weight: 700;
    line-height: 1;
    color: inherit
}

.menu-centered>.menu {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.menu-centered>.menu li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.menu-centered>.menu li .submenu li {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.no-js [data-responsive-menu] ul {
    display: none
}

.menu-icon {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 16px;
    cursor: pointer
}

.menu-icon::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #fefefe;
    box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe;
    content: ''
}

.menu-icon:hover::after {
    background: #cacaca;
    box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca
}

.menu-icon.dark {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 16px;
    cursor: pointer
}

.menu-icon.dark::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #232838;
    box-shadow: 0 7px 0 #232838, 0 14px 0 #232838;
    content: ''
}

.menu-icon.dark:hover::after {
    background: #8a8a8a;
    box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a
}

.is-drilldown {
    position: relative;
    overflow: hidden
}

.is-drilldown li {
    display: block
}

.is-drilldown.animate-height {
    transition: height .5s
}

.drilldown a {
    padding: .7rem 1rem;
    background: #fefefe
}

.drilldown .is-drilldown-submenu {
    position: absolute;
    top: 0;
    left: 100%;
    z-index: -1;
    width: 100%;
    background: #fefefe;
    transition: -webkit-transform .15s linear;
    transition: transform .15s linear;
    transition: transform .15s linear, -webkit-transform .15s linear
}

.drilldown .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%)
}

.drilldown .is-drilldown-submenu.is-closing {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%)
}

.drilldown .is-drilldown-submenu a {
    padding: .7rem 1rem
}

.drilldown .nested.is-drilldown-submenu {
    margin-right: 0;
    margin-left: 0
}

.drilldown .drilldown-submenu-cover-previous {
    min-height: 100%
}

.drilldown .is-drilldown-submenu-parent>a {
    position: relative
}

.drilldown .is-drilldown-submenu-parent>a::after {
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba
}

.drilldown.align-left .is-drilldown-submenu-parent>a::after {
    left: auto;
    right: 1rem;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba
}

.drilldown.align-right .is-drilldown-submenu-parent>a::after {
    right: auto;
    left: 1rem;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent
}

.drilldown .js-drilldown-back>a::before {
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    display: inline-block;
    vertical-align: middle;
    margin-right: .75rem;
}

.dropdown-pane {
    position: absolute;
    z-index: 10;
    width: 300px;
    padding: 1rem;
    visibility: hidden;
    display: none;
    border: 1px solid #cacaca;
    border-radius: 0;
    background-color: #fefefe;
    font-size: 1rem
}

.dropdown-pane.is-opening {
    display: block
}

.dropdown-pane.is-open {
    visibility: visible;
    display: block
}

.dropdown-pane.tiny {
    width: 100px
}

.dropdown-pane.small {
    width: 200px
}

.dropdown-pane.large {
    width: 400px
}

.dropdown.menu>li.opens-left>.is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto
}

.dropdown.menu>li.opens-right>.is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0
}

.dropdown.menu>li.is-dropdown-submenu-parent>a {
    position: relative;
    padding-right: 1.5rem
}

.dropdown.menu>li.is-dropdown-submenu-parent>a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px
}

.dropdown.menu a {
    padding: .7rem 1rem
}

[data-whatinput=mouse] .dropdown.menu a {
    outline: 0
}

.dropdown.menu .is-active>a {
    background: 0 0;
    color: #1779ba
}

.no-js .dropdown.menu ul {
    display: none
}

.dropdown.menu .nested.is-dropdown-submenu {
    margin-right: 0;
    margin-left: 0
}

.dropdown.menu.vertical>li .is-dropdown-submenu {
    top: 0
}

.dropdown.menu.vertical>li.opens-left>.is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0
}

.dropdown.menu.vertical>li.opens-right>.is-dropdown-submenu {
    right: auto;
    left: 100%
}

.dropdown.menu.vertical>li>a::after {
    right: 14px
}

.dropdown.menu.vertical>li.opens-left>a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent
}

.dropdown.menu.vertical>li.opens-right>a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba
}

@media print,
screen and (min-width:40em) {
    .dropdown.menu.medium-horizontal>li.opens-left>.is-dropdown-submenu {
        top: 100%;
        right: 0;
        left: auto
    }

    .dropdown.menu.medium-horizontal>li.opens-right>.is-dropdown-submenu {
        top: 100%;
        right: auto;
        left: 0
    }

    .dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a {
        position: relative;
        padding-right: 1.5rem
    }

    .dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a::after {
        display: block;
        width: 0;
        height: 0;
        border: inset 6px;
        content: '';
        border-bottom-width: 0;
        border-top-style: solid;
        border-color: #1779ba transparent transparent;
        right: 5px;
        left: auto;
        margin-top: -3px
    }

    .dropdown.menu.medium-vertical>li .is-dropdown-submenu {
        top: 0
    }

    .dropdown.menu.medium-vertical>li.opens-left>.is-dropdown-submenu {
        right: 100%;
        left: auto;
        top: 0
    }

    .dropdown.menu.medium-vertical>li.opens-right>.is-dropdown-submenu {
        right: auto;
        left: 100%
    }

    .dropdown.menu.medium-vertical>li>a::after {
        right: 14px
    }

    .dropdown.menu.medium-vertical>li.opens-left>a::after {
        right: auto;
        left: 5px;
        display: block;
        width: 0;
        height: 0;
        border: inset 6px;
        content: '';
        border-left-width: 0;
        border-right-style: solid;
        border-color: transparent #1779ba transparent transparent
    }

    .dropdown.menu.medium-vertical>li.opens-right>a::after {
        display: block;
        width: 0;
        height: 0;
        border: inset 6px;
        content: '';
        border-right-width: 0;
        border-left-style: solid;
        border-color: transparent transparent transparent #1779ba
    }
}

@media print,
screen and (min-width:64em) {
    .dropdown.menu.large-horizontal>li.opens-left>.is-dropdown-submenu {
        top: 100%;
        right: 0;
        left: auto
    }

    .dropdown.menu.large-horizontal>li.opens-right>.is-dropdown-submenu {
        top: 100%;
        right: auto;
        left: 0
    }

    .dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a {
        position: relative;
        padding-right: 1.5rem
    }

    .dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a::after {
        display: block;
        width: 0;
        height: 0;
        border: inset 6px;
        content: '';
        border-bottom-width: 0;
        border-top-style: solid;
        border-color: #1779ba transparent transparent;
        right: 5px;
        left: auto;
        margin-top: -3px
    }

    .dropdown.menu.large-vertical>li .is-dropdown-submenu {
        top: 0
    }

    .dropdown.menu.large-vertical>li.opens-left>.is-dropdown-submenu {
        right: 100%;
        left: auto;
        top: 0
    }

    .dropdown.menu.large-vertical>li.opens-right>.is-dropdown-submenu {
        right: auto;
        left: 100%
    }

    .dropdown.menu.large-vertical>li>a::after {
        right: 14px
    }

    .dropdown.menu.large-vertical>li.opens-left>a::after {
        right: auto;
        left: 5px;
        display: block;
        width: 0;
        height: 0;
        border: inset 6px;
        content: '';
        border-left-width: 0;
        border-right-style: solid;
        border-color: transparent #1779ba transparent transparent
    }

    .dropdown.menu.large-vertical>li.opens-right>a::after {
        display: block;
        width: 0;
        height: 0;
        border: inset 6px;
        content: '';
        border-right-width: 0;
        border-left-style: solid;
        border-color: transparent transparent transparent #1779ba
    }
}

@media screen and (min-width:75em) {
    .dropdown.menu.xlarge-horizontal>li.opens-left>.is-dropdown-submenu {
        top: 100%;
        right: 0;
        left: auto
    }

    .dropdown.menu.xlarge-horizontal>li.opens-right>.is-dropdown-submenu {
        top: 100%;
        right: auto;
        left: 0
    }

    .dropdown.menu.xlarge-horizontal>li.is-dropdown-submenu-parent>a {
        position: relative;
        padding-right: 1.5rem
    }

    .dropdown.menu.xlarge-horizontal>li.is-dropdown-submenu-parent>a::after {
        display: block;
        width: 0;
        height: 0;
        border: inset 6px;
        content: '';
        border-bottom-width: 0;
        border-top-style: solid;
        border-color: #1779ba transparent transparent;
        right: 5px;
        left: auto;
        margin-top: -3px
    }

    .dropdown.menu.xlarge-vertical>li .is-dropdown-submenu {
        top: 0
    }

    .dropdown.menu.xlarge-vertical>li.opens-left>.is-dropdown-submenu {
        right: 100%;
        left: auto;
        top: 0
    }

    .dropdown.menu.xlarge-vertical>li.opens-right>.is-dropdown-submenu {
        right: auto;
        left: 100%
    }

    .dropdown.menu.xlarge-vertical>li>a::after {
        right: 14px
    }

    .dropdown.menu.xlarge-vertical>li.opens-left>a::after {
        right: auto;
        left: 5px;
        display: block;
        width: 0;
        height: 0;
        border: inset 6px;
        content: '';
        border-left-width: 0;
        border-right-style: solid;
        border-color: transparent #1779ba transparent transparent
    }

    .dropdown.menu.xlarge-vertical>li.opens-right>a::after {
        display: block;
        width: 0;
        height: 0;
        border: inset 6px;
        content: '';
        border-right-width: 0;
        border-left-style: solid;
        border-color: transparent transparent transparent #1779ba
    }
}

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
    top: 100%;
    right: 0;
    left: auto
}

.is-dropdown-menu.vertical {
    width: 100px
}

.is-dropdown-menu.vertical.align-right {
    float: right
}

.is-dropdown-submenu-parent {
    position: relative
}

.is-dropdown-submenu-parent a::after {
    position: absolute;
    top: 50%;
    right: 5px;
    left: auto;
    margin-top: -6px
}

.is-dropdown-submenu-parent.opens-inner>.is-dropdown-submenu {
    top: 100%;
    left: auto
}

.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu {
    right: 100%;
    left: auto
}

.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu {
    right: auto;
    left: 100%
}

.is-dropdown-submenu {
    position: absolute;
    top: 0;
    left: 100%;
    z-index: 1;
    display: none;
    min-width: 200px;
    border: 1px solid #cacaca;
    background: #fefefe
}

.dropdown .is-dropdown-submenu a {
    padding: .7rem 1rem
}

.is-dropdown-submenu .is-dropdown-submenu-parent>a::after {
    right: 14px
}

.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left>a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent
}

.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right>a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba
}

.is-dropdown-submenu .is-dropdown-submenu {
    margin-top: -1px
}

.is-dropdown-submenu>li {
    width: 100%
}

.is-dropdown-submenu.js-dropdown-active {
    display: block
}

.flex-video,
.responsive-embed {
    position: relative;
    height: 0;
    margin-bottom: 1rem;
    padding-bottom: 75%;
    overflow: hidden
}

.flex-video embed,
.flex-video iframe,
.flex-video object,
.flex-video video,
.responsive-embed embed,
.responsive-embed iframe,
.responsive-embed object,
.responsive-embed video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.flex-video.widescreen,
.responsive-embed.widescreen {
    padding-bottom: 56.25%
}

.label {
    display: inline-block;
    padding: .33333rem .5rem;
    border-radius: 0;
    font-size: .8rem;
    line-height: 1;
    white-space: nowrap;
    cursor: default;
    background: #1779ba;
    color: #fefefe
}

.label.primary {
    background: #1779ba;
    color: #fefefe
}

.label.secondary {
    background: #c2957a;
    color: #232838
}

.label.success {
    background: #3adb76;
    color: #232838
}

.label.warning {
    background: #ffae00;
    color: #232838
}

.label.alert {
    background: #cc4b37;
    color: #fefefe
}

.media-object {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 1rem;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.media-object img {
    max-width: none
}

@media screen and (max-width:39.9375em) {
    .media-object.stack-for-small {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

@media screen and (max-width:39.9375em) {
    .media-object.stack-for-small .media-object-section {
        padding: 0;
        padding-bottom: 1rem;
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        max-width: 100%
    }

    .media-object.stack-for-small .media-object-section img {
        width: 100%
    }
}

.media-object-section {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto
}

.media-object-section:first-child {
    padding-right: 1rem
}

.media-object-section:last-child:not(:nth-child(2)) {
    padding-left: 1rem
}

.media-object-section>:last-child {
    margin-bottom: 0
}

.media-object-section.main-section {
    -webkit-flex: 1 1 0px;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px
}

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

.js-off-canvas-overlay {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 11;
    width: 100%;
    height: 100%;
    transition: opacity .5s ease, visibility .5s ease;
    background: rgba(254, 254, 254, .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;
    transition: -webkit-transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .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 {
    box-shadow: 0 0 10px rgba(35, 40, 56, .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;
    transition: -webkit-transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .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 {
    box-shadow: 0 0 10px rgba(35, 40, 56, .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 {
    box-shadow: inset -13px 0 20px -13px rgba(35, 40, 56, .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 {
    box-shadow: inset 13px 0 20px -13px rgba(35, 40, 56, .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 {
    box-shadow: inset 0 -13px 20px -13px rgba(35, 40, 56, .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 {
    box-shadow: inset 0 13px 20px -13px rgba(35, 40, 56, .25)
}

.off-canvas-content {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    transition: -webkit-transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .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;
        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;
        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;
        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;
        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;
        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;
        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;
        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;
        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 screen and (min-width:75em) {
    .position-left.reveal-for-xlarge {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        transition: none;
        visibility: visible
    }

    .position-left.reveal-for-xlarge .close-button {
        display: none
    }

    .off-canvas-content .position-left.reveal-for-xlarge {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none
    }

    .off-canvas-content.has-reveal-left {
        margin-left: 250px
    }

    .position-left.reveal-for-xlarge~.off-canvas-content {
        margin-left: 250px
    }

    .position-right.reveal-for-xlarge {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        transition: none;
        visibility: visible
    }

    .position-right.reveal-for-xlarge .close-button {
        display: none
    }

    .off-canvas-content .position-right.reveal-for-xlarge {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none
    }

    .off-canvas-content.has-reveal-right {
        margin-right: 250px
    }

    .position-right.reveal-for-xlarge~.off-canvas-content {
        margin-right: 250px
    }

    .position-top.reveal-for-xlarge {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        transition: none;
        visibility: visible
    }

    .position-top.reveal-for-xlarge .close-button {
        display: none
    }

    .off-canvas-content .position-top.reveal-for-xlarge {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none
    }

    .off-canvas-content.has-reveal-top {
        margin-top: 250px
    }

    .position-top.reveal-for-xlarge~.off-canvas-content {
        margin-top: 250px
    }

    .position-bottom.reveal-for-xlarge {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 12;
        transition: none;
        visibility: visible
    }

    .position-bottom.reveal-for-xlarge .close-button {
        display: none
    }

    .off-canvas-content .position-bottom.reveal-for-xlarge {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none
    }

    .off-canvas-content.has-reveal-bottom {
        margin-bottom: 250px
    }

    .position-bottom.reveal-for-xlarge~.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;
        transition: inherit
    }

    .off-canvas.in-canvas-for-medium.position-bottom,
    .off-canvas.in-canvas-for-medium.position-left,
    .off-canvas.in-canvas-for-medium.position-right,
    .off-canvas.in-canvas-for-medium.position-top {
        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;
        transition: inherit
    }

    .off-canvas.in-canvas-for-large.position-bottom,
    .off-canvas.in-canvas-for-large.position-left,
    .off-canvas.in-canvas-for-large.position-right,
    .off-canvas.in-canvas-for-large.position-top {
        box-shadow: none;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none
    }

    .off-canvas.in-canvas-for-large .close-button {
        display: none
    }
}

@media screen and (min-width:75em) {
    .off-canvas.in-canvas-for-xlarge {
        visibility: visible;
        height: auto;
        position: static;
        background: inherit;
        width: inherit;
        overflow: inherit;
        transition: inherit
    }

    .off-canvas.in-canvas-for-xlarge.position-bottom,
    .off-canvas.in-canvas-for-xlarge.position-left,
    .off-canvas.in-canvas-for-xlarge.position-right,
    .off-canvas.in-canvas-for-xlarge.position-top {
        box-shadow: none;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none
    }

    .off-canvas.in-canvas-for-xlarge .close-button {
        display: none
    }
}

.orbit {
    position: relative
}

.orbit-container {
    position: relative;
    height: 0;
    margin: 0;
    list-style: none;
    overflow: hidden
}

.orbit-slide {
    width: 100%
}

.orbit-slide.no-motionui.is-active {
    top: 0;
    left: 0
}

.orbit-figure {
    margin: 0
}

.orbit-image {
    width: 100%;
    max-width: 100%;
    margin: 0
}

.orbit-caption {
    position: absolute;
    bottom: 0;
    width: 100%;
    margin-bottom: 0;
    padding: 1rem;
    background-color: rgba(35, 40, 56, .5);
    color: #fefefe
}

.orbit-next,
.orbit-previous {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 10;
    padding: 1rem;
    color: #fefefe
}

[data-whatinput=mouse] .orbit-next,
[data-whatinput=mouse] .orbit-previous {
    outline: 0
}

.orbit-next:active,
.orbit-next:focus,
.orbit-next:hover,
.orbit-previous:active,
.orbit-previous:focus,
.orbit-previous:hover {
    background-color: rgba(35, 40, 56, .5)
}

.orbit-previous {
    left: 0
}

.orbit-next {
    left: auto;
    right: 0
}

.orbit-bullets {
    position: relative;
    margin-top: .8rem;
    margin-bottom: .8rem;
    text-align: center
}

[data-whatinput=mouse] .orbit-bullets {
    outline: 0
}

.orbit-bullets button {
    width: 1.2rem;
    height: 1.2rem;
    margin: .1rem;
    border-radius: 50%;
    background-color: #cacaca
}

.orbit-bullets button:hover {
    background-color: #8a8a8a
}

.orbit-bullets button.is-active {
    background-color: #8a8a8a
}

.pagination {
    margin-left: 0;
    margin-bottom: 1rem
}

.pagination::after,
.pagination::before {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1
}

.pagination::after {
    clear: both
}

.pagination li {
    margin-right: .0625rem;
    border-radius: 0;
    font-size: .875rem;
    display: none
}

.pagination li:first-child,
.pagination li:last-child {
    display: inline-block
}

@media print,
screen and (min-width:40em) {
    .pagination li {
        display: inline-block
    }
}

.pagination a,
.pagination button {
    display: block;
    padding: .1875rem .625rem;
    border-radius: 0;
    color: #232838
}

.pagination a:hover,
.pagination button:hover {
    background: #e6e6e6
}

.pagination .current {
    padding: .1875rem .625rem;
    background: #1779ba;
    color: #fefefe;
    cursor: default
}

.pagination .disabled {
    padding: .1875rem .625rem;
    color: #cacaca;
    cursor: not-allowed
}

.pagination .disabled:hover {
    background: 0 0
}

.pagination .ellipsis::after {
    padding: .1875rem .625rem;
    content: '\2026';
    color: #232838
}

.pagination-previous a::before,
.pagination-previous.disabled::before {
    display: inline-block;
    margin-right: .5rem;
    content: '\00ab'
}

.pagination-next a::after,
.pagination-next.disabled::after {
    display: inline-block;
    margin-left: .5rem;
    content: '\00bb'
}

.progress {
    height: 1rem;
    margin-bottom: 1rem;
    border-radius: 0;
    background-color: #cacaca
}

.progress.primary .progress-meter {
    background-color: #1779ba
}

.progress.secondary .progress-meter {
    background-color: #c2957a
}

.progress.success .progress-meter {
    background-color: #3adb76
}

.progress.warning .progress-meter {
    background-color: #ffae00
}

.progress.alert .progress-meter {
    background-color: #cc4b37
}

.progress-meter {
    position: relative;
    display: block;
    width: 0%;
    height: 100%;
    background-color: #1779ba
}

.progress-meter-text {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    margin: 0;
    font-size: .75rem;
    font-weight: 700;
    color: #fefefe;
    white-space: nowrap
}

.slider {
    position: relative;
    height: .5rem;
    margin-top: 1.25rem;
    margin-bottom: 2.25rem;
    background-color: #e6e6e6;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: none;
    touch-action: none
}

.slider-fill {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    max-width: 100%;
    height: .5rem;
    background-color: #cacaca;
    transition: all .2s ease-in-out
}

.slider-fill.is-dragging {
    transition: all 0s linear
}

.slider-handle {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    z-index: 1;
    display: inline-block;
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 0;
    background-color: #1779ba;
    transition: all .2s ease-in-out;
    -ms-touch-action: manipulation;
    touch-action: manipulation
}

[data-whatinput=mouse] .slider-handle {
    outline: 0
}

.slider-handle:hover {
    background-color: #14679e
}

.slider-handle.is-dragging {
    transition: all 0s linear
}

.slider.disabled,
.slider[disabled] {
    opacity: .25;
    cursor: not-allowed
}

.slider.vertical {
    display: inline-block;
    width: .5rem;
    height: 12.5rem;
    margin: 0 1.25rem;
    -webkit-transform: scale(1, -1);
    -ms-transform: scale(1, -1);
    transform: scale(1, -1)
}

.slider.vertical .slider-fill {
    top: 0;
    width: .5rem;
    max-height: 100%
}

.slider.vertical .slider-handle {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1.4rem;
    height: 1.4rem;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.sticky-container {
    position: relative
}

.sticky {
    position: relative;
    z-index: 0;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.sticky.is-stuck {
    position: fixed;
    z-index: 5;
    width: 100%
}

.sticky.is-stuck.is-at-top {
    top: 0
}

.sticky.is-stuck.is-at-bottom {
    bottom: 0
}

.sticky.is-anchored {
    position: relative;
    right: auto;
    left: auto
}

.sticky.is-anchored.is-at-bottom {
    bottom: 0
}

body.is-reveal-open {
    overflow: hidden
}

html.is-reveal-open,
html.is-reveal-open body {
    min-height: 100%;
    overflow: hidden;
    position: fixed;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.reveal-overlay {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1005;
    display: none;
    background-color: rgba(35, 40, 56, .45);
    overflow-y: scroll
}

.reveal {
    z-index: 1006;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: none;
    padding: 1rem;
    border: 1px solid #cacaca;
    border-radius: 0;
    background-color: #fefefe;
    position: relative;
    top: 100px;
    margin-right: auto;
    margin-left: auto;
    overflow-y: auto
}

[data-whatinput=mouse] .reveal {
    outline: 0
}

@media print,
screen and (min-width:40em) {
    .reveal {
        min-height: 0
    }
}

.reveal .column {
    min-width: 0
}

.reveal>:last-child {
    margin-bottom: 0
}

@media print,
screen and (min-width:40em) {
    .reveal {
        width: 600px;
        max-width: 75rem
    }
}

.reveal.collapse {
    padding: 0
}

@media print,
screen and (min-width:40em) {
    .reveal.tiny {
        width: 30%;
        max-width: 75rem
    }
}

@media print,
screen and (min-width:40em) {
    .reveal.small {
        width: 50%;
        max-width: 75rem
    }
}

@media print,
screen and (min-width:40em) {
    .reveal.large {
        width: 90%;
        max-width: 75rem
    }
}

.reveal.full {
    top: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    margin-left: 0;
    border: 0;
    border-radius: 0
}

@media screen and (max-width:39.9375em) {
    .reveal {
        top: 0;
        left: 0;
        width: 100%;
        max-width: none;
        height: 100%;
        height: 100vh;
        min-height: 100vh;
        margin-left: 0;
        border: 0;
        border-radius: 0
    }
}

.reveal.without-overlay {
    position: fixed
}

.switch {
    height: 2rem;
    position: relative;
    margin-bottom: 1rem;
    outline: 0;
    font-size: .875rem;
    font-weight: 700;
    color: #fefefe;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.switch-input {
    position: absolute;
    margin-bottom: 0;
    opacity: 0
}

.switch-paddle {
    position: relative;
    display: block;
    width: 4rem;
    height: 2rem;
    border-radius: 0;
    background: #cacaca;
    transition: all .25s ease-out;
    font-weight: inherit;
    color: inherit;
    cursor: pointer
}

input+.switch-paddle {
    margin: 0
}

.switch-paddle::after {
    position: absolute;
    top: .25rem;
    left: .25rem;
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    border-radius: 0;
    background: #fefefe;
    transition: all .25s ease-out;
    content: ''
}

input:checked~.switch-paddle {
    background: #1779ba
}

input:checked~.switch-paddle::after {
    left: 2.25rem
}

[data-whatinput=mouse] input:focus~.switch-paddle {
    outline: 0
}

.switch-active,
.switch-inactive {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.switch-active {
    left: 8%;
    display: none
}

input:checked+label>.switch-active {
    display: block
}

.switch-inactive {
    right: 15%
}

input:checked+label>.switch-inactive {
    display: none
}

.switch.tiny {
    height: 1.5rem
}

.switch.tiny .switch-paddle {
    width: 3rem;
    height: 1.5rem;
    font-size: .625rem
}

.switch.tiny .switch-paddle::after {
    top: .25rem;
    left: .25rem;
    width: 1rem;
    height: 1rem
}

.switch.tiny input:checked~.switch-paddle::after {
    left: 1.75rem
}

.switch.small {
    height: 1.75rem
}

.switch.small .switch-paddle {
    width: 3.5rem;
    height: 1.75rem;
    font-size: .75rem
}

.switch.small .switch-paddle::after {
    top: .25rem;
    left: .25rem;
    width: 1.25rem;
    height: 1.25rem
}

.switch.small input:checked~.switch-paddle::after {
    left: 2rem
}

.switch.large {
    height: 2.5rem
}

.switch.large .switch-paddle {
    width: 5rem;
    height: 2.5rem;
    font-size: 1rem
}

.switch.large .switch-paddle::after {
    top: .25rem;
    left: .25rem;
    width: 2rem;
    height: 2rem
}

.switch.large input:checked~.switch-paddle::after {
    left: 2.75rem
}

table {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 1rem;
    border-radius: 0
}

table tbody,
table tfoot,
table thead {
    border: 1px solid #f1f1f1;
    background-color: #fefefe
}

table caption {
    padding: .5rem .625rem .625rem;
    font-weight: 700
}

table thead {
    background: #f8f8f8;
    color: #f4c09d
}

table tfoot {
    background: #f1f1f1;
    color: #f4c09d
}

table tfoot tr,
table thead tr {
    background: 0 0
}

table tfoot td,
table tfoot th,
table thead td,
table thead th {
    padding: .5rem .625rem .625rem;
    font-weight: 700;
    text-align: left
}

table tbody td,
table tbody th {
    padding: .5rem .625rem .625rem
}

table tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f1f1f1
}

table.unstriped tbody {
    background-color: #fefefe
}

table.unstriped tbody tr {
    border-bottom: 0;
    border-bottom: 1px solid #f1f1f1;
    background-color: #fefefe
}

@media screen and (max-width:63.9375em) {
    table.stack thead {
        display: none
    }

    table.stack tfoot {
        display: none
    }

    table.stack td,
    table.stack th,
    table.stack tr {
        display: block
    }

    table.stack td {
        border-top: 0
    }
}

table.scroll {
    display: block;
    width: 100%;
    overflow-x: auto
}

table.hover thead tr:hover {
    background-color: #f3f3f3
}

table.hover tfoot tr:hover {
    background-color: #ececec
}

table.hover tbody tr:hover {
    background-color: #f9f9f9
}

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
    background-color: #ececec
}

.table-scroll {
    overflow-x: auto
}

.table-scroll table {
    width: auto
}

.tabs {
    margin: 0;
    border: 1px solid #e6e6e6;
    background: #fefefe;
    list-style-type: none
}

.tabs::after,
.tabs::before {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1
}

.tabs::after {
    clear: both
}

.tabs.vertical>li {
    display: block;
    float: none;
    width: auto
}

.tabs.simple>li>a {
    padding: 0
}

.tabs.simple>li>a:hover {
    background: 0 0
}

.tabs.primary {
    background: #1779ba
}

.tabs.primary>li>a {
    color: #fefefe
}

.tabs.primary>li>a:focus,
.tabs.primary>li>a:hover {
    background: #1673b1
}

.tabs-title {
    float: left
}

.tabs-title>a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: .75rem;
    line-height: 1;
    color: #1779ba
}

.tabs-title>a:hover {
    background: #fefefe;
    color: #1468a0
}

.tabs-title>a:focus,
.tabs-title>a[aria-selected=true] {
    background: #e6e6e6;
    color: #1779ba
}

.tabs-content {
    border: 1px solid #e6e6e6;
    border-top: 0;
    background: #fefefe;
    color: #f4c09d;
    transition: all .5s ease
}

.tabs-content.vertical {
    border: 1px solid #e6e6e6;
    border-left: 0
}

.tabs-panel {
    display: none;
    padding: 1rem
}

.tabs-panel.is-active {
    display: block
}

.thumbnail {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 1rem;
    border: solid 4px #fefefe;
    border-radius: 0;
    box-shadow: 0 0 0 1px rgba(35, 40, 56, .2);
    line-height: 0
}

a.thumbnail {
    transition: box-shadow .2s ease-out
}

a.thumbnail:focus,
a.thumbnail:hover {
    box-shadow: 0 0 6px 1px rgba(23, 121, 186, .5)
}

a.thumbnail image {
    box-shadow: none
}

.title-bar {
    padding: .5rem;
    background: #232838;
    color: #fefefe;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.title-bar .menu-icon {
    margin-left: .25rem;
    margin-right: .25rem
}

.title-bar-left,
.title-bar-right {
    -webkit-flex: 1 1 0px;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px
}

.title-bar-right {
    text-align: right
}

.title-bar-title {
    display: inline-block;
    vertical-align: middle;
    font-weight: 700
}

.has-tip {
    position: relative;
    display: inline-block;
    border-bottom: dotted 1px #8a8a8a;
    font-weight: 700;
    cursor: help
}

.tooltip {
    position: absolute;
    top: calc(100% + .6495rem);
    z-index: 1200;
    max-width: 10rem;
    padding: .75rem;
    border-radius: 0;
    background-color: #232838;
    font-size: 80%;
    color: #fefefe
}

.tooltip::before {
    position: absolute
}

.tooltip.bottom::before {
    display: block;
    width: 0;
    height: 0;
    border: inset .75rem;
    content: '';
    border-top-width: 0;
    border-bottom-style: solid;
    border-color: transparent transparent #232838;
    bottom: 100%
}

.tooltip.bottom.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.tooltip.top::before {
    display: block;
    width: 0;
    height: 0;
    border: inset .75rem;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #232838 transparent transparent;
    top: 100%;
    bottom: auto
}

.tooltip.top.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.tooltip.left::before {
    display: block;
    width: 0;
    height: 0;
    border: inset .75rem;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #232838;
    left: 100%
}

.tooltip.left.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.tooltip.right::before {
    display: block;
    width: 0;
    height: 0;
    border: inset .75rem;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #232838 transparent transparent;
    right: 100%;
    left: auto
}

.tooltip.right.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.tooltip.align-top::before {
    bottom: auto;
    top: 10%
}

.tooltip.align-bottom::before {
    bottom: 10%;
    top: auto
}

.tooltip.align-left::before {
    left: 10%;
    right: auto
}

.tooltip.align-right::before {
    left: auto;
    right: 10%
}

.top-bar {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: .5rem;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.top-bar,
.top-bar ul {
    background-color: #e6e6e6
}

.top-bar input {
    max-width: 200px;
    margin-right: 1rem
}

.top-bar .input-group-field {
    width: 100%;
    margin-right: 0
}

.top-bar input.button {
    width: auto
}

.top-bar .top-bar-left,
.top-bar .top-bar-right {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

@media print,
screen and (min-width:40em) {
    .top-bar {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }

    .top-bar .top-bar-left {
        -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        margin-right: auto
    }

    .top-bar .top-bar-right {
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
        margin-left: auto
    }
}

@media screen and (max-width:63.9375em) {
    .top-bar.stacked-for-medium {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .top-bar.stacked-for-medium .top-bar-left,
    .top-bar.stacked-for-medium .top-bar-right {
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
}

@media screen and (max-width:74.9375em) {
    .top-bar.stacked-for-large {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .top-bar.stacked-for-large .top-bar-left,
    .top-bar.stacked-for-large .top-bar-right {
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
}

@media screen and (max-width:89.9375em) {
    .top-bar.stacked-for-xlarge {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .top-bar.stacked-for-xlarge .top-bar-left,
    .top-bar.stacked-for-xlarge .top-bar-right {
        -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%
    }
}

.top-bar-title {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin: .5rem 1rem .5rem 0
}

.top-bar-left,
.top-bar-right {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto
}

.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
    }
}

@media screen and (min-width:75em) {
    .hide-for-xlarge {
        display: none !important
    }
}

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

@media screen and (min-width:75em) and (max-width:89.9375em) {
    .hide-for-xlarge-only {
        display: none !important
    }
}

@media screen and (max-width:74.9375em),
screen and (min-width:90em) {
    .show-for-xlarge-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
}

.hide-for-portrait,
.show-for-landscape {
    display: block !important
}

@media screen and (orientation:landscape) {

    .hide-for-portrait,
    .show-for-landscape {
        display: block !important
    }
}

@media screen and (orientation:portrait) {

    .hide-for-portrait,
    .show-for-landscape {
        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
    }
}

.align-right {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

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

.align-justify {
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.align-spaced {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around
}

.align-right.vertical.menu>li>a {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.align-center.vertical.menu>li>a {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

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

.align-self-top {
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start
}

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

.align-self-bottom {
    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
    align-self: flex-end
}

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

.align-self-middle {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center
}

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

.align-self-stretch {
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch
}

.align-center-middle {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center
}

.small-order-1 {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1
}

.small-order-2 {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2
}

.small-order-3 {
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3
}

.small-order-4 {
    -webkit-order: 4;
    -ms-flex-order: 4;
    order: 4
}

.small-order-5 {
    -webkit-order: 5;
    -ms-flex-order: 5;
    order: 5
}

.small-order-6 {
    -webkit-order: 6;
    -ms-flex-order: 6;
    order: 6
}

@media print,
screen and (min-width:40em) {
    .medium-order-1 {
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1
    }

    .medium-order-2 {
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2
    }

    .medium-order-3 {
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3
    }

    .medium-order-4 {
        -webkit-order: 4;
        -ms-flex-order: 4;
        order: 4
    }

    .medium-order-5 {
        -webkit-order: 5;
        -ms-flex-order: 5;
        order: 5
    }

    .medium-order-6 {
        -webkit-order: 6;
        -ms-flex-order: 6;
        order: 6
    }
}

@media print,
screen and (min-width:64em) {
    .large-order-1 {
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1
    }

    .large-order-2 {
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2
    }

    .large-order-3 {
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3
    }

    .large-order-4 {
        -webkit-order: 4;
        -ms-flex-order: 4;
        order: 4
    }

    .large-order-5 {
        -webkit-order: 5;
        -ms-flex-order: 5;
        order: 5
    }

    .large-order-6 {
        -webkit-order: 6;
        -ms-flex-order: 6;
        order: 6
    }
}

@media screen and (min-width:75em) {
    .xlarge-order-1 {
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1
    }

    .xlarge-order-2 {
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2
    }

    .xlarge-order-3 {
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3
    }

    .xlarge-order-4 {
        -webkit-order: 4;
        -ms-flex-order: 4;
        order: 4
    }

    .xlarge-order-5 {
        -webkit-order: 5;
        -ms-flex-order: 5;
        order: 5
    }

    .xlarge-order-6 {
        -webkit-order: 6;
        -ms-flex-order: 6;
        order: 6
    }
}

.flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.flex-child-auto {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
}

.flex-child-grow {
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
}

.flex-child-shrink {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto
}

.flex-dir-row {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row
}

.flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.flex-dir-column {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

.flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
}

@media print,
screen and (min-width:40em) {
    .medium-flex-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }

    .medium-flex-child-auto {
        -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto
    }

    .medium-flex-child-grow {
        -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto
    }

    .medium-flex-child-shrink {
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto
    }

    .medium-flex-dir-row {
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .medium-flex-dir-row-reverse {
        -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .medium-flex-dir-column {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .medium-flex-dir-column-reverse {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

@media print,
screen and (min-width:64em) {
    .large-flex-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }

    .large-flex-child-auto {
        -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto
    }

    .large-flex-child-grow {
        -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto
    }

    .large-flex-child-shrink {
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto
    }

    .large-flex-dir-row {
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .large-flex-dir-row-reverse {
        -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .large-flex-dir-column {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .large-flex-dir-column-reverse {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

@media screen and (min-width:75em) {
    .xlarge-flex-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }

    .xlarge-flex-child-auto {
        -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto
    }

    .xlarge-flex-child-grow {
        -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto
    }

    .xlarge-flex-child-shrink {
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto
    }

    .xlarge-flex-dir-row {
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row
    }

    .xlarge-flex-dir-row-reverse {
        -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .xlarge-flex-dir-column {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .xlarge-flex-dir-column-reverse {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

.slide-in-down.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.slide-in-down.mui-enter.mui-enter-active {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.slide-in-left.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.slide-in-left.mui-enter.mui-enter-active {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.slide-in-up.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.slide-in-up.mui-enter.mui-enter-active {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.slide-in-right.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.slide-in-right.mui-enter.mui-enter-active {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.slide-out-down.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.slide-out-down.mui-leave.mui-leave-active {
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%)
}

.slide-out-right.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.slide-out-right.mui-leave.mui-leave-active {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%)
}

.slide-out-up.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.slide-out-up.mui-leave.mui-leave-active {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%)
}

.slide-out-left.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.slide-out-left.mui-leave.mui-leave-active {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%)
}

.fade-in.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    opacity: 0;
    transition-property: opacity
}

.fade-in.mui-enter.mui-enter-active {
    opacity: 1
}

.fade-out.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    opacity: 1;
    transition-property: opacity
}

.fade-out.mui-leave.mui-leave-active {
    opacity: 0
}

.hinge-in-from-top.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotateX(-90deg);
    transform: perspective(2000px) rotateX(-90deg);
    -webkit-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.hinge-in-from-top.mui-enter.mui-enter-active {
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    opacity: 1
}

.hinge-in-from-right.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotateY(-90deg);
    transform: perspective(2000px) rotateY(-90deg);
    -webkit-transform-origin: right;
    -ms-transform-origin: right;
    transform-origin: right;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.hinge-in-from-right.mui-enter.mui-enter-active {
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    opacity: 1
}

.hinge-in-from-bottom.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotateX(90deg);
    transform: perspective(2000px) rotateX(90deg);
    -webkit-transform-origin: bottom;
    -ms-transform-origin: bottom;
    transform-origin: bottom;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.hinge-in-from-bottom.mui-enter.mui-enter-active {
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    opacity: 1
}

.hinge-in-from-left.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotateY(90deg);
    transform: perspective(2000px) rotateY(90deg);
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.hinge-in-from-left.mui-enter.mui-enter-active {
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    opacity: 1
}

.hinge-in-from-middle-x.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotateX(-90deg);
    transform: perspective(2000px) rotateX(-90deg);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    opacity: 1
}

.hinge-in-from-middle-y.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotateY(-90deg);
    transform: perspective(2000px) rotateY(-90deg);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    opacity: 1
}

.hinge-out-from-top.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    -webkit-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.hinge-out-from-top.mui-leave.mui-leave-active {
    -webkit-transform: perspective(2000px) rotateX(-90deg);
    transform: perspective(2000px) rotateX(-90deg);
    opacity: 0
}

.hinge-out-from-right.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    -webkit-transform-origin: right;
    -ms-transform-origin: right;
    transform-origin: right;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.hinge-out-from-right.mui-leave.mui-leave-active {
    -webkit-transform: perspective(2000px) rotateY(-90deg);
    transform: perspective(2000px) rotateY(-90deg);
    opacity: 0
}

.hinge-out-from-bottom.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    -webkit-transform-origin: bottom;
    -ms-transform-origin: bottom;
    transform-origin: bottom;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.hinge-out-from-bottom.mui-leave.mui-leave-active {
    -webkit-transform: perspective(2000px) rotateX(90deg);
    transform: perspective(2000px) rotateX(90deg);
    opacity: 0
}

.hinge-out-from-left.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.hinge-out-from-left.mui-leave.mui-leave-active {
    -webkit-transform: perspective(2000px) rotateY(90deg);
    transform: perspective(2000px) rotateY(90deg);
    opacity: 0
}

.hinge-out-from-middle-x.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
    -webkit-transform: perspective(2000px) rotateX(-90deg);
    transform: perspective(2000px) rotateX(-90deg);
    opacity: 0
}

.hinge-out-from-middle-y.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: perspective(2000px) rotate(0);
    transform: perspective(2000px) rotate(0);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
    -webkit-transform: perspective(2000px) rotateY(-90deg);
    transform: perspective(2000px) rotateY(-90deg);
    opacity: 0
}

.scale-in-up.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: scale(.5);
    -ms-transform: scale(.5);
    transform: scale(.5);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.scale-in-up.mui-enter.mui-enter-active {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1
}

.scale-in-down.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: scale(1.5);
    -ms-transform: scale(1.5);
    transform: scale(1.5);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.scale-in-down.mui-enter.mui-enter-active {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1
}

.scale-out-up.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.scale-out-up.mui-leave.mui-leave-active {
    -webkit-transform: scale(1.5);
    -ms-transform: scale(1.5);
    transform: scale(1.5);
    opacity: 0
}

.scale-out-down.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.scale-out-down.mui-leave.mui-leave-active {
    -webkit-transform: scale(.5);
    -ms-transform: scale(.5);
    transform: scale(.5);
    opacity: 0
}

.spin-in.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: rotate(-.75turn);
    -ms-transform: rotate(-.75turn);
    transform: rotate(-.75turn);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.spin-in.mui-enter.mui-enter-active {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1
}

.spin-out.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.spin-out.mui-leave.mui-leave-active {
    -webkit-transform: rotate(.75turn);
    -ms-transform: rotate(.75turn);
    transform: rotate(.75turn);
    opacity: 0
}

.spin-in-ccw.mui-enter {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: rotate(.75turn);
    -ms-transform: rotate(.75turn);
    transform: rotate(.75turn);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 0
}

.spin-in-ccw.mui-enter.mui-enter-active {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1
}

.spin-out-ccw.mui-leave {
    transition-duration: .5s;
    transition-timing-function: linear;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    opacity: 1
}

.spin-out-ccw.mui-leave.mui-leave-active {
    -webkit-transform: rotate(-.75turn);
    -ms-transform: rotate(-.75turn);
    transform: rotate(-.75turn);
    opacity: 0
}

.slow {
    transition-duration: 750ms !important
}

.fast {
    transition-duration: 250ms !important
}

.linear {
    transition-timing-function: linear !important
}

.ease {
    transition-timing-function: ease !important
}

.ease-in {
    transition-timing-function: ease-in !important
}

.ease-out {
    transition-timing-function: ease-out !important
}

.ease-in-out {
    transition-timing-function: ease-in-out !important
}

.bounce-in {
    transition-timing-function: cubic-bezier(.485, .155, .24, 1.245) !important
}

.bounce-out {
    transition-timing-function: cubic-bezier(.485, .155, .515, .845) !important
}

.bounce-in-out {
    transition-timing-function: cubic-bezier(.76, -.245, .24, 1.245) !important
}

.short-delay {
    transition-delay: .3s !important
}

.long-delay {
    transition-delay: .7s !important
}

.shake {
    -webkit-animation-name: shake-7;
    animation-name: shake-7
}

@-webkit-keyframes shake-7 {

    0%,
    10%,
    20%,
    30%,
    40%,
    50%,
    60%,
    70%,
    80%,
    90% {
        -webkit-transform: translateX(7%);
        transform: translateX(7%)
    }

    15%,
    25%,
    35%,
    45%,
    5%,
    55%,
    65%,
    75%,
    85%,
    95% {
        -webkit-transform: translateX(-7%);
        transform: translateX(-7%)
    }
}

@keyframes shake-7 {

    0%,
    10%,
    20%,
    30%,
    40%,
    50%,
    60%,
    70%,
    80%,
    90% {
        -webkit-transform: translateX(7%);
        transform: translateX(7%)
    }

    15%,
    25%,
    35%,
    45%,
    5%,
    55%,
    65%,
    75%,
    85%,
    95% {
        -webkit-transform: translateX(-7%);
        transform: translateX(-7%)
    }
}

.spin-cw {
    -webkit-animation-name: spin-cw-1turn;
    animation-name: spin-cw-1turn
}

@-webkit-keyframes spin-cw-1turn {
    0% {
        -webkit-transform: rotate(-1turn);
        transform: rotate(-1turn)
    }

    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@keyframes spin-cw-1turn {
    0% {
        -webkit-transform: rotate(-1turn);
        transform: rotate(-1turn)
    }

    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

.spin-ccw {
    -webkit-animation-name: spin-cw-1turn;
    animation-name: spin-cw-1turn
}

@keyframes spin-cw-1turn {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

.wiggle {
    -webkit-animation-name: wiggle-7deg;
    animation-name: wiggle-7deg
}

@-webkit-keyframes wiggle-7deg {

    40%,
    50%,
    60% {
        -webkit-transform: rotate(7deg);
        transform: rotate(7deg)
    }

    35%,
    45%,
    55%,
    65% {
        -webkit-transform: rotate(-7deg);
        transform: rotate(-7deg)
    }

    0%,
    100%,
    30%,
    70% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@keyframes wiggle-7deg {

    40%,
    50%,
    60% {
        -webkit-transform: rotate(7deg);
        transform: rotate(7deg)
    }

    35%,
    45%,
    55%,
    65% {
        -webkit-transform: rotate(-7deg);
        transform: rotate(-7deg)
    }

    0%,
    100%,
    30%,
    70% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

.shake,
.spin-ccw,
.spin-cw,
.wiggle {
    -webkit-animation-duration: .5s;
    animation-duration: .5s
}

.infinite {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

.slow {
    -webkit-animation-duration: 750ms !important;
    animation-duration: 750ms !important
}

.fast {
    -webkit-animation-duration: 250ms !important;
    animation-duration: 250ms !important
}

.linear {
    -webkit-animation-timing-function: linear !important;
    animation-timing-function: linear !important
}

.ease {
    -webkit-animation-timing-function: ease !important;
    animation-timing-function: ease !important
}

.ease-in {
    -webkit-animation-timing-function: ease-in !important;
    animation-timing-function: ease-in !important
}

.ease-out {
    -webkit-animation-timing-function: ease-out !important;
    animation-timing-function: ease-out !important
}

.ease-in-out {
    -webkit-animation-timing-function: ease-in-out !important;
    animation-timing-function: ease-in-out !important
}

.bounce-in {
    -webkit-animation-timing-function: cubic-bezier(.485, .155, .24, 1.245) !important;
    animation-timing-function: cubic-bezier(.485, .155, .24, 1.245) !important
}

.bounce-out {
    -webkit-animation-timing-function: cubic-bezier(.485, .155, .515, .845) !important;
    animation-timing-function: cubic-bezier(.485, .155, .515, .845) !important
}

.bounce-in-out {
    -webkit-animation-timing-function: cubic-bezier(.76, -.245, .24, 1.245) !important;
    animation-timing-function: cubic-bezier(.76, -.245, .24, 1.245) !important
}

.short-delay {
    -webkit-animation-delay: .3s !important;
    animation-delay: .3s !important
}

.long-delay {
    -webkit-animation-delay: .7s !important;
    animation-delay: .7s !important
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: 0
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-list,
.slick-slider .slick-track {
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:after,
.slick-track:before {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.ps {
    overflow: hidden !important;
    overflow-anchor: none;
    -ms-overflow-style: none;
    touch-action: auto;
    -ms-touch-action: auto
}

.ps__rail-x {
    display: none;
    opacity: 0;
    transition: background-color .2s linear, opacity .2s linear;
    -webkit-transition: background-color .2s linear, opacity .2s linear;
    height: 15px;
    bottom: 0;
    position: absolute
}

.ps__rail-y {
    display: none;
    opacity: 0;
    transition: background-color .2s linear, opacity .2s linear;
    -webkit-transition: background-color .2s linear, opacity .2s linear;
    width: 15px;
    right: 0;
    position: absolute
}

.ps--active-x>.ps__rail-x,
.ps--active-y>.ps__rail-y {
    display: block;
    background-color: transparent
}

.ps--focus>.ps__rail-x,
.ps--focus>.ps__rail-y,
.ps--scrolling-x>.ps__rail-x,
.ps--scrolling-y>.ps__rail-y,
.ps:hover>.ps__rail-x,
.ps:hover>.ps__rail-y {
    opacity: .6
}

.ps__rail-x:focus,
.ps__rail-x:hover,
.ps__rail-y:focus,
.ps__rail-y:hover {
    background-color: #eee;
    opacity: .9
}

.ps__thumb-x {
    background-color: #aaa;
    border-radius: 6px;
    transition: background-color .2s linear, height .2s ease-in-out;
    -webkit-transition: background-color .2s linear, height .2s ease-in-out;
    height: 6px;
    bottom: 2px;
    position: absolute
}

.ps__thumb-y {
    background-color: #aaa;
    border-radius: 6px;
    transition: background-color .2s linear, width .2s ease-in-out;
    -webkit-transition: background-color .2s linear, width .2s ease-in-out;
    width: 6px;
    right: 2px;
    position: absolute
}

.ps__rail-x:focus>.ps__thumb-x,
.ps__rail-x:hover>.ps__thumb-x {
    background-color: #999;
    height: 11px
}

.ps__rail-y:focus>.ps__thumb-y,
.ps__rail-y:hover>.ps__thumb-y {
    background-color: #999;
    width: 11px
}

@supports (-ms-overflow-style:none) {
    .ps {
        overflow: auto !important
    }
}

@media screen and (-ms-high-contrast:active),
(-ms-high-contrast:none) {
    .ps {
        overflow: auto !important
    }
}

section {
    padding-top: 50px;
    min-height: 100vh;
    background-size: cover
}

@media screen and (max-width:39.9375em) {
    section:not(:first-of-type) {
        padding-top: 40px
    }

    section:not(:last-of-type) {
        padding-bottom: 40px
    }
}

body {
    background-color: #151822
}

body.fixed {
    height: 100vh;
    overflow: hidden
}

a {
    color: #fefefe;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

a:hover {
    color: #c2957a
}

.menu-bar {
    background-color: #000;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1002;
    padding: 13.33333px;
    pointer-events: none
}

@media screen and (max-width:39.9375em) {
    .menu-bar {
        padding: 10px
    }
}

@media screen and (max-width:63.9375em) {
    .menu-bar.with-bg {
        background-color: #151822
    }
}

.menu-bar img {
    max-height: 30px
}

.menu-bar .menu-logo {
    max-width: 24px;
    float: right
}

.menu-bar+div {
    padding-top: 60px
}

.projects-back-icon {
    color: #f4c09d;
    font-size: 19px;
    /* Раньше был position:absolute с фиксированным left:45px - стрелка
       рендерилась в оторванной от flex-потока точке, из-за чего слоган
       (текущий нормальный flex-элемент) рассчитывал позицию так, будто
       стрелки в потоке вообще нет, и визуально наезжал на неё. Теперь
       стрелка - обычный flex-элемент в общем потоке шапки. */
    display: inline-flex;
    align-items: center;
    padding: 10px;
    position: relative;
    z-index: 1005;
    flex-shrink: 0;
    pointer-events: auto;
}

* {
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0) !important;
    -webkit-focus-ring-color: rgba(255, 255, 255, 0) !important;
    outline: 0 !important
}

.lines-button {
    pointer-events: auto;
    z-index: 1000;
    margin-right: 10px;
    display: inline-block;
    transition: .3s;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    position: relative;
    top: -2px;
    min-height: 27px
}

.lines-button:hover {
    opacity: 1
}

.lines-button:active {
    transition: 0;
    background: rgba(0, 0, 0, .1)
}

.lines-button.close .lines {
    transition: background .3s 0s ease;
    background: 0 0
}

.lines-button.close .lines:after,
.lines-button.close .lines:before {
    transition: top .4s ease, -webkit-transform .3s .4s ease;
    transition: top .4s ease, transform .3s .4s ease;
    transition: top .4s ease, transform .3s .4s ease, -webkit-transform .3s .4s ease;
    top: 0;
    width: 24px
}

.lines-button.close .lines:before {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg)
}

.lines-button.close .lines:after {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg)
}

.lines {
    display: inline-block;
    width: 24px;
    height: 3px;
    background: #f4c09d;
    transition: .4s;
    position: relative;
    transition: top .3s .6s ease, -webkit-transform .3s ease;
    transition: top .3s .6s ease, transform .3s ease;
    transition: top .3s .6s ease, transform .3s ease, -webkit-transform .3s ease
}

.lines:after,
.lines:before {
    display: inline-block;
    width: 24px;
    height: 3px;
    background: #f4c09d;
    transition: .4s;
    position: absolute;
    left: 0;
    content: '';
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%
}

.lines:before {
    top: 8px
}

.lines:after {
    bottom: 8px
}

@-webkit-keyframes from-top {
    0% {
        height: 0;
        opacity: .5
    }

    100% {
        height: 100vh;
        opacity: 1
    }
}

@keyframes from-top {
    0% {
        height: 0;
        opacity: .5
    }

    100% {
        height: 100vh;
        opacity: 1
    }
}

@-webkit-keyframes to-top {
    0% {
        height: 100vh;
        opacity: 1
    }

    100% {
        height: 0;
        opacity: .5
    }
}

@keyframes to-top {
    0% {
        height: 100vh;
        opacity: 1
    }

    100% {
        height: 0;
        opacity: .5
    }
}

#main-menu {
    height: 1px;
    overflow: hidden;
    opacity: 0;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    background-color: #151822;
    pointer-events: initial;
    z-index: -1
}

@-webkit-keyframes rotate-bg {
    100% {
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes rotate-bg {
    100% {
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

#main-menu:not(.open-menu):not(.first-time-showing) {
    height: 0;
    -webkit-animation: to-top .3s backwards;
    animation: to-top .3s backwards
}

#main-menu.open-menu {
    overflow: hidden;
    z-index: 99;
    -webkit-animation: from-top .3s forwards;
    animation: from-top .3s forwards
}

#main-menu ul {
    display: inline-block;
    padding-right: 20px;
    text-align: center;
    margin: 0 auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

#main-menu ul li {
    text-align: center;
    position: relative;
    display: inline-block;
    -webkit-perspective: 1000px;
    perspective: 1000px
}

#main-menu ul li.clear {
    clear: left
}

#main-menu ul li:not(.social) {
    transition: -webkit-transform .33s;
    transition: transform .33s;
    transition: transform .33s, -webkit-transform .33s
}

#main-menu ul li:not(.social) a {
    position: relative;
    display: inline-block;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
    -webkit-transform-origin: 50% 0;
    -ms-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    z-index: 1
}

#main-menu ul li:not(.social) a:after {
    content: attr(title);
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all .3s;
    -webkit-transform: rotateX(-90deg);
    transform: rotateX(-90deg);
    -webkit-transform-origin: 50% 0;
    -ms-transform-origin: 50% 0;
    transform-origin: 50% 0;
    opacity: 0
}

@media screen and (max-width:39.9375em) {
    #main-menu ul li:not(.social) a:after {
        line-height: 1.7
    }
}

#main-menu ul li:not(.social) a:hover {
    -webkit-transform: rotateX(90deg) translateY(-22px);
    transform: rotateX(90deg) translateY(-22px)
}

#main-menu ul li:not(.social) a:hover:after {
    background: #f4c09d;
    color: #151822;
    opacity: 1
}

#main-menu ul li a {
    padding: 0 8px;
    color: #f4c09d;
    position: relative;
    font-weight: 600;
    font-family: Raleway, Helvetica, Roboto, Arial, sans-serif;
    text-transform: uppercase
}

#main-menu ul li a.contact-us,
#main-menu ul li a.home {
    font-weight: 100
}

#main-menu ul li a.the-team {
    font-weight: 200
}

#main-menu ul li a.finishing,
#main-menu ul li a.services {
    font-weight: 400
}

#main-menu ul li a.architecture,
#main-menu ul li a.philosophy,
#main-menu ul li a.renovation {
    font-weight: 700
}

@media print,
screen and (min-width:40em) {
    #main-menu ul li a {
        font-size: 280%
    }

    #main-menu ul li a.contact-us,
    #main-menu ul li a.home,
    #main-menu ul li a.philosophy,
    #main-menu ul li a.renovation,
    #main-menu ul li a.the-team {
        font-size: 302%
    }

    #main-menu ul li a.contact-us,
    #main-menu ul li a.renovation {
        font-size: 308%
    }

    #main-menu ul li a.architecture,
    #main-menu ul li a.services {
        font-size: 360%
    }

    #main-menu ul li a.finishing {
        font-size: 539%
    }
}

@media print,
screen and (min-width:64em) {
    #main-menu ul li a {
        font-size: 200%
    }

    #main-menu ul li a.contact-us,
    #main-menu ul li a.home,
    #main-menu ul li a.philosophy,
    #main-menu ul li a.renovation,
    #main-menu ul li a.the-team {
        font-size: 302%
    }

    #main-menu ul li a.contact-us,
    #main-menu ul li a.renovation {
        font-size: 308%
    }

    #main-menu ul li a.architecture,
    #main-menu ul li a.services {
        font-size: 360%
    }

    #main-menu ul li a.finishing {
        font-size: 539%
    }
}

#main-menu ul li a span {
    letter-spacing: 0 !important
}

#main-menu ul li.social {
    font-size: 80%;
    text-align: center;
    width: 100%
}

#main-menu ul li.social a {
    display: inline-block;
    margin: 0 15px;
    font-size: 250%
}

#main-menu ul li.social a:hover {
    color: #fcece2
}

@media screen and (max-width:39.9375em) {
    #main-menu ul {
        padding: 20px
    }

    #main-menu ul li:not(.social) {
        display: block;
        float: none
    }

    #main-menu ul li:not(.social) a {
        font-size: 190%;
        padding: 10px 0
    }

    /* Иконки соцсетей на телефонах: уменьшены и убраны из абсолютного
       позиционирования, чтобы не перекрывать пункты меню (было fixed
       top:22% + font-size:250% без адаптации под маленькие экраны) */
    #main-menu ul li.social a {
        margin: 0 8px;
        font-size: 140%
    }
}

@media screen and (max-width:39.9375em) {
    #main-menu ul li:not(.social) a {
        font-size: 175%;
        padding: 8px 0
    }
}

@-webkit-keyframes shine {

    0%,
    100% {
        -webkit-mask-position: 120%
    }

    50% {
        -webkit-mask-position: 0
    }
}

@keyframes shine {

    0%,
    100% {
        -webkit-mask-position: 120%
    }

    50% {
        -webkit-mask-position: 0
    }
}

.effect-shine {
    -webkit-mask-image: linear-gradient(75deg, rgba(0, 0, 0, .5) 20%, #000 60%, rgba(0, 0, 0, .5) 70%);
    mask-image: linear-gradient(75deg, rgba(0, 0, 0, .5) 20%, #000 60%, rgba(0, 0, 0, .5) 70%);
    -webkit-mask-size: 200%;
    mask-size: 200%;
    -webkit-animation: shine 3s infinite ease-in-out;
    animation: shine 3s infinite ease-in-out;
}

.home-header {
    position: relative;
    z-index: 0;
    line-height: 50px;
    background-size: cover
}

.home-header .overlay {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    opacity: .82;
    background-color: #151822;
    z-index: 3;
    transition: all .3s
}

@media screen and (max-width:39.9375em) {
    .home-header .overlay {
        bottom: -1px
    }
}

.home-header .overlay+* {
    position: relative;
    z-index: 2
}

.home-header .scroll-icon {
    bottom: -50px;
    opacity: 0;
    -webkit-animation: scroll-fade-in 2.3s 12.8s forwards alternate;
    animation: scroll-fade-in 2.3s 12.8s forwards alternate
}

.home-header .scroll-pages {
    bottom: -50px;
    opacity: 0;
    -webkit-animation: scroll-fade-in 1s 1.2s forwards alternate;
    animation: scroll-fade-in 1s 1.2s forwards alternate
}

.home-header .animation-container {
    text-align: center;
    color: #fefefe;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 4
}

.home-header .animation-container div {
    opacity: 0;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.home-header .animation-container div h1 {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 38px;            /* Элегантный размер, чтобы текст не разбивался на много строк */
    font-weight: 300;           /* Тонкое, статусное начертание */
    text-transform: uppercase;  /* Все буквы заглавные (как у дорогих брендов) */
    letter-spacing: 4px;        /* Широкая воздушная разрядка букв */
    color: #ffffff;             /* Чистый благородный белый цвет */
    line-height: 1.3;
    margin: 0;
}

/* Адаптивность для мобильных экранов */
@media screen and (max-width: 39.9375em) {
    .home-header .animation-container div h1 {
        font-size: 22px;        /* Аккуратный размер для экранов смартфонов */
        letter-spacing: 2px;
    }
}

.home-header .animation-container div h1.thin {
    font-weight: 100;
}

.home-header .animation-container img.logo-text {
    max-width: 300px
}

@media screen and (max-width:39.9375em) {
    .home-header .animation-container img.logo-text {
        max-width: 200px
    }
}

.home-header .animation-container img.logo {
    max-width: 180px
}

@media screen and (max-width:39.9375em) {
    .home-header .animation-container img.logo {
        max-width: 130px
    }
}

.home-header .animation-container div:nth-of-type(1) {
    -webkit-animation: tracking-in-out-contract 3.5s ease-in-out 1s;
    animation: tracking-in-out-contract 3.5s ease-in-out 1s
}

.home-header .animation-container div:nth-of-type(2) {
    -webkit-animation: tracking-in-out-contract 3.5s ease-in-out 4.5s;
    animation: tracking-in-out-contract 3.5s ease-in-out 4.5s
}

.home-header .animation-container div:nth-of-type(3) {
    -webkit-animation: tracking-in-out-contract 3.5s ease-in-out 8s;
    animation: tracking-in-out-contract 3.5s ease-in-out 8s
}

.home-header .animation-container div:nth-of-type(4) {
    -webkit-animation: tracking-in-out-contract 3.5s ease-in-out 11.5s;
    animation: tracking-in-out-contract 3.5s ease-in-out 11.5s
}

.home-header .animation-container div:last-of-type {
    top: calc(50% - 100px);
    -webkit-animation: fade-in 3s ease-in-out 15s forwards;
    animation: fade-in 3s ease-in-out 15s forwards
}

.home-header .animation-container div:first-of-type {
    top: calc(50% - 100px);
    -webkit-animation: fade-out 3.375s ease-in-out 0s forwards;
    animation: fade-out 3.375s ease-in-out 0s forwards
}

.contact .contact-info .home-header .directions,
.home-header .contact .contact-info .directions {
    font-size: 100%;
    background-color: rgba(21, 24, 34, .2);
    padding: 2px 0;
    border-bottom: 1px solid #f4c09d;
    display: inline-block;
    text-align: center;
    color: #f4c09d;
    margin-top: 7px;
    letter-spacing: 1px;
    opacity: .8;
    margin-bottom: 25px
}

.contact .contact-info .home-header .directions:hover,
.home-header .contact .contact-info .directions:hover {
    border-color: #fefefe;
    color: #fefefe
}

.home-header .scroll-icon {
    position: absolute;
    width: 60px;
    left: 50%;
    z-index: 100;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 36px;
    z-index: 80
}

.contact {
    position: relative
}

.contact:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    height: 400px;
    top: -200px;
    pointer-events: none;
    background: linear-gradient(to bottom, rgba(21, 24, 34, 0), #151822 50%, rgba(21, 24, 34, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#151822', endColorstr='#151822', GradientType=0)
}

.contact .grid-container {
    top: 50vh;
    position: relative;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media screen and (max-width: 639px) {
    /* Контент раздела «Контакты» подрос (добавился блок «География»),
       и формула центрирования на весь экран стала тянуть его вверх —
       из-за этого почта была видна уже на первом экране. Сдвигаем
       точку центрирования немного ниже именно на мобильных. */
    .contact .grid-container {
        top: 60vh;
    }
}

.contact .overlay {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    opacity: .65;
    background-color: #151822;
    z-index: 2;
    transition: all .3s
}

@media screen and (max-width:39.9375em) {
    .contact .overlay {
        bottom: -1px
    }
}

.contact .overlay+* {
    position: relative;
    z-index: 2
}

.contact h2 {
    color: #fefefe
}

.contact .contact-info {
    padding: 10px 4px
}

@media screen and (max-width:39.9375em) {
    .contact .contact-info {
        text-align: center
    }
}

.contact .contact-info a,
.contact .contact-info p {
    font-size: 130%;
    margin-bottom: 20px;
    line-height: 1.3
}

.contact .contact-info a.phone span,
.contact .contact-info p.phone span {
    display: block;
    margin-bottom: 5px
}

.contact .contact-info a.phone svg,
.contact .contact-info p.phone svg {
    -webkit-transform: scale(.9);
    -ms-transform: scale(.9);
    transform: scale(.9);
    display: inline-block;
    margin-right: 5px
}

.contact .contact-info a.social,
.contact .contact-info p.social {
    font-size: 105%
}

@media screen and (max-width:39.9375em) {

    .contact .contact-info a.social,
    .contact .contact-info p.social {
        font-size: 130%
    }
}

.contact .contact-info a.social a,
.contact .contact-info p.social a {
    margin-right: 21px;
    display: inline-block
}

.contact .contact-info a.address,
.contact .contact-info p.address {
    margin-bottom: 0
}

@-webkit-keyframes indicate {
    0% {
        margin-left: 5px
    }

    100% {
        margin-left: 0
    }
}

@keyframes indicate {
    0% {
        margin-left: 5px
    }

    100% {
        margin-left: 0
    }
}

.contact .contact-info .map {
    font-size: 220%;
    position: relative;
    top: -5px;
    color: rgba(244, 192, 157, .85);
    display: inline-block;
    margin-bottom: 30px;
    transition: all .3s
}

.contact .contact-info .map:after {
    content: 'Маршрут';
    font-size: 18px;
    position: absolute;
    white-space: nowrap;
    left: 50px;
    right: 0;
    opacity: 0;
    bottom: 35%;
    transition: all .3s
}

.contact .contact-info .map .fa-angle-right {
    font-size: 80%;
    position: relative;
    top: -5px;
    left: 5px;
    opacity: .7;
    transition: all .2s;
    -webkit-animation: indicate 1.2s alternate infinite ease-in-out;
    animation: indicate 1.2s alternate infinite ease-in-out
}

.contact .contact-info .map:hover .fa-angle-right {
    left: 85px;
    opacity: 1
}

.contact .contact-info .map:hover:after {
    opacity: 1
}

.contact .contact-info a {
    color: #f4c09d;
    display: block
}

.contact .contact-info a:hover {
    color: #fefefe
}

.projects-container {
    margin: 1px
}

.projects-container .projects-grid .project {
    box-sizing: border-box;
    background-position: cover;
    height: calc(33.33vh - 1px);
    border: 1px solid #232838;
    position: relative;
    cursor: pointer;
    box-shadow: 0 0 2px #000;
    overflow: hidden
}

.projects-container .projects-grid .project .overlay {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    opacity: 0;
    background-color: transparent;
    z-index: 2;
    transition: all .3s
}

@media screen and (max-width:39.9375em) {
    .projects-container .projects-grid .project .overlay {
        bottom: -1px
    }
}

.projects-container .projects-grid .project .overlay+* {
    position: relative;
    z-index: 2
}

@media screen and (max-width:39.9375em) {
    .projects-container .projects-grid .project {
        height: calc(50vh - 1px)
    }
}

.projects-container .projects-grid .project>div {
    box-sizing: border-box;
    height: calc(33.33vh - 1px);
    border: 1px solid #232838;
    background-size: cover;
    transition: all .3s
}

@media screen and (max-width:39.9375em) {
    .projects-container .projects-grid .project>div {
        height: calc(50vh - 1px)
    }
}

.projects-container .projects-grid .project .project-title {
    background-color: rgba(35, 40, 56, .8);
    padding: 0 13.33333px;
    border-top: 1px solid transparent;
    position: absolute;
    bottom: 0;
    left: 1px;
    right: 1px;
    max-height: 0;
    overflow: hidden;
    transition: all .2s .2s ease
}

.projects-container .projects-grid .project .project-title h5 {
    top: 250px;
    font-weight: 500;
    text-shadow: 0 0 5px rgba(35, 40, 56, .8);
    transition: all .3s;
    margin-bottom: 0
}

.projects-container .projects-grid .project .project-title h5 svg {
    opacity: 0;
    position: absolute;
    height: 25px;
    width: 20px;
    right: 13.33333px;
    top: 10px;
    transition: all .3s .3s
}

.projects-container .projects-grid .project .project-title p {
    text-transform: uppercase;
    font-size: 80%;
    position: relative;
    margin-bottom: 0
}

.projects-container .projects-grid .project .project-title a {
    color: #c2957a
}

.projects-container .projects-grid .project:hover>div .project-title {
    max-height: 300px;
    padding: 10px 13.33333px
}

.projects-container .projects-grid .project:hover>div .project-title h5 {
    opacity: 1;
    padding-right: 40px
}

.projects-container .projects-grid .project:hover>div .project-title h5 svg {
    opacity: 1
}

@media screen and (max-width:39.9375em) {
    .projects-container .projects-grid .project>div .project-title {
        max-height: 300px;
        padding: 10px 13.33333px
    }

    .projects-container .projects-grid .project>div .project-title h5 {
        opacity: 1;
        padding-right: 40px
    }

    .projects-container .projects-grid .project>div .project-title h5 svg {
        opacity: 1
    }
}

/* Телефон: между карточками проектов зазор, чтобы подпись была видна как часть своей карточки,
   а не «под фото следующего проекта» */
@media screen and (max-width:39.9375em) {
    .projects-container .projects-grid .project {
        margin-bottom: 14px;
        box-shadow: none
    }

    .projects-container .projects-grid .project>div .project-title {
        background-color: rgba(35, 40, 56, .92)
    }
}

.project-slider {
    position: relative;
    height: 100vh;
    overflow: hidden
}

.project-slider .slide-content {
    height: 100vh;
    max-height: 100vh;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center
}

.project-slider .slide-content img {
    display: none
}

.project-slider .slide-content.video-slide {
    background-color: #000;
}

.project-slider .slide-content.video-slide video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media screen and (max-width:39.9375em) {
    .project-slider .slide-content.video-slide { height: auto; }
    .project-slider .slide-content.video-slide video { height: auto; }
}

@media screen and (max-width:39.9375em) {
    .project-slider {
        height: auto;
        margin: 2px;
        padding-bottom: 60px
    }

    .project-slider .slide-content {
        height: auto;
        margin-bottom: 2px
    }

    .project-slider .slide-content img {
        display: block
    }
}

.project-info {
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    padding: 10px 20px;
    height: 60px;
    overflow: hidden;
    transition: all .3s
}

.project-info:hover {
    background-color: rgba(35, 40, 56, .9)
}

@media screen and (max-width:39.9375em) {
    .project-info {
        position: fixed
    }
}

.project-info h3 {
    margin-bottom: 0;
    cursor: pointer;
    padding-bottom: 10px;
    transition: all .3s;
    text-shadow: #151822 1px 1px 2px
}

@media screen and (max-width:39.9375em) {
    .project-info h3 {
        font-size: 1.3625rem
    }
}

.project-info h3 svg {
    margin-left: 10px;
    display: inline-block;
    padding-left: 5px;
    position: relative;
    top: 2px;
    transition: all .3s;
    opacity: 0;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    text-shadow: #000 1px 1px 2px
}

.project-info h3:hover {
    color: #fefefe
}

.project-info h3:hover svg.fa-angle-down {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.project-info .back {
    font-size: 20px;
    color: #f4c09d;
    position: absolute;
    left: 0;
    padding: 13px;
    top: 5px;
    transition: all .3s
}

.project-info .back svg {
    -webkit-filter: drop-shadow(1px 1px 2px #151822);
    filter: drop-shadow(1px 1px 2px #151822)
}

@media screen and (max-width:39.9375em) {
    .project-info .back {
        padding: 15px 13px;
        top: 3px;
        top: 0
    }
}

.project-info .back:hover {
    color: #fefefe
}

.project-info .back span {
    font-size: 15px
}

@media screen and (max-width:39.9375em) {
    .project-info h3 {
        margin-bottom: 0
    }
}

@media print,
screen and (min-width:40em) {
    .project-info .social {
        float: right;
    }

    .project-info .social svg {
        -webkit-transform: scale(.75);
        -ms-transform: scale(.75);
        transform: scale(.75);
        opacity: .8;
        -webkit-filter: drop-shadow(1px 1px 2px #151822);
        filter: drop-shadow(1px 1px 2px #151822);
    }
}

@media screen and (max-width:39.9375em) {
    .project-info .social {
        opacity: .8
    }
}

.project-info.expanded {
    height: 40vh;
    padding: 15px 30px;
    background-color: rgba(35, 40, 56, .9);
    z-index: 1001
}

@media print,
screen and (min-width:40em) {
    .project-info.expanded .back {
        top: 9px
    }
}

@media screen and (max-width:39.9375em) {
    .project-info.expanded {
        padding: 10px 15px;
        height: 70vh;
        z-index: 200;
        font-size: 90%
    }
}

.project-info.expanded h3 svg {
    opacity: 1
}

.project-info.expanded h3 svg.fa-angle-down {
    -webkit-transform: rotate(180deg) scale(1);
    -ms-transform: rotate(180deg) scale(1);
    transform: rotate(180deg) scale(1)
}

.project-info.expanded h3 svg:hover {
    opacity: 1
}

@media screen and (max-width:39.9375em) {
    .project-info.expanded h3 svg {
        -webkit-transform: scale(1.3);
        -ms-transform: scale(1.3);
        transform: scale(1.3);
        opacity: 1
    }

    .project-info.expanded h3 svg:first-of-type {
        margin-left: 0
    }
}

@media screen and (max-width:39.9375em) {
    .project-info.expanded h3 .social {
        margin-top: 10px;
        margin-bottom: 10px
    }

    .project-info.expanded h3 .social a {
        display: inline-block;
        margin-right: 20px;
        font-size: 25px
    }
}

.project-info .info-text {
    max-width: 800px;
    position: relative;
    padding-left: 15px;
    padding-right: 20px;
    left: -15px;
    font-size: 100%;
    line-height: 1.4;
    letter-spacing: .5px;
    font-weight: 400;
    color: #c2957a;
    height: calc(100% - 77px);
    overflow: auto
}

.project-info .info-text p {
    line-height: 1.4
}

.slick-arrow {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    cursor: pointer;
    z-index: 100;
    font-size: 40px;
    line-height: .5;
    transition: all .2s;
    z-index: 1000;
    transition: all .2s;
    z-index: 1000;
    opacity: .5
}

.slick-arrow.slick-disabled {
    opacity: 0
}

.slick-arrow:hover {
    color: #fefefe;
    opacity: 1
}

.slick-arrow.slick-prev {
    top: 55px
}

.slick-arrow.slick-next {
    bottom: 60px
}

.slick-vertical .slick-slide {
    border: 0;
    height: 100vh;
    text-align: center
}

.team-grid {
    border-top: 1px solid #151822
}

.team-grid .member {
    border: 2px solid #151822;
    overflow: hidden;
    position: relative;
    float: left
}

@media print,
screen and (min-width:40em) {
    .team-grid .member {
        width: calc(100% / 2)
    }
}

@media print,
screen and (min-width:64em) {
    .team-grid .member {
        width: calc(100% / 3)
    }
}

.team-grid .member .member-details {
    position: absolute;
    background-color: rgba(35, 40, 56, .8);
    padding: 10px 10px 0 10px;
    left: 0;
    right: 0;
    bottom: 0;
    text-align: right
}

.team-grid .member .member-details h5,
.team-grid .member .member-details h6 {
    font-weight: 500;
    letter-spacing: 1px;
    transition: all .3s;
    color: #e6e6e6
}

.team-grid .member .member-details h6 {
    height: 0;
    margin-bottom: 0;
    position: relative;
    top: -3px;
    font-size: 90%;
    text-transform: uppercase
}

.team-grid .member:hover .member-details h5,
.team-grid .member:hover .member-details h6 {
    color: #f4c09d
}

.team-grid .member:hover .member-details h6 {
    height: 30px;
    top: -9px
}

@media screen and (max-width:39.9375em) {

    .team-grid .member .member-details h5,
    .team-grid .member .member-details h6 {
        color: #f4c09d
    }

    .team-grid .member .member-details h6 {
        height: 30px;
        top: -9px
    }
}

.map-container {
    height: 350px;
    overflow: hidden;
    transition: all .2s .2s
}

.map-container a {
    color: #c2957a;
    text-align: center;
    display: block;
    padding: 8px;
    letter-spacing: 1px
}

.map-container a svg {
    position: relative;
    top: 2px;
    left: 0;
    transition: all .3s
}

.map-container a:hover {
    color: #fefefe
}

.map-container a:hover svg {
    left: 5px
}

.about-intro,
.team-intro {
    background-attachment: fixed;
    position: relative;
    text-align: center
}

@media screen and (max-width: 639px) {
    /* На iOS Safari background-attachment:fixed часто рендерится через
       низкокачественный composited-слой — картинка выглядит размытой.
       На мобильных параллакс не критичен, отключаем fixed. */
    .team-intro {
        background-attachment: scroll;
    }
}

.about-intro .overlay,
.team-intro .overlay {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    opacity: .47;
    background-color: #151822;
    z-index: 2;
    transition: all .3s
}

@media screen and (max-width:39.9375em) {

    .about-intro .overlay,
    .team-intro .overlay {
        bottom: -1px
    }
}

.about-intro .overlay+*,
.team-intro .overlay+* {
    position: relative;
    z-index: 2
}

@media screen and (max-width:39.9375em) {

    .about-intro,
    .team-intro {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center
    }
}

.about-intro .overlay,
.team-intro .overlay {
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover
}

.about-intro h2,
.team-intro h2 {
    text-transform: uppercase;
    margin-bottom: 20px;
    font-weight: 700;
    color: #c2957a
}

@media screen and (max-width:39.9375em) {

    .about-intro .intro-container,
    .team-intro .intro-container {
        padding: 80px 20px;
        position: absolute;
        margin-left: auto;
        margin-right: auto;
        left: 0;
        right: 0
    }
}

@media print,
screen and (min-width:40em) {

    .about-intro .intro-container,
    .team-intro .intro-container {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 1250px;
        max-width: 100vw;
        margin: 0 auto
    }
}

.about-intro .intro-container .large-cls-line span,
.team-intro .intro-container .large-cls-line span {
    font-size: 125%
}

.about-intro .intro-container p,
.team-intro .intro-container p {
    color: #cacaca;
    font-weight: 400
}

.about-intro .intro-container p strong,
.team-intro .intro-container p strong {
    color: #fff
}

@media print,
screen and (min-width:40em) {

    .about-intro .intro-container p,
    .team-intro .intro-container p {
        font-size: 120%;
        line-height: 1.4
    }
}

.about-intro img,
.team-intro img {
    position: relative;
    max-width: 100px;
    margin-bottom: 30px
}

@media screen and (max-width:39.9375em) {

    .about-intro img,
    .team-intro img {
        max-width: 100px
    }
}

.img-small img {
    position: relative;
    max-width: 100px;
    margin-bottom: 30px
}

@media screen and (max-width:39.9375em) {
    .img-small img {
        max-width: 100px
    }
}

#companies {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-size: cover;
    background-attachment: fixed
}

.companies {
    font-size: 120%;
    text-align: center;
    color: #c2957a
}

.companies .logo {
    display: block;
    text-align: center
}

.companies .logo img {
    max-width: 130px;
    margin-bottom: 25px
}

@media screen and (max-width:39.9375em) {
    .companies .logo img {
        max-width: 80px
    }
}

.companies .cell {
    padding: 40px
}

@media screen and (max-width:39.9375em) {
    .companies .cell {
        padding: 40px 20px
    }
}

.companies .pop-up-link {
    display: block;
    font-size: 95%;
    margin-top: 15px;
    text-align: center;
    color: #9f7c68
}

.companies .pop-up-link svg {
    position: relative;
    top: 2px
}

.companies .pop-up-link:hover {
    color: #fefefe
}

.services {
    font-size: 120%;
    text-align: center;
    color: #c2957a;
    padding-top: 100px
}

.services .logo {
    margin-top: 30px;
    display: inline-block;
    text-align: center;
    padding: 45px
}

@media screen and (max-width:39.9375em) {
    .services .logo {
        padding: 1px
    }
}

.services .logo img {
    max-width: 90px;
    margin-bottom: 25px
}

@media screen and (max-width:39.9375em) {
    .services .logo img {
        max-width: 90px
    }
}

.services .cell {
    padding: 10px
}

@media screen and (max-width:39.9375em) {
    .services .cell {
        padding: 10px
    }
}

.services .pop-up-link {
    display: block;
    font-size: 95%;
    margin-top: 15px;
    text-align: center;
    color: #9f7c68
}

.services .pop-up-link svg {
    position: relative;
    top: 2px
}

.services .pop-up-link:hover {
    color: #fefefe
}

.design-services .close-button {
    left: 1rem
}

.design-services .timeline {
    position: relative
}

.design-services .timeline .step {
    position: relative;
    padding-top: 10px;
    padding-bottom: 15px
}

.design-services .timeline .step .accordion-content,
.design-services .timeline .step .accordion-title {
    padding: 0
}

.design-services .timeline .step .accordion-title {
    font-size: 160%;
    margin-bottom: 10px;
    color: #c2957a
}

.design-services .timeline .step .accordion-title:focus,
.design-services .timeline .step .accordion-title:hover {
    opacity: 1;
    color: #fefefe
}

.design-services .timeline .step .accordion-title:before {
    opacity: 0
}

.design-services .timeline .step .accordion-content {
    color: #fefefe
}

.design-services .timeline .step:not(:last-of-type):after {
    content: '';
    position: absolute;
    opacity: .7;
    top: 0;
    bottom: 0;
    left: calc(124px / 2);
    border-left: 3px dashed #c2957a;
    z-index: -1
}

.design-services .timeline .step .icon {
    background-color: #151822;
    border: 3px solid #c2957a;
    border-radius: 50%;
    width: 20%;
    max-width: 125px;
    min-width: 100px;
    position: absolute;
    top: 0;
    left: 0;
    margin-right: 25px;
    box-shadow: 0 0 5px #151822
}

.design-services .timeline .step .icon:before {
    content: '';
    display: block;
    padding-bottom: 100%
}

.design-services .timeline .step .icon img {
    top: 50%;
    position: absolute;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    margin: 0 auto;
    padding: 22px
}

.design-services .timeline .step .description {
    padding-left: calc(125px + 45px);
    padding-top: 10px;
    max-width: 900px
}

.design-services .timeline .step .description h4 {
    margin-bottom: 5px;
    font-weight: 700;
    position: relative;
    left: -25px;
    color: #f4c09d;
    opacity: .8;
    font-size: 22px
}

.design-services .timeline .step .description h6 {
    color: #c2957a
}

.design-services .timeline .step .description .expand {
    font-size: 160%;
    color: #f4c09d;
    opacity: .5
}

.design-services .timeline .step .description .expand:hover {
    color: #fefefe;
    opacity: 1
}

.design-services .timeline .step .description .text {
    max-height: 0;
    overflow: hidden;
    position: relative;
    transition: max-height .3s;
    color: #fefefe
}

.design-services .timeline .step .description .text.expanded {
    max-height: 22220px
}

@media screen and (max-width:39.9375em) {
    .design-services .timeline .step {
        padding-bottom: 40px
    }

    .design-services .timeline .step:not(:last-of-type):after {
        left: 50%;
        top: 20px;
        border-width: 2px
    }

    .design-services .timeline .step .icon {
        width: 100px;
        min-width: 0;
        clear: both;
        position: relative;
        margin: 0 auto;
        border: 1px solid rgba(194, 149, 122, .7)
    }

    .design-services .timeline .step .icon img {
        padding: 15px
    }

    .design-services .timeline .step .description {
        padding: 15px;
        background-color: #151822
    }

    .design-services .timeline .step .description .accordion-title {
        text-align: center
    }

    .design-services .timeline .step .description h4 {
        left: 0;
        font-size: 20px
    }

    .design-services .timeline .step .description h6 {
        font-size: 17px
    }
}

@-webkit-keyframes jumping {

    0%,
    100% {
        top: 0
    }

    50% {
        top: 7px
    }
}

@keyframes jumping {

    0%,
    100% {
        top: 0
    }

    50% {
        top: 7px
    }
}

.arrow-down {
    position: relative;
    max-width: 100px;
    -webkit-animation: jumping 4s infinite cubic-bezier(0, .83, .85, 1);
    animation: jumping 4s infinite cubic-bezier(0, .83, .85, 1)
}

.loader {
    width: 100vw;
    height: 100vh;
    background-color: #0b0c0e !important; /* Наш глубокий премиальный темный фон */
    z-index: 100000;
    position: fixed;
    transition: all .4s;
    
    /* Современное выравнивание: держит ЛЮБОЙ внутренний логотип строго по центру */
    display: flex !important;
    align-items: center !important;      /* Центрирование по вертикали */
    justify-content: center !important;  /* Центрирование по горизонтали */
}

.loader.loaded {
    opacity: 0;
    z-index: -10
}

/* Стили для адаптивности и размера самого логотипа внутри прелоадера */
.loader img,
.loader svg,
.loader .effect-shine {
    max-width: 80px !important;
    max-height: 80px !important;
    width: 80px !important;
    height: 80px !important;
    display: block !important;
    margin: 0 auto !important;
    /* Убрали старое абсолютное позиционирование, так как flex-сетка выше работает стабильнее */
    position: static !important; 
    transform: none !important;
}

@media screen and (max-width:39.9375em) {
    .loader img {
        max-width: 80px
    }
}

@-webkit-keyframes from-bottom {
    0% {
        top: 100vh !important
    }

    100% {
        top: 0
    }
}

@keyframes from-bottom {
    0% {
        top: 100vh !important
    }

    100% {
        top: 0
    }
}

.reveal {
    z-index: 20000
}

.reveal.design-build,
.reveal.design-services {
    background-color: #151822;
    color: #f4c09d;
    padding-top: 20px;
    padding-bottom: 20px;
    max-height: 100vh;
    overflow: auto
}

@media screen and (max-width:39.9375em) {

    .reveal.design-build,
    .reveal.design-services {
        padding: 20px 0;
        padding-top: 50px
    }

    .reveal.design-build .close-button,
    .reveal.design-services .close-button {
        top: 0
    }
}

.reveal.design-build .close-button,
.reveal.design-services .close-button {
    left: 1rem
}

.reveal.design-build .cell,
.reveal.design-services .cell {
    margin: 0 auto
}

.reveal.design-build h1,
.reveal.design-build h2,
.reveal.design-build h3,
.reveal.design-build h4,
.reveal.design-build h5,
.reveal.design-build h6 {
    color: #fff;
    margin-bottom: unset
}

.reveal.design-build #popup-title {
    color: #f4c09d
}

.reveal.design-build .accordion .accordion-item .accordion-title {
    position: relative;
    color: #fefefe;
    font-weight: 500;
    margin-top: 20px;
    padding: 10px 15px 10px 60px
}

.reveal.design-build .accordion .accordion-item .accordion-title:before {
    position: absolute;
    right: 5px
}

.reveal.design-build .accordion .accordion-item .accordion-title:focus,
.reveal.design-build .accordion .accordion-item .accordion-title:hover {
    color: #f4c09d
}

.reveal.design-build .accordion .accordion-item .accordion-title img {
    max-width: 45px;
    max-height: 40px;
    position: absolute;
    left: 0
}

@media print,
screen and (min-width:40em) {
    .reveal.design-build .accordion .accordion-item .accordion-title img {
        top: -3px
    }
}

.reveal.design-build .accordion .accordion-item .accordion-content {
    padding: 0 0 0 60px;
    color: #f4c09d
}

@media screen and (max-width:39.9375em) {
    .reveal.design-build {
        padding: 50px 11px 20px 11px
    }
}

@-webkit-keyframes tracking-in-out-contract {
    0% {
        letter-spacing: -1.2em;
        opacity: 0
    }

    30% {
        opacity: .4
    }

    40% {
        opacity: 1;
        letter-spacing: 0
    }

    55% {
        opacity: .8
    }

    100% {
        opacity: .3;
        letter-spacing: -.5em
    }
}

@keyframes tracking-in-out-contract {
    0% {
        letter-spacing: -1.2em;
        opacity: 0
    }

    20% {
        opacity: .3
    }

    50% {
        opacity: 1;
        letter-spacing: 0
    }

    60% {
        opacity: .8
    }

    100% {
        opacity: 0
    }
}

@-webkit-keyframes fade-in {
    0% {
        opacity: 1;
        -webkit-transform: scale(.4);
        -ms-transform: scale(.4);
        transform: scale(.4);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }

    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }
}

@keyframes fade-in {
    0% {
        opacity: 1;
        -webkit-transform: scale(.4);
        -ms-transform: scale(.4);
        transform: scale(.4);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }

    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }
}

@-webkit-keyframes fade-out {
    0% {
        opacity: .8;
        -webkit-transform: scale(.4);
        -ms-transform: scale(.4);
        transform: scale(.4);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }
}

@keyframes fade-out {
    0% {
        opacity: .8;
        -webkit-transform: scale(.4);
        -ms-transform: scale(.4);
        transform: scale(.4);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        -webkit-filter: blur(0);
        -moz-filter: blur(0);
        -o-filter: blur(0);
        -ms-filter: blur(0);
        filter: blur(0)
    }
}

@-webkit-keyframes scroll-fade-in {
    0% {
        opacity: 0;
        bottom: -50px
    }

    100% {
        opacity: 1;
        bottom: 36px
    }
}

@keyframes scroll-fade-in {
    0% {
        opacity: 0;
        bottom: -50px
    }

    100% {
        opacity: 1;
        bottom: 36px
    }
}

.loading {
    position: absolute;
    top: 44%;
    left: 0;
    width: 100%
}

.youtube {
    position: relative;
    display: inline-block;
    width: 100%
}

@media screen and (max-width:39.9375em) {
    .youtube {
        display: block
    }
}

#imageovervideo {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 100%;
    min-height: 100vh;
    z-index: 1000
}

.mute-button {
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 46%;
    bottom: 85px;
    position: absolute;
    z-index: 10000;
    color: #f4c09d;
    font-size: 18px;
    cursor: pointer;
    padding-bottom: 10px;
    transition: all .3s;
    text-shadow: #151822 1px 1px 2px;
    display: none
}

.unmute-button {
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 46%;
    bottom: 85px;
    position: absolute;
    z-index: 10000;
    color: #f4c09d;
    font-size: 18px;
    cursor: pointer;
    padding-bottom: 10px;
    transition: all .3s;
    text-shadow: #151822 1px 1px 2px
}

.pause-button {
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 50%;
    bottom: 85px;
    position: absolute;
    z-index: 10000;
    color: #f4c09d;
    font-size: 18px;
    cursor: pointer;
    padding-bottom: 10px;
    transition: all .3s;
    text-shadow: #151822 1px 1px 2px
}

.resume-button {
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 50%;
    bottom: 85px;
    position: absolute;
    z-index: 10000;
    color: #f4c09d;
    font-size: 18px;
    cursor: pointer;
    padding-bottom: 10px;
    transition: all .3s;
    text-shadow: #151822 1px 1px 2px;
    display: none
}

.play-button {
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 54%;
    bottom: 82px;
    position: absolute;
    z-index: 10000;
    color: #f4c09d;
    font-size: 18px;
    cursor: pointer;
    padding-bottom: 10px;
    transition: all .3s;
    text-shadow: #151822 1px 1px 2px
}

@media screen and (max-width:39.9375em) {

    .mute-button,
    .pause-button,
    .play-button,
    .resume-button {
        display: none
    }
}

.mute-button:hover {
    color: #fff
}

.unmute-button:hover {
    color: #fff
}

.resume-button:hover {
    color: #fff
}

.play-button:hover {
    color: #fff
}

.pause-button:hover {
    color: #fff
}

.youtube iframe {
    position: relative;
    pointer-events: none;
    min-width: 100%;
    min-height: 100vh
}

@media screen and (max-width:39.9375em) {
    .youtube iframe {
        pointer-events: all
    }
}

@-webkit-keyframes slideIn {
    from {
        -webkit-filter: blur(15px);
        filter: blur(15px)
    }

    to {
        -webkit-filter: blur(0);
        filter: blur(0)
    }
}

@keyframes slideIn {
    from {
        -webkit-filter: blur(15px);
        filter: blur(15px)
    }

    to {
        -webkit-filter: blur(0);
        filter: blur(0)
    }
}

@-webkit-keyframes slideOut {
    from {
        -webkit-filter: blur(0);
        filter: blur(0)
    }

    to {
        -webkit-filter: blur(15px);
        filter: blur(15px)
    }
}

@keyframes slideOut {
    from {
        -webkit-filter: blur(0);
        filter: blur(0)
    }

    to {
        -webkit-filter: blur(15px);
        filter: blur(15px)
    }
}

.services-ul {
    padding-left: 0;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0;
    color: #fff;
    font-size: 17px
}

.services-ul li {
    color: #cacaca;
    list-style-type: none;
    position: relative
}

.services-ul li:before {
    text-align: center;
    content: '\2022';
    position: relative;
    left: -6px;
    font-size: .9em
}

.services-ul p {
    margin-bottom: 0
}

.services-ul h1,
.services-ul h2,
.services-ul h3,
.services-ul h4,
.services-ul h5,
.services-ul h6 {
    margin-bottom: 0
}

.social-container {
    position: absolute;
    right: 0;
    bottom: 0
}

@media screen and (max-width:39.9375em) {
    /* Раньше был position:absolute + top:22% у обоих уровней сразу —
       на iPhone это давало непредсказуемое перекрытие с пунктами меню.
       Промежуточный фикс (position:static) тоже не подошёл: #main-menu ul
       центрируется трюком top:50% + transform:translateY(-50%), а transform
       не влияет на место, которое элемент резервирует в потоке документа —
       поэтому "статичный" блок иконок вставал под НЕсдвинутым (в потоке)
       положением списка и попадал прямо на середину видимого меню.
       Правильно — не зависеть от потока вообще: закрепляем блок иконок
       у НИЗА ЭКРАНА (bottom всегда считается от #main-menu, который
       position:fixed на весь экран), тогда его позиция не связана с тем,
       как ul сдвинут центрированием. */
    .social-container {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 30px;
        text-align: center;
    }

    .social-container ul {
        position: static;
        font-size: 14px
    }
}

.general-details {
    color: #000;
    text-align: center
}

.general-details ul {
    padding-top: 40px;
    list-style-type: none
}

.general-details li {
    margin-bottom: 10px
}

.general-details li h1,
.general-details li h2,
.general-details li h3,
.general-details li h4,
.general-details li h5,
.general-details li h6 {
    color: #000 !important
}

.general-details .details {
    background-color: #fff;
    height: 72%
}

@media screen and (max-width:39.9375em) {
    .general-details .details {
        height: 90%
    }
}

.general-details hr {
    background-color: #000;
    height: 1px;
    max-width: 42em
}

.general-details img {
    margin-top: 140px;
    margin-bottom: 40px;
    width: 130px
}

@media screen and (max-width:39.9375em) {
    .general-details img {
        width: 100px
    }
}

.print-firm-details {
    position: absolute;
    top: 31%;
    right: 30%;
    color: #000;
    font-size: 28px
}

@media screen and (max-width:39.9375em) {
    .print-firm-details {
        position: relative;
        right: 0;
        top: 0
    }
}

.services_pdf {
    color: #6d7486;
    margin-left: 10px
}

.projects-back-icon {
    color: #f4c09d;
    font-size: 19px;
    /* Раньше был position:absolute с фиксированным left:45px - стрелка
       рендерилась в оторванной от flex-потока точке, из-за чего слоган
       (текущий нормальный flex-элемент) рассчитывал позицию так, будто
       стрелки в потоке вообще нет, и визуально наезжал на неё. Теперь
       стрелка - обычный flex-элемент в общем потоке шапки. */
    display: inline-flex;
    align-items: center;
    padding: 10px;
    position: relative;
    z-index: 1005;
    flex-shrink: 0;
    pointer-events: auto;
}
/* ==========================================================================
   ТОТАЛЬНЫЙ ФИКС МЕНЮ — ИЗЯЩНЫЙ ИТАЛЬЯНСКИЙ СТИЛЬ (IDEAL BRAND)
   ========================================================================== */

/* 1. Блокируем старые прыгающие анимации текста */
#main-menu li a,
#main-menu li a span {
    transform: none !important;
    display: inline-block !important;
    transition: none !important;
}

/* 2. Делаем пункты меню адаптивными и блочными в любом состоянии */
#main-menu li:not(.social) {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
}

/* 3. Настраиваем ссылки меню — легкая типографика high-end класса */
#main-menu li:not(.social) a {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
    font-size: 14px !important;            /* Компактный, утонченный размер */
    font-weight: 300 !important;          /* Тонкое люксовое начертание */
    text-transform: uppercase !important;    /* Все буквы заглавные */
    letter-spacing: 3px !important;       /* Широкая воздушная разрядка букв */
    color: #8a8e98 !important;            /* Сдержанный благородный серый в покое */
    display: inline-block !important;
    position: relative !important;
    padding: 12px 15px !important;
    text-decoration: none !important;
    transition: all 0.3s ease-in-out !important;
}

/* 4. Мягкая подсветка букв при наведении (Без грубых линий подчеркивания) */
#main-menu li:not(.social) a:hover {
    color: #ffffff !important;            /* Текст плавно загорается белым */
    letter-spacing: 4px !important;       /* Буквы едва заметно раздвигаются еще шире */
}

/* 5. Акцентный цвет розового золота для страницы, где мы сейчас находимся */
#main-menu li:not(.social) a.active,
#main-menu li:not(.social) a.services {
    color: #E5BAA2 !important;            /* Нежный блик розового золота */
    font-weight: 400 !important;
}
/* ===============================
   НЕЗАВИСИМАЯ ИНТЕРАКТИВНАЯ КАРТА
   =============================== */

.ds-map-responsive {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 320px !important;
    min-height: 320px !important;
    width: 100% !important;
    overflow: hidden !important;
    border-radius: 4px !important;
    border: 1px solid rgba(244, 192, 157, 0.2) !important;
    transition: border-color 0.3s ease !important;
}


#yandex-local-map {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    height: 320px !important;
}

.ds-directions-btn {
    display: block !important;
    margin-top: 15px !important;
    color: #f4c09d !important; /* Базовый розовато-бежевый цвет */
    text-align: center !important;
    font-weight: normal !important;
    text-decoration: none !important;
    /* Добавляем плавный переход для изменения цвета */
    transition: color 0.3s ease !important; 
        /* НАСТРОЙКА РАЗМЕРА ШРИФТА (измените число под себя) */
    font-size: 18px !important; 
}

/* Эффект подсветки при наведении */
.ds-directions-btn:hover {
    color: #fefefe !important; /* Вместо затухания текст плавно загорается белым цветом */
    opacity: 1 !important;     /* Гарантируем 100% яркость без прозрачности */
}

/* Плавное проявление стрелочки из прозрачности (для Главной страницы) */
@keyframes fadeInArrow {
    to {
        opacity: 1;
    }
}

/* Эффект деликатного покачивания и люксовой яркости стрелочки */
.luxury-float {
    animation: luxuryFloatBounce 2.5s infinite ease-in-out !important;
    /* Мягкое белое свечение по контуру, чтобы стрелочка была сочной и контрастной на темном фоне */
    filter: drop-shadow(0 0 12px rgba(255, 255, 255, 0.85)) brightness(1.5) !important;
    transition: filter 0.3s ease !important;
}

/* При наведении мышки стрелочка подсвечивается еще ярче */
.luxury-float:hover {
    filter: drop-shadow(0 0 15px rgba(255, 255, 255, 0.9)) brightness(1.4) !important;
}

/* Анимация мягкого смещения стрелочки вниз на 10 пикселей */
@keyframes luxuryFloatBounce {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
}

/* ==========================================================================
   АДАПТИВНАЯ ШАПКА ДЛЯ МАЛЕНЬКИХ ЭКРАНОВ (IDEAL BRAND)
   Слоган, название IDEAL и логотип раньше были в ряд фиксированного
   размера (px) и на узких экранах (iPhone) уезжали за границу экрана.
   Теперь размеры плавно уменьшаются пропорционально ширине экрана
   (clamp), не вылезая за пределы видимой области.
   ========================================================================== */
.menu-bar {
    padding-left: 12px !important;
    padding-right: 12px !important;
    gap: 14px !important;
}
.menu-bar > div[style*="gap: 20px"] {
    gap: clamp(4px, 1.5vw, 20px) !important;
    min-width: 0;
    flex-shrink: 1;
}
.brand-slogan {
    font-size: clamp(4.5px, 1.75vw, 11px) !important;
    letter-spacing: clamp(0.1px, 0.2vw, 1.5px) !important;
    white-space: nowrap !important;
    flex-shrink: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}
.brand-name {
    font-size: clamp(12px, 4.5vw, 20px) !important;
    letter-spacing: clamp(1px, 1.2vw, 5px) !important;
    flex-shrink: 0;
}
.logo-wrapper {
    width: clamp(22px, 6vw, 34px) !important;
    height: clamp(22px, 6vw, 34px) !important;
    flex-shrink: 0;
}

/* ==========================================================================
   ЛАЙТБОКС ГАЛЕРЕИ ПОРТФОЛИО — полноэкранный просмотр фото с перелистыванием
   ========================================================================== */
.pg-lightbox {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: #0b0c0e;
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
}
.pg-lightbox.pg-lightbox-open {
    display: flex;
}
.pg-lightbox-stage {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    touch-action: none;
}
.pg-lightbox-media {
    max-width: 92vw;
    max-height: 90vh;
    object-fit: contain;
    -webkit-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
    -moz-user-drag: none;
    -o-user-drag: none;
    user-drag: none;
    transition: transform .05s linear;
    touch-action: none;
}
.pg-lightbox-stage { position: relative; }
.pg-layer {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity .4s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.pg-layer.pg-current { opacity: 1; }
video.pg-lightbox-media {
    touch-action: auto;
}
.pg-lightbox-close,
.pg-lightbox-prev,
.pg-lightbox-next {
    position: absolute;
    background: transparent;
    border: none;
    color: #E5BAA2;
    cursor: pointer;
    z-index: 2;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-tap-highlight-color: transparent;
}
.pg-lightbox-close {
    top: 18px;
    right: 24px;
    font-size: 36px;
    line-height: 1;
}
.pg-lightbox-prev,
.pg-lightbox-next {
    top: 50%;
    margin-top: -40px;
    font-size: 48px;
    padding: 10px 16px;
}
.pg-lightbox-close,
.pg-lightbox-prev,
.pg-lightbox-next,
.pg-lightbox-close:hover, .pg-lightbox-close:focus, .pg-lightbox-close:active,
.pg-lightbox-prev:hover, .pg-lightbox-prev:focus, .pg-lightbox-prev:active,
.pg-lightbox-next:hover, .pg-lightbox-next:focus, .pg-lightbox-next:active {
    background: none !important;
    box-shadow: none !important;
    outline: none !important;
    border-radius: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.pg-lightbox-prev { left: 8px; }
.pg-lightbox-next { right: 8px; }
.pg-lightbox-counter {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    color: #cacaca;
    font-size: 13px;
    letter-spacing: 1px;
}
@media screen and (max-width: 639px) {
    .pg-lightbox-prev, .pg-lightbox-next {
        font-size: 34px;
        padding: 8px 10px;
    }
    .pg-lightbox-close {
        top: 12px;
        right: 14px;
        font-size: 30px;
    }
}

/* ==========================================================================
   РАЗДЕЛ «УСЛУГИ» — расширенный контейнер на больших экранах (в стиле
   референсного сайта Delik) и премиальный шрифт заголовков с поддержкой
   кириллицы (Cormorant Garamond — контрастный, элегантный serif, похожий
   по духу на шрифт заголовков Delik, которые сами используют латиницу
   без кириллицы).
   ========================================================================== */
@media screen and (min-width: 1400px) {
    #services-wide-container {
        max-width: 1600px;
    }
}
@media screen and (min-width: 1800px) {
    #services-wide-container {
        max-width: 1800px;
    }
}

#services-wide-container h3 {
    font-family: 'Caveat', 'Marck Script', cursive !important;
}
#services-wide-container h2 {
    font-weight: 300 !important;
    font-size: 42px !important;
}
#services-wide-container h3 {
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    text-transform: none !important;
    font-size: 42px !important;
    line-height: 1.25 !important;
}


@media screen and (max-width:39.9375em) {
    #services-wide-container h3 {
        font-size: 34px !important
    }
}

/* Рукописные заголовки страниц «Философия» и «Расчёт смет» (Caveat) */
.script-title {
    font-family: 'Caveat', 'Marck Script', cursive !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-size: 64px !important;
    line-height: 1.2 !important;
}

.script-title--sub {
    font-size: 40px !important;
}

#services-wide-container h2.script-title {
    font-weight: 400 !important;
    font-size: 64px !important;
}

@media screen and (max-width:39.9375em) {
    .script-title,
    #services-wide-container h2.script-title {
        font-size: 48px !important
    }

    .script-title--sub {
        font-size: 32px !important
    }
}

/* Команда: должность скрыта под шторкой и выезжает при наведении (на телефоне видна всегда — app.css).
   max-height вместо фиксированных 30px — длинная должность в две строки не обрезается */
@media screen and (min-width: 40em) {
    .team-grid .member .member-details h6 {
        overflow: hidden;
        opacity: 0;
        height: auto;
        max-height: 0;
    }
    .team-grid .member:hover .member-details h6 {
        opacity: 1;
        height: auto;
        max-height: 5em;
        padding-bottom: 6px;
    }
}
