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

html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
    -webkit-overflow-scrolling: touch;
}
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}

html {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

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


/* clearfix */
.cf::before,
.cf::after,
.container::before,
.container::after {
    content: " ";
    clear: both;
    display: block;
    font-size: 0;
    height: 0;
    visibility: hidden;
}


/* standard */
html,
body{
    height: 100%;
    width: 100%;
}

body { background: #fff; }

.bg-major { background-color: #fff!important; }

body.fixed,
body.fixed > .page-wrapper {
    overflow: hidden;
    position: fixed;
}

pre[class*="language-"] {
    font-size: 12px;
}

hr,
.hr {
    background: #ccc;
    display: block;
    border: none;
    font-size: 0;
    height: 1px;
    line-height: 0;
    margin: 0;
    overflow: hidden;
}

.hr-spacer { margin: 3rem 0; }

.hr-h {
    height: 2px;
    margin-top: 1rem;
    margin-bottom: 2rem;
    width: 4rem;
}
.hr-h.align-c {
    margin-left: auto;
    margin-right: auto;
}

.hr-content {
    display: block;
    border: none;
    border-top: 1px solid #ccc;
    margin: 3rem 0;
    position: relative;
}
.hr-content > span {
    background-color: #f5f5f5;
    color: #999;
    padding: 0 1em;
    position: absolute;
        top: 50%;
        left: 50%;
    transform: translate(-50%, -50%);
}
.hr-content.major > span { background-color: #fff; }


.full-height,
.full-height-vh { height: 100%!important; }
.full-height-vh { height: 100vh!important; }
.full-width { width: 100%!important; }

.auto-width,
.width-auto {
    min-width: 1%!important;
    width: auto!important;
}


.overflow-hidden { overflow: hidden; }
.overflow-x-hidden { overflow-x: hidden; }
.overflow-y-hidden { overflow-y: hidden; }

.is-rounded { border-radius: .3rem; }

.clickable { cursor: pointer!important; }
.moveable { cursor: move!important; }
.hidden { display: none!important; }


.pull-r { float: right; }
.pull-l { float: left; }

.align-c { text-align: center!important }
.align-r { text-align: right!important }
.align-l { text-align: left!important }

@media (max-width: 767px) {
    .pull-l-xs { float: left; }
    .pull-r-xs { float: right; }

    .align-c-xs { text-align: center!important; }
    .align-r-xs { text-align: right!important }
    .align-l-xs { text-align: left!important }
}
@media (min-width: 768px) and (max-width: 991px) {
    .pull-l-s { float: left; }
    .pull-r-s { float: right; }

    .align-c-s { text-align: center!important; }
    .align-r-s { text-align: right!important }
    .align-l-s { text-align: left!important }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .pull-l-m { float: left; }
    .pull-r-m { float: right; }

    .align-c-m { text-align: center!important; }
    .align-r-m { text-align: right!important }
    .align-l-m { text-align: left!important }
}
@media (min-width: 1200px) and (max-width: 1619px) {
    .pull-l-l { float: left; }
    .pull-r-l { float: right; }

    .align-c-l { text-align: center!important; }
    .align-r-l { text-align: right!important }
    .align-l-l { text-align: left!important }
}

@media (min-width: 768px) {
    .pull-l-s-up { float: left; }
    .pull-r-s-up { float: right; }

    .align-c-s-up { text-align: center!important; }
    .align-r-s-up { text-align: right!important }
    .align-l-s-up { text-align: left!important }
}
@media (min-width: 992px) {
    .pull-l-m-up { float: left; }
    .pull-r-m-up { float: right; }

    .align-c-m-up { text-align: center!important; }
    .align-r-m-up { text-align: right!important }
    .align-l-m-up { text-align: left!important }
}
@media (min-width: 1200px) {
    .pull-l-l-up { float: left; }
    .pull-r-l-up { float: right; }

    .align-c-l-up { text-align: center!important; }
    .align-r-l-up { text-align: right!important }
    .align-l-l-up { text-align: left!important }
}

@media (min-width: 1620px) {
    .pull-l-xl { float: left; }
    .pull-r-xl { float: right; }

    .align-c-xl { text-align: center!important; }
    .align-r-xl { text-align: right!important }
    .align-l-xl { text-align: left!important }
}


.pull-t,
.valign-t { vertical-align: top!important }
.valign-m,
tr.valign-m > th,
tr.valign-m > td  { vertical-align: middle!important }
.pull-b,
.valign-b,
tr.valign-b > th,
tr.valign-b > td  { vertical-align: bottom!important }


.m-0 { margin: 0!important; }

.my-1,
.mt-1 { margin-top: 1.5rem!important; }
.my-2,
.mt-2 { margin-top: 3rem!important; }
.my-3,
.mt-3 { margin-top: 4.5rem!important; }
.my-4,
.mt-4 { margin-top: 6rem!important; }

.mx-1,
.mr-1 { margin-right: 1.5rem!important; }
.mx-2,
.mr-2 { margin-right: 3rem!important; }
.mx-3,
.mr-3 { margin-right: 4.5rem!important; }
.mx-4,
.mr-4 { margin-right: 6rem!important; }

.my-1,
.mb-1 { margin-bottom: 1.5rem!important; }
.my-2,
.mb-2 { margin-bottom: 3rem!important; }
.my-3,
.mb-3 { margin-bottom: 4.5rem!important; }
.my-4,
.mb-4 { margin-bottom: 6rem!important; }

.mx-1,
.ml-1 { margin-left: 1.5rem!important; }
.mx-2,
.ml-2 { margin-left: 3rem!important; }
.mx-3,
.ml-3 { margin-left: 4.5rem!important; }
.mx-4,
.ml-4 { margin-left: 6rem!important; }

.my-0,
.mt-0 { margin-top: 0!important; }
.mx-0,
.mr-0 { margin-right: 0!important; }
.my-0,
.mb-0 { margin-bottom: 0!important; }
.mx-0,
.ml-0 { margin-left: 0!important; }

.my-auto,
.mt-auto { margin-top: auto!important; }
.mx-auto,
.mr-auto { margin-right: auto!important; }
.my-auto,
.mb-auto { margin-bottom: auto!important; }
.mx-auto,
.ml-auto { margin-left: auto!important; }


.pb-1 { padding-bottom: 1.5rem!important; }
.pb-2 { padding-bottom: 3rem!important; }
.pb-3 { padding-bottom: 4.5rem!important; }
.pb-4 { padding-bottom: 6rem!important; }
.pt-1 { padding-top: 1.5rem!important; }
.pt-2 { padding-top: 3rem!important; }
.pt-3 { padding-top: 4.5rem!important; }
.pt-4 { padding-top: 6rem!important; }
.pr-1 { padding-right: 1.5rem!important; }
.pr-2 { padding-right: 3rem!important; }
.pr-3 { padding-right: 4.5rem!important; }
.pr-4 { padding-right: 6rem!important; }
.pl-1 { padding-left: 1.5rem!important; }
.pl-2 { padding-left: 3rem!important; }
.pl-3 { padding-left: 4.5rem!important; }
.pl-4 { padding-left: 6rem!important; }
.pt-0 { padding-top: 0!important; }
.pr-0 { padding-right: 0!important; }
.pb-0 { padding-bottom: 0!important; }
.pl-0 { padding-left: 0!important; }


.border-t { border-top: 1px solid #ccc!important; }
.border-r { border-right: 1px solid #ccc!important; }
.border-b { border-bottom: 1px solid #ccc!important; }
.border-l { border-left: 1px solid #ccc!important; }

.border-t-0 { border-top: none!important; }
.border-r-0 { border-right: none!important; }
.border-b-0 { border-bottom: none!important; }
.border-l-0 { border-left: none!important; }
.border-0 { border: none!important; }




/* typo */
html { font-size: 12px; }

@media (min-width: 768px) {
    html { font-size: 14px; }
}

body, input, button, select, textarea {
    color: #666;
    font: normal normal 400 1em/1.5em Arial, Helvetica, sans-serif;
    font-size: 1rem;
}


a {
    color: #24ad9c;
    outline: 0;
    text-decoration: none;
}
a:hover { text-decoration: underline; }
a:active,
a:hover { outline: 0; }

a.plain,
a.plain:hover,
.text-link {
    color: currentColor;
    text-decoration: none;
}
.text-link { text-decoration: underline; }

.break-word,
a[href^="http"] {
    word-break: break-all;
    word-wrap: break-word;
}

a.external::after {
    background: url(/images/main/content/external.svg) no-repeat center center;
    content: '';
    display: inline-block;
    height: 8px;
    line-height: 1px;
    margin-left: 4px;
    overflow: hidden;
    vertical-align: baseline;
    width: 8px;
}


h1,.h1,
h2,.h2,
h3,.h3,
h4,.h4,
h5,.h5,
h6,.h6 {
    color: #333;
    font-weight: 700;
    line-height: 1.25em;
    margin: 2em 0 .5em;
}

h1,.h1 { font-size: 1.286em; }
h2,.h2 { font-size: 1.143em; }
h3,.h3 { font-size: 1.071em; }
h4,.h4 { font-size: 1em; }
h5,.h5 { font-size: 1em; }
h6,.h6 { font-size: .857em; }

.fs-h1 { font-size: 1.286rem!important; }
.fs-h2 { font-size: 1.143rem!important; }
.fs-h3 { font-size: 1.071rem!important; }
.fs-h4 { font-size: 1rem!important; }
.fs-h5 { font-size: 1rem!important; }
.fs-h6 { font-size: .857rem!important; }

@media (min-width: 768px) {
    h1,.h1,
    h2,.h2,
    h3,.h3 { font-weight: 400; }

    h1,.h1 { font-size: 1.857em; }
    h2,.h2 { font-size: 1.571em; }
    h3,.h3 { font-size: 1.286em; }
    h4,.h4 { font-size: 1.143em; }

    .fs-h1 { font-size: 1.857rem!important; }
    .fs-h2 { font-size: 1.571rem!important; }
    .fs-h3 { font-size: 1.286rem!important; }
    .fs-h4 { font-size: 1.143rem!important; }
}

.fs-h1,
.fs-h2,
.fs-h3,
.fs-h4,
.fs-h5,
.fs-h6 { line-height: 1.25em; }

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child,
.h1:first-child,
.h2:first-child,
.h3:first-child,
.h4:first-child,
.h5:first-child,
.h6:first-child { margin-top: 0; }

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
.h1:last-child,
.h2:last-child,
.h3:last-child,
.h4:last-child,
.h5:last-child,
.h6:last-child { margin-bottom: 0; }


p {
    font-size: 1em;
    font-weight: 400;
    line-height: 1.5;
    margin: 0 0 1.5em;
}

p:last-child { margin-bottom: 0!important; }

@media (min-width: 768px) {
    p.lead { font-size: 1.286em; }
}


em.text-muted,
.text-italic { font-style: italic!important; }

.text-bright { color: #fff!important;  }
.text-normal { color: #666!important; }
.text-muted { color: #999!important; }
.text-success { color: #268044!important; }
.text-info { color: #0098d9!important; }
.text-error,
.text-warning { color: #d9414e!important; }

.text-w-0 { font-weight: 400!important; }
.text-w-1 { font-weight: 500!important; }
.text-w-2 { font-weight: 700!important; }
strong   { font-weight: 700; }

.text-uppercase { text-transform: uppercase; }
.text-strike { text-decoration: line-through!important; }
.text-nowrap { white-space: nowrap!important; }

.text-hyphens {
-webkit-hyphens: auto;
   -moz-hyphens: auto;
    -ms-hyphens: auto;
        hyphens: auto;
}

.text-wrapper {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    vertical-align: bottom;
    white-space: nowrap;
}


.ul,
.ol,
.ol-alpha,
.ul-check { margin: 0 0 1em 1em; }

.ul:first-child,
.ol:first-child,
.ol-alpha:first-child,
.ul-check:first-child { margin-top: -.5em; }
.ul:last-child,
.ol:last-child,
.ol-alpha:last-child,
.ul-check:last-child { margin-bottom: 0; }

.ul > li,
.ol > li,
.ol-alpha > li,
.ul-check > li { margin: .5em 0 0 1em; }

.ul-check.ml-0 > li,
.ul-check.m-0 > li { margin-left: 0; }

.ul > li { list-style: disc outside; }
.ol > li { list-style: decimal outside; }
.ol-alpha > li { list-style-type: lower-alpha; }

.ul-check > li {
    position: relative;
    padding: 0 0 0 1.5em;
}
.ul-check > li:not(.plain)::before {
    background: url(/images/main/content/check.png) no-repeat center center;
    background-size: 100% auto;
    content: '';
    display: block;
    font-size: 1em;
    height: 1em;
    line-height: 1px;
    overflow: hidden;
    position: absolute;
        top: .25em;
        left: 0;
    width: 1em;
}

.ul-check.lead > li {
    font-size: 1.286em;
    line-height: 1.444em;
}




/* flex helper */
.flex,
.flex-col,
.flex-row {
    display: -webkit-flex!important;
    display: flex!important;
}

.flex-col {
    -webkit-flex-direction: column!important;
    flex-direction: column!important;
}

@media (max-width: 767px) {
    .flex-col-xs {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: column!important;
        flex-direction: column!important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .flex-col-s {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: column!important;
        flex-direction: column!important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .flex-col-m {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: column!important;
        flex-direction: column!important;
    }
}

@media (min-width: 1200px) and (max-width: 1619px) {
    .flex-col-l {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: column!important;
        flex-direction: column!important;
    }
}

@media (min-width: 1620px) {
    .flex-col-xl {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: column!important;
        flex-direction: column!important;
    }
}

@media (max-width: 767px) {
    .flex-xs,
    .flex-row-xs {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: row!important;
        flex-direction: row!important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .flex-s,
    .flex-row-s {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: row!important;
        flex-direction: row!important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .flex-m,
    .flex-row-m {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: row!important;
        flex-direction: row!important;
    }
}

@media (min-width: 1200px) and (max-width: 1619px) {
    .flex-l,
    .flex-row-l {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: row!important;
        flex-direction: row!important;
    }
}

@media (min-width: 1620px) {
    .flex-xl,
    .flex-row-xl {
        display: -webkit-flex!important;
        display: flex!important;
        -webkit-flex-direction: row!important;
        flex-direction: row!important;
    }
}

.flex-wrap {
    -webkit-flex-wrap: wrap!important;
    flex-wrap: wrap!important;
}

.flex-nowrap {
    -webkit-flex-wrap: nowrap!important;
    flex-wrap: nowrap!important;
}

.flex-auto {
    -webkit-flex-grow: 1!important;
    flex-grow: 1!important;
    -webkit-flex-shrink: 1!important;
    flex-shrink: 1!important;
    -webkit-flex-basis: auto!important;
    flex-basis: auto!important;
}

.flex-basis-0 {
    -webkit-flex-basis: 0px!important;
    flex-basis: 0px!important;
}

.flex-basis-100 {
    -webkit-flex-basis: 100%!important;
    flex-basis: 100%!important;
}

.flex-grow {
    -webkit-flex-grow: 1!important;
    flex-grow: 1!important;
}

.flex-grow-0 {
    -webkit-flex-grow: 0!important;
    flex-grow: 0!important;
}

.flex-shrink {
    -webkit-flex-shrink: 1!important;
    flex-shrink: 1!important;
}

.flex-shrink-0 {
    -webkit-flex-shrink: 0!important;
    flex-shrink: 0!important;
}


.flex-align-start {
    -webkit-justify-content: flex-start!important;
    justify-content: flex-start!important;
}

.flex-align-center {
    -webkit-justify-content: center!important;
    justify-content: center!important;
}

.flex-align-end {
    -webkit-justify-content: flex-end!important;
    justify-content: flex-end!important;
}

.flex-align-justify {
    -webkit-justify-content: space-between!important;
    justify-content: space-between!important;
}

.flex-align-spaced {
    -webkit-justify-content: space-around!important;
    justify-content: space-around!important;
}


.flex-align-top {
    -webkit-align-items: flex-start!important;
    align-items: flex-start!important;
}

.flex-align-middle {
    -webkit-align-items: center!important;
    align-items: center!important;
}

.flex-align-bottom {
    -webkit-align-items: flex-end!important;
    align-items: flex-end!important;
}

.flex-stretch {
    -webkit-align-items: stretch!important;
    align-items: stretch!important;
}




/* grid */
.grid,
.form--grid {
    font-size: 0;
    line-height: 0;
    margin: -.5rem;
    text-align: left;
}
.grid + .grid { margin-top: -1rem; }

@media (min-width: 768px) {
    .grid:not(.condensed) { margin: -1rem; }
    .grid:not(.condensed) + .grid:not(.condensed) { margin-top: -2rem; }
}

.grid.flex {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.grid.flex > [class*="grid-"] {
    display: -webkit-flex;
    display: flex;
}

.grid.flex > [class*="grid-"] > * {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: auto;
    flex-basis: auto;
    width: 100%;
}
.grid.flex > [class*="grid-"] > .grid { width: auto; }

.grid.flex > .grid-col-flex {
    -webkit-flex-grow: 1!important;
    flex-grow: 1!important;
    -webkit-flex-shrink: 1!important;
    flex-shrink: 1!important;
    -webkit-flex-basis: 0px!important;
    flex-basis: 0px!important;
}

[class*="grid-col"],
[class*="grid-xs-col"],
[class*="grid-s-col"],
[class*="grid-m-col"],
[class*="grid-l-col"] {
    display: inline-block;
    font-size: 1rem;
    line-height: 1.5em;
    min-height: 1px;
    padding: .5rem;
    position: relative;
    vertical-align: top;
}

@media (min-width: 768px) {
    .grid:not(.condensed) > [class*="grid-col"],
    .grid:not(.condensed) > [class*="grid-xs-col"],
    .grid:not(.condensed) > [class*="grid-s-col"],
    .grid:not(.condensed) > [class*="grid-m-col"],
    .grid:not(.condensed) > [class*="grid-l-col"] { padding: 1rem; }
}

.grid.valign-m > [class*="grid-col"],
.grid.valign-m > [class*="grid-xs-col"],
.grid.valign-m > [class*="grid-s-col"],
.grid.valign-m > [class*="grid-m-col"],
.grid.valign-m > [class*="grid-l-col"] { vertical-align: middle; }

.grid.valign-b > [class*="grid-col"],
.grid.valign-b > [class*="grid-xs-col"],
.grid.valign-b > [class*="grid-s-col"],
.grid.valign-b > [class*="grid-m-col"],
.grid.valign-b > [class*="grid-l-col"] { vertical-align: bottom; }

.width-col1,
.grid-xs-col1  { width: 4.1666%; }
.width-col2,
.grid-xs-col2  { width: 8.3333%; }
.width-col3,
.grid-xs-col3  { width: 12.5%; }
.width-col4,
.grid-xs-col4  { width: 16.6666%; }
.width-col5,
.grid-xs-col5  { width: 20.8333%; }
.width-col6,
.grid-xs-col6  { width: 25%; }
.width-col7,
.grid-xs-col7  { width: 29.1666%; }
.width-col8,
.grid-xs-col8  { width: 33.3333%; }
.width-col9,
.grid-xs-col9  { width: 37.5%; }
.width-col10,
.grid-xs-col10 { width: 41.6666%; }
.width-col11,
.grid-xs-col11 { width: 45.8333%; }
.width-col12,
.grid-xs-col12 { width: 50%; }
.width-col13,
.grid-xs-col13 { width: 54.1666%; }
.width-col14,
.grid-xs-col14 { width: 58.3333%; }
.width-col15,
.grid-xs-col15 { width: 62.5%; }
.width-col16,
.grid-xs-col16 { width: 66.6666%; }
.width-col17,
.grid-xs-col17 { width: 70.8333%; }
.width-col18,
.grid-xs-col18 { width: 75%; }
.width-col19,
.grid-xs-col19 { width: 79.1666%; }
.width-col20,
.grid-xs-col20 { width: 83.3333%; }
.width-col21,
.grid-xs-col21 { width: 87.5%; }
.width-col22,
.grid-xs-col22 { width: 91.6666%; }
.width-col23,
.grid-xs-col23 { width: 95.8333%; }
.width-col24,
.grid-xs-col24 { width: 100%; }

.grid-xs-offset0   { margin-left: 0; }
.grid-xs-offset1   { margin-left: 4.1666% }
.grid-xs-offset2   { margin-left: 8.3333%; }
.grid-xs-offset3   { margin-left: 12.5%; }
.grid-xs-offset4   { margin-left: 16.6666%; }
.grid-xs-offset5   { margin-left: 20.8333%; }
.grid-xs-offset6   { margin-left: 25%; }
.grid-xs-offset7   { margin-left: 29.1666%; }
.grid-xs-offset8   { margin-left: 33.3333%; }
.grid-xs-offset9   { margin-left: 37.5%; }
.grid-xs-offset10  { margin-left: 41.6666%; }
.grid-xs-offset11  { margin-left: 45.8333%; }
.grid-xs-offset12  { margin-left: 50%; }
.grid-xs-offset13  { margin-left: 54.1666%; }
.grid-xs-offset14  { margin-left: 58.3333%; }
.grid-xs-offset15  { margin-left: 62.5%; }
.grid-xs-offset16  { margin-left: 66.6666%; }
.grid-xs-offset17  { margin-left: 70.8333%; }
.grid-xs-offset18  { margin-left: 75%; }
.grid-xs-offset19  { margin-left: 79.1666%; }
.grid-xs-offset20  { margin-left: 83.3333%; }
.grid-xs-offset21  { margin-left: 87.5%; }
.grid-xs-offset22  { margin-left: 91.6666%; }
.grid-xs-offset23  { margin-left: 95.8333%; }

@media (min-width: 768px) {
    .grid-s-col1  { width: 4.1666%; }
    .grid-s-col2  { width: 8.3333%; }
    .grid-s-col3  { width: 12.5%; }
    .grid-s-col4  { width: 16.6666%; }
    .grid-s-col5  { width: 20.8333%; }
    .grid-s-col6  { width: 25%; }
    .grid-s-col7  { width: 29.1666%; }
    .grid-s-col8  { width: 33.3333%; }
    .grid-s-col9  { width: 37.5%; }
    .grid-s-col10 { width: 41.6666%; }
    .grid-s-col11 { width: 45.8333%; }
    .grid-s-col12 { width: 50%; }
    .grid-s-col13 { width: 54.1666%; }
    .grid-s-col14 { width: 58.3333%; }
    .grid-s-col15 { width: 62.5%; }
    .grid-s-col16 { width: 66.6666%; }
    .grid-s-col17 { width: 70.8333%; }
    .grid-s-col18 { width: 75%; }
    .grid-s-col19 { width: 79.1666%; }
    .grid-s-col20 { width: 83.3333%; }
    .grid-s-col21 { width: 87.5%; }
    .grid-s-col22 { width: 91.6666%; }
    .grid-s-col23 { width: 95.8333%; }
    .grid-s-col24 { width: 100%; }

    .grid-s-offset0   { margin-left: 0; }
    .grid-s-offset1   { margin-left: 4.1666%; }
    .grid-s-offset2   { margin-left: 8.3333%; }
    .grid-s-offset3   { margin-left: 12.5%; }
    .grid-s-offset4   { margin-left: 16.6666%; }
    .grid-s-offset5   { margin-left: 20.8333%; }
    .grid-s-offset6   { margin-left: 25%; }
    .grid-s-offset7   { margin-left: 29.1666%; }
    .grid-s-offset8   { margin-left: 33.3333%; }
    .grid-s-offset9   { margin-left: 37.5%; }
    .grid-s-offset10  { margin-left: 41.6666%; }
    .grid-s-offset11  { margin-left: 45.8333%; }
    .grid-s-offset12  { margin-left: 50%; }
    .grid-s-offset13  { margin-left: 54.1666%; }
    .grid-s-offset14  { margin-left: 58.3333%; }
    .grid-s-offset15  { margin-left: 62.5%; }
    .grid-s-offset16  { margin-left: 66.6666%; }
    .grid-s-offset17  { margin-left: 70.8333%; }
    .grid-s-offset18  { margin-left: 75%; }
    .grid-s-offset19  { margin-left: 79.1666%; }
    .grid-s-offset20  { margin-left: 83.3333%; }
    .grid-s-offset21  { margin-left: 87.5%; }
    .grid-s-offset22  { margin-left: 91.6666%; }
    .grid-s-offset23  { margin-left: 95.8333%; }

    .grid-s-pull0   { right: 0; }
    .grid-s-pull1   { right: 4.1666% }
    .grid-s-pull2   { right: 8.3333%; }
    .grid-s-pull3   { right: 12.5%; }
    .grid-s-pull4   { right: 16.6666%; }
    .grid-s-pull5   { right: 20.8333%; }
    .grid-s-pull6   { right: 25%; }
    .grid-s-pull7   { right: 29.1666%; }
    .grid-s-pull8   { right: 33.3333%; }
    .grid-s-pull9   { right: 37.5%; }
    .grid-s-pull10  { right: 41.6666%; }
    .grid-s-pull11  { right: 45.8333%; }
    .grid-s-pull12  { right: 50%; }
    .grid-s-pull13  { right: 54.1666%; }
    .grid-s-pull14  { right: 58.3333%; }
    .grid-s-pull15  { right: 62.5%; }
    .grid-s-pull16  { right: 66.6666%; }
    .grid-s-pull17  { right: 70.8333%; }
    .grid-s-pull18  { right: 75%; }
    .grid-s-pull19  { right: 79.1666%; }
    .grid-s-pull20  { right: 83.3333%; }
    .grid-s-pull21  { right: 87.5%; }
    .grid-s-pull22  { right: 91.6666%; }
    .grid-s-pull23  { right: 95.8333%; }

    .grid-s-push0   { left: 0; }
    .grid-s-push1   { left: 4.1666% }
    .grid-s-push2   { left: 8.3333%; }
    .grid-s-push3   { left: 12.5%; }
    .grid-s-push4   { left: 16.6666%; }
    .grid-s-push5   { left: 20.8333%; }
    .grid-s-push6   { left: 25%; }
    .grid-s-push7   { left: 29.1666%; }
    .grid-s-push8   { left: 33.3333%; }
    .grid-s-push9   { left: 37.5%; }
    .grid-s-push10  { left: 41.6666%; }
    .grid-s-push11  { left: 45.8333%; }
    .grid-s-push12  { left: 50%; }
    .grid-s-push13  { left: 54.1666%; }
    .grid-s-push14  { left: 58.3333%; }
    .grid-s-push15  { left: 62.5%; }
    .grid-s-push16  { left: 66.6666%; }
    .grid-s-push17  { left: 70.8333%; }
    .grid-s-push18  { left: 75%; }
    .grid-s-push19  { left: 79.1666%; }
    .grid-s-push20  { left: 83.3333%; }
    .grid-s-push21  { left: 87.5%; }
    .grid-s-push22  { left: 91.6666%; }
    .grid-s-push23  { left: 95.8333%; }
}

@media (min-width: 992px) {
    .grid-m-col1  { width: 4.1666%; }
    .grid-m-col2  { width: 8.3333%; }
    .grid-m-col3  { width: 12.5%; }
    .grid-m-col4  { width: 16.6666%; }
    .grid-m-col5  { width: 20.8333%; }
    .grid-m-col6  { width: 25%; }
    .grid-m-col7  { width: 29.1666%; }
    .grid-m-col8  { width: 33.3333%; }
    .grid-m-col9  { width: 37.5%; }
    .grid-m-col10 { width: 41.6666%; }
    .grid-m-col11 { width: 45.8333%; }
    .grid-m-col12 { width: 50%; }
    .grid-m-col13 { width: 54.1666%; }
    .grid-m-col14 { width: 58.3333%; }
    .grid-m-col15 { width: 62.5%; }
    .grid-m-col16 { width: 66.6666%; }
    .grid-m-col17 { width: 70.8333%; }
    .grid-m-col18 { width: 75%; }
    .grid-m-col19 { width: 79.1666%; }
    .grid-m-col20 { width: 83.3333%; }
    .grid-m-col21 { width: 87.5%; }
    .grid-m-col22 { width: 91.6666%; }
    .grid-m-col23 { width: 95.8333%; }
    .grid-m-col24 { width: 100%; }

    .grid-m-offset0   { margin-left: 0; }
    .grid-m-offset1   { margin-left: 4.1666%; }
    .grid-m-offset2   { margin-left: 8.3333%; }
    .grid-m-offset3   { margin-left: 12.5%; }
    .grid-m-offset4   { margin-left: 16.6666%; }
    .grid-m-offset5   { margin-left: 20.8333%; }
    .grid-m-offset6   { margin-left: 25%; }
    .grid-m-offset7   { margin-left: 29.1666%; }
    .grid-m-offset8   { margin-left: 33.3333%; }
    .grid-m-offset9   { margin-left: 37.5%; }
    .grid-m-offset10  { margin-left: 41.6666%; }
    .grid-m-offset11  { margin-left: 45.8333%; }
    .grid-m-offset12  { margin-left: 50%; }
    .grid-m-offset13  { margin-left: 54.1666%; }
    .grid-m-offset14  { margin-left: 58.3333%; }
    .grid-m-offset15  { margin-left: 62.5%; }
    .grid-m-offset16  { margin-left: 66.6666%; }
    .grid-m-offset17  { margin-left: 70.8333%; }
    .grid-m-offset18  { margin-left: 75%; }
    .grid-m-offset19  { margin-left: 79.1666%; }
    .grid-m-offset20  { margin-left: 83.3333%; }
    .grid-m-offset21  { margin-left: 87.5%; }
    .grid-m-offset22  { margin-left: 91.6666%; }
    .grid-m-offset23  { margin-left: 95.8333%; }

    .grid-m-pull0   { right: 0; }
    .grid-m-pull1   { right: 4.1666% }
    .grid-m-pull2   { right: 8.3333%; }
    .grid-m-pull3   { right: 12.5%; }
    .grid-m-pull4   { right: 16.6666%; }
    .grid-m-pull5   { right: 20.8333%; }
    .grid-m-pull6   { right: 25%; }
    .grid-m-pull7   { right: 29.1666%; }
    .grid-m-pull8   { right: 33.3333%; }
    .grid-m-pull9   { right: 37.5%; }
    .grid-m-pull10  { right: 41.6666%; }
    .grid-m-pull11  { right: 45.8333%; }
    .grid-m-pull12  { right: 50%; }
    .grid-m-pull13  { right: 54.1666%; }
    .grid-m-pull14  { right: 58.3333%; }
    .grid-m-pull15  { right: 62.5%; }
    .grid-m-pull16  { right: 66.6666%; }
    .grid-m-pull17  { right: 70.8333%; }
    .grid-m-pull18  { right: 75%; }
    .grid-m-pull19  { right: 79.1666%; }
    .grid-m-pull20  { right: 83.3333%; }
    .grid-m-pull21  { right: 87.5%; }
    .grid-m-pull22  { right: 91.6666%; }
    .grid-m-pull23  { right: 95.8333%; }

    .grid-m-push0   { left: 0; }
    .grid-m-push1   { left: 4.1666% }
    .grid-m-push2   { left: 8.3333%; }
    .grid-m-push3   { left: 12.5%; }
    .grid-m-push4   { left: 16.6666%; }
    .grid-m-push5   { left: 20.8333%; }
    .grid-m-push6   { left: 25%; }
    .grid-m-push7   { left: 29.1666%; }
    .grid-m-push8   { left: 33.3333%; }
    .grid-m-push9   { left: 37.5%; }
    .grid-m-push10  { left: 41.6666%; }
    .grid-m-push11  { left: 45.8333%; }
    .grid-m-push12  { left: 50%; }
    .grid-m-push13  { left: 54.1666%; }
    .grid-m-push14  { left: 58.3333%; }
    .grid-m-push15  { left: 62.5%; }
    .grid-m-push16  { left: 66.6666%; }
    .grid-m-push17  { left: 70.8333%; }
    .grid-m-push18  { left: 75%; }
    .grid-m-push19  { left: 79.1666%; }
    .grid-m-push20  { left: 83.3333%; }
    .grid-m-push21  { left: 87.5%; }
    .grid-m-push22  { left: 91.6666%; }
    .grid-m-push23  { left: 95.8333%; }
}

@media (min-width: 1200px) {
    .grid-l-col1  { width: 4.1666%; }
    .grid-l-col2  { width: 8.3333%; }
    .grid-l-col3  { width: 12.5%; }
    .grid-l-col4  { width: 16.6666%; }
    .grid-l-col5  { width: 20.8333%; }
    .grid-l-col6  { width: 25%; }
    .grid-l-col7  { width: 29.1666%; }
    .grid-l-col8  { width: 33.3333%; }
    .grid-l-col9  { width: 37.5%; }
    .grid-l-col10 { width: 41.6666%; }
    .grid-l-col11 { width: 45.8333%; }
    .grid-l-col12 { width: 50%; }
    .grid-l-col13 { width: 54.1666%; }
    .grid-l-col14 { width: 58.3333%; }
    .grid-l-col15 { width: 62.5%; }
    .grid-l-col16 { width: 66.6666%; }
    .grid-l-col17 { width: 70.8333%; }
    .grid-l-col18 { width: 75%; }
    .grid-l-col19 { width: 79.1666%; }
    .grid-l-col20 { width: 83.3333%; }
    .grid-l-col21 { width: 87.5%; }
    .grid-l-col22 { width: 91.6666%; }
    .grid-l-col23 { width: 95.8333%; }
    .grid-l-col24 { width: 100%; }

    .grid-l-offset0   { margin-left: 0; }
    .grid-l-offset1   { margin-left: 4.1666%; }
    .grid-l-offset2   { margin-left: 8.3333%; }
    .grid-l-offset3   { margin-left: 12.5%; }
    .grid-l-offset4   { margin-left: 16.6666%; }
    .grid-l-offset5   { margin-left: 20.8333%; }
    .grid-l-offset6   { margin-left: 25%; }
    .grid-l-offset7   { margin-left: 29.1666%; }
    .grid-l-offset8   { margin-left: 33.3333%; }
    .grid-l-offset9   { margin-left: 37.5%; }
    .grid-l-offset10  { margin-left: 41.6666%; }
    .grid-l-offset11  { margin-left: 45.8333%; }
    .grid-l-offset12  { margin-left: 50%; }
    .grid-l-offset13  { margin-left: 54.1666%; }
    .grid-l-offset14  { margin-left: 58.3333%; }
    .grid-l-offset15  { margin-left: 62.5%; }
    .grid-l-offset16  { margin-left: 66.6666%; }
    .grid-l-offset17  { margin-left: 70.8333%; }
    .grid-l-offset18  { margin-left: 75%; }
    .grid-l-offset19  { margin-left: 79.1666%; }
    .grid-l-offset20  { margin-left: 83.3333%; }
    .grid-l-offset21  { margin-left: 87.5%; }
    .grid-l-offset22  { margin-left: 91.6666%; }
    .grid-l-offset23  { margin-left: 95.8333%; }

    .grid-l-pull0   { right: 0; }
    .grid-l-pull1   { right: 4.1666% }
    .grid-l-pull2   { right: 8.3333%; }
    .grid-l-pull3   { right: 12.5%; }
    .grid-l-pull4   { right: 16.6666%; }
    .grid-l-pull5   { right: 20.8333%; }
    .grid-l-pull6   { right: 25%; }
    .grid-l-pull7   { right: 29.1666%; }
    .grid-l-pull8   { right: 33.3333%; }
    .grid-l-pull9   { right: 37.5%; }
    .grid-l-pull10  { right: 41.6666%; }
    .grid-l-pull11  { right: 45.8333%; }
    .grid-l-pull12  { right: 50%; }
    .grid-l-pull13  { right: 54.1666%; }
    .grid-l-pull14  { right: 58.3333%; }
    .grid-l-pull15  { right: 62.5%; }
    .grid-l-pull16  { right: 66.6666%; }
    .grid-l-pull17  { right: 70.8333%; }
    .grid-l-pull18  { right: 75%; }
    .grid-l-pull19  { right: 79.1666%; }
    .grid-l-pull20  { right: 83.3333%; }
    .grid-l-pull21  { right: 87.5%; }
    .grid-l-pull22  { right: 91.6666%; }
    .grid-l-pull23  { right: 95.8333%; }

    .grid-l-push0   { left: 0; }
    .grid-l-push1   { left: 4.1666% }
    .grid-l-push2   { left: 8.3333%; }
    .grid-l-push3   { left: 12.5%; }
    .grid-l-push4   { left: 16.6666%; }
    .grid-l-push5   { left: 20.8333%; }
    .grid-l-push6   { left: 25%; }
    .grid-l-push7   { left: 29.1666%; }
    .grid-l-push8   { left: 33.3333%; }
    .grid-l-push9   { left: 37.5%; }
    .grid-l-push10  { left: 41.6666%; }
    .grid-l-push11  { left: 45.8333%; }
    .grid-l-push12  { left: 50%; }
    .grid-l-push13  { left: 54.1666%; }
    .grid-l-push14  { left: 58.3333%; }
    .grid-l-push15  { left: 62.5%; }
    .grid-l-push16  { left: 66.6666%; }
    .grid-l-push17  { left: 70.8333%; }
    .grid-l-push18  { left: 75%; }
    .grid-l-push19  { left: 79.1666%; }
    .grid-l-push20  { left: 83.3333%; }
    .grid-l-push21  { left: 87.5%; }
    .grid-l-push22  { left: 91.6666%; }
    .grid-l-push23  { left: 95.8333%; }
}

@media (min-width: 1620px) {
    .grid-xl-col1  { width: 4.1666%; }
    .grid-xl-col2  { width: 8.3333%; }
    .grid-xl-col3  { width: 12.5%; }
    .grid-xl-col4  { width: 16.6666%; }
    .grid-xl-col5  { width: 20.8333%; }
    .grid-xl-col6  { width: 25%; }
    .grid-xl-col7  { width: 29.1666%; }
    .grid-xl-col8  { width: 33.3333%; }
    .grid-xl-col9  { width: 37.5%; }
    .grid-xl-col10 { width: 41.6666%; }
    .grid-xl-col11 { width: 45.8333%; }
    .grid-xl-col12 { width: 50%; }
    .grid-xl-col13 { width: 54.1666%; }
    .grid-xl-col14 { width: 58.3333%; }
    .grid-xl-col15 { width: 62.5%; }
    .grid-xl-col16 { width: 66.6666%; }
    .grid-xl-col17 { width: 70.8333%; }
    .grid-xl-col18 { width: 75%; }
    .grid-xl-col19 { width: 79.1666%; }
    .grid-xl-col20 { width: 83.3333%; }
    .grid-xl-col21 { width: 87.5%; }
    .grid-xl-col22 { width: 91.6666%; }
    .grid-xl-col23 { width: 95.8333%; }
    .grid-xl-col24 { width: 100%; }

    .grid-xl-offset0   { margin-left: 0; }
    .grid-xl-offset1   { margin-left: 4.1666%; }
    .grid-xl-offset2   { margin-left: 8.3333%; }
    .grid-xl-offset3   { margin-left: 12.5%; }
    .grid-xl-offset4   { margin-left: 16.6666%; }
    .grid-xl-offset5   { margin-left: 20.8333%; }
    .grid-xl-offset6   { margin-left: 25%; }
    .grid-xl-offset7   { margin-left: 29.1666%; }
    .grid-xl-offset8   { margin-left: 33.3333%; }
    .grid-xl-offset9   { margin-left: 37.5%; }
    .grid-xl-offset10  { margin-left: 41.6666%; }
    .grid-xl-offset11  { margin-left: 45.8333%; }
    .grid-xl-offset12  { margin-left: 50%; }
    .grid-xl-offset13  { margin-left: 54.1666%; }
    .grid-xl-offset14  { margin-left: 58.3333%; }
    .grid-xl-offset15  { margin-left: 62.5%; }
    .grid-xl-offset16  { margin-left: 66.6666%; }
    .grid-xl-offset17  { margin-left: 70.8333%; }
    .grid-xl-offset18  { margin-left: 75%; }
    .grid-xl-offset19  { margin-left: 79.1666%; }
    .grid-xl-offset20  { margin-left: 83.3333%; }
    .grid-xl-offset21  { margin-left: 87.5%; }
    .grid-xl-offset22  { margin-left: 91.6666%; }
    .grid-xl-offset23  { margin-left: 95.8333%; }

    .grid-xl-pull0   { right: 0; }
    .grid-xl-pull1   { right: 4.1666% }
    .grid-xl-pull2   { right: 8.3333%; }
    .grid-xl-pull3   { right: 12.5%; }
    .grid-xl-pull4   { right: 16.6666%; }
    .grid-xl-pull5   { right: 20.8333%; }
    .grid-xl-pull6   { right: 25%; }
    .grid-xl-pull7   { right: 29.1666%; }
    .grid-xl-pull8   { right: 33.3333%; }
    .grid-xl-pull9   { right: 37.5%; }
    .grid-xl-pull10  { right: 41.6666%; }
    .grid-xl-pull11  { right: 45.8333%; }
    .grid-xl-pull12  { right: 50%; }
    .grid-xl-pull13  { right: 54.1666%; }
    .grid-xl-pull14  { right: 58.3333%; }
    .grid-xl-pull15  { right: 62.5%; }
    .grid-xl-pull16  { right: 66.6666%; }
    .grid-xl-pull17  { right: 70.8333%; }
    .grid-xl-pull18  { right: 75%; }
    .grid-xl-pull19  { right: 79.1666%; }
    .grid-xl-pull20  { right: 83.3333%; }
    .grid-xl-pull21  { right: 87.5%; }
    .grid-xl-pull22  { right: 91.6666%; }
    .grid-xl-pull23  { right: 95.8333%; }

    .grid-xl-push0   { left: 0; }
    .grid-xl-push1   { left: 4.1666% }
    .grid-xl-push2   { left: 8.3333%; }
    .grid-xl-push3   { left: 12.5%; }
    .grid-xl-push4   { left: 16.6666%; }
    .grid-xl-push5   { left: 20.8333%; }
    .grid-xl-push6   { left: 25%; }
    .grid-xl-push7   { left: 29.1666%; }
    .grid-xl-push8   { left: 33.3333%; }
    .grid-xl-push9   { left: 37.5%; }
    .grid-xl-push10  { left: 41.6666%; }
    .grid-xl-push11  { left: 45.8333%; }
    .grid-xl-push12  { left: 50%; }
    .grid-xl-push13  { left: 54.1666%; }
    .grid-xl-push14  { left: 58.3333%; }
    .grid-xl-push15  { left: 62.5%; }
    .grid-xl-push16  { left: 66.6666%; }
    .grid-xl-push17  { left: 70.8333%; }
    .grid-xl-push18  { left: 75%; }
    .grid-xl-push19  { left: 79.1666%; }
    .grid-xl-push20  { left: 83.3333%; }
    .grid-xl-push21  { left: 87.5%; }
    .grid-xl-push22  { left: 91.6666%; }
    .grid-xl-push23  { left: 95.8333%; }
}


/* sections */
.section {
    background-color: #f5f5f5;
    color: #666;
}
.section.major { background-color: #fff; }

.section + .section:not(footer) { border-top: 1px solid #ccc; }

section.is-scrollable { overflow: auto; }
section.marginal { padding: 0!important; }

section.align-center {
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column!important;
    flex-direction: column!important;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
}

section.align-center:only-child,
section.flex:only-child,
section.flex-col { height: 100%; }

section.flex { flex-wrap: wrap; }

section.flex > .cnt:not(.noflex) {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: 0px;
    flex-basis: 0px;
}

section.flex > .cnt.width-col24 {
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
}

.container {
    margin: 0 auto;
    max-width: 100rem;
    padding: 1rem;
    position: relative;
    width: 100%;
}

.container-narrow { max-width: 80rem; }

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

.container.bloated,
.container.bloated-t { padding-top: 2rem; }

.container.bloated,
.container.bloated-b { padding-bottom: 2rem; }

.container.masthead {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

@media (min-width: 768px) {
    .container { padding: 1rem 2rem; }
    .container:not(.condensed) { padding: 2rem; }

    .container.bloated,
    .container.bloated-t { padding-top: 4rem; }

    .container.bloated,
    .container.bloated-b { padding-bottom: 4rem; }

    .container.masthead {
        padding-top: 8rem;
        padding-bottom: 8rem;
    }
}

/* if sidebar is visible
@media (min-width: 1620px) {
    .container { margin: 0 auto 0 2rem; }
}
*/

.container + .container { padding-top: 0; }




/* main wrapper & elements */
.page-wrapper {
    height: 100%;
    -webkit-overflow-scrolling: touch;
    overflow: auto;
    width: 100%;
}

.page-wrapper.flex-col > .main-content {
    display: -webkit-flex!important;
    display: flex!important;
    -webkit-flex-direction: column!important;
    flex-direction: column!important;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    max-width: 100%;
}

.main-content {
    background: #f5f5f5;
    overflow-x: hidden;
}

body.bg-major .main-content { background: #fff; }


.main-footer {
    background: #fff;
    border-top: 1px solid #ccc;
    font-size: 12px;
}

.main-footer > .container { text-align: center; }

.main-footer--nav ul > li { display: inline-block; }

.main-footer--nav ul > li.divider {
    display: block;
    margin: 1rem;
}

.main-footer--nav ul > li > a {
    color: currentColor;
    display: inline-block;
    font-weight: 500;
    line-height: 1.5em;
    padding: .5em;
    position: relative;
    text-decoration: none;
}

.main-footer--nav + .main-footer--language { margin-top: 1rem; }

@media (min-width: 768px) {
    .main-footer .container {
        padding-top: 1rem;
        padding-bottom: 1rem;
        text-align: left;
    }

    .main-footer--nav { float: left; }

    .main-footer--nav ul > li.divider {
        display: inline-block;
        margin: 0 1rem;
    }

    .main-footer--nav ul > li.divider::before {
        border-left: 1px solid #ccc;
        content: '';
    }

    .main-footer--nav ul > li > a { padding: 5px .5em; }

    .main-footer--language { float: right; }

    .main-footer--nav + .main-footer--language { margin-top: 0; }
}


.main-console {
    background: #333;
    color: #f5f5f5;
    display: none;
    font-size: 12px;
}
.main-console > table { background: #333; }




/* images */
img {
    border: none;
    vertical-align: top;
}

.img-responsive {
    display: inline-block;
    height: auto;
    max-width: 100%;
    vertical-align: top;
}

@media screen and (-webkit-max-device-pixel-ratio: 1),
       screen and (max-resolution: 1dppx) {
    .img-responsive { image-rendering: -webkit-optimize-contrast; }
}

.img--box {
    background: #f5f5f5;
    border: 1px solid #ccc;
    display: inline-block;
    overflow: hidden;
    vertical-align: top;
}

.img--box.plain {
    background: transparent;
    border: 0;
}




/* icons */
i.i,
[class^="icn-"],
[class^="svg-icn-"] {
    display: inline-block;
    font-size: 12px;
    height: 1.5em;
    line-height: 1px;
    overflow: hidden;
    vertical-align: top;
    width: 1.5em;
}

svg > use { -moz-transform: scale(1); }

[class^="svg-icn-"] {
    fill: #666;
    fill: currentColor;
    pointer-events: none;
}
[class^="svg-icn-"].inverted    { fill: #fff; }
[class^="svg-icn-"].primary     { fill: #24ad9c; }
[class^="svg-icn-"] .accent     { fill: #24ad9c; }

.rotate-90 { transform: rotate(90deg); }
.rotate-180 { transform: rotate(180deg); }
.rotate-270 { transform: rotate(270deg); }

.svg-icn-up,
.svg-icn-prev { transform: rotate(180deg); }

.svg-icn-arrow-down { transform: rotate(90deg); }

.rotate > [class^="svg-icn-"],
[class^="svg-icn-"].rotate  {
    -webkit-animation-name:ani-icn-rotate;
    -webkit-animation-duration:.7s;
    -webkit-animation-iteration-count:infinite;
    -webkit-animation-timing-function:linear;
    animation-name:ani-icn-rotate;
    animation-duration:.7s;
    animation-iteration-count:infinite;
    animation-timing-function:linear;
}
@-webkit-keyframes ani-icn-rotate {
    0% { -webkit-transform:rotate(360deg) }
    100% { -webkit-transform:rotate(0deg) }
}
@keyframes ani-icn-rotate{
    0% { transform:rotate(360deg) }
    100% { transform:rotate(0deg) }
}

[class^="icn-sort"] { background-image: url(/images/main/content/sprite-icn.png) }
.icn-sort      { background-position: 0 -60px; }
.icn-sort-asc  { background-position: -20px -60px; }
.icn-sort-desc { background-position: -40px -60px; }


/* buttons */
.btn {
    -webkit-appearance: none;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: .333em;
    box-shadow: 0 1px 1px rgba(0,0,0,.07);
    color: #333;
    cursor: pointer;
    display: inline-block;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.5em;
    padding: .5em 1em;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    white-space: nowrap;
}

.btn:hover,
.btn.current,
.btn.show,
input:checked + label.btn {
    background: #f5f5f5;
    text-decoration: none;
}
.btn:focus { outline: none; }


.btn.link,
.btn.link:hover {
    background: none;
    border-color: transparent;
    color: #24ad9c;
    box-shadow: none!important;
}

.btn.link:hover,
.btn.link.current,
.btn.link.show,
input:checked + label.btn.link {
    background: #f5f5f5;
    border-color: #ccc;
}

.btn.text,
.btn.text:hover {
    background: none;
    border-color: transparent;
    box-shadow: none!important;
    color: #24ad9c;
}

.btn.text:hover,
.btn.text.current,
.btn.text.show,
input:checked + label.btn.text {
    background: none;
    border-color: transparent;
    text-decoration: underline;
}


.btn.light {
    background: none;
    color: #666;
}

.btn.light:hover,
.btn.light.current,
.btn.light.show,
input:checked + label.btn.light { background: rgba(0,0,0,.05); }


.btn.primary,
.btn.primary:hover {
    background: #24ad9c;
    border-color: #1f9486;
    color: #fff;
}
.btn.primary:hover,
.btn.primary.current,
.btn.primary.show,
input:checked + label.btn.primary { background: #1f9486; }


.btn.cta,
.btn.cta:hover {
    background: #7fad1a;
    border-color: #709917;
    color: #fff;
}

.btn.cta:hover,
.btn.cta.current,
.btn.cta.show,
input:checked + label.btn.cta { background: #709917; }


.btn.warning,
.btn.warning:hover  {
    background: #fff;
    border-color: #d9414e;
    color: #d9414e;
}

.btn.warning:hover,
.btn.warning.current,
.btn.warning.show,
input:checked + label.btn.warning { background: #faedee; }


.btn:disabled,
.btn:disabled:hover,
.btn.disabled,
.btn.disabled:hover {
    background: none!important;
    border-color: #e5e5e5!important;
    color: #b3b3b3!important;
    cursor: default!important;
}


.btn.unavailable,
.btn.unavailable:hover {
    background: #fff;
    color: #808080;
    cursor: default;
}


.btn.active {
    background: #eb6f46;
    border-color: #d1633f;
    color: #fff;
    cursor: default;
    position: relative;
}

.btn:active,
.btn.show,
.btn.current,
.btn.link:active,
input:checked + label.btn { box-shadow: inset 0 1px 1px rgba(0,0,0,.1)!important; }

.btn:disabled,
.btn.disabled,
.btn.unavailable,
.btn.text { box-shadow: none!important; }


/* button sizes */
.btn-s { font-size: 11px; }
.btn-m { font-size: 14px; }
.btn-l { font-size: 16px; }
.btn-xxl { font-size: 20px; }

.btn small {
    font-size: .7em;
    font-weight: 400;
    line-height: 1.2em;
}

.btn-icon { padding: .5em; }
.btn-icon.btn-s { padding: 0; }

.btn [class^="svg-icn-"] { font-size: 1em;  }

.btn [class^="icn-"],
.btn [class^="svg-icn-"] {
    line-height: 1;
    margin: 0 .25em 0 -.5em;
 }

.btn .svg-icn-next,
.btn [class^="svg-icn-"].is-right { margin: 0 -.5em 0 .25em; }

.btn .svg-icn-caret,
.btn .svg-icn-up { margin: 0 -.5em 0 0; }

.btn-icon [class^="icn-"],
.btn-icon [class^="svg-icn-"] { margin: 0; }

.btn .svg-icn-remove {
    height: 1em;
    margin: .25em -.25em 0 .25em;
    width: 1em;
}

.btn:disabled [class^="icn-"],
.btn.disabled [class^="icn-"] { opacity: .30; }

.btn.block {
    display: block;
    width: 100%;
}




/* button groups */
.btn-group {
    display: inline-block;
    font-size: 0;
    position: relative;
    vertical-align: top;
    white-space: nowrap;
}

.btn-group > .btn ~ .btn,
.btn-group > .btn-group ~ .btn-group,
.btn-group > .btn ~ .btn-group,
.btn-group > .btn-group ~ .btn { margin-left: -1px; }

.btn-group > .btn:not(:first-child):not(:last-child):not(.btn-dropdown) { border-radius: 0; }

.btn-group > .btn:first-child:not(:last-child):not(.btn-dropdown),
.btn-group > .btn-group:first-child:not(:last-child) > .btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .btn-dropdown:not(:first-child),
.btn-group > .btn-group:last-child:not(:first-child) > .btn {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; }

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .btn-dropdown {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-group > input {
    opacity: 0;
    position: absolute;
    visibility: hidden;
}

.btn-group > input:first-child + label.btn:not(.btn-dropdown) {
    border-top-left-radius: .333em!important;
    border-bottom-left-radius: .333em!important;
}

.btn-group.flex {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
}

.btn-group.flex > .btn:not(.noflex),
.btn-group.flex > .btn-group:not(.noflex) {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: 0px;
    flex-basis: 0px;
}

.btn-group.flex > .btn-group > .btn {
    display: block;
    width: 100%;
}

.btn-group.block { display: block; }

.btn-list {
    font-size: 0;
    margin: -.5rem;
}

.btn-list > .btn-group,
.btn-list > .btn { margin: .5rem; }


.btn-list.flex {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.btn-list.flex > .btn:not(.noflex),
.btn-list.flex > .btn-group:not(.noflex) {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: 0px;
    flex-basis: 0px;
}

.btn-list.flex > .btn-group > .btn {
    display: block;
    width: 100%;
}

@media (max-width: 767px) {
    .btn-list.flex-xs {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .btn-list.flex-xs > .btn:not(.noflex),
    .btn-list.flex-xs > .btn-group:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }

    .btn-list.flex-xs > .btn-group > .btn {
        display: block;
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .btn-list.flex-s {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .btn-list.flex-s > .btn:not(.noflex),
    .btn-list.flex-s > .btn-group:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }

    .btn-list.flex-s > .btn-group > .btn {
        display: block;
        width: 100%;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .btn-list.flex-m {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .btn-list.flex-m > .btn:not(.noflex),
    .btn-list.flex-m > .btn-group:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }

    .btn-list.flex-m > .btn-group > .btn {
        display: block;
        width: 100%;
    }
}

@media (min-width: 1200px) and (max-width: 1619px) {
    .btn-list.flex-l {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .btn-list.flex-l > .btn:not(.noflex),
    .btn-list.flex-l > .btn-group:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }

    .btn-list.flex-l > .btn-group > .btn {
        display: block;
        width: 100%;
    }
}

@media (min-width: 1620px) {
    .btn-list.flex-xl {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .btn-list.flex-xl > .btn:not(.noflex),
    .btn-list.flex-xl > .btn-group:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }

    .btn-list.flex-xl > .btn-group > .btn {
        display: block;
        width: 100%;
    }
}




/* pagination */
.pagination {
    display: -webkit-flex;
    display: flex;
}

.pagination > .btn {
    display: none;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: 0px;
    flex-basis: 0px;
}

.pagination > .btn.active,
.pagination > .btn-icon { display: inline-block; }

@media (min-width: 360px) {
    .pagination > .btn:nth-child(2),
    .pagination > .btn:nth-last-child(2),
    .pagination > .btn.unavailable { display: inline-block; }
}

@media (min-width: 768px) {
    .pagination > .btn { display: inline-block; }
}

.pagination > .btn-icon {
    -webkit-flex: none;
    flex: none;
    min-width: 6em;
}




/* menu */
.menu ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.menu ul > li {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    position: relative;
}

.menu ul > li::after {
    background: currentColor;
    height: 1px;
    content: '';
    display: block;
    opacity: .1;
}
.menu ul > li:last-child::after { display: none; }

.menu ul > li.divider { margin-top: -1px; }

.menu ul > li.divider::after {
    background: #ccc;
    opacity: 1;
}

.menu ul > li > a {
    -webkit-align-items: center;
    align-items: center;
    color: #333;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    font-weight: 500;
    line-height: 1.5em;
    padding: 1em;
    position: relative;
    text-decoration: none;
    white-space: nowrap;
}

.menu ul > li.current > a::before {
    border-left: 4px solid #eb6f46;
    content: '';
    position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
}

.menu ul > li > a > .badge {
    position: absolute;
        top: 50%;
        right: 1em;
    transform: translateY(-50%);
}

.menu ul > li > a > [class^="svg-icn-"] {
    font-size: 1em;
    margin-right: .75em;
}

.menu ul > li > a > [class^="icn-"] { margin-right: .75em; }


.menu .has-children > a { padding-right: 2.5em; }

.menu .has-children > a > .badge { right: 3em; }

.menu .has-children > a > .svg-icn-caret {
    margin: -.75em 0 0;
    position: absolute;
        top: 50%;
        right: .75em;
}
.menu .has-children > a.show > .svg-icn-caret { transform: rotate(180deg); }


.menu .has-children > ul {
    background: rgba(0,0,0,.1);
    box-shadow: 0 2px 2px -2px rgba(0,0,0,0.2) inset;
    display: none;
}

.menu .has-visible-children > ul,
.menu .has-children > .show + ul {
    display: -webkit-flex;
    display: flex;
}


.menu-dropdown {
    background: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: .333em;
    box-shadow: 0 2px 10px rgba(0,0,0,.1);
    display: none;
    font-size: 12px;
    margin: 7px 0 0;
    min-width: 20em;
    position: absolute;
        top: 100%;
        left: 0;
    text-align: left;
    white-space: normal;
    z-index: 1000;
}
.show + .menu-dropdown { display: block; }

.menu-dropdown::before {
    border: 4px solid transparent;
    border-bottom-color: #ccc;
    content: "";
    display: block;
    height: 0;
    position: absolute;
        top: -8px;
        left: 10px;
    width: 0;
}

.menu-dropdown.left {
    left: auto;
    right: 0;
}
.menu-dropdown.left::before {
    left: auto;
    right: 10px;
}

.menu-dropdown.center{
    left: 50%;
    transform: translateX(-50%);
}
.menu-dropdown.center::before {
    margin-left: -4px;
    left: 50%;
}

@media (max-width: 767px) {
    .menu-dropdown.left-xs {
        left: auto;
        right: 0;
        transform: translateX(0);
    }
    .menu-dropdown.left-xs::before {
        left: auto;
        right: 10px;
    }

    .menu-dropdown.center-xs{
        left: 50%;
        transform: translateX(-50%);
    }
    .menu-dropdown.center-xs::before {
        margin-left: -4px;
        left: 50%;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .menu-dropdown.left-s-up,
    .menu-dropdown.left-s {
        left: auto;
        right: 0;
        transform: translateX(0);
    }
    .menu-dropdown.left-s-up::before,
    .menu-dropdown.left-s::before {
        left: auto;
        right: 10px;
    }

    .menu-dropdown.center-s-up,
    .menu-dropdown.center-s{
        left: 50%;
        transform: translateX(-50%);
    }
    .menu-dropdown.center-s-up::before,
    .menu-dropdown.center-s::before {
        margin-left: -4px;
        left: 50%;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .menu-dropdown.left-s-up,
    .menu-dropdown.left-m-up,
    .menu-dropdown.left-m {
        left: auto;
        right: 0;
        transform: translateX(0);
    }
    .menu-dropdown.left-s-up::before,
    .menu-dropdown.left-m-up::before,
    .menu-dropdown.left-m::before {
        left: auto;
        right: 10px;
    }

    .menu-dropdown.center-s-up,
    .menu-dropdown.center-m-up,
    .menu-dropdown.center-m{
        left: 50%;
        transform: translateX(-50%);
    }
    .menu-dropdown.center-s-up::before,
    .menu-dropdown.center-m-up::before,
    .menu-dropdown.center-m::before {
        margin-left: -4px;
        left: 50%;
    }
}

@media (min-width: 1200px) and (max-width: 1619px) {
    .menu-dropdown.left-s-up,
    .menu-dropdown.left-m-up,
    .menu-dropdown.left-l-up,
    .menu-dropdown.left-l {
        left: auto;
        right: 0;
        transform: translateX(0);
    }
    .menu-dropdown.left-s-up::before,
    .menu-dropdown.left-m-up::before,
    .menu-dropdown.left-l-up::before,
    .menu-dropdown.left-l::before {
        left: auto;
        right: 10px;
    }

    .menu-dropdown.center-s-up,
    .menu-dropdown.center-m-up,
    .menu-dropdown.center-l-up,
    .menu-dropdown.center-l{
        left: 50%;
        transform: translateX(-50%);
    }
    .menu-dropdown.center-s-up::before,
    .menu-dropdown.center-m-up::before,
    .menu-dropdown.center-l-up::before,
    .menu-dropdown.center-l::before {
        margin-left: -4px;
        left: 50%;
    }
}

@media (min-width: 1620px) {
    .menu-dropdown.left-s-up,
    .menu-dropdown.left-m-up,
    .menu-dropdown.left-l-up,
    .menu-dropdown.left-xl {
        left: auto;
        right: 0;
        transform: translateX(0);
    }
    .menu-dropdown.left-s-up::before,
    .menu-dropdown.left-m-up::before,
    .menu-dropdown.left-l-up::before,
    .menu-dropdown.left-xl::before {
        left: auto;
        right: 10px;
    }

    .menu-dropdown.center-s-up,
    .menu-dropdown.center-m-up,
    .menu-dropdown.center-l-up,
    .menu-dropdown.center-xl-up,
    .menu-dropdown.center-xl{
        left: 50%;
        transform: translateX(-50%);
    }
    .menu-dropdown.center-s-up::before,
    .menu-dropdown.center-m-up::before,
    .menu-dropdown.center-l-up::before,
    .menu-dropdown.center-xl-up::before,
    .menu-dropdown.center-xl::before {
        margin-left: -4px;
        left: 50%;
    }
}

.menu-dropdown.up {
    margin: 0 0 7px;
    top: auto;
    bottom: 100%;
}
.menu-dropdown.up::before {
    border-bottom-color: transparent;
    border-top-color: #ccc;
    top: auto;
    bottom: -8px;
}

.menu-dropdown.has-scrollable,
.menu-dropdown.is-scrollable { margin-top: 2px; }

.menu-dropdown.has-scrollable > ul.is-scrollable,
.menu-dropdown.is-scrollable {
    max-height: 180px;
    overflow-y: auto;
}

.menu-dropdown.up.has-scrollable,
.menu-dropdown.up.is-scrollable {
    margin-top: 0;
    margin-bottom: 2px;
}

.menu-dropdown.has-scrollable::before,
.menu-dropdown.is-scrollable::before { display: none!important; }

.menu-dropdown.has-scrollable ul.is-scrollable > li > a,
.menu-dropdown.is-scrollable li > a { padding-right: 20px; }




/* navigation */
[class*="nav-"] > ul { font-size: 0; }

[class*="nav-"].is-scrollable {
    overflow-x: hidden;
    position: relative;
}

[class*="nav-"].is-scrollable > ul:not(.flex) {
    overflow-x: auto;
    max-width: 100%;
    white-space: nowrap;
}

[class*="nav-"].is-scrollable::after,
[class*="nav-"].is-scrollable::before {
    background: rgba(0,0,0,0) linear-gradient(to left, #ffffff, rgba(255,255,255,0)) repeat scroll 0 0;
    content: "";
    height: 100%;
    pointer-events: none;
    position: absolute;
        right: 0;
        top: 0;
    width: 1rem;
    z-index: 1;
}

[class*="nav-"].is-scrollable::before {
    background: rgba(0,0,0,0) linear-gradient(to right, #ffffff, rgba(255,255,255,0)) repeat scroll 0 0;
        right: auto;
        left: 0;
}

[class*="nav-"] > ul > li {
    display: inline-block;
    font-size: 1rem;
    line-height: 1.5em;
    text-align: center;
}

[class*="nav-"] > ul.flex > li:not(.noflex) {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: 0px;
    flex-basis: 0px;
}

@media (max-width: 767px) {
    [class*="nav-"] > ul.flex-xs > li:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    [class*="nav-"] > ul.flex-s > li:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }
}

@media (min-width: 992px) and (max-width: 1119px) {
    [class*="nav-"] > ul.flex-m > li:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }
}

@media (min-width: 1200px) and (max-width: 1619px) {
    [class*="nav-"] > ul.flex-l > li:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }
}

@media (min-width: 1620px) {
    [class*="nav-"] > ul.flex-xl > li:not(.noflex) {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        -webkit-flex-shrink: 1;
        flex-shrink: 1;
        -webkit-flex-basis: 0px;
        flex-basis: 0px;
    }
}

[class*="nav-"] > ul > li > a {
    color: #999;
    display: block;
    font-size: 1em;
    line-height: 1.5em;
    padding: .5em 1em;
    text-decoration: none;
}

[class*="nav-"] > ul > .active > a,
[class*="nav-"] > ul > .current > a {
    background: #fff;
    color: #333;
    position: relative;
    z-index: 2;
}

.nav-tabs {
    border-bottom: 1px solid #ccc;
    margin-bottom: -1px;
}
.nav-tabs > ul {  margin-bottom: -1px; }
.nav-tabs > ul > li + li { margin-left: .5rem; }

.nav-tabs > ul > li > a {
    background: #fff;
    border-radius: 4px 4px 0 0;
    border: 1px solid #ccc;
}

.nav-tabs > ul > .active > a,
.nav-tabs > ul > .current > a {
    border-bottom-color: #fff!important;
}
.nav-tabs.nav-tabs-on-section > ul > .active > a,
.nav-tabs.nav-tabs-on-section > ul > .current > a {
    background: #f5f5f5;
    background-image: linear-gradient(to bottom, #ffffff 0%,#f5f5f5 90%);
    border-bottom-color: #f5f5f5!important;
}

.nav-tabs > ul > .active > a::after,
.nav-tabs > ul > .current > a::after {
    background: #eb6f46;
    border-radius: 5px 5px 0 0;
    content: '';
    display: block;
    height: 2px;
    position: absolute;
        top: -1px;
        left: -1px;
        right: -1px;
}

.nav-pills {
    background: #fff;
    border-radius: 1.25em;
}
.nav-pills > ul > li > a {
    border-radius: 1.25em;
    padding: .5em 1.25em;
}

.nav-pills > ul > .current > a,
.nav-pills > ul > .current > a:hover,
.nav-pills > ul > .current > a:focus {
    background-color: #eb6f46;
    color: #fff;
}

.nav-pills.is-scrollable::after {
    background: rgba(0,0,0,0) linear-gradient(to left, #ffffff, rgba(255,255,255,0)) repeat scroll 0 0;
    border-radius: 0 1.25em 1.25em 0;
}
.nav-pills.is-scrollable::before {
    background: rgba(0,0,0,0) linear-gradient(to right, #ffffff, rgba(255,255,255,0)) repeat scroll 0 0;
    border-radius: 1.25em 0 0 1.25em;
}


/* badges */
.badge,
.label {
    background: #62707d;
    border-radius: 1em;
    color: #fff;
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    line-height: 14px;
    padding: 0 .5em;
    vertical-align: baseline;
    white-space: nowrap;
}
.label {
    border-radius: 3px;
    font-size: 11px;
    line-height: 18px;
}

.badge.primary,
.label.primary { background: #eb6f46; }
.badge.light,
.label.light { background: #b7c0c7; }
.badge.dark,
.label.dark { background: #323940; }

.badge.dot {
    height: 1em;
    overflow: hidden;
    padding: 0;
    text-indent: -1000em;
    width: 1em;
}

.badge:not(.dot):empty,
.label:empty { display: none; }

.badge.block {
    display: inline-block;
    text-align: center;
    width: 100%;
}




/* form */
.form--group { margin: 0 0 1.5em; }

.form--actions { margin-top: .5em; }

.form--actions .btn {
    font-size: 1em;
    font-weight: 700;
    padding-top: .75em;
    padding-top: calc(.75em) - 1px;
    padding-bottom: .75em;
    padding-bottom: calc(.75em) - 1px;
    width: 100%;
}

@media (min-width: 768px) {
    .form--actions .btn:not(.block) {
        min-width: 8em;
        width: auto;
    }
}

.form--field { position: relative; }

.form--label {
    color: #999;
    display: inline-block;
    font-size: 1em;
    line-height: 1.5;
    margin: 0 0 .25em;
}

.form--field .form-text ~ .form--label,
.form--field .form-textarea ~ .form--label,
.form--field .form-select ~ .form--label {
    margin: 0;
    padding: .5em .75em;
    pointer-events: none;
    position: absolute;
        top: 0;
        left: 0;
    transition: all 0.25s;
}

.form--field-filled .form-text ~ .form--label,
.form--field-filled .form-textarea ~ .form--label,
.form--field-filled .form-select ~ .form--label {
    font-size: 0.875em;
    line-height: 1.75;
    margin: 0;
    padding: 0;
    pointer-events: auto;
        top: -1.75em;
}

.form--label.required,
.form--label label.required,
.form--fieldgroup-addon label.required { color: #333; }

.form--hint {
    color: #999;
    font-weight: 400;
    font-size: 0.857rem;
    font-style: italic;
    margin: .25rem 0 0;
}

.form--label .form--hint { margin: 0; }


input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    transition: background-color 5000s ease-in-out 0s;
    transition-property: background-color, color;
}

input[type=number] { -moz-appearance: textfield; }

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.form-text,
.form-textarea,
.form-select,
.form-upload {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: .25em;
    box-shadow: 0 1px 1px rgba(0,0,0,.07) inset;
    color: #808080;
    color: currentColor;
    font-size: 1em;
    font-weight: 400;
    line-height: 1.5;
    margin: 0;
    outline: none;
    padding: .5em .75em;
    padding: calc(.5em - 1px) .75em;
    vertical-align: top;
    width: 100%;
}

.form-text,
.form-textarea,
.form-upload { -webkit-appearance: none; }

.form-textarea {
    height: auto;
    min-height: 10em;
    overflow: auto;
    resize: vertical;
}

.form-select {
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3IiBoZWlnaHQ9IjciPg0KICAgIDxwb2x5Z29uIGZpbGw9IiMzMzMiIHBvaW50cz0iNywwIDMuNSw3IDAsMCAiLz4NCjwvc3ZnPg0K);
    background-repeat: no-repeat;
    background-position: right .6rem center;
    padding-right: 1.67rem;
}

.form-text:focus,
.form-textarea:focus,
.form-select:focus {
    border-color: currentColor;
    color: #333;
}

.form-text[disabled],
.form-textarea[disabled],
.form-select[disabled],
.form-text:disabled,
.form-textarea:disabled,
.form-select:disabled {
    background: #f5f5f5!important;
    border-color: #ccc!important;
    color: #ccc!important;
    cursor: default!important;
}
.form-text[readonly],
.form-textarea[readonly] {
    background: #fff!important;
    border-color: #ccc!important;
    color: #999!important;
    cursor: default!important;
}

.form-text.plain,
.form-textarea.plain,
.form-select.plain {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    height: auto!important;
    padding: 0!important;
}
.form-text.plain:focus,
.form-textarea.plain:focus,
.form-select.plain:focus { border-color: transparent; }




/* input groups */
.form--fieldgroup {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-grow: 1;
    flex-grow: 1;
}

.form--fieldgroup .form-text,
.form--fieldgroup .form-select,
.form--fieldgroup .form-upload,
.form--fieldgroup .form-textarea,
.form--fieldgroup .form-list-cnt {
    border-radius: 0;
    vertical-align: top;
}

.form--fieldgroup > .form--field {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: 0px;
    flex-basis: 0px;
    margin: 0;
}

.form--fieldgroup-addon,
.form--fieldgroup-btn {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-grow: 0;
    flex-grow: 0;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    -webkit-flex-basis: auto;
    flex-basis: auto;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    white-space: nowrap;
}

.form--fieldgroup-addon {
    background-color: #fff;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    color: #808080;
    font-size: 1em;
    font-weight: 400;
    line-height: 1em;
    overflow: hidden;
    padding: 0 .5em;
    text-align: center;
}

.form--fieldgroup-addon [class^="svg-icn-"] { font-size: .857em; }

.form--fieldgroup-btn { position: relative; }

.form--fieldgroup-btn > .btn {
    border-radius: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    -webkit-flex-basis: auto;
    flex-basis: auto;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    padding-top: 0;
    padding-bottom: 0;
    white-space: nowrap;
}

.form--fieldgroup-btn:first-child > .btn { margin-right: -1px; }
.form--fieldgroup-btn:last-child > .btn { margin-left: -1px; }

.form--fieldgroup .form--field:first-child .form-text,
.form--fieldgroup .form--field:first-child .form-select,
.form--fieldgroup .form--field:first-child .form-upload,
.form--fieldgroup .form--field:first-child .form-textarea,
.form--fieldgroup .form--fieldgroup-addon:first-child {
    border-top-left-radius: .25em;
    border-bottom-left-radius: .25em;
}
.form--fieldgroup .form--fieldgroup-addon:first-child { border-left: 1px solid #ccc; }

.form--fieldgroup .form--field:last-child .form-text,
.form--fieldgroup .form--field:last-child .form-select,
.form--fieldgroup .form--field:last-child .form-upload,
.form--fieldgroup .form--field:last-child .form-textarea,
.form--fieldgroup .form--fieldgroup-addon:last-child {
    border-top-right-radius: .25em;
    border-bottom-right-radius: .25em;
}
.form--fieldgroup .form--fieldgroup-addon:last-child { border-right: 1px solid #ccc; }

.form--fieldgroup .form--fieldgroup-btn:first-child > .btn {
    border-top-left-radius: .333em;
    border-bottom-left-radius: .333em;
}
.form--fieldgroup .form--fieldgroup-btn:last-child > .btn {
    border-top-right-radius: .333em;
    border-bottom-right-radius: .333em;
}


/* form file upload */
.form-upload-cnt {
    position: relative;
    overflow: hidden;
}
.form-upload-cnt .form-upload-btn {
    cursor: pointer;
    filter: alpha(opacity=0);
    font-size: 4rem;
    position: absolute;
        top: 0;
        right: 0;
    opacity: 0;
}
.form-upload-cnt .form-upload-error-cnt {
    background: #fff;
    text-align: left;
    height: 100%;
    position: absolute;
        top: 0;
        left: 0;
    width: 100%;
}
.form-upload-cnt .form-upload-error-cnt .form-list-cnt {
    background: #fff;
    position: absolute;
        top: 0;
        right: 0;
}


/* form error */
.form-tip.error {
    color: #d9414e;
    display: block;
    font-weight: 400;
    font-size: .857rem;
    font-style: normal;
    line-height: 1.167;
    margin: .25rem 0 0;
    text-align: right;
}

.form-text.error:not(.plain),
.form-textarea.error:not(.plain),
.form-select.error:not(.plain) { border-color: #d9414e!important; }

.form-text.error ~ .form-tip.error,
.form-textarea.error ~ .form-tip.error,
.form-select.error ~ .form-tip.error {
    background: #fff;
    margin: 0;
    padding: 0 .25em;
    position: absolute;
        bottom: -.5em;
        right: .5em;
    z-index: 10;
}


/* form radio/checkbox */
.form-list-label,
.form-list-entry {
    cursor: default;
    display: inline-block;
    font-size: 1em;
    line-height: 1.5em;
    padding: 0 0 0 20px;
    position: relative;
}

.form-list-label input[type=checkbox],
.form-list-label input[type=radio] {
    opacity: 0;
    position: absolute;
        left: 0;
        top: 0;
    visibility: hidden;
    z-index: -1;
}

.form-list-label .form-radio,
.form-list-label .form-cb {
    background: url(/images/main/content/sprite-form.png?v=1) no-repeat 0 0;
    cursor: pointer;
    display: block;
    position: absolute;
        left: 0;
        top: 0;
    height: 20px;
    width: 20px;
}
.form-list-label .form-radio { background-position: 0 0; }
.form-list-label:hover .form-radio { background-position: 0 -20px; }
.form-list-label input:checked + .form-radio { background-position: 0 -40px; }
.form-list-label:hover input:checked + .form-radio { background-position: 0 -60px; }

.form-list-label .form-cb { background-position: -20px 0; }
.form-list-label:hover .form-cb { background-position: -20px -20px; }
.form-list-label input:checked + .form-cb { background-position: -20px -40px; }
.form-list-label:hover input:checked + .form-cb { background-position: -20px -60px; }

.form-list-cnt .form-list-label,
.form-list-cnt .form-list-entry {
    display: block;
    padding: .5em 1em .5em 2em;
}

.form-list-cnt .form-list-label .form-radio,
.form-list-cnt .form-list-label .form-cb { top: .5em; }

.form-list-cnt.inline {
    display: inline-block;
    vertical-align: top;
}
.form-list-cnt.inline .form-list-label { display: inline-block; }

.form-list-cnt .form-list-label.disabled,
.form-list-cnt .form-list-label.disabled:hover {
    color: #ccc;
    cursor: default;
}

.form-list-label.disabled .form-radio,
.form-list-label.disabled:hover .form-radio { background-position: 0 -80px; }
.form-list-label.disabled input:checked + .form-radio,
.form-list-label.disabled:hover input:checked + .form-radio { background-position: 0 -100px; }

.form-list-label.disabled .form-cb,
.form-list-label.disabled:hover .form-cb { background-position: -20px -80px; }
.form-list-label.disabled input:checked + .form-cb,
.form-list-label.disabled:hover input:checked + .form-cb { background-position: -20px -100px; }


.form-inline-s-up .form--group {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-grow: 1;
    flex-grow: 1;
}

@media (min-width: 768px) {
    .form-inline-s-up .form--group {
        -webkit-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .form-inline-s-up .form--group > .form--field {
        -webkit-flex-basis: 70%;
        flex-basis: 70%;
        max-width: 70%;
    }

    .form-inline-s-up .form--label {
        -webkit-flex-basis: 30%;
        flex-basis: 30%;
        margin: .5em 0 0;
        max-width: 30%;
    }

    .form-inline-s-up .form--actions { margin-left: 30%; }
}



/* table/list */
table {
    background-color: transparent;
    border-collapse: collapse;
    border-spacing: 0;
    max-width: 100%;
}
table.fixed { table-layout: fixed; }

.table {
    background: #fff;
    margin-bottom: 1rem;
    width: 100%;
}
.table:last-child { margin-bottom: 0; }

.table tbody {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
section.marginal > .table:first-child > tbody:first-child,
section.marginal > .table:first-child > colgroup + tbody { border-top: none; }
section.marginal > .table:last-child > tbody:last-child { border-bottom: none; }

.table th,
.table td {
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5em;
    padding: .5em 1em;
    text-align: left;
    vertical-align: top;
}

.table thead th,
.table thead td,
.table tbody .thead {
    color: #333;
    font-weight: 700;
}

.table thead .link-sort {
    color: #333;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}
.table thead .link-sort:hover { text-decoration: underline; }

.table tbody > tr:not(:first-child) { border-top: 1px solid #ebebeb; }

.table tbody th {
    background: #f5f5f5;
    color: #808080;
}
.table tbody td { color: #666; }

@media (max-width: 767px) {
    .table.stacked-xs thead { display: none; }
    .table.stacked-xs tbody tr,
    .table.stacked-xs tbody th,
    .table.stacked-xs tbody td { display: block; }
    .table.stacked-xs tbody > tr:not(:first-child) { border-top-color: #ccc; }
    .table.stacked-xs tbody > tr > td:not(:first-child) { border-top: 1px solid #ebebeb; }
}
@media (min-width: 768px) and (max-width: 991px) {
    .table.stacked-s thead { display: none; }
    .table.stacked-s tbody tr,
    .table.stacked-s tbody th,
    .table.stacked-s tbody td { display: block; }
    .table.stacked-s tbody > tr:not(:first-child) { border-top-color: #ccc; }
    .table.stacked-s tbody > tr > td:not(:first-child) { border-top: 1px solid #ebebeb; }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .table.stacked-m thead { display: none; }
    .table.stacked-m tbody tr,
    .table.stacked-m tbody th,
    .table.stacked-m tbody td { display: block; }
    .table.stacked-m tbody > tr:not(:first-child) { border-top-color: #ccc; }
    .table.stacked-m tbody > tr > td:not(:first-child) { border-top: 1px solid #ebebeb; }
}
@media (min-width: 1200px) and (max-width: 1619px) {
    .table.stacked-l thead { display: none; }
    .table.stacked-l tbody tr,
    .table.stacked-l tbody th,
    .table.stacked-l tbody td { display: block; }
    .table.stacked-l tbody > tr:not(:first-child) { border-top-color: #ccc; }
    .table.stacked-l tbody > tr > td:not(:first-child) { border-top: 1px solid #ebebeb; }
}
@media (min-width: 1620px) {
    .table.stacked-xl thead { display: none; }
    .table.stacked-xl tbody tr,
    .table.stacked-xl tbody th,
    .table.stacked-xl tbody td { display: block; }
    .table.stacked-xl tbody > tr:not(:first-child) { border-top-color: #ccc; }
    .table.stacked-xl tbody > tr > td:not(:first-child) { border-top: 1px solid #ebebeb; }
}

.table.striped tbody th { background: transparent; }

.table.striped tbody tr:nth-child(odd) { background: #fafafa; }
.table.striped tbody tr:nth-child(even) { background: #fff; }

.table.striped.hovered > tbody > tr:hover { background: #f5fafa; }
.table.striped.hovered > tbody > tr:hover,
.table.striped.hovered > tbody > tr:hover + tr { border-top-color: #a3cccc; }

ul.is-table > li {
    display: table-row;
    font-size: 1em;
    line-height: 2em;
}

ul.is-table > li > label {
    display: table-cell;
    padding-right: .5em;
}




/* boxes */
.box {
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: 0 0 0 3px transparent inset, 0 1px 1px rgba(0,0,0,.07);
    color: #666;
    display: block;
    margin-bottom: 1rem;
    text-decoration: none;
}

a.box:hover { text-decoration: none; }
.box:last-child { margin-bottom: 0; }

.box--header,
.box--body { padding: 1rem; }

.box--header.bg-alternative,
.box--body.bg-alternative { background-color: #f5f5f5; }

@media (max-width: 767px) {
    .box--header.bloated-xs { padding: 1rem 2rem; }
    .box--body.bloated-xs { padding: 2rem; }

    .box-invisible-xs {
        background-color: transparent;
        border: none;
        box-shadow: none;
    }

    .box-invisible-xs > .box--body {
        background-color: inherit;
        padding-left: 0!important;
        padding-right: 0!important;
    }
}

@media (min-width: 768px) {
    .box { margin-bottom: 1.5rem; }
    .box:last-child { margin-bottom: 0; }

    .box--header:not(.condensed) { padding: 1rem 2rem; }
    .box--body:not(.condensed) { padding: 2rem; }
}

section.flex { padding: 0; }
section.flex > .cnt { padding: 1rem; }

@media (min-width: 768px) {
    .box > section.flex:not(.condensed) > .cnt { padding: 2rem; }
    .box > section.flex { padding: 0; }
}

.box > section.flex,
.box > section.flex > .cnt { border: 1px solid #ccc; }
.box > section.flex { border-width: 1px 0 0 1px; }
.box > section.flex > .cnt { border-width: 0 1px 1px 0; }

.box.has-flex-section { border: 0; }


.box--close,
.box--close:hover {
    cursor: pointer;
    color: currentColor;
    font-weight: 700;
    font-size: 1.5rem;
    float: right;
    cursor: pointer;
    text-decoration: none;
    z-index: 100;
}


.box-help {
    border-color: #41abd9;
    box-shadow: 0 0 0 3px #e5f4fb inset, 0 1px 1px rgba(0,0,0,.07);
}

.box-help h1,
.box-help h2,
.box-help h3,
.box-help h4,
.box-help h5,
.box-help h6 {
    color: #0098d9;
    font-size: 1em;
}


.box-warning {
    border-color: #d9414e;
    box-shadow: 0 0 0 3px #fae3e5 inset, 0 1px 1px rgba(0,0,0,.07);
}


.box-info {
    border-color: #41abd9;
    box-shadow: 0 0 0 3px #e5f4fb inset, 0 1px 1px rgba(0,0,0,.07);
}



/* iframes */
.iframe-container {
    position: relative;
    -webkit-overflow-scrolling: touch;
    overflow: auto;
}

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

.modal .iframe-container--iframe { display: none; }
.modal.show .iframe-container--iframe { display: block; }




/*  system message  */
.alert {
    background: #fcf4e3;
    border: 1px solid #e5cfa1;
    color: #807359;
    font-size: 1rem;
    line-height: 1.5em;
    padding: .5em 1em;
    margin: 0 auto 1rem;
    position: relative;
    text-align: left;
    text-shadow: none;
    z-index: 10;
}
.alert.condensed { font-size: 12px; }
.alert:last-child { margin-bottom: 0!important; }

.alert.warning { color: #d9414e; }

.alert.error {
    background: #fce3e3;
    border-color: #e5a1a1;
    color: #804d4d;
}

.alert.info {
    background: #e3f5fc;
    border-color: #a1d1e5;
    color: #597480;
}

.alert.success {
    background: #e3fcec;
    border-color: #a1e5b8;
    color: #268044;
}

.main-content > .alert {
    border-width: 0 0 1px 0;
    margin: 0;
}

.alert h1,.alert h2,.alert h3,.alert h4,.alert h4,.alert h5,.alert h6,
.alert .h1,.alert .h2,.alert .h3,.alert .h4,.alert .h4,.alert .h5,.alert .h6 { color: inherit; }


/* modal */
.modal--bg {
    background: rgba(30,30,30,.6);
    display: block;
    opacity: 0;
    height: 100%;
    position: fixed;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
    visibility: hidden;
    width: 100%;
    z-index: -2;
}

.modal--bg.show {
    opacity: 1;
    visibility: visible;
    z-index: 1003;
}

.modal {
    background: #fff;
    border-radius: 2px;
    border-top: 4px solid #eb6f46;
    box-shadow: 0 2px 1rem rgba(0,0,0,.3);
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    max-height: 90%;
    max-width: 40rem;
    opacity: 0;
    overflow: hidden;
    position: fixed;
        top: 5%;
        left: 50%;
    transform: translate(-50%, -2rem);
    transition: transform .3s ease 0s;
    visibility: hidden;
    width: calc(100% - 2rem);
    z-index: -1;
}

.modal.show {
    opacity: 1;
    transform: translateZ(0) translate(-50%, 0);
    visibility: visible;
    z-index: 1004;
 }

.modal-wider { max-width: 70rem; }

.modal-full {
    border-radius: 0;
    border-top: 0;
    box-shadow: none;
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    top: 0;
    left: 0;
    transform: translateX(-100%);
    width: 100%;
}

.modal-full.show { transform: translateX(0); }

.modal-dialog { max-width: 28rem; }

.modal--close {
    background: #fff;
    border-radius: 50%;
    color: #666;
    cursor: pointer;
    display: block;
    line-height: 1em;
    overflow: hidden;
    padding: .5rem;
    position: absolute;
        top: .25rem;
        right: .25rem;
    text-align: center;
    text-decoration: none!important;
}

@media (min-width: 768px) {
    .modal--close { padding: .75rem; }
}

.modal--close.left {
    right: auto;
    left: .4rem;
}


.modal > header,
.modal > section,
.modal > footer { padding: 1rem; }

.modal > header {
    border-bottom: 1px solid #ccc;
    padding-right: 3rem;
}

.modal > section + footer { border-top: 1px solid #ccc; }

.modal > section { overflow: auto; }

.modal > footer > .btn,
.modal > footer > .btn-list > .btn {
    font-size: 1em;
    font-weight: 700;
    padding-top: .75em;
    padding-top: calc(.75em - 1px);
    padding-bottom: .75em;
    padding-bottom: calc(.75em - 1px);
    width: 100%;
}

.modal > footer > .btn-list > .btn {
    font-size: 1rem;
    width: calc(100% - 1rem);
}

@media (min-width: 768px) {
    .modal > footer > .btn:not(.block),
    .modal > footer > .btn-list > .btn {
        min-width: 8rem;
        width: auto;
    }
}


.modal-dialog > section {
    padding: 3rem 1rem;
    text-align: center;
}

.modal-full .modal--close {
    background: #eb6f46;
    color: #fff;
}




/* main header */
.body.mainmenu-is-visible > .page-wrapper {
    overflow: hidden;
    position: fixed;
}

/* if sidebar is visible
@media (min-width: 1620px) {
    .body.has-main-header > .page-wrapper { padding-left: 20rem; }

    .body.mainmenu-is-visible > .page-wrapper {
        overflow: auto;
        position: relative;
    }
}
*/

.main-header {
    background: #2e3d4d;
    border: 0 solid rgba(0,0,0,.2);
    border-width: 0 0 1px;
    box-shadow: 0 0 1rem rgba(0,0,0,0.2);
    color: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    font-size: 1rem;
    height: 4rem;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding: 0;
    z-index: 1001;
}

/* if main-menu is expanded */
@media (min-width: 768px) {
    .main-header {
        height: 39px;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
    }
}

/* if sidebar is visible
@media (min-width: 1620px) {
    .main-header {
        border-width: 0 1px 0 0;
        -webkit-flex-direction: column;
        flex-direction: column;
        height: 100%;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        overflow: visible;
        padding: 0;
        position: fixed;
            top: 0;
            left: 0;
        width: 20rem;
    }
}
*/


.main-header--blocker {
    background: rgba(30,30,30,.6);
    display: block;
    opacity: 0;
    height: 100%;
    position: fixed;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
    visibility: hidden;
    width: 100%;
    z-index: 1;
}

.body.mainmenu-is-visible .main-header--blocker {
    opacity: 1;
    visibility: visible;
}

/* if main-menu is expanded */
@media (min-width: 768px) {
    .body.mainmenu-is-visible .main-header--blocker {
        opacity: 0;
        visibility: hidden;
    }
}


.main-header--section {
    display: -webkit-flex;
    display: flex;
}

/* if sidebar is visible
@media (min-width: 1620px) {
    .main-header--section {
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-flex-grow: 1;
        flex-grow: 1;
    }
}
*/


.main-header--item {
    color: currentColor;
    display: -webkit-flex;
    display: flex;
}


.main-header--link {
    -webkit-align-items: center;
    align-items: center;
    color: currentColor;
    cursor: pointer;
    display: -webkit-flex;
    display: flex;
    font-size: 1em;
    font-weight: 500;
    line-height: 1.5em;
    padding: 1em;
    text-decoration: none!important;
    white-space: nowrap;
}

.main-header--link > [class^="svg-icn-"] {
    font-size: 1em;
    vertical-align: middle;
}


.main-header--logo {
    border: 0 solid rgba(0,0,0,.2);
    border-width: 0 1px 0 0;
    font-size: 1.143em;
    font-weight: 700;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 1rem;
}

@media (min-width: 768px) {
    .main-header--logo { padding: 1rem 2rem; }
}

/* if sidebar is visible
@media (min-width: 1620px) {
    .main-header--logo {
        border-bottom: 1px solid rgba(0,0,0,.1);
        font-size: 1.857em;
        height: 90px;
        width: 100%!important;
    }
}
*/

.main-header--navigation {
    background: inherit;
    box-shadow: 0 0 1rem rgba(0,0,0,0.2);
    color: currentColor;
    display: -webkit-flex;
    display: flex;
    font-size: 1em;
    opacity: 0;
    overflow: hidden;
    max-width: 20rem;
    padding-bottom: 6rem;
    position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
    transition: transform .3s ease 0s, visibility 0s ease .3s, opacity 0s ease .3s;
    transform: translateX(100%);
    visibility: hidden;
    z-index: 2;
    width: 100%;
}

.body.mainmenu-is-visible .main-header--navigation {
    opacity: 1;
    overflow: auto;
    visibility: visible;
    transform: translateX(0);
    transition: transform .3s ease 0s, visibility 0s ease 0s, opacity 0s ease 0s;
}

.main-menu--toggle {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    font-size: 1.143em;
    font-weight: 700;
    min-height: 4rem;
}


.main-header .menu--burger,
.main-header .menu--burger::before,
.main-header .menu--burger::after {
    background: currentColor;
    display: inline-block;
    height: 2px;
    position: absolute;
    vertical-align: middle;
    transition: all .5s ease 0s;
    width: 1.5em;
}
.main-header .menu--burger { position: relative; }

.main-header .menu--burger::before,
.main-header .menu--burger::after {
    content: '';
    left: 0;
}
.main-header .menu--burger::before { top: -6px; }
.main-header .menu--burger::after { top: 6px; }


.main-menu {
    color: currentColor;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-grow: 1;
    flex-grow: 1;
}


.main-menu > section::before,
.main-menu > ul::before {
    background: currentColor;
    height: 1px;
    content: '';
    display: block;
    opacity: .1;
}

.main-menu > section { padding: 1em; }

.main-menu > section::before { margin: -1em -1em 1em; }

.main-menu > section > .btn { font-size: 1em; }


.main-menu ul > li > a > [class^="svg-icn-"]:not(.svg-icn-caret) { opacity: .5; }

.main-menu ul > li > a { color: currentColor; }


.main-menu ul > li.divider { margin-top: 0; }

.main-menu ul > li.divider::after {
    background: currentColor!important;
    opacity: .1;
}

.main-menu .has-children > a > .svg-icn-caret { display: none; }

.main-menu .has-visible-children > a > .svg-icn-caret { display: inline-block; }

.main-menu .has-children > ul > li > a { padding-left: 3.25em; }


/* if main-menu is expanded */
@media (min-width: 768px) {
    .main-header--navigation {
        background: transparent;
        box-shadow: none;
        opacity: 1!important;
        overflow: visible!important;
        max-width: 100%;
        padding: 0;
        position: relative;
            top: auto;
            right: auto;
            bottom: auto;
        transition: all 0s!important;
        transform: translateX(0)!important;
        visibility: visible!important;
        width: 100%;
    }

    .main-header--navigation-toggle { display: none; }

    .main-menu--toggle { display: none; }

    .main-menu {
        -webkit-flex-direction: row;
        flex-direction: row;
    }

    .main-menu > ul {
        -webkit-flex-direction: row;
        flex-direction: row;
    }

    .main-menu > section::before,
    .main-menu > ul::before,
    .main-menu > ul > li::after { display: none; }

    .main-menu > ul > li > a {
        padding-top: 0;
        padding-bottom: 0;
    }

    .main-menu .has-children > ul {
        background: #2e3d4d;
        box-shadow: none;
        min-width: 15rem;
        position: absolute;
            top: 100%;
            left: 0;
        z-index: 1;
    }

    .main-menu .has-visible-children > ul { display: none; }

    .main-menu .has-children > ul > li > a { padding-left: 1em; }

    .main-menu .has-children:hover > a + ul {
        display: -webkit-flex;
        display: flex;
    }

    .main-menu > ul > li.current > a,
    .main-menu .has-children > a.show,
    .main-menu .has-children:hover > a,
    .main-menu .has-children > ul > li { background: rgba(0,0,0,.2); }

        .main-menu .has-children > ul > li > a:hover { background: rgba(0,0,0,.1); }

    .main-menu > ul > li.current > a::before { display: none; }

    .main-menu .has-children > a > .svg-icn-caret { display: inline-block; }

    .main-menu > ul > li > a > .badge {
        margin-left: .5em;
        position: relative;
            top: auto;
            right: auto!important;
        transform: translateY(0);
    }
}

/* if sidebar is visible
@media (min-width: 1620px) {
    .main-header--navigation {
        box-shadow: none;
        height: auto;
        opacity: 1;
        overflow: visible!important;
        padding: 0;
        position: relative;
        transform: translateX(0);
        visibility: visible;
     }

    .main-menu .has-children { position: relative; }

    .main-menu .has-children > ul {
        background: #2e3d4d;
        box-shadow: none;
        min-width: 15rem;
        position: absolute;
            top: 0;
            left: 100%;
        z-index: 1;
    }

    .main-menu .has-visible-children > ul { display: none; }

    .main-menu .has-children:hover > a + ul { display: block; }

    .main-menu .has-children > a.show,
    .main-menu .has-children:hover > a,
    .main-menu .has-children > ul > li { background: rgba(0,0,0,.1); }

    .main-menu .has-children > ul > li > a { padding-left: 1em; }

    .main-menu .has-children > a > .svg-icn-caret {
        display: inline-block;
        transform: rotate(-90deg);
    }
}
*/




/* loading states */
.btn.loading {
    background: #fff!important;
    border-color: #e5e5e5!important;
    color: #b3b3b3!important;
    cursor: default!important;
    overflow: hidden;
    min-width: 2rem;
    position: relative;
}

.modal.loading { min-height: 8rem; }

.btn.loading::after,
.modal.loading::after {
    background: #fff url(/images/main/content/spinner-s.gif) no-repeat center center;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
        top: 0;
        left: 0;
    width: 100%;
    z-index: 500;
}





/* responsive helper classes */
.visible-xs,
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-s,
.visible-s-block,
.visible-s-inline,
.visible-s-inline-block,
.visible-m,
.visible-m-block,
.visible-m-inline,
.visible-m-inline-block,
.visible-l,
.visible-l-block,
.visible-l-inline,
.visible-l-inline-block,
.visible-xl,
.visible-xl-block,
.visible-xl-inline,
.visible-xl-inline-block { display: none!important; }

@media (max-width: 767px) {
    .visible-xs,
    .visible-xs-block { display: block!important; }
    .visible-xs-inline { display: inline!important; }
    [class*="grid-col"].visible-xs,
    [class*="grid-xs-col"].visible-xs,
    [class*="grid-s-col"].visible-xs,
    [class*="grid-m-col"].visible-xs,
    [class*="grid-l-col"].visible-xs,
    .visible-xs-inline-block { display: inline-block!important; }

    table.visible-xs { display: table!important }
    tr.visible-xs { display: table-row!important; }
    th.visible-xs,
    td.visible-xs { display: table-cell!important; }
}

@media (min-width: 768px) and (max-width: 991px) {
    .visible-s,
    .visible-s-block { display: block!important; }
    .visible-s-inline { display: inline!important; }
    [class*="grid-col"].visible-s,
    [class*="grid-xs-col"].visible-s,
    [class*="grid-s-col"].visible-s,
    [class*="grid-m-col"].visible-s,
    [class*="grid-l-col"].visible-s,
    .visible-s-inline-block { display: inline-block!important; }

    table.visible-s { display: table!important }
    tr.visible-s { display: table-row!important; }
    th.visible-s,
    td.visible-s { display: table-cell!important; }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .visible-m,
    .visible-m-block { display: block!important; }
    .visible-m-inline { display: inline!important; }
    [class*="grid-col"].visible-m,
    [class*="grid-xs-col"].visible-m,
    [class*="grid-s-col"].visible-m,
    [class*="grid-m-col"].visible-m,
    [class*="grid-l-col"].visible-m,
    .visible-m-inline-block { display: inline-block!important; }

    table.visible-m { display: table!important }
    tr.visible-m { display: table-row!important; }
    th.visible-m,
    td.visible-m { display: table-cell!important; }
}
@media (min-width: 1200px) and (max-width: 1619px) {
    .visible-l,
    .visible-l-block { display: block!important; }
    .visible-l-inline { display: inline!important; }
    [class*="grid-col"].visible-l,
    [class*="grid-xs-col"].visible-l,
    [class*="grid-s-col"].visible-l,
    [class*="grid-m-col"].visible-l,
    [class*="grid-l-col"].visible-l,
    .visible-l-inline-block { display: inline-block!important; }

    table.visible-l { display: table!important }
    tr.visible-l { display: table-row!important; }
    th.visible-l,
    td.visible-l { display: table-cell!important; }
}
@media (min-width: 1620px) {
    .visible-xl,
    .visible-xl-block { display: block!important; }
    .visible-xl-inline { display: inline!important; }
    [class*="grid-col"].visible-xl,
    [class*="grid-xs-col"].visible-xl,
    [class*="grid-s-col"].visible-xl,
    [class*="grid-m-col"].visible-xl,
    [class*="grid-l-col"].visible-xl,
    .visible-xl-inline-block { display: inline-block!important; }

    table.visible-xl { display: table!important }
    tr.visible-xl { display: table-row!important; }
    th.visible-xl,
    td.visible-xl { display: table-cell!important; }
}
@media (max-width: 767px) {
    .hidden-xs { display: none!important; }
}
@media (min-width: 768px) and (max-width: 991px) {
    .hidden-s { display: none!important; }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .hidden-m { display: none!important; }
}
@media (min-width: 1200px) and (max-width: 1619px) {
    .hidden-l { display: none!important; }
}
@media (min-width: 1620px) {
    .hidden-xl { display: none!important; }
}

@media (min-width: 768px) {
    .hidden-s-up { display: none!important; }
}
@media (min-width: 992px) {
    .hidden-m-up { display: none!important; }
}
@media (min-width: 1200px) {
    .hidden-l-up { display: none!important; }
}
