html {
    -webkit-text-size-adjust: 100%;
    line-height: 1.15
}

body {
    margin: 0
}

main {
    display: block
}

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

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

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

a {
    background-color: #0000
}

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

b,strong {
    font-weight: bolder
}

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

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

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

button,input {
    overflow: visible
}

button,select {
    text-transform: none
}

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

button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

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

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

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

button:-moz-focusring {
    outline: 1px dotted buttontext
}

[type=button]:-moz-focusring {
    outline: 1px dotted buttontext
}

[type=reset]:-moz-focusring {
    outline: 1px dotted buttontext
}

[type=submit]:-moz-focusring {
    outline: 1px dotted buttontext
}

fieldset {
    padding: .35em .75em .625em
}

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

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

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

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

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

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

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

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

details {
    display: block
}

summary {
    display: list-item
}

template,[hidden] {
    display: none
}

:root {
    --font-family-serif: "Starling","Times New Roman",serif;
    --color-grey: #a6a6a6;
    --color-grey-light: #eee;
    --gutter: 30px;
    --margin-x-small: 20px;
    --margin-small: 40px;
    --margin-mid: 60px;
    --margin-large: 80px;
    --margin-x-large: 120px;
    --margin-xx-large: 210px;
    --sm-gutter: 10px;
    --sm-margin-x-small: 15px;
    --sm-margin-small: 20px;
    --sm-margin-mid: 30px;
    --sm-margin-large: 70px;
    --sm-margin-x-large: 150px;
    --lg-font-size-large: 22px;
    --lg-font-size-body: 18px;
    --lg-font-size-caption: 15px;
    --font-size-large: 19px;
    --font-size-body: 15px;
    --font-size-caption: 12px;
    --md-font-size-large: 19px;
    --md-font-size-body: 15px;
    --md-font-size-caption: 12px;
    --sm-font-size-large: 19px;
    --sm-font-size-body: 14px;
    --sm-font-size-caption: 12px;
    --line-height-body: 1.4;
    --header-height: 90px;
    --sm-header-height: 45px;
    --square-frame: calc((100vw - (var(--gutter)*2) - var(--margin-large))/2);
    --page-width: 36.8em;
    --wide-page-width: 44.6667em
}

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

ul {
    margin: 0;
    padding: 0;
    list-style: none
}

button,input {
    appearance: none;
    line-height: inherit;
    color: inherit;
    background: 0 0;
    border: 0;
    border-radius: 0;
    padding: 0;
    font-family: inherit
}

button:focus {
    outline: 0
}

button:focus-visible {
    outline: 5px auto highlight;
    outline: 5px auto -webkit-focus-ring-color
}

figure {
    margin: 0
}

body {
    font-family: Starling,Times New Roman,serif;
    font-family: var(--font-family-serif);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-display: swap;
    font-size: 14px;
    font-size: var(--sm-font-size-body);
    line-height: 1.4;
    line-height: var(--line-height-body);
    font-feature-settings: "onum";
    font-variant-numeric: oldstyle-nums;
    color: #000
}

@media (min-width: 375px) {
    body {
        font-size:15px;
        font-size: var(--md-font-size-body)
    }
}

@media (min-width: 1280px) {
    body {
        font-size:15px;
        font-size: var(--font-size-body)
    }
}

@media (min-width: 1920.02px) {
    body {
        font-size:18px;
        font-size: var(--lg-font-size-body)
    }
}

h1,h2,h3,h4,h6 {
    font-weight: inherit;
    font-size: inherit;
    margin: 0
}

p {
    margin: 0
}

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

.t-body {
    font-family: Starling,Times New Roman,serif;
    font-family: var(--font-family-serif);
    font-size: 14px;
    font-size: var(--sm-font-size-body);
    line-height: 1.4;
    line-height: var(--line-height-body);
    font-feature-settings: "onum";
    font-variant-numeric: oldstyle-nums
}

@media (min-width: 375px) {
    .t-body {
        font-size:15px;
        font-size: var(--md-font-size-body)
    }
}

@media (min-width: 1280px) {
    .t-body {
        font-size:15px;
        font-size: var(--font-size-body)
    }
}

@media (min-width: 1920.02px) {
    .t-body {
        font-size:18px;
        font-size: var(--lg-font-size-body)
    }
}

.t-large {
    font-size: 19px;
    font-size: var(--sm-font-size-large);
    line-height: 1.2
}

@media (min-width: 375px) {
    .t-large {
        font-size:19px;
        font-size: var(--md-font-size-large)
    }
}

@media (min-width: 1280px) {
    .t-large {
        font-size:19px;
        font-size: var(--font-size-large)
    }
}

@media (min-width: 1920.02px) {
    .t-large {
        font-size:22px;
        font-size: var(--lg-font-size-large)
    }
}

.t-caption {
    font-size: 12px;
    font-size: var(--sm-font-size-caption)
}

@media (min-width: 375px) {
    .t-caption {
        font-size:12px;
        font-size: var(--md-font-size-caption)
    }
}

@media (min-width: 1280px) {
    .t-caption {
        font-size:12px;
        font-size: var(--font-size-caption)
    }
}

@media (min-width: 1920.02px) {
    .t-caption {
        font-size:15px;
        font-size: var(--lg-font-size-caption)
    }
}

.t-grey {
    color: var(--color-grey)
}

@media (min-width: 1024px) {
    .cols {
        display:flex
    }
}

.cols-center {
    justify-content: center
}

.cols-vert {
    flex-direction: column
}

.cols-wrap {
    flex-wrap: wrap
}

.cols-reverse {
    flex-direction: row-reverse
}

