/*======================================
  #General
======================================*/
* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
img {
    max-width: 100%;
    border: 0;
}
svg:not(:root) {
    overflow: hidden;
}
main {
    display: block;
}
a {
    color: var(--theme);
}
a:hover {
    color: var(--theme-darker);
}
.theme-bg a {
    color: var(--theme-contrast);
}
.theme-alt-bg a {
    color: var(--theme-alt-contrast);
}
/*======================================
  #Typography
======================================*/
html {
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    scroll-padding-top: var(--header-height);
}
@media only screen and (max-width: 992px) {
    html {
        font-size: 0.95em;
    }
}
@media only screen and (max-width: 768px) {
    html {
        font-size: 0.9em;
    }
}
body {
    font-family: var(--body-font);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: var(--font-size);
    font-weight: var(--body-font-weight);
    width: 100%;
    overflow-x: hidden;
    color: var(--text-dark);
}
p,
ul,
ol {
    margin-bottom: 1.5em;
}
.text-big {
    font-weight: var(--font-weight-light);
    font-size: var(--font-size-big);
}
.text-small {
    font-size: 0.75rem;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.act-heading {
    font-family: var(--heading-font);
    line-height: 1.5;
    margin-bottom: 0.5em;
    font-weight: var(--heading-font-weight);
    color: var(--heading-dark);
}
h1.pre-head,
h2.pre-head,
h3.pre-head,
h4.pre-head,
h5.pre-head,
h6.pre-head,
.h1.pre-head,
.h2.pre-head,
.h3.pre-head,
.h4.pre-head,
.h5.pre-head,
.h6.pre-head,
.act-heading.pre-head {
    text-transform: uppercase;
    font-weight: var(--font-weight-normal);
    font-size: 0.8rem;
    letter-spacing: 0.4em;
    line-height: 1;
    margin-bottom: 0.9em;
    opacity: 0.8;
}
h1.section-head,
h2.section-head,
h3.section-head,
h4.section-head,
h5.section-head,
h6.section-head,
.h1.section-head,
.h2.section-head,
.h3.section-head,
.h4.section-head,
.h5.section-head,
.h6.section-head,
.act-heading.section-head {
    text-transform: uppercase;
    font-weight: var(--heading-font-weight);
    font-size: 0.65rem;
    letter-spacing: 0.2em;
    line-height: 1;
    margin-bottom: 1em;
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
.h1 a,
.h2 a,
.h3 a,
.h4 a,
.h5 a,
.h6 a,
.act-heading a {
    color: inherit;
}
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover,
.h1 a:hover,
.h2 a:hover,
.h3 a:hover,
.h4 a:hover,
.h5 a:hover,
.h6 a:hover,
.act-heading a:hover {
    color: var(--theme);
}
.light-color {
    color: var(--text-light);
}
.light-color h1,
.light-color h2,
.light-color h3,
.light-color h4,
.light-color h5,
.light-color h6,
.light-color .h1,
.light-color .h2,
.light-color .h3,
.light-color .h4,
.light-color .h5,
.light-color .h6,
.light-color .act-heading {
    color: var(--heading-light);
}
.dark-color {
    color: var(--text-dark);
}
.dark-color h1,
.dark-color h2,
.dark-color h3,
.dark-color h4,
.dark-color h5,
.dark-color h6,
.dark-color .h1,
.dark-color .h2,
.dark-color .h3,
.dark-color .h4,
.dark-color .h5,
.dark-color .h6,
.dark-color .act-heading {
    color: var(--heading-dark);
}
h1,
.h1 {
    font-size: 2.5rem;
}
h2,
.h2 {
    font-size: 2.25rem;
}
h3,
.h3 {
    font-size: 1.75rem;
}
h4,
.h4 {
    font-size: 1.5rem;
}
h5,
.h5 {
    font-size: 1.2rem;
}
h6,
.h6 {
    font-size: 1rem;
}
small {
    font-size: 80%;
}
mark {
    background: #fcf8e3;
    padding: 0 0.3em;
}
abbr {
    border-bottom: 2px dotted #555;
    text-decoration: none;
    cursor: help;
}
kbd {
    background: var(--background-dark);
    color: var(--white);
    border-radius: 3px;
    padding: 2px 4px;
    font-size: 80%;
}
a {
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-decoration: none;
    cursor: pointer;
}
a:hover {
    text-decoration: none;
}
em,
i {
    font-style: italic;
}
strong,
b {
    font-weight: bold;
}
hr {
    border: none;
    height: 1px;
    background: var(--border-dark);
    margin: 2em 0;
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup {
    top: -0.5em;
}
sub {
    bottom: -0.25em;
}
blockquote {
    font-style: normal;
    font-size: var(--font-size-big);
    position: relative;
    font-weight: var(--font-weight-light);
    max-width: 32.5em;
    margin: 4.4em auto 4em;
    text-align: center;
}
blockquote::before {
    color: var(--theme);
    position: absolute;
    font-family: "FontAwesome";
    content: "\f10d";
    top: -1.5em;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    font-size: 1.5rem;
    line-height: 1;
}
blockquote cite {
    display: block;
    font-size: 80%;
}
ul,
ol {
    padding-left: 20px;
}
ul ul,
ol ul,
ul ol,
ol ol {
    margin-bottom: 0;
}
ul {
    list-style: disc;
}
ol {
    list-style: decimal;
}
/*======================================
  #Format image classes
======================================*/
.image-left {
    float: left;
    margin: 0 0.6em 0.6em 0;
}
.image-right {
    float: right;
    margin: 0 0 0.6em 0.6em;
}
.image-left,
.image-right {
    display: block;
}
@media only screen and (max-width: 768px) {
    .image-left,
    .image-right {
        float: none;
    }
}
figcaption {
    color: var(--text-dark);
    text-align: center;
    font-style: italic;
    font-size: 0.875rem;
    padding-top: 5px;
}
.light-color figcaption {
    color: var(--text-light);
}
/*======================================
  #Lazyload
======================================*/
img[data-sizes="auto"] {
    display: block;
    width: 100%;
}
.lazyload,
.lazyloading {
    opacity: 0;
    width: 100%;
}
.lazyloaded {
    opacity: 1;
    -webkit-transition: opacity 300ms;
    -o-transition: opacity 300ms;
    transition: opacity 300ms;
}
/*======================================
  #Tables
======================================*/
.table-wrap {
    min-height: 0.01%;
    overflow-x: auto;
}
table {
    width: 100%;
    max-width: 100%;
    font-size: 0.875rem;
    line-height: 1;
}
table a {
    font-weight: bold;
    color: inherit;
    text-decoration: underline;
}
table a:hover {
    color: var(--theme);
}
table th,
table td {
    padding: 0.75em;
    border: 1px solid var(--border-dark);
}
table .cb-wrap {
    min-height: 16px;
    min-width: 16px;
    padding-left: 0;
    margin-bottom: 0;
    display: inline-block;
}
table td.v-center {
    vertical-align: middle;
}
table td input[type="text"],
table td input[type="number"] {
    margin: 0;
    padding: 3px 5px;
}
table td input[type="number"] {
    max-width: 65px;
}
table th {
    font-weight: var(--font-weight-bold);
    text-align: left;
    background: #233f5b;
    color: white;
}
table thead tr {
    font-size: 0.8rem;
    border-bottom: 2px solid var(--border-dark);
}
table tbody {
    border-bottom: 2px solid var(--border-dark);
}
table tbody tr {
    background-color: white;
    border-top: 1px solid var(--border-dark);
}
table tbody tr:first-child {
    border-top: 0;
}
table tbody tr:hover {
    background: rgba(0, 0, 0, 0.02);
}
.data-table .loader {
    width: 80%;
    height: 30px;
    background-color: #f5f5f5;
    border-radius: 15px;
    position: relative;
    overflow: hidden;
    margin: 3px 0;
}
.data-table .loader::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0px;
    width: 100%;
    height: 100%;
    background-image: -webkit-gradient(
        linear,
        left top,
        right top,
        from(rgba(255, 255, 255, 0.001)),
        color-stop(rgba(255, 255, 255, 0.6)),
        to(rgba(255, 255, 255, 0.001))
    );
    background-image: -o-linear-gradient(
        left,
        rgba(255, 255, 255, 0.001),
        rgba(255, 255, 255, 0.6),
        rgba(255, 255, 255, 0.001)
    );
    background-image: linear-gradient(
        to right,
        rgba(255, 255, 255, 0.001),
        rgba(255, 255, 255, 0.6),
        rgba(255, 255, 255, 0.001)
    );
    -webkit-animation: loading 1.5s infinite;
    animation: loading 1.5s infinite;
}
@-webkit-keyframes loading {
    from {
        left: -100%;
    }
    to {
        left: 100%;
    }
}
@keyframes loading {
    from {
        left: -100%;
    }
    to {
        left: 100%;
    }
}
/*======================================
  #Loader
======================================*/
.loading {
    position: relative;
    z-index: 1;
}
.loading::before {
    content: "";
    position: absolute;
    background-color: var(--white);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99998;
}
.loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -10px 0 0 -10px;
    z-index: 99999;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    border: 0.2rem solid rgba(0, 0, 0, 0.15);
    border-top-color: rgba(0, 0, 0, 0.5);
    -webkit-animation: spin 0.5s infinite linear;
    animation: spin 0.5s infinite linear;
}
.loading--gray::before {
    background-color: var(--background-light);
}
@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
/*======================================
  #Success animation
======================================*/
.checkmark__circle {
    stroke-dasharray: 166;
    stroke-dashoffset: 166;
    stroke-width: 2;
    stroke-miterlimit: 10;
    stroke: var(--success);
    fill: none;
    -webkit-animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
    animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}
.checkmark-svg {
    width: 4.3rem;
    height: 4.3rem;
    border-radius: 50%;
    display: block;
    stroke-width: 2;
    stroke: var(--white);
    stroke-miterlimit: 10;
    margin: 1.5em auto;
    -webkit-box-shadow: inset 0px 0px 0px var(--success);
    box-shadow: inset 0px 0px 0px var(--success);
    -webkit-animation: fill 0.4s ease-in-out 0.4s forwards,
        scale 0.3s ease-in-out 0.9s both;
    animation: fill 0.4s ease-in-out 0.4s forwards,
        scale 0.3s ease-in-out 0.9s both;
}
.checkmark__check {
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    stroke-dasharray: 48;
    stroke-dashoffset: 48;
    -webkit-animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
    animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}
@-webkit-keyframes stroke {
    100% {
        stroke-dashoffset: 0;
    }
}
@keyframes stroke {
    100% {
        stroke-dashoffset: 0;
    }
}
@-webkit-keyframes scale {
    0%,
    100% {
        -webkit-transform: none;
        transform: none;
    }
    50% {
        -webkit-transform: scale3d(1.1, 1.1, 1);
        transform: scale3d(1.1, 1.1, 1);
    }
}
@keyframes scale {
    0%,
    100% {
        -webkit-transform: none;
        transform: none;
    }
    50% {
        -webkit-transform: scale3d(1.1, 1.1, 1);
        transform: scale3d(1.1, 1.1, 1);
    }
}
@-webkit-keyframes fill {
    100% {
        -webkit-box-shadow: inset 0px 0px 0px 50px var(--success);
        box-shadow: inset 0px 0px 0px 50px var(--success);
    }
}
@keyframes fill {
    100% {
        -webkit-box-shadow: inset 0px 0px 0px 50px var(--success);
        box-shadow: inset 0px 0px 0px 50px var(--success);
    }
}
/*======================================
  #Skip link
======================================*/
a.skip-link {
    position: absolute;
    top: 0;
    left: 20px;
    z-index: 999999999;
    color: var(--theme-contrast);
    background-color: var(--theme);
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    opacity: 0;
}
a.skip-link:hover {
    color: var(--white);
}
a.skip-link:focus {
    opacity: 1;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
}
/*======================================
  #Colors
======================================*/
.theme-bg {
    background-color: var(--theme);
}
.theme-alt-bg {
    background-color: var(--theme-alt);
}
.dark-bg {
    background-color: var(--background-dark);
}
.gray-bg {
    background-color: var(--background-light);
}
.white-bg {
    background-color: var(--white);
}
.theme-color {
    color: var(--theme);
}
.theme-alt-color {
    color: var(--theme-alt);
}
.white-color {
    color: var(--white);
}
.gray-color {
    color: #999;
}
.dark-color {
    color: var(--background-dark);
}
/*======================================
  #Helpers
======================================*/
.fr {
    float: right;
}
.fl {
    float: left;
}
.cb {
    clear: both;
}
.nm {
    margin: 0 !important;
}
.np {
    padding: 0 !important;
}
.no-wrap {
    white-space: nowrap;
}
.text-center {
    text-align: center;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.flex-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.thin {
    font-weight: var(--font-weight-light);
}
.normal {
    font-weight: var(--font-weight-normal);
}
.bold {
    font-weight: var(--font-weight-bold);
}
.bolder {
    font-weight: 900;
}
.responsive-img {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
}
.hidden {
    visibility: hidden;
    opacity: 0;
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}
.hide {
    display: none;
}
.hide--important {
    display: none !important;
}
.show--s {
    display: none !important;
}
.show--m {
    display: none !important;
}
.show--xs {
    display: none !important;
}
@media only screen and (max-width: 992px) {
    .hide--m {
        display: none !important;
    }
    .show--m {
        display: block !important;
    }
}
@media only screen and (max-width: 768px) {
    .hide--s {
        display: none !important;
    }
    .show--s {
        display: block !important;
    }
}
@media only screen and (max-width: 480px) {
    .hide--xs {
        display: none !important;
    }
    .show--xs {
        display: block !important;
    }
}
@media only screen and (min-width: 992px) {
    .nm--m {
        margin: 0 !important;
    }
}
/*======================================
  #Badges
======================================*/
.badge {
    background-color: rgba(0, 0, 0, 0.1);
    display: inline-block;
    padding: 5px 8px;
    font-weight: bold;
    font-size: 0.875rem;
    line-height: 1;
    border-radius: 4px;
    margin-bottom: 4px;
    white-space: nowrap;
}
.badge--theme {
    background-color: var(--theme);
    color: var(--theme-contrast);
}
.badge--theme-alt {
    background-color: var(--theme-alt);
    color: var(--theme-alt-contrast);
}
.badge--dark {
    background-color: var(--background-dark);
    color: var(--heading-light);
}
.badge--success {
    background-color: var(--success);
    color: var(--heading-light);
}
.badge--error {
    background-color: var(--error);
    color: var(--heading-light);
}
.badge--white {
    background-color: white;
    color: var(--heading-dark);
}
/*======================================
  #General
======================================*/
button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}
input {
    line-height: normal;
}
button {
    overflow: visible;
}
button,
select {
    text-transform: none;
}
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}
button[disabled],
html input[disabled] {
    cursor: default;
}
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="password"],
input[type="search"],
input[type="number"],
textarea {
    -webkit-appearance: none;
}
input[type="search"] {
    -webkit-appearance: textfield;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}