@media (min-width: 1024px) {
    .cols-negative {
        margin:0 -30px;
        margin: 0 calc(var(--gutter)*-1)
    }

    .col-1 {
        width: 8.33333%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-1 {
        margin-left: 8.33333%
    }

    .col-2 {
        width: 16.6667%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-2 {
        margin-left: 16.6667%
    }

    .col-3 {
        width: 25%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-3 {
        margin-left: 25%
    }

    .col-4 {
        width: 33.3333%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-4 {
        margin-left: 33.3333%
    }

    .col-5 {
        width: 41.6667%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-5 {
        margin-left: 41.6667%
    }

    .col-6 {
        width: 50%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-6 {
        margin-left: 50%
    }

    .col-7 {
        width: 58.3333%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-7 {
        margin-left: 58.3333%
    }

    .col-8 {
        width: 66.6667%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-8 {
        margin-left: 66.6667%
    }

    .col-9 {
        width: 75%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-9 {
        margin-left: 75%
    }

    .col-10 {
        width: 83.3333%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-10 {
        margin-left: 83.3333%
    }

    .col-11 {
        width: 91.6667%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-11 {
        margin-left: 91.6667%
    }

    .col-12 {
        width: 100%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .push-12 {
        margin-left: 100%
    }
}

@media (min-width: 1024px) and (max-width:1279.98px) {
    .md\:col-1 {
        width:8.33333%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-1 {
        margin-left: 8.33333%
    }

    .md\:col-2 {
        width: 16.6667%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-2 {
        margin-left: 16.6667%
    }

    .md\:col-3 {
        width: 25%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-3 {
        margin-left: 25%
    }

    .md\:col-4 {
        width: 33.3333%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-4 {
        margin-left: 33.3333%
    }

    .md\:col-5 {
        width: 41.6667%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-5 {
        margin-left: 41.6667%
    }

    .md\:col-6 {
        width: 50%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-6 {
        margin-left: 50%
    }

    .md\:col-7 {
        width: 58.3333%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-7 {
        margin-left: 58.3333%
    }

    .md\:col-8 {
        width: 66.6667%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-8 {
        margin-left: 66.6667%
    }

    .md\:col-9 {
        width: 75%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-9 {
        margin-left: 75%
    }

    .md\:col-10 {
        width: 83.3333%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-10 {
        margin-left: 83.3333%
    }

    .md\:col-11 {
        width: 91.6667%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-11 {
        margin-left: 91.6667%
    }

    .md\:col-12 {
        width: 100%;
        padding: 0 30px;
        padding: 0 var(--gutter);
        flex: none
    }

    .md\:push-12 {
        margin-left: 100%
    }
}

@media (max-width: 1023.98px) {
    .sm\:cols {
        margin:0 -5px;
        margin: 0 calc(var(--sm-gutter)*-.5);
        display: flex
    }

    .sm\:col-1 {
        width: 16.6667%;
        padding: 0 5px;
        padding: 0 calc(var(--sm-gutter)*.5);
        flex: none
    }

    .sm\:push-1 {
        margin-left: 16.6667%
    }

    .sm\:col-2 {
        width: 33.3333%;
        padding: 0 5px;
        padding: 0 calc(var(--sm-gutter)*.5);
        flex: none
    }

    .sm\:push-2 {
        margin-left: 33.3333%
    }

    .sm\:col-3 {
        width: 50%;
        padding: 0 5px;
        padding: 0 calc(var(--sm-gutter)*.5);
        flex: none
    }

    .sm\:push-3 {
        margin-left: 50%
    }

    .sm\:col-4 {
        width: 66.6667%;
        padding: 0 5px;
        padding: 0 calc(var(--sm-gutter)*.5);
        flex: none
    }

    .sm\:push-4 {
        margin-left: 66.6667%
    }

    .sm\:col-5 {
        width: 83.3333%;
        padding: 0 5px;
        padding: 0 calc(var(--sm-gutter)*.5);
        flex: none
    }

    .sm\:push-5 {
        margin-left: 83.3333%
    }

    .sm\:col-6 {
        width: 100%;
        padding: 0 5px;
        padding: 0 calc(var(--sm-gutter)*.5);
        flex: none
    }

    .sm\:push-6 {
        margin-left: 100%
    }
}

.img-block {
    width: 100%;
    height: auto;
    display: block
}

.img-cover {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

.img-contain {
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

html,body {
    overflow-anchor: none
}

body {
    background-color: #fff
}

.site {
    min-height: 100vh;
    padding-top: 60px;
    padding-top: calc(var(--sm-header-height) + var(--sm-margin-x-small));
    flex-direction: column;
    display: flex
}

@media (min-width: 1024px) {
    .site {
        padding-top: 0;
        padding-top: 0;
    }

    .site-with-header {
        padding-top: 149px
    }
}

@media (min-width: 1920.02px) {
    .site-with-header {
        padding-top:163px
    }
}

.content {
    padding: 0 10px;
    padding: 0 var(--sm-gutter);
    flex: 1 0 auto
}

@media (min-width: 1024px) {
    .content {
        padding:0 30px;
        padding: 0 var(--gutter)
    }
}

.skip-to-content-link {
    z-index: 1000;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
    background: #fff;
    border: 2px solid #000;
    border-radius: 0;
    width: 1px;
    height: 1px;
    padding: 8px;
    position: absolute;
    top: 5px;
    left: 5px;
    overflow: hidden
}

.skip-to-content-link:focus {
    clip: auto;
    clip-path: none;
    width: auto;
    height: auto;
    overflow: visible
}

.visually-hidden {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
    width: 1px;
    height: 1px;
    position: absolute;
    overflow: hidden
}