textarea {
    overflow: auto;
}
button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    padding: 0;
    line-height: inherit;
    cursor: pointer;
}
/*======================================
  #Forms
======================================*/
form label,
.form-label {
    margin-bottom: 0.8em;
    line-height: 1;
    font-weight: var(--font-weight-bold);
    font-size: 0.9rem;
    letter-spacing: 0.03em;
    display: block;
}
.light-color form label,
.light-color .form-label {
    color: var(--text-light);
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="date"],
textarea,
select {
    background-color: var(--white);
    display: block;
    padding: 1em;
    color: var(--text-dark);
    border-radius: 4px;
    font-size: 16px;
    width: 100%;
    border: 0;
    border: 1px solid var(--border-dark);
    -webkit-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all 0.25s ease;
    margin-bottom: var(--grid-gutter);
    font-weight: var(--font-weight-normal);
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
textarea:focus,
select:focus {
    outline: none;
    -webkit-box-shadow: 0 0 6px rgba(var(--theme-rgb), 0.3);
    box-shadow: 0 0 6px rgba(var(--theme-rgb), 0.3);
    border: 1px solid rgba(var(--theme-rgb), 0.7);
}
input[type="text"]:required:valid,
input[type="email"]:required:valid,
input[type="url"]:required:valid,
input[type="tel"]:required:valid,
input[type="password"]:required:valid,
input[type="search"]:required:valid,
input[type="number"]:required:valid,
input[type="date"]:required:valid,
textarea:required:valid,
select:required:valid {
    position: relative;
    border-color: rgba(46, 204, 113, 0.05);
    -webkit-box-shadow: 0 0 1px 1px var(--success) !important;
    box-shadow: 0 0 1px 1px var(--success) !important;
    background-color: var(--white);
}
input[type="text"]:required:valid + i,
input[type="email"]:required:valid + i,
input[type="url"]:required:valid + i,
input[type="tel"]:required:valid + i,
input[type="password"]:required:valid + i,
input[type="search"]:required:valid + i,
input[type="number"]:required:valid + i,
input[type="date"]:required:valid + i,
textarea:required:valid + i,
select:required:valid + i {
    opacity: 1;
    visibility: visible;
    -webkit-transform: scale(1) translateY(-50%);
    -ms-transform: scale(1) translateY(-50%);
    transform: scale(1) translateY(-50%);
}
input[type="text"][disabled],
input[type="email"][disabled],
input[type="url"][disabled],
input[type="tel"][disabled],
input[type="password"][disabled],
input[type="search"][disabled],
input[type="number"][disabled],
input[type="date"][disabled],
textarea[disabled],
select[disabled] {
    cursor: not-allowed;
}
input[type="text"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="url"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="password"]::-webkit-input-placeholder,
input[type="search"]::-webkit-input-placeholder,
input[type="number"]::-webkit-input-placeholder,
input[type="date"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
select::-webkit-input-placeholder {
    font-style: italic;
}
input[type="text"]::-moz-placeholder,
input[type="email"]::-moz-placeholder,
input[type="url"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
input[type="search"]::-moz-placeholder,
input[type="number"]::-moz-placeholder,
input[type="date"]::-moz-placeholder,
textarea::-moz-placeholder,
select::-moz-placeholder {
    font-style: italic;
}
input[type="text"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="url"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="password"]:-ms-input-placeholder,
input[type="search"]:-ms-input-placeholder,
input[type="number"]:-ms-input-placeholder,
input[type="date"]:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder {
    font-style: italic;
}
input[type="text"]::-ms-input-placeholder,
input[type="email"]::-ms-input-placeholder,
input[type="url"]::-ms-input-placeholder,
input[type="tel"]::-ms-input-placeholder,
input[type="password"]::-ms-input-placeholder,
input[type="search"]::-ms-input-placeholder,
input[type="number"]::-ms-input-placeholder,
input[type="date"]::-ms-input-placeholder,
textarea::-ms-input-placeholder,
select::-ms-input-placeholder {
    font-style: italic;
}
input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="url"]::placeholder,
input[type="tel"]::placeholder,
input[type="password"]::placeholder,
input[type="search"]::placeholder,
input[type="number"]::placeholder,
input[type="date"]::placeholder,
textarea::placeholder,
select::placeholder {
    font-style: italic;
}
.form-validate-wrap {
    position: relative;
}
.form-validate-wrap > i {
    position: absolute;
    top: 50%;
    right: 10px;
    color: var(--success);
    font-size: 1.2em;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: scale(0) translateY(-50%);
    -ms-transform: scale(0) translateY(-50%);
    transform: scale(0) translateY(-50%);
    -webkit-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all 0.25s ease;
}
select {
    line-height: 1;
    height: 3.3125em;
    padding: 1em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg viewBox='0 0 140 140' width='24' height='24' xmlns='http://www.w3.org/2000/svg'><g><path d='m121.3,34.6c-1.6-1.6-4.2-1.6-5.8,0l-51,51.1-51.1-51.1c-1.6-1.6-4.2-1.6-5.8,0-1.6,1.6-1.6,4.2 0,5.8l53.9,53.9c0.8,0.8 1.8,1.2 2.9,1.2 1,0 2.1-0.4 2.9-1.2l53.9-53.9c1.7-1.6 1.7-4.2 0.1-5.8z' fill='black'/></g></svg>");
    background-size: 0.875rem;
    background-repeat: no-repeat;
    background-position: calc(100% - 20px) center;
}
textarea {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
}
.dark-bg.light-color input[type="text"],
.dark-bg.light-color input[type="email"],
.dark-bg.light-color input[type="url"],
.dark-bg.light-color input[type="tel"],
.dark-bg.light-color input[type="password"],
.dark-bg.light-color input[type="search"],
.dark-bg.light-color input[type="number"],
.dark-bg.light-color input[type="date"],
.dark-bg.light-color textarea,
.dark-bg.light-color select {
    background-color: var(--background-dark-lighter);
    color: var(--text-light);
}
.dark-bg.light-color input[type="text"]::-webkit-input-placeholder,
.dark-bg.light-color input[type="email"]::-webkit-input-placeholder,
.dark-bg.light-color input[type="url"]::-webkit-input-placeholder,
.dark-bg.light-color input[type="tel"]::-webkit-input-placeholder,
.dark-bg.light-color input[type="password"]::-webkit-input-placeholder,
.dark-bg.light-color input[type="search"]::-webkit-input-placeholder,
.dark-bg.light-color input[type="number"]::-webkit-input-placeholder,
.dark-bg.light-color input[type="date"]::-webkit-input-placeholder,
.dark-bg.light-color textarea::-webkit-input-placeholder,
.dark-bg.light-color select::-webkit-input-placeholder {
    color: var(--text-light);
}
.dark-bg.light-color input[type="text"]::-moz-placeholder,
.dark-bg.light-color input[type="email"]::-moz-placeholder,
.dark-bg.light-color input[type="url"]::-moz-placeholder,
.dark-bg.light-color input[type="tel"]::-moz-placeholder,
.dark-bg.light-color input[type="password"]::-moz-placeholder,
.dark-bg.light-color input[type="search"]::-moz-placeholder,
.dark-bg.light-color input[type="number"]::-moz-placeholder,
.dark-bg.light-color input[type="date"]::-moz-placeholder,
.dark-bg.light-color textarea::-moz-placeholder,
.dark-bg.light-color select::-moz-placeholder {
    color: var(--text-light);
}
.dark-bg.light-color input[type="text"]:-ms-input-placeholder,
.dark-bg.light-color input[type="email"]:-ms-input-placeholder,
.dark-bg.light-color input[type="url"]:-ms-input-placeholder,
.dark-bg.light-color input[type="tel"]:-ms-input-placeholder,
.dark-bg.light-color input[type="password"]:-ms-input-placeholder,
.dark-bg.light-color input[type="search"]:-ms-input-placeholder,
.dark-bg.light-color input[type="number"]:-ms-input-placeholder,
.dark-bg.light-color input[type="date"]:-ms-input-placeholder,
.dark-bg.light-color textarea:-ms-input-placeholder,
.dark-bg.light-color select:-ms-input-placeholder {
    color: var(--text-light);
}
.dark-bg.light-color input[type="text"]::-ms-input-placeholder,
.dark-bg.light-color input[type="email"]::-ms-input-placeholder,
.dark-bg.light-color input[type="url"]::-ms-input-placeholder,
.dark-bg.light-color input[type="tel"]::-ms-input-placeholder,
.dark-bg.light-color input[type="password"]::-ms-input-placeholder,
.dark-bg.light-color input[type="search"]::-ms-input-placeholder,
.dark-bg.light-color input[type="number"]::-ms-input-placeholder,
.dark-bg.light-color input[type="date"]::-ms-input-placeholder,
.dark-bg.light-color textarea::-ms-input-placeholder,
.dark-bg.light-color select::-ms-input-placeholder {
    color: var(--text-light);
}
.dark-bg.light-color input[type="text"]::placeholder,
.dark-bg.light-color input[type="email"]::placeholder,
.dark-bg.light-color input[type="url"]::placeholder,
.dark-bg.light-color input[type="tel"]::placeholder,
.dark-bg.light-color input[type="password"]::placeholder,
.dark-bg.light-color input[type="search"]::placeholder,
.dark-bg.light-color input[type="number"]::placeholder,
.dark-bg.light-color input[type="date"]::placeholder,
.dark-bg.light-color textarea::placeholder,
.dark-bg.light-color select::placeholder {
    color: var(--text-light);
}
.dark-bg.light-color select {
    background-image: url("data:image/svg+xml;utf8,<svg viewBox='0 0 140 140' width='24' height='24' xmlns='http://www.w3.org/2000/svg'><g><path d='m121.3,34.6c-1.6-1.6-4.2-1.6-5.8,0l-51,51.1-51.1-51.1c-1.6-1.6-4.2-1.6-5.8,0-1.6,1.6-1.6,4.2 0,5.8l53.9,53.9c0.8,0.8 1.8,1.2 2.9,1.2 1,0 2.1-0.4 2.9-1.2l53.9-53.9c1.7-1.6 1.7-4.2 0.1-5.8z' fill='white'/></g></svg>");
}
/*======================================
  #Umbraco forms
======================================*/
.success-color {
    color: var(--success) !important;
}
legend {
    padding: 0.85em 1em;
    line-height: 1;
    background: rgba(0, 0, 0, 0.025);
    font-weight: var(--font-weight-bold);
    font-size: 0.75em;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: var(--grid-gutter);
}
legend.legend-dark {
    background: rgba(0, 0, 0, 0.05);
    color: var(--text-dark);
}
.light-color legend {
    background-color: rgba(255, 255, 255, 0.05);
    color: var(--text-light);
}
.radiobuttonlist,
.multiplechoice,
.fileupload {
    margin-bottom: var(--grid-gutter);
    display: block;
}
.contourPage .checkbox {
    position: relative;
    padding-left: 26px;
    margin-bottom: var(--grid-gutter);
}
.contourPage .checkbox .checkbox-single {
    position: absolute;
    top: -6px;
    left: 6px;
}
#recaptcha_area {
    margin-bottom: var(--grid-gutter);
}
#recaptcha_area table {
    border: 0 !important;
}
.radio-list-item,
.checkbox-list-item {
    position: relative;
    padding: 10px 10px 10px 30px;
    margin-bottom: 2px;
}
.radio-list-item label,
.checkbox-list-item label {
    text-transform: none;
}
.radio-list-item input,
.checkbox-list-item input {
    position: absolute;
    left: 7px;
    top: 8px;
}
.radio-list-item label,
.checkbox-list-item label {
    margin: 0;
    font-size: 0.8rem;
    padding: 0;
    text-transform: none;
}
.umbraco-forms-field.checkbox {
    position: relative;
    padding-left: 1.5rem;
    margin-bottom: var(--grid-gutter);
}
.umbraco-forms-field.checkbox label {
    font-size: 0.8rem;
    text-transform: none;
    letter-spacing: 0;
}
.umbraco-forms-field.checkbox .umbraco-forms-field-wrapper {
    position: absolute;
    top: 0;
    left: 0;
}
@media only screen and (max-width: 768px) {
    .umbraco-forms-field.checkbox {
        margin-bottom: 20px;
    }
}
.help-block {
    font-size: 0.75rem;
    display: block;
    padding: 0 0 5px 0;
    margin-top: -0.7em;
}
.field-validation-error {
    display: block;
    color: var(--error);
    font-weight: var(--font-weight-bold);
    font-size: 0.75rem;
    margin-top: calc(var(--grid-gutter) * -1);
    margin-bottom: var(--grid-gutter);
}
@media only screen and (max-width: 768px) {
    .field-validation-error {
        margin-top: -1.25em;
        margin-bottom: 1.25em;
    }
}
.umbraco-forms-indicator,
.validation-summary-errors,
.error-color {
    color: var(--error);
}
/*======================================
  #Buttons
======================================*/
.button,
input[type="submit"],
input[type="button"] {
    display: inline-block;
    -webkit-appearance: none;
    line-height: 1;
    padding: 1em 2em;
    letter-spacing: 0.04em;
    font-size: 0.9rem;
    font-weight: var(--font-weight-bold);
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-width: 2px;
    border-style: solid;
    text-align: center;
    text-decoration: none !important;
    border-radius: var(--button-border-radius);
    background: var(--theme);
    color: var(--theme-contrast) !important;
    border-color: var(--theme);
}
.button:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
    background: var(--theme-darker);
    border-color: var(--theme-darker);
    color: var(--theme-contrast);
}
.button.button--block,
input[type="submit"].button--block,
input[type="button"].button--block {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}
.button.button--small,
input[type="submit"].button--small,
input[type="button"].button--small {
    padding: 0.8em 1em;
    font-size: 0.8rem;
    border-width: 1px;
}
.button.button--big,
input[type="submit"].button--big,
input[type="button"].button--big {
    padding: 1.2em 2em;
    font-size: 1.2rem;
}
.button.button--icon,
input[type="submit"].button--icon,
input[type="button"].button--icon {
    padding: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-width: 1px;
    font-size: 12px;
    background-color: var(--background-light);
    border: 1px solid var(--border-dark);
    color: var(--theme) !important;
}
.button.button--icon:hover,
input[type="submit"].button--icon:hover,
input[type="button"].button--icon:hover {
    background-color: var(--theme);
    border-color: var(--theme);
    color: white !important;
}
.button.button--favorite,
input[type="submit"].button--favorite,
input[type="button"].button--favorite {
    background-color: var(--background-light);
    border-color: var(--border-dark);
    color: var(--border-dark) !important;
}
.button.button--favorite:hover,
input[type="submit"].button--favorite:hover,
input[type="button"].button--favorite:hover {
    color: var(--star-color) !important;
    border-color: var(--star-color) !important;
    background-color: white;
}
.button.button--favorite--active,
input[type="submit"].button--favorite--active,
input[type="button"].button--favorite--active {
    background-color: var(--star-color) !important;
    color: white !important;
    border-color: var(--star-color) !important;
    -webkit-box-shadow: 0 0 5px rgba(241, 196, 15, 0.3);
    box-shadow: 0 0 5px rgba(241, 196, 15, 0.3);
}
.button.button--favorite--active:hover,
input[type="submit"].button--favorite--active:hover,
input[type="button"].button--favorite--active:hover {
    background-color: var(--background-light) !important;
    border-color: var(--border-dark) !important;
    color: var(--border-dark) !important;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.button.button--theme-alt,
input[type="submit"].button--theme-alt,
input[type="button"].button--theme-alt {
    background: var(--theme-alt);
    color: var(--theme-alt-contrast) !important;
    border-color: var(--theme-alt);
}
.button.button--theme-alt:hover,
input[type="submit"].button--theme-alt:hover,
input[type="button"].button--theme-alt:hover {
    background: var(--theme-alt-darker);
    border-color: var(--theme-alt-darker);
    color: var(--theme-alt-contrast) !important;
}
.button.button--dark,
input[type="submit"].button--dark,
input[type="button"].button--dark {
    color: var(--text-light) !important;
    background: var(--background-dark);
    border-color: var(--background-dark);
}
.button.button--dark:hover,
input[type="submit"].button--dark:hover,
input[type="button"].button--dark:hover {
    color: var(--text-light) !important;
    background: var(--background-dark-lighter);
    border-color: var(--background-dark-lighter);
}
.button.button--white,
input[type="submit"].button--white,
input[type="button"].button--white {
    background: var(--white);
    border-color: var(--white);
    color: var(--text-dark) !important;
}
.button.button--white:hover,
input[type="submit"].button--white:hover,
input[type="button"].button--white:hover {
    background: var(--background-light);
    border-color: var(--background-light);
    color: var(--text-dark) !important;
}
.button.button--white-alt,
input[type="submit"].button--white-alt,
input[type="button"].button--white-alt {
    background: var(--white);
    border-color: var(--border-dark);
    color: #222 !important;
}
.button.button--white-alt:hover,
input[type="submit"].button--white-alt:hover,
input[type="button"].button--white-alt:hover {
    background: var(--background-light);
    border-color: var(--border-dark);
    color: #222 !important;
}
.button.button--light,
input[type="submit"].button--light,
input[type="button"].button--light,
.button.button--gray,
input[type="submit"].button--gray,
input[type="button"].button--gray {
    background: var(--background-light);
    border-color: var(--background-light);
    color: var(--text-dark) !important;
}
.button.button--light:hover,
input[type="submit"].button--light:hover,
input[type="button"].button--light:hover,
.button.button--gray:hover,
input[type="submit"].button--gray:hover,
input[type="button"].button--gray:hover {
    background: var(--white);
    border-color: var(--white);
    color: var(--text-dark) !important;
}
.button.button--border,
input[type="submit"].button--border,
input[type="button"].button--border {
    background: transparent;
    color: var(--theme) !important;
}
.button.button--border:hover,
input[type="submit"].button--border:hover,
input[type="button"].button--border:hover {
    background: var(--theme);
    border-color: var(--theme);
    color: var(--theme-contrast) !important;
}
.button.button--border.button--theme-alt,
input[type="submit"].button--border.button--theme-alt,
input[type="button"].button--border.button--theme-alt {
    color: var(--theme-alt) !important;
}
.button.button--border.button--theme-alt:hover,
input[type="submit"].button--border.button--theme-alt:hover,
input[type="button"].button--border.button--theme-alt:hover {
    color: var(--theme-contrast) !important;
    background: var(--theme-alt);
    border-color: var(--theme-alt);
}
.button.button--border.button--dark,
input[type="submit"].button--border.button--dark,
input[type="button"].button--border.button--dark {
    color: var(--background-dark) !important;
}
.button.button--border.button--dark:hover,
input[type="submit"].button--border.button--dark:hover,
input[type="button"].button--border.button--dark:hover {
    color: var(--text-light) !important;
    background: var(--background-dark);
    border-color: var(--background-dark);
}
.button.button--border.button--white,
input[type="submit"].button--border.button--white,
input[type="button"].button--border.button--white {
    color: var(--white) !important;
}
.button.button--border.button--white:hover,
input[type="submit"].button--border.button--white:hover,
input[type="button"].button--border.button--white:hover {
    color: var(--text-dark) !important;
    background: var(--white);
    border-color: var(--white);
}
.button.button--border.button--light,
input[type="submit"].button--border.button--light,
input[type="button"].button--border.button--light,
.button.button--border.button--gray,
input[type="submit"].button--border.button--gray,
input[type="button"].button--border.button--gray {
    color: var(--background-light) !important;
}
.button.button--border.button--light:hover,
input[type="submit"].button--border.button--light:hover,
input[type="button"].button--border.button--light:hover,
.button.button--border.button--gray:hover,
input[type="submit"].button--border.button--gray:hover,
input[type="button"].button--border.button--gray:hover {
    color: var(--text-dark) !important;
    background: var(--background-light);
    border-color: var(--background-light);
}
.button[disabled],
input[type="submit"][disabled],
input[type="button"][disabled],
.button.button--disabled,
input[type="submit"].button--disabled,
input[type="button"].button--disabled {
    cursor: not-allowed;
    background: var(--border-dark) !important;
    border-color: var(--border-dark) !important;
    color: var(--text-dark) !important;
}
.button[disabled]:hover,
input[type="submit"][disabled]:hover,
input[type="button"][disabled]:hover,
.button.button--disabled:hover,
input[type="submit"].button--disabled:hover,
input[type="button"].button--disabled:hover {
    background: var(--border-dark) !important;
    border-color: var(--border-dark) !important;
    color: var(--text-dark) !important;
}
/*======================================
  #Button loading state
======================================*/
.button.button--loading {
    position: relative;
    color: transparent !important;
    pointer-events: none;
    overflow: hidden;
    outline: none;
    background-color: var(--background-light) !important;
    border-color: var(--background-light) !important;
}
.button.button--loading::after,
.button.button--loading::before {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    background-color: var(--black);
    border-radius: 50%;
    top: 50%;
    left: 50%;
    opacity: 0.2;
    -webkit-transform: translate(-50%, -50%) scale(0);
    -ms-transform: translate(-50%, -50%) scale(0);
    transform: translate(-50%, -50%) scale(0);
    -webkit-animation: button-load 1.2s infinite ease-in-out;
    animation: button-load 1.2s infinite ease-in-out;
}
.button.button--loading::before {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
}
@-webkit-keyframes button-load {
    0% {
        -webkit-transform: translate(-50%, -50%) scale(0);
        transform: translate(-50%, -50%) scale(0);
        border-radius: 50%;
        opacity: 0.2;
    }
    100% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(8);
        transform: translate(-50%, -50%) scale(8);
    }
}
@keyframes button-load {
    0% {
        -webkit-transform: translate(-50%, -50%) scale(0);
        transform: translate(-50%, -50%) scale(0);
        border-radius: 50%;
        opacity: 0.2;
    }
    100% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(8);
        transform: translate(-50%, -50%) scale(8);
    }
}
/*======================================
  #Checkbox
======================================*/
/* Customize the label (the container) */
.cb-wrap,
.rb-wrap {
    display: block;
    position: relative;
    padding-left: 1.35rem;
    cursor: pointer;
    font-size: 0.875rem;
    font-weight: var(--font-weight-bold);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    line-height: 16px;
    text-transform: none;
    letter-spacing: 0;
    margin-bottom: 0.8em;
}
.cb-wrap p,
.rb-wrap p {
    margin-bottom: 0px;
}
/* Hide the browser's default checkbox */
.cb-wrap input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}
/* Create a custom checkbox */
.cb-wrap .checkmark {
    position: absolute;
    border-radius: 2px;
    top: 0;
    left: 0;
    height: 1rem;
    width: 1rem;
    background-color: rgba(0, 0, 0, 0.15);
    -webkit-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
/* cb-wrap mouse-over, add a grey background color */
.cb-wrap:hover input ~ .checkmark {
    background-color: #ccc;
}
/* When the checkbox is checked, add a blue background */
.cb-wrap input:checked ~ .checkmark {
    background-color: var(--success) !important;
}
/* Create the checkmark/indicator (hidden when not checked) */
.cb-wrap .checkmark:after {
    content: "";
    position: absolute;
    color: var(--theme-contrast);
}
/* Show the checkmark when checked */
.cb-wrap input:checked ~ .checkmark:after {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%) scale(1) translateZ(0);
    transform: translate(-50%, -50%) scale(1) translateZ(0);
}
/* Style the checkmark/indicator */
.cb-wrap .checkmark:after {
    content: "\f00c";
    font-family: "FontAwesome";
    color: white;
    line-height: 1;
    font-size: 0.75rem;
    -webkit-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) scale(0) translateZ(0);
    transform: translate(-50%, -50%) scale(0) translateZ(0);
    opacity: 0;
}
.cb-wrap input:focus ~ .checkmark {
    border: 1px solid var(--success);
    -webkit-box-shadow: 0 0 0 2px white, 0 0 0 4px var(--success);
    box-shadow: 0 0 0 2px white, 0 0 0 4px var(--success);
}
.dark-bg.light-color .cb-wrap .checkmark {
    background: var(--background-dark-lighter);
}
/*======================================
  #Radio Button
======================================*/
/* Hide the browser's default radio button */
.rb-wrap input[type="radio"] {
    position: absolute;
    opacity: 0;
}
/* Create a custom radio button */
.rb-wrap .radiobtn {
    position: absolute;
    top: 0;
    left: 0;
    height: 1rem;
    width: 1rem;
    background-color: rgba(0, 0, 0, 0.15);
    border-radius: 50%;
    -webkit-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
/* On mouse-over, add a grey background color */
.rb-wrap:hover input[type="radio"] ~ .radiobtn {
    background-color: #ccc;
}
/* When the radio button is checked, add a blue background */
.rb-wrap input[type="radio"]:checked ~ .radiobtn {
    background-color: var(--success) !important;
}
/* Create the indicator (the dot/circle - hidden when not checked) */
.rb-wrap .radiobtn:after {
    content: "";
    position: absolute;
    opacity: 0;
    -webkit-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    -webkit-transform: translate(-50%, -50%) scale(0);
    -ms-transform: translate(-50%, -50%) scale(0);
    transform: translate(-50%, -50%) scale(0);
}
/* Show the indicator (dot/circle) when checked */
.rb-wrap input[type="radio"]:checked ~ .radiobtn:after {
    display: block;
    opacity: 1;
    -webkit-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
}
/* Style the indicator (dot/circle) */
.rb-wrap .radiobtn:after {
    top: 50%;
    left: 50%;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--white);
    color: var(--theme-contrast);
}
.rb-wrap input[type="radio"]:focus ~ .radiobtn {
    border: 1px solid var(--success);
    -webkit-box-shadow: 0 0 0 2px white, 0 0 0 4px var(--success);
    box-shadow: 0 0 0 2px white, 0 0 0 4px var(--success);
}
.dark-bg.light-color .rb-wrap .radiobtn {
    background: var(--background-dark-lighter);
}
/*======================================
  #Container
======================================*/
.container-fluid,
.container {
    margin-right: auto;
    margin-left: auto;
    padding-left: var(--grid-gutter);
    padding-right: var(--grid-gutter);
}
.container {
    max-width: var(--grid-width);
}
.container--small {
    max-width: var(--grid-width-small);
}
.container--big {
    max-width: var(--grid-width-big);
}
.container--fluid {
    max-width: 100%;
}
/*======================================
  #Row
======================================*/
.row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-left: calc(var(--grid-gutter-half) * -1);
    margin-right: calc(var(--grid-gutter-half) * -1);
}
.row.row--center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.row.row--left {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}
.row.row--right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.row.row--space-around {
    -ms-flex-pack: distribute;
    justify-content: space-around;
}
.row.row--space-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.row.row--space-evenly {
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
}
.row.row--v-top {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.row.row--v-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.row.row--v-bottom {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.row.row--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.row.row--flat,
.row.row--flat row.sub-grid {
    margin-left: 0;
    margin-right: 0;
}
.row.row--flat > [class*="col-"],
.row.row--flat row.sub-grid > [class*="col-"],
.row.row--flat > .col,
.row.row--flat row.sub-grid > .col {
    padding-left: 0;
    padding-right: 0;
}
@media only screen and (max-width: 768px) {
    .row.row--flat-s {
        margin-left: 0;
        margin-right: 0;
    }
    .row.row--flat-s > [class*="col-"],
    .row.row--flat-s > .col {
        padding-left: 0;
        padding-right: 0;
    }
}
.row.row--grow > [class*="col-"],
.row.row--grow > .col {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}
.row.row--no-wrap {
    -ms-flex-flow: nowrap;
    flex-flow: nowrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.row.row--no-wrap > [class*="col-"] {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
}
@media only screen and (max-width: 992px) {
    .row.row--no-wrap-m {
        -ms-flex-flow: nowrap;
        flex-flow: nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .row.row--no-wrap-m > [class*="col-"] {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }
}
@media only screen and (max-width: 768px) {
    .row.row--no-wrap-s {
        -ms-flex-flow: nowrap;
        flex-flow: nowrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .row.row--no-wrap-s > [class*="col-"] {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }
}
/*======================================
  #Cols
======================================*/
[class*="col-"],
.col {
    padding-left: var(--grid-gutter-half);
    padding-right: var(--grid-gutter-half);
}
[class*="col-"].col--v-center,
.col.col--v-center {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
}
[class*="col-"].col--grow,
.col.col--grow {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}
.col {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
}
.col-10 {
    -ms-flex-preferred-size: 10%;
    flex-basis: 10%;
    max-width: 10%;
}
.col-16 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
}
.col-20 {
    -ms-flex-preferred-size: 20%;
    flex-basis: 20%;
    max-width: 20%;
}
.col-25 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
}
.col-30 {
    -ms-flex-preferred-size: 30%;
    flex-basis: 30%;
    max-width: 30%;
}
.col-33 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
}
.col-40 {
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%;
    max-width: 40%;
}
.col-45 {
    -ms-flex-preferred-size: 45%;
    flex-basis: 45%;
    max-width: 45%;
}
.col-50 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
}
.col-55 {
    -ms-flex-preferred-size: 55%;
    flex-basis: 55%;
    max-width: 55%;
}
.col-60 {
    -ms-flex-preferred-size: 60%;
    flex-basis: 60%;
    max-width: 60%;
}
.col-66 {
    -ms-flex-preferred-size: 66.66666666%;
    flex-basis: 66.66666666%;
    max-width: 66.66666666%;
}
.col-70 {
    -ms-flex-preferred-size: 70%;
    flex-basis: 70%;
    max-width: 70%;
}
.col-75 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
}
.col-80 {
    -ms-flex-preferred-size: 80%;
    flex-basis: 80%;
    max-width: 80%;
}
.col-90 {
    -ms-flex-preferred-size: 90%;
    flex-basis: 90%;
    max-width: 90%;
}
.col-100 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
}
@media only screen and (max-width: 1200px) {
    .col-l-10 {
        -ms-flex-preferred-size: 10%;
        flex-basis: 10%;
        max-width: 10%;
    }
    .col-l-16 {
        -ms-flex-preferred-size: 16.66666667%;
        flex-basis: 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-l-20 {
        -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
        max-width: 20%;
    }
    .col-l-25 {
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        max-width: 25%;
    }
    .col-l-30 {
        -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
        max-width: 30%;
    }
    .col-l-33 {
        -ms-flex-preferred-size: 33.33333333%;
        flex-basis: 33.33333333%;
        max-width: 33.33333333%;
    }
    .col-l-40 {
        -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
        max-width: 40%;
    }
    .col-l-45 {
        -ms-flex-preferred-size: 45%;
        flex-basis: 45%;
        max-width: 45%;
    }
    .col-l-50 {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%;
    }
    .col-l-55 {
        -ms-flex-preferred-size: 55%;
        flex-basis: 55%;
        max-width: 55%;
    }
    .col-l-60 {
        -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
        max-width: 60%;
    }
    .col-l-66 {
        -ms-flex-preferred-size: 66.66666666%;
        flex-basis: 66.66666666%;
        max-width: 66.66666666%;
    }
    .col-l-70 {
        -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
        max-width: 70%;
    }
    .col-l-75 {
        -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
        max-width: 75%;
    }
    .col-l-80 {
        -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
        max-width: 80%;
    }
    .col-l-90 {
        -ms-flex-preferred-size: 90%;
        flex-basis: 90%;
        max-width: 90%;
    }
    .col-l-100 {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        max-width: 100%;
    }
}
@media only screen and (max-width: 992px) {
    .col-m-10 {
        -ms-flex-preferred-size: 10%;
        flex-basis: 10%;
        max-width: 10%;
    }
    .col-m-16 {
        -ms-flex-preferred-size: 16.66666667%;
        flex-basis: 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-m-20 {
        -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
        max-width: 20%;
    }
    .col-m-25 {
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        max-width: 25%;
    }
    .col-m-30 {
        -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
        max-width: 30%;
    }
    .col-m-33 {
        -ms-flex-preferred-size: 33.33333333%;
        flex-basis: 33.33333333%;
        max-width: 33.33333333%;
    }
    .col-m-40 {
        -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
        max-width: 40%;
    }
    .col-m-45 {
        -ms-flex-preferred-size: 45%;
        flex-basis: 45%;
        max-width: 45%;
    }
    .col-m-50 {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%;
    }
    .col-m-55 {
        -ms-flex-preferred-size: 55%;
        flex-basis: 55%;
        max-width: 55%;
    }
    .col-m-60 {
        -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
        max-width: 60%;
    }
    .col-m-66 {
        -ms-flex-preferred-size: 66.66666666%;
        flex-basis: 66.66666666%;
        max-width: 66.66666666%;
    }
    .col-m-70 {
        -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
        max-width: 70%;
    }
    .col-m-75 {
        -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
        max-width: 75%;
    }
    .col-m-80 {
        -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
        max-width: 80%;
    }
    .col-m-90 {
        -ms-flex-preferred-size: 90%;
        flex-basis: 90%;
        max-width: 90%;
    }
    .col-m-100 {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        max-width: 100%;
    }
}
@media only screen and (max-width: 768px) {
    .col-s-10 {
        -ms-flex-preferred-size: 10%;
        flex-basis: 10%;
        max-width: 10%;
    }
    .col-s-16 {
        -ms-flex-preferred-size: 16.66666667%;
        flex-basis: 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-s-20 {
        -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
        max-width: 20%;
    }
    .col-s-25 {
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        max-width: 25%;
    }
    .col-s-30 {
        -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
        max-width: 30%;
    }
    .col-s-33 {
        -ms-flex-preferred-size: 33.33333333%;
        flex-basis: 33.33333333%;
        max-width: 33.33333333%;
    }
    .col-s-40 {
        -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
        max-width: 40%;
    }
    .col-s-45 {
        -ms-flex-preferred-size: 45%;
        flex-basis: 45%;
        max-width: 45%;
    }
    .col-s-50 {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%;
    }
    .col-s-55 {
        -ms-flex-preferred-size: 55%;
        flex-basis: 55%;
        max-width: 55%;
    }
    .col-s-60 {
        -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
        max-width: 60%;
    }
    .col-s-66 {
        -ms-flex-preferred-size: 66.66666666%;
        flex-basis: 66.66666666%;
        max-width: 66.66666666%;
    }
    .col-s-70 {
        -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
        max-width: 70%;
    }
    .col-s-75 {
        -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
        max-width: 75%;
    }
    .col-s-80 {
        -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
        max-width: 80%;
    }
    .col-s-90 {
        -ms-flex-preferred-size: 90%;
        flex-basis: 90%;
        max-width: 90%;
    }
    .col-s-100 {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        max-width: 100%;
    }
}
@media only screen and (max-width: 480px) {
    .col-xs-10 {
        -ms-flex-preferred-size: 10%;
        flex-basis: 10%;
        max-width: 10%;
    }
    .col-xs-16 {
        -ms-flex-preferred-size: 16.66666667%;
        flex-basis: 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-xs-20 {
        -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
        max-width: 20%;
    }
    .col-xs-25 {
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        max-width: 25%;
    }
    .col-xs-30 {
        -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
        max-width: 30%;
    }
    .col-xs-33 {
        -ms-flex-preferred-size: 33.33333333%;
        flex-basis: 33.33333333%;
        max-width: 33.33333333%;
    }
    .col-xs-40 {
        -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
        max-width: 40%;
    }
    .col-xs-45 {
        -ms-flex-preferred-size: 45%;
        flex-basis: 45%;
        max-width: 45%;
    }
    .col-xs-50 {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%;
    }
    .col-xs-55 {
        -ms-flex-preferred-size: 55%;
        flex-basis: 55%;
        max-width: 55%;
    }
    .col-xs-60 {
        -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
        max-width: 60%;
    }
    .col-xs-66 {
        -ms-flex-preferred-size: 66.66666666%;
        flex-basis: 66.66666666%;
        max-width: 66.66666666%;
    }
    .col-xs-70 {
        -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
        max-width: 70%;
    }
    .col-xs-75 {
        -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
        max-width: 75%;
    }
    .col-xs-80 {
        -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
        max-width: 80%;
    }
    .col-xs-90 {
        -ms-flex-preferred-size: 90%;
        flex-basis: 90%;
        max-width: 90%;
    }
    .col-xs-100 {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        max-width: 100%;
    }
}
/*======================================
  #Order
======================================*/
.col-order-1 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}
.col-order-2 {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
}
.col-order-3 {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
}
.col-order-4 {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4;
}
.col-order-5 {
    -webkit-box-ordinal-group: 6;
    -ms-flex-order: 5;
    order: 5;
}
@media only screen and (max-width: 992px) {
    .col-m-order-1 {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
    .col-m-order-2 {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .col-m-order-3 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }
    .col-m-order-4 {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4;
    }
    .col-m-order-5 {
        -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
        order: 5;
    }
}
@media only screen and (max-width: 768px) {
    .col-s-order-1 {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
    .col-s-order-2 {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .col-s-order-3 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }
    .col-s-order-4 {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4;
    }
    .col-s-order-5 {
        -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
        order: 5;
    }
}
/*======================================
  #Fallback
======================================*/
.browser-explorer.browser-version-9 .row:before,
.browser-explorer.browser-version-8 .row:before,
.browser-explorer.browser-version-9 .row:after,
.browser-explorer.browser-version-8 .row:after {
    content: " ";
    display: table;
}
.browser-explorer.browser-version-9 .row:after,
.browser-explorer.browser-version-8 .row:after {
    clear: both;
}
.browser-explorer.browser-version-9 [class*="col-"],
.browser-explorer.browser-version-8 [class*="col-"],
.browser-explorer.browser-version-9 .col,
.browser-explorer.browser-version-8 .col {
    float: left;
}

/*======================================
  #Fadeout text
======================================*/
#fadeout-text {
    position: relative;
    overflow: hidden;
    max-height: calc(150px);
}

#initial-text {
    position: relative;
    overflow: hidden;
    max-height: calc(150px + 79.2px);
}

#fadeout-text:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(
        to bottom,
        transparent 60%,
        var(--background-light) 100%
    );
    pointer-events: none;
}

#expanded-text {
    position: relative;
    overflow: hidden;
}

#show-more-button {
    display: none;
    margin-top: 0.5rem;
    margin-bottom: 1.5rem;
}

/*======================================
  #Custom pagination
======================================*/

.pagination-wrapper {
    padding: 15px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

/* rows per page  */
.pagination-rpp-1 {
    font-size: 14px;
    color: #909399;
}

/* rows per page  */
.pagination-rpp-2 {
    font-size: 14px;
    margin-left: 8px;
    color: #606266;
    font-weight: 700;
}

/* previous page  */
.pagination-pp {
    color: #606266;
    font-weight: 700;
    white-space: nowrap;
    font-size: 14px;
    position: relative;
    padding-left: 11px;
    cursor: pointer;
}

.pagination-pp::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 0;
    width: 0;
    height: 0;
    border-right: 6px solid var(--theme);
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
}

/* next page  */
.pagination-np {
    color: #606266;
    font-weight: 700;
    white-space: nowrap;
    font-size: 14px;
    position: relative;
    padding-right: 8px;
    cursor: pointer;
}

.pagination-np::after {
    content: "";
    position: absolute;
    top: 3px;
    right: 0;
    width: 0;
    height: 0;
    border-left: 6px solid var(--theme);
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
}

/* from to of */
.pagination-fto {
    color: #909399;
    margin: 0 16px;
    font-size: 14px;
}

.pagination-disabled {
    cursor: not-allowed;
    color: #606266;
    opacity: 0.5;
    border-right-color: #606266;
    border-left-color: #606266;
}

.pagination-disabled::after {
    border-right-color: #606266;
    border-left-color: #606266;
}
