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, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    margin: 0;
    padding: 0
}

article, aside, details, figcaption, figure, footer, header, menu, nav, section {
    display: block
}

body {
    line-height: 1
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote::before, blockquote::after, q::before, q::after {
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

@font-face {
    font-family: 'raleway';
    src: url('../fonts/raleway-extrabold-webfont.woff2') format('woff2'),
    url('../fonts/raleway-extrabold-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'raleway';
    src: url('../fonts/raleway-extrabolditalic-webfont.woff2') format('woff2'),
    url('../fonts/raleway-extrabolditalic-webfont.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'cabin';
    src: url('../fonts/cabin-regular-webfont.woff2') format('woff2'),
    url('../fonts/cabin-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'cabin';
    src: url('../fonts/cabin-medium-webfont.woff2') format('woff2'),
    url('../fonts/cabin-medium-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'cabin';
    src: url('../fonts/cabin-semibold-webfont.woff2') format('woff2'),
    url('../fonts/cabin-semibold-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

/* Basic HTML
------------------------------------------------------------------------*/
:root {
    font-size: 14px;

    --font-size-small: 12px;
    --font-size-normal: 1rem;
    --font-size-large: 16px;
    --font-size-h1: 32px;
    --font-size-h2: 26px;
    --font-size-h3: 18px;
    --font-size-h4: 16px;

    --vh: 1vh;
    --gutter-full: 16px;
    --gutter-half: calc(var(--gutter-full) / 2);
    --wrapper-max: 100vw;
    --col-with-gutter: calc((var(--wrapper-max) - var(--gutter-full)) / 12);
    --col: calc(var(--col-with-gutter) - var(--gutter-full));

    --color-light: #fff;
    --color-light-80: rgba(255, 255, 255, 0.8);
    --color-dark: #2c363f;
    --color-accent: #FED141;
    --color-primary: #016fb9;
    --color-primary-20: rgba(1, 111, 185, 0.2);
    --color-primary-alt: #5e8ab4;
    --color-grey-dark: #292929;
    --color-grey-dark-20: rgba(41, 41, 41, 0.2);
    --color-grey-medium: #7E848B;
    --color-grey-light: #D6D9E0;
    --color-grey-lighter: #E9ECF2;
    --color-success: #01B98C;
    --color-danger: #DB1B4C;
    --color-danger-alt: #CE6882;
    --color-warning: var(--color-accent);
    --color-chat-message: #E6F5FF;
    --color-chat-message-highlight: #B7DFFA;

    --margin-mini: 10px;
    --margin-small: 1rem;
    --margin-medium: 20px;
    --margin-large: 32px;
}
html {
    overflow-x: hidden;
    height: 100%;
}
body {
    font-family: 'cabin', sans-serif;
    line-height: 1.5;
    background: var(--color-light);
    color: var(--color-dark);

    min-width: 360px;
    -webkit-text-size-adjust: 100%;
    /*noinspection CssUnknownProperty*/
    text-size-adjust: 100%;

    display: flex;
    flex-flow: column;
    min-height: 100%;
}
*:first-child {
    margin-top: 0;
}
*:last-child {
    margin-bottom: 0;
}
h1, h2, h3, h4, h5,
.h1, .h2, .h3, .h4, .h5 {
    line-height: 1.25;
}
.h1:first-child,
.h2:first-child,
.h3:first-child,
.h4:first-child,
.h5:first-child {
    margin-top: 0;
}
.h1:last-child,
.h2:last-child,
.h3:last-child,
.h4:last-child,
.h5:last-child {
    margin-bottom: 0;
}
h1, .h1 {
    font-family: 'raleway', sans-serif;
    font-size: var(--font-size-h1);
    font-weight: bold;
    color: var(--color-primary);
    margin-top: 0;
    margin-bottom: var(--margin-medium);
}
h2, .h2 {
    font-family: 'raleway', sans-serif;
    font-size: var(--font-size-h2);
    font-weight: bold;
    color: var(--color-dark);
    margin-top: var(--margin-large);
    margin-bottom: var(--margin-medium);
}
h3, .h3 {
    font-family: 'cabin', sans-serif;
    font-size: var(--font-size-h3);
    font-weight: 500;
    color: var(--color-primary);
    margin-top: var(--margin-large);
    margin-bottom: var(--margin-mini);
}
h4, .h4 {
    font-family: 'cabin', sans-serif;
    font-size: var(--font-size-h4);
    font-weight: normal;
    color: var(--color-dark);
    margin-top: var(--margin-medium);
    margin-bottom: var(--margin-mini);
}
h5, .h5 {
    font-family: 'cabin', sans-serif;
    font-size: var(--font-size-normal);
    font-weight: bold;
    color: var(--color-primary);
    margin-top: var(--margin-small);
    margin-bottom: var(--margin-mini);
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h4 small,
.h4 small,
h5 small,
.h5 small {
    font-family: 'cabin', sans-serif;
    font-size: var(--font-size-small);
    font-weight: normal;
    color: var(--color-grey-medium);
}
ol {
    list-style: decimal;
    padding: 0 0 0 35px;
    overflow: hidden;
}
ul {
    list-style: disc;
    padding: 0 0 0 35px;
    overflow: hidden;
}
p, ol, ul {
    margin-top: var(--margin-small);
    margin-bottom: var(--margin-small);
}
a {
    font-weight: bold;
    color: var(--color-primary);
    text-decoration: underline;
    transition: 0.3s;
    transition-property: color;
}
.link-neutral {
    font-weight: inherit;
    color: inherit;
}
a:focus,
a:hover,
.link-neutral:focus,
.link-neutral:hover {
    text-decoration: none;
    color: var(--color-primary-alt);
}
strong {
    font-weight: bold;
}
em {
    font-style: italic;
}
hr {
    border: 0 var(--color-dark) solid;
    border-top-width: 1px;
    clear: both;
    height: 0;
}
table {
    width: 100%;
}
table th,
table td {
    border: 1px solid var(--color-grey-medium);
    padding: 5px 10px;
}
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
input[type="button"],
input[type="reset"],
input[type="submit"],
button,
textarea {
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    -webkit-appearance: none;

    font: inherit;
    color: inherit;

    box-shadow: none;
    outline: 0;
    opacity: 1;
    margin: 0;
}
textarea {
    overflow: auto;
    resize: none;
}
input[type="button"],
input[type="reset"],
input[type="submit"],
button {
    cursor: pointer;
}
input[type="button"]::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
    padding: 0;
    border: 0
}

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

img,
video {
    max-width: 100%;
    height: auto;
}

.nodisplay,
.hiddenField {
    display: none !important;
}
.mfp-hide {
    display: none !important;
}

/* clearfix */
.cf { zoom: 1; }
.cf::before, .cf::after { content: ""; display: table; }
.cf::after { clear: both; }
.wrapper {
    padding: 0 var(--gutter-full);
    margin: 0 auto;
    min-width: 360px;
    max-width: var(--wrapper-max);
}
.wrapper::after {
    content: '';
    display: table;
    clear: both;
}

.super-title {
    color: var(--color-grey-medium);
    text-transform: uppercase;
    letter-spacing: 0.075em;
    font-size: var(--font-size-small);
    font-weight: bold;
    margin-top: 0;
    margin-bottom: 0;
}

.text-left {
    text-align: left;
}
.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}
.text-caps {
    text-transform: uppercase;
}
.text-small {
    font-size: var(--font-size-small);
}
.text-large {
    font-size: var(--font-size-large);
}
.text-wrap {
    white-space: normal;
}
.text-nowrap {
    white-space: nowrap;
}

.text-success {
    color: var(--color-success);
}
.text-danger {
    color: var(--color-danger);
}
.text-warning,
.text-accent {
    color: var(--color-accent);
}
.text-primary {
    color: var(--color-primary);
}
.text-grey {
    color: var(--color-grey-medium);
}
.text-status {
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.075em;
    font-size: var(--font-size-small);
}

.text-icon {
    display: flex;
    align-items: center;
}
.text-icon > svg {
    flex: 0 0 auto;
}
.text-icon > * {
    margin-top: 0;
    margin-bottom: 0;
}

.img-left,
.img-right,
.img-block {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: var(--margin-small);
}
* + * > .img-left,
* + * > .img-right,
* + * > .img-block {
    margin-top: var(--margin-large);
}

.sr-only {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*noinspection CssInvalidMediaFeature*/
@media (prefers-reduced-motion: reduce) {
    * {
        /* Don't set to 0s to keep transitionend events */
        transition-duration: 0.0001s !important;
    }
}

#tarteaucitronBack,
#tarteaucitron {
    display: none;
}

.icon-std {
    width: 1em;
    height: 1.5em;
    vertical-align: top;
    fill: currentColor;
    transition: fill 0.3s;
}
.icon-container {
    display: inline-block;
    vertical-align: top;
    width: 1.25em;
    height: 1.5em;
    position: relative;
}
.icon-container .icon-std {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 1.25em;
    height: 1em;
    margin: auto;
}
.icon-container .notification-pill {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
}
.icon-std-large {
    width: 1.5em;
}
.icon-pos-left {
    display: inline-block;
    margin-right: 12px;
}
.icon-pos-right {
    display: inline-block;
    margin-left: 12px;
}

.notification-pill {
    display: inline-block;
    vertical-align: top;
    background: var(--color-danger);
    width: 12px;
    height: 12px;
    border-radius: 50%;
}
.notification-pill-small {
    width: 6px;
    height: 6px;
}
.notification-pill-right {
    margin-left: var(--margin-mini);
}
.notification-pill-baseline {
    vertical-align: baseline;
}

/* FIXME Isn't this redundant? */
.list-unstyled {
    list-style: none;
    padding: 0;
    overflow: visible;
}

.list-label-value > ul {
    list-style: none;
    padding: 0;
}
.list-label-value > ul > li {
    display: flex;
}
.list-label-value > ul > li + li {
    margin-top: var(--margin-small);
}
.list-label-value .label {
    padding-right: var(--gutter-half);
    margin-right: auto;
}
.list-label-value .value {
    padding-left: var(--gutter-half);
    margin-left: auto;
    text-align: right;
}
.list-label-value-vertical > ul > li {
    display: block;
}
.list-label-value-vertical > ul > li + li {
    margin-top: var(--margin-medium);
}
.list-label-value-vertical .label {
    display: block;
    padding-right: 0;
    margin-right: 0;
    font-weight: bold;
}
.list-label-value-vertical .label:not(:last-child) {
    margin-bottom: var(--margin-mini);
}
.list-label-value-vertical .value {
    display: block;
    padding-left: 0;
    margin-left: 0;
    text-align: left;
}


.list-numbers {
    text-align: center;
}
.list-numbers:not(:last-child) {
    margin-bottom: var(--margin-medium);
}
.list-numbers > ul {
    list-style: none;
    padding: 0;
    margin-bottom: calc(-1 * var(--margin-small));
    overflow: visible;
}
.list-numbers > ul > li {
    margin-bottom: var(--margin-small);
}
.list-numbers-label {
    display: block;
    font-size: var(--font-size-small);
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.075em;
    color: var(--color-grey-medium);
}
.list-numbers-label:not(:last-child) {
    margin-bottom: var(--margin-mini);
}
.list-numbers-value {
    display: block;
    margin-top: auto;
}

.scrollable-table:not(:first-child),
.table:not(:first-child) {
    margin-top: var(--margin-small);
}
.scrollable-table:not(:last-child),
.table:not(:last-child) {
    margin-bottom: var(--margin-small);
}
.scrollable-table {
    /* Needed to prevent weird page scroll on GC */
    position: relative;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.scrollable-table .table {
    white-space: nowrap;
}
.table:not(.table-simple) > thead > tr,
.table:not(.table-simple) > tbody > tr,
.table:not(.table-simple) > thead > tr > td,
.table:not(.table-simple) > thead > tr > th,
.table:not(.table-simple) > tbody > tr > td,
.table:not(.table-simple) > tbody > tr > th {
    border: 1px solid var(--color-grey-light);
}
.table-simple > thead > tr,
.table-simple > tbody > tr {
    border: 1px solid var(--color-grey-lighter);
}
.table > thead > tr > th,
.table > thead > tr > td,
.table > tbody > tr > th,
.table > tbody > tr > td {
    border: 0;
}
.table th:not(.text-center):not(.text-right) {
    text-align: left;
}
.table > thead > tr > th,
.table > thead > tr > td {
    background: var(--color-primary);
    color: var(--color-light);
    font-size: var(--font-size-small);
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.075em;
    padding: 12px 16px 13px;
    vertical-align: middle;
}
.table > thead > tr > td {
    background-color: var(--color-grey-lighter);
}
.table > tbody > tr > th,
.table > tbody > tr > td {
    background: var(--color-light);
    padding: 11px 16px;
    vertical-align: middle;
}
.table > tbody > tr > th {
    font-weight: bold;
    font-size: var(--font-size-small);
    background-color: var(--color-grey-lighter);
}
.table > tbody > .table-row-grey > th,
.table > tbody > .table-row-grey > td,
.table-striped > tbody > tr:nth-child(even) > th,
.table-striped > tbody > tr:nth-child(even) > td {
    background-color: var(--color-grey-light);
}
.table-simple > tbody > .table-row-grey > th,
.table-simple > tbody > .table-row-grey > td,
.table-simple.table-striped > tbody > tr:nth-child(even) > th,
.table-simple.table-striped > tbody > tr:nth-child(even) > td {
    background-color: var(--color-grey-lighter);
}
.table .table-select-th,
.table .table-select-td {
    width: 1px;
    padding-left: 8px;
    padding-right: 0;
}
.table .table-select-th label,
.table .table-select-td label {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.table .table-actions-td {
    vertical-align: middle;
}
.table-actions {
    display: flex;
    justify-content: flex-end;
}
.table-actions .btn-icon {
    flex: 0 0 auto;
    margin-left: 8px;
    margin-right: 8px;
    width: 36px;
    height: 36px;
    font-size: var(--font-size-normal);
    color: var(--color-primary);
    position: relative;
    border-radius: 4px;
    transition: 0.3s;
    transition-property: color, background-color;
}
.table-actions .btn-icon:focus,
.table-actions .btn-icon:hover {
    color: var(--color-light);
    background-color: var(--color-primary-alt);
}
.table-actions .btn-icon.js-popover-toggler-open {
    color: var(--color-primary);
    background-color: var(--color-grey-lighter);
}
.table-actions .btn-icon svg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}
.table-actions .btn-icon svg {
    width: 1em;
    height: 1em;
}
.table-actions-list {
    position: absolute;
    margin-top: 44px;
    margin-right: -44px;
    /*noinspection CssUnresolvedCustomProperty*/
    top: var(--popover-top, 0);
    /*noinspection CssUnresolvedCustomProperty*/
    right: calc(100vw - var(--popover-left, 0));
    background: var(--color-light);
    border: 1px solid var(--color-grey-lighter);
    color: var(--color-dark);
    border-radius: 4px;
    padding: 0;
    min-width: max-content;
    max-width: 250px;
    outline: 0;
    overflow: hidden;

    display: none;
}
.table-actions-list > ul {
    list-style: none;
    padding: 0;
    margin: 0;
    overflow: visible;
}
.table-actions-list > ul > li {
    margin-top: 0;
    margin-bottom: 0;
}
.table-actions-list a,
.table-actions-list button {
    display: flex;
    align-items: center;
    text-align: left;
    width: 100%;
    background: none;
    padding: 12px 16px;
    margin: 0;
    border: 0;
    color: inherit;
    font-weight: bold;
    text-decoration: none;
    transition-property: color, background-color;
}
.table-actions-list a:focus,
.table-actions-list button:focus,
.table-actions-list a:hover,
.table-actions-list button:hover {
    outline: 0;
    background: var(--color-primary-alt);
    color: var(--color-light);
}
.table-actions-list .icon-std {
    color: var(--color-primary);
    transition: color 0.3s;
}
.table-actions-list a:focus .icon-std,
.table-actions-list button:focus .icon-std,
.table-actions-list a:hover .icon-std,
.table-actions-list button:hover .icon-std {
    color: inherit;
}

.table-cell-min {
    --cols-span: 0;
    min-width: calc(var(--col-with-gutter) * var(--cols-span) - var(--gutter-full));
}
.table-cell-min-1 {
    --cols-span: 1;
}
.table-cell-min-2 {
    --cols-span: 2;
}
.table-cell-min-3 {
    --cols-span: 3;
}
.table-cell-min-4 {
    --cols-span: 4;
}
.table-cell-min-5 {
    --cols-span: 5;
}
.table-cell-min-6 {
    --cols-span: 6;
}
.table-cell-min-7 {
    --cols-span: 7;
}
.table-cell-min-8 {
    --cols-span: 8;
}
.table-cell-min-9 {
    --cols-span: 9;
}
.table-cell-min-10 {
    --cols-span: 10;
}
.table-cell-min-11 {
    --cols-span: 11;
}
.table-cell-min-12 {
    --cols-span: 12;
}
.scrollable-table + .table-bottom-extra,
.table + .table-bottom-extra {
    border-top: 0;
}
.table-bottom-extra {
    border: 1px solid var(--color-grey-light);
}
.table-bottom-extra-simple {
    border-color: var(--color-grey-lighter);
}
/* Extra :not(:last-child) selector needed to override block precedence */
.scrollable-table + .table-bottom-extra:not(:last-child),
.table + .table-bottom-extra:not(:last-child) {
    margin-top: calc(-1 * var(--margin-small));
}

.accordion-panel {
    padding-bottom: var(--margin-medium);
    border-bottom: 1px solid var(--color-grey-medium);
    overflow: hidden;
}
.accordion-panel:not(:last-child) {
    margin-bottom: var(--margin-medium);
}
.accordion-panel.accordion-panel-open {
    overflow: visible;
}
.accordion-panel-header {
    display: flex;
    align-items: center;
    cursor: pointer;
}
.accordion-panel-no-body .accordion-panel-header {
    cursor: default;
}
.accordion-panel-title {
    font-size: var(--font-size-large);
    margin-right: auto;
    margin-bottom: 0;
}
.accordion-panel-open .accordion-panel-title {
    color: var(--color-primary);
}
.accordion-panel-open .accordion-panel:not(.accordion-panel-open) .accordion-panel-title {
    color: inherit;
}
.accordion-panel-toggler {
    flex: 0 0 auto;
    position: relative;
    background: none;
    padding: 0;
    margin: 0 0 0 var(--gutter-full);
    border: 0;
    width: 16px;
    height: 16px;
    color: var(--color-grey-medium);
}
.accordion-panel-toggler:focus {
    outline: 1px dotted;
}
.accordion-panel-toggler:focus,
.accordion-panel-toggler:hover,
.accordion-panel-header:hover .accordion-panel-toggler {
    color: var(--color-primary);
}
.accordion-panel-toggler svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    fill: currentColor;
}
.accordion-panel-open .accordion-panel-toggler svg {
    transform: scaleY(-1);
}
.accordion-panel-open .accordion-panel:not(.accordion-panel-open) .accordion-panel-toggler svg {
    transform: none;
}
.accordion-panel-body {
    display: none;
}
.accordion-panel-body-inner {
    padding-top: var(--margin-mini);
}
.accordion-panel-open .accordion-panel-body {
    display: block;
}
.accordion-panel-open .accordion-panel:not(.accordion-panel-open) .accordion-panel-body {
    display: none;
}

.alt-accordion-panel.accordion-panel {
    padding-bottom: 0;
    background: var(--color-light);
    border: 1px solid var(--color-light);
    box-shadow: 0 0 10px var(--color-grey-lighter);
    border-radius: 4px;
}
.alt-accordion-panel.alt-accordion-panel-grey {
    background: var(--color-grey-lighter);
    border-color: var(--color-grey-lighter);
}
.alt-accordion-panel.accordion-panel-open {
    border-color: var(--color-primary);
    box-shadow: 0 0 10px var(--color-primary-20);
}
.alt-accordion-panel.accordion-panel:not(:last-child) {
    margin-bottom: var(--margin-small);
}
.alt-accordion-panel.accordion-panel-open:not(:last-child) {
    margin-bottom: var(--margin-medium);
}
.alt-accordion-panel .accordion-panel-header {
    padding: 15px;
    min-height: 62px;
}
.alt-accordion-panel-header-inner {
    display: flex;
    align-items: center;
    flex: auto;
}
.alt-accordion-panel-date {
    display: block;
    font-size: var(--font-size-small);
    color: var(--color-grey-medium);
    letter-spacing: 0.075em;
    font-weight: bold;
    margin-right: var(--gutter-full);
}
.alt-accordion-panel-header-side {
    padding-left: var(--gutter-full);
    margin-left: auto;
    text-align: right;
}
.alt-accordion-panel .accordion-panel-body-inner {
    padding: 0 15px 15px;
}
.alt-accordion-panel .accordion-panel-body-inner-nopad {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
}

.alert-accordion-panel {
    padding-bottom: 0;
    border-bottom: 0;
}
.alert-accordion-panel .accordion-panel-header {
    padding: 0;
    min-height: auto;
}
.alert-accordion-panel .accordion-panel-title {
    font-size: inherit;
    color: inherit;
}
.alert-accordion-panel .accordion-panel-toggler {
    width: auto;
    height: auto;
    color: inherit;
    text-decoration: underline;
}
.alert-accordion-panel .accordion-panel-toggler:focus,
.alert-accordion-panel .accordion-panel-toggler:hover,
.alert-accordion-panel .accordion-panel-header:hover .accordion-panel-toggler {
    color: inherit;
    text-decoration: none;
}
.alert-accordion-panel .accordion-panel-toggler svg {
    position: static;
    width: 1em;
    height: 1.5em;
    color: inherit;
    vertical-align: top;
}
.alert-accordion-panel .accordion-panel-body-inner {
    padding: var(--margin-small) 0 0;
}

.steps {
    color: var(--color-grey-light);
}
.steps:not(:last-child) {
    margin-bottom: var(--margin-large);
}
.steps > ol {
    position: relative;
    list-style: none;
    padding: 0 0 0 34px;
    margin: 0;
    counter-reset: steps;
    overflow: visible;
}
.steps > ol::before {
    content: '';
    position: absolute;
    top: 0;
    left: 10px;
    width: 4px;
    height: 100%;
    background: var(--color-grey-light);
    border-radius: 2px;
}
.steps > ol > li {
    position: relative;
    counter-increment: steps;
}
.steps > ol > li + li {
    margin-top: var(--margin-small);
}
.steps .step-text {
    text-transform: uppercase;
    font-weight: bold;
}
.steps .step-text::before {
    content: counter(steps) '. ';
}
.steps .step-current {
    color: var(--color-accent);
}
.steps .step-past::before,
.steps .step-current::before {
    content: '';
    position: absolute;
    top: -1rem;
    left: -24px;
    bottom: 0;
    width: 4px;
    background: var(--color-accent);
}
.steps li:first-child::before {
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
    top: 0;
}
.steps .step-current::before {
    bottom: 50%;
}
.steps .step-current::after {
    content: '';
    position: absolute;
    top: 50%;
    left: -34px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--color-light);
    border: 4px solid var(--color-accent);
    transform: translateY(-50%);
}

.panel {
    border: 1px solid var(--color-grey-light);
}
.panel:not(:last-child) {
    margin-bottom: var(--margin-large);
}
.panel-header {
    background: var(--color-primary);
    color: var(--color-light);
    padding: 16px;
}
.panel .panel .panel-header {
    background: var(--color-grey-lighter);
    color: var(--color-grey-dark);
}
.panel .panel:not(:last-child) {
    margin-bottom: var(--margin-small);
}
.panel-inactive .panel-header {
    background-color: var(--color-grey-lighter);
    color: var(--color-dark);
}
.panel-header-title {
    color: inherit;
    font-size: var(--font-size-small);
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.075em;
    margin-top: 0;
    margin-bottom: 0;
}
.panel-header-side:not(:first-child) {
    margin-top: var(--margin-small);
}
.panel-body {
    padding: 16px;
}
.panel-body-part + .panel-body-part {
    margin-top: var(--margin-medium);
    padding-top: var(--margin-small);
    border-top: 1px solid var(--color-grey-light);
}
.panel-body-part-inner {
    flex: auto;
}
.panel-body-part-side {
    text-align: center;
}
.panel-body-part-side:not(:first-child) {
    margin-top: var(--margin-medium);
}
.panel-price-amount,
.panel-price-label {
    display: block;
    margin-top: 0;
    margin-bottom: 0;
}
.panel-price-label {
    color: var(--color-grey-medium);
}

.downloadable-file {
    display: flex;
    color: inherit;
    text-decoration: none;
    border: 0;
    width: 100%;
    font-weight: bold;
    text-align: inherit;
    background: var(--color-light);
    box-shadow: 0 0 10px var(--color-grey-lighter);
    padding: 18px;
    border-radius: 4px;
    transition: color 0.3s;
}
button.downloadable-file:focus,
button.downloadable-file:hover,
a.downloadable-file:focus,
a.downloadable-file:hover {
    color: var(--color-primary-alt);
}
.downloadable-file > svg {
    flex: 0 0 auto;
}
.downloadable-file-name {
    text-overflow: ellipsis;
    overflow: hidden;
}

.marker-square-item {
    display: flex;
    align-items: baseline;
}
.marker-square-item::before {
    content: '';
    flex: 0 0 auto;
    width: 0.5rem;
    height: 0.5rem;
    margin-right: var(--margin-mini);
    background: var(--color-primary);
}
.marker-square-item-inner {
    flex: auto;
}
.marker-square-item-title {
    font-family: 'raleway', sans-serif;
    font-weight: bold;
}

/* Header
------------------------------------------------------------------------*/
.quick-nav {
    margin: 0;
}
.quick-nav a {
    position: absolute;
    z-index: 502;
    top: 0;
    left: 0;
    width: 100%;
    height: 90px;
    line-height: 90px;
    background: var(--color-light-80);
    text-align: center;
    font-weight: bold;
    text-decoration: underline;
    transform: translateY(-100%);
}
.quick-nav a:focus {
    transform: none;
    outline: 0;
}

.header {
    margin-top: 0;
    flex: 0 0 auto;
}
.header-inner {
    position: relative;
}
.header-logo-toggler-part {
    margin-top: 0;
    padding: 0 var(--gutter-full);
    max-width: 960px;
}
.header-logo-toggler-part-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 90px;
    border-bottom: 1px solid var(--color-grey-lighter);
}
.header-logo {
    flex: 0 0 auto;
    margin-top: 0;
}
.header-logo a {
    display: block;
}
.header-logo a picture {
    display: block;
}
.header-logo a picture img {
    display: block;
}

.main-nav-toggler-desktop {
    display: none;
}

.main-nav-toggler {
    position: relative;
    background: none;
    border: 0;
    padding: 0;
    text-align: center;
    text-transform: uppercase;
    width: 54px;
    height: 64px;
    flex: 0 0 auto;
    color: var(--color-primary);
    transition: color 0.3s;
    overflow: hidden;
}

.main-nav-toggler:focus,
.main-nav-toggler:hover {
    color: var(--color-primary-alt);
}

.main-nav-toggler > .main-nav-toggler-line {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 32px;
    height: 4px;
    border-radius: 2px;
    background: currentColor;
    margin: 0 auto;
    transform: translate(-50%, -50%);
    transition: transform 0.3s;
}

.main-nav-toggler > .main-nav-toggler-line:nth-child(1) {
    transform: translate(-50%, -50%) translateY(-20px);
}

.main-nav-open .main-nav-toggler > .main-nav-toggler-line:nth-child(1) {
    transform: translate(-50%, -50%) translateY(-10px) rotate(45deg);
    transition-delay: 0.1s;
}

.main-nav-toggler > .main-nav-toggler-line:nth-child(2) {
    transform: translate(-50%, -50%) translateY(-10px);
    transition-delay: 0.1s;
}

.main-nav-open .main-nav-toggler > .main-nav-toggler-line:nth-child(2) {
    transform: translate(-50%, -50%) translateY(-10px) rotate(-45deg);
    transition-delay: 0s;
}

.main-nav-toggler > .main-nav-toggler-line:nth-child(3) {
    transform: translate(-50%, -50%) translateY(0);
    width: 20px;
    left: calc(50% - 6px);
}

.main-nav-open .main-nav-toggler > .main-nav-toggler-line:nth-child(3) {
    transform: translate(-50%, -50%) translateY(-10px) translateX(65px);
    transition-delay: 0.1s;
}

.main-nav-toggler > .main-nav-toggler-text {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    transition: transform 0.3s;
}

.main-nav-toggler > .main-nav-toggler-text-open {
    transform: translateX(-65px);
}

.main-nav-open .main-nav-toggler > .main-nav-toggler-text {
    transform: translateX(65px);
}

.main-nav-open .main-nav-toggler > .main-nav-toggler-text-open {
    transform: translateX(0);
}

.header-nav-actions-part {
    display: none;
    height: calc(var(--vh) * 100 - 90px); /* iOS/Chrome vh fix */
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    position: absolute;
    top: 90px;
    left: 0;
    width: 100%;
    background: #fff;
    z-index: 400;
}

.main-nav-open .header-nav-actions-part {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}

.main-nav-open,
.main-nav-open body {
    height: 100%;
    overflow: hidden;
    position: relative;
}

.main-nav {
    flex: 0 0 auto;
    z-index: 500;
    width: 100%;
    background: var(--color-light);
    margin-top: 0;
}

.main-nav-inner {
    padding: 32px var(--gutter-full);
}

.main-nav ul {
    list-style: none;
    padding: 0;
    overflow: visible;
}

.main-nav ul li {
    position: relative;
}

.main-nav-inner > ul {
    margin-left: calc(-1 * var(--gutter-full));
    margin-right: calc(-1 * var(--gutter-full));
}

.main-nav-inner > ul > li {
    padding-left: var(--gutter-full);
    padding-right: var(--gutter-full);
}

.main-nav-inner a {
    display: block;
    padding: 12px 0 11px;
    text-transform: uppercase;
    font-weight: 500;
    text-decoration: none;
    color: inherit;
}

.main-nav-inner > ul > li + li {
    margin-top: var(--margin-small);
}

.main-nav-inner .active {
    border-left: 4px solid var(--color-primary);
    padding-left: calc(var(--gutter-full) - 4px);
}

.main-nav-inner .active.main-nav-item-has-sub {
    border-left: 0;
    padding-left: var(--gutter-full);
}

.main-nav-inner .active > button,
.main-nav-inner .active > a {
    color: var(--color-primary);
}

.main-nav-item-has-sub > button {
    width: 100%;
    text-align: left;
    background: none;
    border: 0;
    padding: 12px 0 11px;
    text-transform: uppercase;
    font-weight: 500;
    margin: 0;
    color: inherit;
    transition: 0.3s;
    transition-property: color;
}

.main-nav-item-has-sub > button:focus {
    outline: 1px dotted;
}

.main-nav-item-has-sub > button svg {
    transition: 0.3s;
    transition-property: transform;
}

.main-nav-inner a:focus,
.main-nav-inner a:hover,
.main-nav-item-has-sub > button:focus,
.main-nav-item-has-sub > button:hover,
.main-nav-item-has-sub > button[aria-expanded="true"] {
    color: var(--color-primary-alt);
}

.main-nav-item-has-sub > button[aria-expanded="true"] svg {
    transform: scaleY(-1);
}

.main-nav-sub {
    display: none;
    margin-top: 0;
}

.main-nav-sub-active {
    display: block;
}

.main-nav-sub > ul > li {
    padding-left: var(--gutter-full);
}

.main-nav-last-update {
    display: block;
    padding: 12px var(--gutter-full) 11px;
    font-size: var(--font-size-small);
    color: var(--color-grey-medium);
    background: var(--color-grey-lighter);
}

.fixed-side-actions {
    position: fixed;
    z-index: 200;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    background: var(--color-dark);
    color: var(--color-light);
    padding: 12px;
    border-radius: 4px 0 0 4px;
}

@media (min-height: 676px) {
    .fixed-side-actions {
        top: 296px;
        transform: none;
    }
}

.fixed-side-actions > ul {
    list-style: none;
    padding: 0;
    margin: 0;
    overflow: visible;
}

.fixed-side-actions > ul > li + li {
    margin-top: var(--margin-mini);
}

.fixed-side-actions a,
.fixed-side-actions button {
    display: block;
    background: none;
    padding: 0;
    margin: 0;
    border: 0;
    width: 16px;
    height: 16px;
    position: relative;
    color: inherit;
}

.fixed-side-actions a:focus,
.fixed-side-actions a:hover,
.fixed-side-actions button:focus,
.fixed-side-actions button:hover {
    color: var(--color-primary-alt);
}

.fixed-side-actions a svg,
.fixed-side-actions button svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    fill: currentColor;
}

/* Columns
------------------------------------------------------------------------*/
.cols {
    list-style: none;
    padding: 0;
    margin: 0 calc(-1 * var(--gutter-half));
    display: flex;
    flex-flow: row wrap;
    --cols-nb: 12;
}
.cols-small-pad {
    margin-left: -5px;
    margin-right: -5px;
}
.cols-reverse {
    flex-direction: row-reverse;
}
.cols-valign-middle {
    align-items: center;
}
.cols-valign-bottom {
    align-items: flex-end;
}
.cols-center {
    justify-content: center;
}
.cols > .col {
    flex: 0 0 auto;
    --cols-push: 0;
    --cols-span: 12;
    width: calc(100% / var(--cols-nb) * var(--cols-span));
    margin-left: calc(100% / var(--cols-nb) * var(--cols-push));
    padding: 0 var(--gutter-half);
}
.cols > .col-fixed {
    width: calc(var(--col-with-gutter) * var(--cols-span));
}
.cols-small-pad > .col {
    padding-left: 5px;
    padding-right: 5px;
}
.cols > .col-flex {
    display: flex;
    flex-flow: column;
}
.cols > .col-1 {
    --cols-span: 1;
}
.cols > .col-2 {
    --cols-span: 2;
}
.cols > .col-3 {
    --cols-span: 3;
}
.cols > .col-4 {
    --cols-span: 4;
}
.cols > .col-5 {
    --cols-span: 5;
}
.cols > .col-6 {
    --cols-span: 6;
}
.cols > .col-7 {
    --cols-span: 7;
}
.cols > .col-8 {
    --cols-span: 8;
}
.cols > .col-9 {
    --cols-span: 9;
}
.cols > .col-10 {
    --cols-span: 10;
}
.cols > .col-11 {
    --cols-span: 11;
}
.cols > .col-12 {
    --cols-span: 12;
}
.cols > .col-auto {
    width: auto;
}

.cols > .col-push-1 {
    --cols-push: 1;
}
.cols > .col-push-2 {
    --cols-push: 2;
}
.cols > .col-push-3 {
    --cols-push: 3;
}
.cols > .col-push-4 {
    --cols-push: 4;
}
.cols > .col-push-5 {
    --cols-push: 5;
}
.cols > .col-push-6 {
    --cols-push: 6;
}
.cols > .col-push-7 {
    --cols-push: 7;
}
.cols > .col-push-8 {
    --cols-push: 8;
}
.cols > .col-push-9 {
    --cols-push: 9;
}
.cols > .col-push-10 {
    --cols-push: 10;
}
.cols > .col-push-11 {
    --cols-push: 11;
}

.generic-margin-small::after,
.generic-margin-medium::after,
.generic-margin-large::after {
    content: '';
    display: block;
    padding-bottom: 1px;
    margin-bottom: -1px;
}
.generic-margin-small:not(:first-child) {
    margin-top: var(--margin-small);
}
.generic-margin-small:not(:last-child) {
    margin-bottom: var(--margin-small);
}
.generic-margin-medium:not(:first-child) {
    margin-top: var(--margin-medium);
}
.generic-margin-medium:not(:last-child) {
    margin-bottom: var(--margin-medium);
}
.generic-margin-large:not(:first-child) {
    margin-top: var(--margin-large);
}
.generic-margin-large:not(:last-child) {
    margin-bottom: var(--margin-large);
}
.generic-margin-container-small {
    margin-bottom: calc(-1 * var(--margin-small));
}
.generic-margin-container-small > .generic-margin-small {
    margin-top: 0;
    margin-bottom: var(--margin-small);
}
.generic-margin-container-medium {
    margin-bottom: calc(-1 * var(--margin-medium));
}
.generic-margin-container-medium > .generic-margin-medium {
    margin-top: 0;
    margin-bottom: var(--margin-medium);
}
.generic-margin-container-large {
    margin-bottom: calc(-1 * var(--margin-large));
}
.generic-margin-container-large > .generic-margin-large {
    margin-top: 0;
    margin-bottom: var(--margin-large);
}
.generic-unmargin-top-large-to-medium:not(:first-child) {
    margin-top: calc(var(--margin-medium) - var(--margin-large));
}
.generic-unmargin-top-large-to-small:not(:first-child) {
    margin-top: calc(var(--margin-small) - var(--margin-large));
}
.generic-unmargin-top-large-to-mini:not(:first-child) {
    margin-top: calc(var(--margin-mini) - var(--margin-large));
}
.generic-unmargin-top-medium-to-small:not(:first-child) {
    margin-top: calc(var(--margin-small) - var(--margin-medium));
}
.generic-unmargin-top-medium-to-mini:not(:first-child) {
    margin-top: calc(var(--margin-mini) - var(--margin-medium));
}
.generic-unmargin-top-small-to-mini:not(:first-child) {
    margin-top: calc(var(--margin-mini) - var(--margin-small));
}

/* Forms
------------------------------------------------------------------------*/
.alert {
    padding: 12px 16px 11px;
    color: var(--color-light);
}
.alert a {
    color: inherit;
}
.alert:not(:first-child) {
    margin-top: var(--margin-small);
}
.alert:not(:last-child) {
    margin-bottom: var(--margin-medium);
}
.alert-danger {
    background: var(--color-danger);
}
.alert-success {
    background: var(--color-success);
}
.alert-info,
.alert-warning {
    background: var(--color-grey-medium);
}
.btns-container:not(:first-child) {
    margin-top: var(--margin-medium);
}
.btns-container::after {
    /* sorta clearfix */
    content: '';
    display: block;
    padding-top: 1px;
    margin-top: -1px;
}
.btns {
    margin-bottom: calc(-1 * var(--margin-small));
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
}
.btns-reverse {
    flex-direction: row-reverse;
}
.btns:not(:first-child) {
    margin-top: var(--margin-medium);
}
.btns-small-margin:not(:first-child) {
    margin-top: var(--margin-small);
}
.btns-center {
    justify-content: center;
}
.btns-right {
    justify-content: flex-end;
}
.btns .btn,
.btns .link-btn,
.btns form {
    margin-bottom: var(--margin-small);
    flex: 0 0 auto;
}
.btns form {
    width: 100%;
}
.btns form .btn,
.btns form .link-btn {
    margin-bottom: 0;
}
.btns .btns {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0;
    flex: 0 0 auto;
}
.btns .btns:not(:first-child) {
    margin-top: 0;
}

.btns-container-sticky {
    position: sticky;
    bottom: 0;
}
.btns-container-sticky-is-fixed:not(:first-child),
.btns-container-sticky-is-anchored:not(:first-child) {
    margin-top: 0;
}
.btns-container-sticky-is-fixed,
.btns-container-sticky-is-anchored {
    z-index: 10;
    padding: 16px;
    background: var(--color-light);
    box-shadow: 0 3px 6px var(--color-grey-dark-20);
}
.btns-container-sticky-sentinel {
    padding-top: 1px;
    margin-top: -1px;
}

.control-label {
    display: inline-block;
    color: var(--color-dark);
    font-weight: bold;
    margin-bottom: var(--margin-mini);
}
.control-label-tip {
    display: block;
}
.control-label-tip,
.control-label-tip-inline {
    color: var(--color-grey-medium);
    font-weight: normal;
    font-size: var(--font-size-small);
}

.form-row + .form-row {
    margin-top: var(--margin-medium);
}

.form-fields::after {
    content: '';
    display: block;
    padding-bottom: 1px;
    margin-bottom: -1px;
}
.form-fields:not(:last-child) {
    margin-bottom: var(--margin-medium);
}
.form-fields-padded {
    padding-left: 20px;
}
.form-fields-inner {
    margin-bottom: calc(-1 * var(--margin-medium));
}
.form-fields-inner .form-row {
    margin-top: 0;
    margin-bottom: var(--margin-medium);
}

::-webkit-input-placeholder {
    opacity: 1;
    color: var(--color-grey-medium);
}
::-ms-input-placeholder {
    opacity: 1;
    color: var(--color-grey-medium);
}
::placeholder {
    opacity: 1;
    color: var(--color-grey-medium);
}

input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
textarea,
select,
.select-like,
.select2.select2-container .select2-selection--single,
.select2.select2-container .select2-selection--multiple {
    width: 100%;
    height: 44px;
    border: 1px solid var(--color-light);
    border-radius: 3px;
    padding: 9px 10px;
    background: var(--color-light);

    font-size: 16px; /* need min 16px */
    line-height: 1.5;

    transition: 0.3s;
    transition-property: color, border-color, background-color;
}
textarea {
    min-height: 150px;
}
.select-like {
    position: relative;
    display: block; /* block needed for IE 11 */
}
.select-like > span:first-child {
    display: block;
    height: 1.5em;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding-right: 18px;
}
.select-like select {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 100%;
    opacity: 0;
}
.select-like svg {
    position: absolute;
    top: 0;
    right: 10px;
    width: 14px;
    fill: var(--color-primary);
    height: 100%;
}
.select-like.disabled svg {
    fill: currentColor;
}
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
textarea:focus,
.select2-container .select2-dropdown .select2-search--dropdown .select2-search__field:focus,
.select2.select2-container.select2-container--focus .select2-selection--single,
.select2.select2-container.select2-container--focus .select2-selection--multiple,
.select2.select2-container.select2-container--open .select2-selection--single,
.select2.select2-container.select2-container--open .select2-selection--multiple {
    border-color: var(--color-primary);
}
select,
select:focus {
    font-size: 16px; /* need min 16px */
}
/*noinspection CssInvalidPseudoSelector*/
.select-like:focus-within {
    border-color: var(--color-primary);
}
input[type="text"]:disabled,
input[type="password"]:disabled,
input[type="datetime"]:disabled,
input[type="datetime-local"]:disabled,
input[type="date"]:disabled,
input[type="month"]:disabled,
input[type="time"]:disabled,
input[type="week"]:disabled,
input[type="number"]:disabled,
input[type="email"]:disabled,
input[type="url"]:disabled,
input[type="search"]:disabled,
input[type="tel"]:disabled,
input[type="color"]:disabled,
textarea:disabled,
.select-like.disabled,
.select2.select2-container.select2-container--disabled .select2-selection--single,
.select2.select2-container.select2-container--disabled .select2-selection--multiple {
    background-color: var(--color-grey-lighter);
    border-color: var(--color-grey-medium);
    color: var(--color-grey-medium);
}
.form-row.error input[type="text"],
.form-row.error input[type="password"],
.form-row.error input[type="datetime"],
.form-row.error input[type="datetime-local"],
.form-row.error input[type="date"],
.form-row.error input[type="month"],
.form-row.error input[type="time"],
.form-row.error input[type="week"],
.form-row.error input[type="number"],
.form-row.error input[type="email"],
.form-row.error input[type="url"],
.form-row.error input[type="search"],
.form-row.error input[type="tel"],
.form-row.error input[type="color"],
.form-row.error textarea,
.form-row.error .select-like,
.form-row.error .select2.select2-container .select2-selection--single,
.form-row.error .select2.select2-container .select2-selection--multiple {
    border-color: var(--color-danger);
}

.form-row.error .controls {
    color: var(--color-danger);
}

.form-row.error .control-label,
.form-row.error label {
    color: var(--color-danger);
}

.form-row-with-icon .controls,
.form-row-with-password-toggle .controls {
    position: relative;
}
.form-row-with-icon .controls .fa {
    position: absolute;
    top: 50%;
    right: 12px;
    color: var(--color-primary);
    transform: translateY(-50%);
    pointer-events: none;
}
.form-row-with-icon .controls input:disabled + .fa {
    color: var(--color-medium);
}
.form-row-with-icon input[type="text"],
.form-row-with-icon input[type="password"],
.form-row-with-icon input[type="datetime"],
.form-row-with-icon input[type="datetime-local"],
.form-row-with-icon input[type="date"],
.form-row-with-icon input[type="month"],
.form-row-with-icon input[type="time"],
.form-row-with-icon input[type="week"],
.form-row-with-icon input[type="number"],
.form-row-with-icon input[type="email"],
.form-row-with-icon input[type="url"],
.form-row-with-icon input[type="search"],
.form-row-with-icon input[type="tel"],
.form-row-with-icon input[type="color"] {
    padding-right: 43px;
}

.form-row-password-toggle {
    background: none;
    margin: 0;
    border: 0;
    position: absolute;
    top: 0;
    right: 0;
    width: 43px;
    height: 100%;
    color: var(--color-primary);
    padding: 0 15px 0 16px;
}
.form-row-password-toggle:focus,
.form-row-password-toggle:hover {
    color: var(--color-primary-alt);
}
.form-row-password-toggle-icon {
    position: absolute;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
}
.form-row-password-toggle-icon-hide,
.form-row-with-password-toggle.password-visible .form-row-password-toggle-icon-show {
    display: none;
}
.form-row-with-password-toggle.password-visible .form-row-password-toggle-icon-hide {
    display: block;
}

.error .staticDisplayField .controls {
    color: var(--color-danger);
}

.error .control-label,
.error label {
    color: var(--color-danger);
}
.form-error-inline {
    margin-top: var(--margin-mini);
    color: var(--color-danger);
}
.form-row .controls-with-unit {
    position: relative;
}
.form-row .controls-with-unit input {
    padding-right: 30px;
}
.form-row .controls-with-unit-50 input {
    padding-right: 50px;
}
.form-row .controls-with-unit .unit {
    position: absolute;
    top: 0;
    right: 10px;
    height: 44px;
    font-size: 16px; /* Same as inputs */
    color: var(--color-grey-medium);
    padding-top: 9px;
    padding-bottom: 9px;
}

.select2.select2-container {
    width: 100%;
}
.select2.select2-container .select2-selection--single,
.select2.select2-container .select2-selection--multiple {
    outline: 0;
}
.select2.select2-container .select2-selection--single .select2-selection__placeholder {
    color: var(--color-grey-medium);
}
.select2.select2-container .select2-selection--single .select2-selection__arrow {
    top: 0;
    right: 10px;
    width: 14px;
    height: 100%;
    color: var(--color-primary);
}
.select2.select2-container--disabled .select2-selection--single .select2-selection__arrow {
    color: currentColor;
}
.select2.select2-container .select2-selection--single .select2-selection__rendered {
    padding-left: 0;
    padding-right: 18px;
    color: inherit;
    line-height: inherit;
}
.select2.select2-container .select2-selection--single .select2-selection__clear {
    position: relative;
    width: 14px;
    height: 1.5em;
    color: var(--color-primary);
    margin-left: 8px;
    margin-right: 8px;
    transition: color 0.3s;
}
.select2.select2-container .select2-selection--single .select2-selection__clear:hover {
    color: var(--color-primary-alt);
}
.select2.select2-container .select2-selection--multiple {
    min-height: 44px;
    height: auto;
}
.select2.select2-container .select2-selection--multiple .select2-selection__rendered {
    padding-left: 0;
    padding-right: 0;
    display: block;
    width: auto;
    margin-top: -5px;
}
.select2.select2-container .select2-selection--multiple .select2-selection__choice {
    position: relative;
    background-color: transparent;
    border: 1px solid var(--color-grey-light);
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: calc(100% - 5px);
    font-size: 14px;
    line-height: 22px;
    border-radius: 4px;
}
.select2.select2-container .select2-selection--multiple .select2-selection__choice__remove {
    position: relative;
    float: right;
    width: 10px;
    height: 1.5em;
    color: var(--color-primary);
    margin-left: 8px;
    transition: color 0.3s;
}
.select2.select2-container .select2-selection--multiple .select2-selection__choice__remove:hover {
    color: var(--color-primary-alt)
}
.select2.select2-container .select2-selection--single .select2-selection__arrow svg,
.select2.select2-container .select2-selection--single .select2-selection__clear svg,
.select2.select2-container .select2-selection--multiple .select2-selection__choice__remove svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    fill: currentColor;
}
.select2.select2-container .select2-search--inline {
    margin-top: 5px;
}
.select2.select2-container .select2-search--inline .select2-search__field {
    margin-top: 0;
    height: 24px;
    box-sizing: content-box;
}

.select2-container .select2-dropdown {
    border-color: var(--color-primary);
    border-radius: 3px;
    font-size: 16px;
}
.select2-container .select2-dropdown .select2-search--dropdown {
    padding: 10px;
}
.select2-container .select2-dropdown .select2-search--dropdown .select2-search__field {
    padding: 9px 10px;
}
.select2-container .select2-dropdown .select2-results__option {
    padding-left: 10px;
    padding-right: 10px;
}
.select2-container .select2-dropdown .select2-results__option[aria-selected="true"] {
    /* selected not hovered */
    background-color: var(--color-grey-lighter);
}
.select2-container .select2-dropdown .select2-results__option--highlighted[aria-selected] {
    /* hovered */
    color: var(--color-light);
    background-color: var(--color-primary);
}
.select2-container .select2-dropdown .select2-results__option[aria-disabled="true"] {
    /* loading text */
    font-size: inherit;
    color: var(--color-grey-medium);
}

.checkrads {
    overflow: hidden;
    margin-bottom: calc(-1 * var(--margin-mini));
}
.checkrads-cols {
    column-gap: var(--gutter-full);
}
.checkrads-cols-2 {
    columns: 2;
}
.checkrads-horizontal {
    margin-left: -10px;
    margin-right: -10px;
    display: flex;
    flex-wrap: wrap;
}
.checkrads .checkrad {
    margin-bottom: var(--margin-mini);
}
.checkrads-cols .checkrad {
    break-inside: avoid;
}
.checkrads-horizontal .checkrad {
    flex: 0 0 auto;
    padding-left: 10px;
    padding-right: 10px;
}
.checkrads-flex .checkrad {
    display: flex;
    align-items: flex-start;
}
.checkrads-flex .checkrad > input {
    flex: 0 0 auto;
    font-size: inherit;
    margin-top: 0.75em;
    margin-right: 6px;
    transform: translateY(-50%);
}
.checkrad input:disabled + label {
    color: var(--color-grey-medium);
}

.form-collection-item:not(:first-child) {
    padding-top: var(--margin-medium);
    border-top: 1px solid var(--color-grey-light);
}
.form-collection-item,
.form-collection-actions {
    margin-bottom: var(--margin-medium);
}
.form-collection-item-actions {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(-1 * var(--margin-small));
    margin-bottom: var(--margin-medium);
}
.form-collection-item-actions button {
    position: relative;
    background: none;
    padding: 0;
    margin: 0;
    border: 0;
    width: 16px;
    height: 42px;
    margin-left: var(--margin-small);
    transition: color 0.3s;
}
.form-collection-item-actions button:focus {
    outline: 1px dotted;
}
.form-collection-item-actions button:focus,
.form-collection-item-actions button:hover {
    color: var(--color-primary-alt);
}
.form-collection-item-actions button svg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 16px;
    height: 16px;
    margin: auto;
}

.upload .controls .existing {
    margin-top: var(--margin-small);
    display: flex;
}
.upload.multiple .controls .existing {
    margin-top: 0;
}
.upload .controls .existing ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.upload .controls .existing ul li {
    display: flex;
    margin-top: var(--margin-mini);
}
.upload .controls .existing ul li:first-child {
    margin-top: var(--margin-small);
}
.upload .controls .existing a {
    flex: 0 1 auto;
    text-overflow: ellipsis;
    overflow: hidden;
    min-width: 0;
}
.upload .controls .existing button {
    flex: 0 0 auto;
    position: relative;
    background: none;
    padding: 0;
    margin: 0 0 0 12px;
    border: 0;
    width: 16px;
    height: 1.5em;
    transition: color 0.3s;
}
.upload .controls .existing button:focus {
    outline: 1px dotted;
}
.upload .controls .existing button:focus,
.upload .controls .existing button:hover {
    color: var(--color-primary-alt);
}
.upload .controls .existing button svg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 10px;
    height: 10px;
    margin: auto;
}

.file-drop .controls .field {
    background: var(--color-light);
    border: 2px dashed var(--color-primary);
    padding: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.file-drop .controls .field.disabled {
    background-color: var(--color-grey-lighter);
    border-color: var(--color-grey-medium);
    color: var(--color-grey-medium);
}
.file-drop .controls .field.disabled .control-label,
.file-drop.error .controls .field .control-label {
    color: inherit;
}
.file-drop .controls .field input {
    max-width: 100%;
}
.win-dragover .file-drop .controls .field:not(.disabled),
.root-dragover .file-drop .controls .field:not(.disabled) {
    border-style: solid;
}
.file-drop .controls .field:not(.disabled).dragover {
    border-style: solid;
    border-color: var(--color-accent);
}
.file-drop .upload-errors {
    margin-top: var(--margin-small);
}
.file-drop .queue {
    margin-top: var(--margin-small);
}
.file-drop .queue > ul {
    list-style: none;
    padding: 0;
    margin: 0 calc(-1 * var(--gutter-half)) calc(-1 * var(--margin-small));
    display: flex;
    flex-wrap: wrap;
}
.file-drop .queue > ul:empty {
    display: none;
}
.file-drop .queue > ul > li {
    width: 120px;
    padding-left: var(--gutter-half);
    padding-right: var(--gutter-half);
    margin-top: 0;
    margin-bottom: var(--margin-small);
}
.file-drop .queue .preview {
    position: relative;
    background: var(--color-light);
}
.file-drop[data-image="1"] .queue .preview::before {
    content: '';
    display: block;
    padding-top: 62.5%;
}
.file-drop .queue .preview > span {
    display: block;
    padding: 8px;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    text-align: center;
}
.file-drop .queue .progress-bar {
    font-size: var(--font-size-small);
    padding: 4px 0;
    text-align: center;
    color: var(--color-light);
    background: var(--color-primary);
}
.file-drop .existing {
    margin-top: var(--margin-small);
    margin-bottom: 0;
}
.file-drop .existing .form-collection-item {
    margin-bottom: 0;
}
.file-drop .existing .form-collection-item:not(:first-child) {
    margin-top: var(--margin-small);
    padding-top: 0;
    border-top: 0;
}
.file-drop .existing .form-collection-item-label {
    display: flex;
}
.file-drop .existing .form-collection-item-label-text {
    flex: 0 1 auto;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin: 0;
}
.file-drop .existing .form-collection-item-actions {
    flex: 0 0 auto;
    margin-left: 12px;
    margin-bottom: 0;
    display: flex;
}
.file-drop .existing .form-collection-item-actions button {
    flex: 0 0 auto;
    position: relative;
    background: none;
    padding: 0;
    margin: 0;
    border: 0;
    width: 16px;
    height: 1.5em;
    transition: color 0.3s;
}
.file-drop .existing .form-collection-item-actions button:focus {
    outline: 1px dotted;
}
.file-drop .existing .form-collection-item-actions button:focus,
.file-drop .existing .form-collection-item-actions button:hover {
    color: var(--color-primary-alt);
}
.file-drop .existing .form-collection-item-actions button svg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 10px;
    height: 10px;
    margin: auto;
}

.radio-buttons {
    display: flex;
}
.radio-buttons .checkrad {
    position: relative;
}
.radio-buttons .checkrad input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}
.radio-buttons .checkrad label {
    display: block;
    color: var(--color-grey-medium);
    background: var(--color-light);
    text-transform: uppercase;
    padding: 10px 17px;
    font-weight: bold;
    border: 1px solid var(--color-primary);
}
.radio-buttons .checkrad + .checkrad {
    margin-left: -1px;
}
.radio-buttons .checkrad:first-child label {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.radio-buttons .checkrad:last-child label {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}
.radio-buttons .checkrad input:disabled + label {
    background-color: var(--color-grey-lighter);
    border-color: var(--color-grey-medium);
}
.radio-buttons .checkrad input:checked + label {
    background-color: var(--color-primary);
    color: var(--color-light);
}
.radio-buttons .checkrad input:not(:disabled):focus + label,
.radio-buttons .checkrad input:not(:disabled) + label:hover,
.radio-buttons .checkrad input:not(:disabled):checked + label:hover {
    background-color: var(--color-primary-alt);
    color: var(--color-light);
}

.form-row-slider-controls {
    display: flex;
    align-items: center;
    margin-bottom: var(--margin-small);
}
.form-row-slider-control {
    position: relative;
    background: none;
    padding: 0;
    margin: 0;
    border: 0;
    width: 16px;
    height: 16px;
    color: var(--color-primary);
}
.form-row-slider-control:focus,
.form-row-slider-control:hover {
    color: var(--color-primary-alt);
}
.form-row-slider-control svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    fill: currentColor;
}
.form-row-slider-minus {
    order: -1;
}
.form-row-slider-plus {
    order: 1;
}
.form-row-slider-value {
    margin-left: auto;
    margin-right: auto;
    color: var(--color-primary);
    font-family: 'cabin', sans-serif;
    font-size: var(--font-size-h3);
    font-weight: 500;
}
.form-row-slider .noUi-target {
    height: 4px;
    border-radius: 2px;
    background: var(--color-grey-light);
    border: 0;
    box-shadow: none;
}
.form-row-slider .noUi-base {
    width: calc(100% - 24px);
    margin-left: 12px;
    margin-right: 12px;
}
.form-row-slider .noUi-horizontal .noUi-handle {
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    width: 24px;
    height: 24px;
    right: -12px;
    top: -10px;
}
.form-row-slider .noUi-handle::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: var(--color-light);
    border: 4px solid var(--color-accent);
}
.form-row-slider .noUi-handle:focus::before,
.form-row-slider .noUi-handle:hover::before,
.form-row-slider .noUi-handle.noUi-active::before {
    border-color: var(--color-primary-alt);
}
.form-row-slider .noUi-handle::after {
    content: none;
}
.form-row-slider-minmax {
    margin-top: var(--margin-small);
    display: flex;
    justify-content: space-between;
    color: var(--color-grey-medium);
    letter-spacing: 0.075em;
    font-size: var(--font-size-small);
}

.btn {
    display: inline-block;
    width: 100%;
    text-align: center;
    font-size: var(--font-size-normal);
    line-height: 1.5;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: bold;
    background: var(--color-accent);
    border: 1px solid var(--color-accent);
    border-radius: 4px;
    padding: 11px 17px 10px;
    color: var(--color-dark);
    transition: 0.3s;
    transition-property: background, color, border-color;
}
a.btn:focus,
a.btn:hover,
button.btn:focus,
button.btn:hover {
    background-color: var(--color-primary-alt);
    border-color: var(--color-primary-alt);
    color: var(--color-light);
}
.btn-secondary {
    background: var(--color-light);
    border: 1px solid var(--color-primary);
    color: var(--color-primary);
}
a.btn-secondary:focus,
a.btn-secondary:hover,
button.btn-secondary:focus,
button.btn-secondary:hover {
    background: var(--color-light);
    border-color: var(--color-primary-alt);
    color: var(--color-primary-alt);
}
.btn-tertiary {
    background: var(--color-primary);
    border: 1px solid var(--color-primary);
    color: var(--color-light);
}
a.btn-tertiary:focus,
a.btn-tertiary:hover,
button.btn-tertiary:focus,
button.btn-tertiary:hover {
    background: var(--color-primary-alt);
    border-color: var(--color-primary-alt);
    color: var(--color-light);
}
.btn-danger {
    background: var(--color-light);
    border: 1px solid var(--color-danger);
    color: var(--color-danger);
}
a.btn-danger:focus,
a.btn-danger:hover,
button.btn-danger:focus,
button.btn-danger:hover {
    background: var(--color-light);
    border-color: var(--color-danger-alt);
    color: var(--color-danger-alt);
}
.link-btn {
    display: inline-block;
    width: 100%;
    text-align: center;
    font-size: var(--font-size-normal);
    line-height: 1.5;
    color: var(--color-primary);
    text-transform: uppercase;
    font-weight: bold;
    padding: 12px 0 11px;
    transition: 0.3s;
    transition-property: color;
    background: none;
    border: none;
    text-decoration: underline;
}
.link-btn-no-caps {
    text-transform: none;
}
.link-btn-no-pad {
    padding-top: 0;
    padding-bottom: 0;
}
.link-btn-no-width {
    width: initial;
}
.link-btn-no-width:not(:last-child){
    margin-right: 10px;
}
.link-btn-left {
    text-align: left;
}
.link-btn:focus {
    outline: 1px dotted;
}
a.link-btn:focus,
a.link-btn:hover,
button.link-btn:focus,
button.link-btn:hover {
    color: var(--color-primary-alt);
    text-decoration: none;
}

.btn-icon {
    color: var(--color-dark);
    background: none;
    padding: 0;
    margin: 0;
    border: 0;
    width: 20px;
    height: 16px;
    text-decoration: none;
    transition: color 0.3s;
}
.btn-icon:focus,
.btn-icon:hover {
    color: var(--color-primary);
    text-decoration: none;
    outline: 0;
}

.btn-tab {
    background-color: transparent;
    border-color: transparent;
    text-transform: none;
}
a.btn-tab:focus,
a.btn-tab:hover,
button.btn-tab:focus,
button.btn-tab:hover {
    color: var(--color-primary-alt);
    background-color: transparent;
    border-color: transparent;
}
.btn-tab-active {
    color: var(--color-primary);
    background-color: var(--color-grey-lighter);
    border-color: var(--color-grey-lighter);
}
a.btn-tab-active:focus,
a.btn-tab-active:hover,
button.btn-tab-active:focus,
button.btn-tab-active:hover {
    color: var(--color-primary-alt);
    background-color: var(--color-grey-lighter);
    border-color: var(--color-grey-lighter);
}

.multiple-actions:not(:last-child) {
    margin-bottom: calc(-1 * var(--margin-small));
}
.multiple-action-btn {
    border-radius: 9999em;
    font-weight: normal;
    text-transform: none;
    padding-top: 5px;
    padding-bottom: 5px;
}
.multiple-action-btn,
.multiple-action-btn:disabled,
a.multiple-action-btn:disabled:focus,
a.multiple-action-btn:disabled:hover,
button.multiple-action-btn:disabled:focus,
button.multiple-action-btn:disabled:hover {
    background-color: var(--color-light);
    border-color: var(--color-grey-light);
    color: var(--color-dark);
}
.multiple-action-btn:disabled {
    opacity: 0.5;
    cursor: default;
}
.multiple-action-btn .icon-std {
    transition: color 0.3s;
}
a.multiple-action-btn:not(:disabled):focus,
a.multiple-action-btn:not(:disabled):hover,
button.multiple-action-btn:not(:disabled):focus,
button.multiple-action-btn:not(:disabled):hover {
    border-color: var(--color-primary-alt);
    color: var(--color-primary-alt);
    background: var(--color-light);
}
a.multiple-action-btn:not(:disabled):focus .icon-std,
a.multiple-action-btn:not(:disabled):hover .icon-std,
button.multiple-action-btn:not(:disabled):focus .icon-std,
button.multiple-action-btn:not(:disabled):hover .icon-std {
    color: var(--color-primary-alt);
}

.tooltip-container:after {
    content: '';
    display: table;
    clear: both;
}
.tooltip-info {
    width: var(--font-size-normal);
    height: var(--font-size-normal);
    position: relative;
}
.with-tooltip,
.label-with-tooltip,
.title-with-tooltip {
    position: relative;
    padding-right: 30px;
}
.with-tooltip-inline-mobile {
    padding-right: 0;
}
.label-with-tooltip {
    margin-bottom: var(--margin-mini);
}
.label-with-tooltip .control-label,
.title-with-tooltip h1,
.title-with-tooltip .h1,
.title-with-tooltip h2,
.title-with-tooltip .h2,
.title-with-tooltip h3,
.title-with-tooltip .h3,
.title-with-tooltip h4,
.title-with-tooltip .h4,
.title-with-tooltip h5,
.title-with-tooltip .h5 {
    display: inline;
    margin-bottom: 0;
}
.with-tooltip .tooltip-inline,
.label-with-tooltip .tooltip-inline,
.title-with-tooltip .tooltip-inline {
    position: absolute;
    bottom: 0;
    right: 0;
    height: 1.5em;
    display: flex;
    justify-content: center;
    align-items: center;
}
.with-tooltip-inline-mobile .tooltip-inline {
    position: static;
    display: inline-flex;
    vertical-align: bottom;
    margin-left: 5px;
}
.title-with-tooltip .tooltip-inline {
    height: 1.25em;
}
.tooltip-info svg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: var(--font-size-normal);
    height: 100%;
    color: var(--color-grey-medium);
    fill: currentColor;
}
.tooltip-info.hovered svg,
.tooltip-info:hover svg {
    color: var(--color-primary);
}

.tooltip-content {
    display: none;
    position: absolute;
    width: 220px;
    padding: 20px;
    background: var(--color-grey-dark);
    color: var(--color-light);
    font-family: 'cabin', sans-serif;
    font-size: var(--font-size-small);
    font-weight: normal;
    line-height: 1.5;
    text-align: left;
    text-transform: none;
    z-index: 15;

    box-shadow: 1px 1px 3px var(--color-grey-light);
}
.tooltip-content:before {
    content: '';
    width: 0;
    height: 0;

    position: absolute;
}
.tooltip-info.hovered .tooltip-content,
.tooltip-info:hover .tooltip-content {
    display: block;
}
.tooltip-content a:not(:focus):not(:hover) {
    color: inherit;
}

.tooltip-content,
.tooltip-content-bottom {
    margin: 12px 0 0;
    top: 100%;
}
.tooltip-content-top,
.tooltip-content-left,
.tooltip-content-right {
    margin-top: 0;
    top: auto;
}
.tooltip-content::before,
.tooltip-content-bottom::before {
    top: -9px;

    border-top: 0;
    border-bottom: 9px solid var(--color-grey-dark);
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
}
.tooltip-content-top::before,
.tooltip-content-left::before,
.tooltip-content-right::before {
    top: auto;
}
.tooltip-content-top {
    margin-bottom: 12px;
    bottom: 100%;
}
.tooltip-content-top::before {
    bottom: -9px;

    border-top: 9px solid var(--color-grey-dark);
    border-bottom: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
}

.tooltip-content,
.tooltip-content-top-left,
.tooltip-content-bottom-left {
    right: -10px;
}
.tooltip-content::before,
.tooltip-content-top-left::before,
.tooltip-content-bottom-left::before {
    right: 10px;
}
.tooltip-content-top-center,
.tooltip-content-top-center::before,
.tooltip-content-bottom-center,
.tooltip-content-bottom-center::before {
    left: 50%;
    transform: translateX(-50%);
}
.tooltip-content-top-right,
.tooltip-content-bottom-right {
    left: -10px;
}
.tooltip-content-top-right::before,
.tooltip-content-bottom-right::before {
    left: 10px;
}

.tooltip-content-left {
    margin-right: 12px;
    right: 100%;
}
.tooltip-content-left::before {
    right: -9px;

    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 9px solid var(--color-grey-dark);
    border-right: 0;
}
.tooltip-content-right {
    margin-left: 12px;
    left: 100%;
}
.tooltip-content-right::before {
    left: -9px;

    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 0;
    border-right: 9px solid var(--color-grey-dark);
}

.tooltip-content-left-top,
.tooltip-content-right-top {
    bottom: -10px;
}
.tooltip-content-left-top::before,
.tooltip-content-right-top::before {
    bottom: 10px;
}
.tooltip-content-left-center,
.tooltip-content-left-center::before,
.tooltip-content-right-center,
.tooltip-content-right-center::before {
    top: 50%;
    transform: translateY(-50%);
}
.tooltip-content-left-bottom,
.tooltip-content-right-bottom {
    top: -10px;
}
.tooltip-content-left-bottom::before,
.tooltip-content-right-bottom::before {
    top: 10px;
}

.table-form th {
    transition: color 0.3s;
}
.table-form .table-form-row-disabled th {
    color: var(--color-grey-medium);
}
.table-form .table-form-input {
    padding: 0;
}
.table-form-input input[type="text"],
.table-form-input input[type="password"],
.table-form-input input[type="datetime"],
.table-form-input input[type="datetime-local"],
.table-form-input input[type="date"],
.table-form-input input[type="month"],
.table-form-input input[type="time"],
.table-form-input input[type="week"],
.table-form-input input[type="number"],
.table-form-input input[type="email"],
.table-form-input input[type="url"],
.table-form-input input[type="search"],
.table-form-input input[type="tel"],
.table-form-input input[type="color"],
.table-form-input textarea {
    border-radius: 0;
    text-align: inherit;
}

.table-form-row-disabled .table-form-input :disabled {
    border-color: transparent;
}

/* Content
------------------------------------------------------------------------*/
.content-main {
    flex: auto;
    display: flex;
    flex-flow: column;
}
.page-sections {
    flex: auto;
}
.page-section {
    padding-top: 40px;
    padding-bottom: 40px;
}
.page-section-white,
.block-white {
    background: var(--color-light);
}
.page-section-grey,
.block-grey {
    background: var(--color-grey-lighter);
}
.page-section-white + .page-section-white,
.page-section-grey + .page-section-grey {
    padding-top: 0;
}

.page-title + .page-section {
    padding-top: 20px;
}
.page-title + .page-section-white {
    margin-top: -40px;
}
.page-title + .page-section-grey {
    padding-top: 40px;
}

.block {
    flex: auto;
    padding: var(--margin-large);
}
.block:not(:first-child) {
    margin-top: var(--margin-large);
}
.block:not(:last-child) {
    margin-bottom: var(--margin-large);
}
.block-flex {
    display: flex;
    flex-direction: column;
}
.block-flex-inner {
    flex: auto;
}
.block-small-pad {
    padding: var(--margin-small);
}
.block-border-grey {
    border: 1px solid var(--color-grey-light);
}
.block-border-blue {
    border: 1px solid var(--color-primary);
}
.block-with-btns {
    --btn-height: 44px;
    margin-bottom: calc(var(--btn-height) / 2);
}
.block-with-btns .block-btns {
    margin-bottom: calc(-1 * var(--margin-large) - var(--margin-small) - var(--btn-height) / 2);
}

body .mfp-bg {
    background-color: var(--color-dark);
}
body .mfp-wrap {
    min-width: 360px;
}
.mfp-wrap .mfp-inline-holder {
    padding-left: 0;
    padding-right: 0;
}
.mfp-wrap .mfp-figure::after {
    top: 44px;
}
.mfp-wrap img.mfp-img {
    padding-top: 44px;
}
.mfp-wrap .mfp-title {
    line-height: 1.5;
}
.mfp-wrap .mfp-counter {
    color: var(--color-light);
    line-height: 1.5rem;
}
.mfp-wrap .mfp-close,
.mfp-wrap .mfp-arrow {
    opacity: 1;
}
.mfp-wrap .mfp-container:not(.mfp-iframe-holder) .mfp-close:active {
    top: 0;
}
.mfp-wrap .mfp-close:focus svg,
.mfp-wrap .mfp-close:hover svg,
.mfp-wrap .mfp-arrow:focus svg,
.mfp-wrap .mfp-arrow:hover svg {
    fill: var(--color-primary-alt);
}
.mfp-wrap .mfp-arrow {
    margin-top: 0;
    transform: translateY(-50%);
}
.mfp-wrap .mfp-arrow:active {
    margin-top: 0;
}
.mfp-wrap .mfp-arrow::before,
.mfp-wrap .mfp-arrow::after {
    border: none;
}
.mfp-wrap .mfp-image-holder .mfp-close,
.mfp-wrap .mfp-iframe-holder .mfp-close {
    right: 0;
    padding-right: 0;
}
.mfp-wrap .mfp-close svg,
.mfp-wrap .mfp-arrow svg {
    transition: fill 0.3s;
    fill: var(--color-light);
}
.mfp-wrap .mfp-image-holder .mfp-close svg,
.mfp-wrap .mfp-iframe-holder .mfp-close svg {
    margin-right: 8px;
}
.mfp-wrap .mfp-close svg {
    width: 16px;
    height: 16px;
}
.mfp-wrap .mfp-arrow-right svg {
    transform: rotate(180deg);
}

.img-cover,
.img-contain {
    position: relative;
    overflow: hidden;
}
.img-cover picture,
.img-contain picture {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
}
.img-cover img,
.img-contain img,
.img-cover video,
.img-contain video {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    margin: auto;
}
.img-cover img,
.img-cover video {
    object-fit: cover;
}
.img-contain img,
.img-contain video {
    object-fit: contain;
}

.breadcrumb {
    display: none;
}

.standalone-logo {
    margin-bottom: 30px;
}
.standalone-logo img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.pagination {
    display: flex;
    justify-content: center;
}
.pagination > ul {
    list-style: none;
    padding: 0 7px;
    margin: 0 -5px calc(-1 * var(--margin-mini));
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.pagination > ul > li {
    flex: 0 0 auto;
    margin: 0 5px var(--margin-mini);
}
.pagination > ul > li > a,
.pagination > ul > li > span {
    color: var(--color-primary);
    fill: currentColor;
    font-weight: bold;
    text-decoration: none;
    display: block;
    height: 44px;
    line-height: 44px;
    border-radius: 3px;
    text-align: center;
    padding-left: 5px;
    padding-right: 5px;
    letter-spacing: 0.075em;
    min-width: 44px;

    transition: 0.3s;
    transition-property: color, fill, background-color;
}
.pagination > ul > li > a:focus,
.pagination > ul > li > a:hover {
    color: var(--color-light);
    background-color: var(--color-primary-alt);
}
.pagination > ul > .active > a,
.pagination > ul > .active > span {
    background-color: var(--color-grey-lighter);
}
.page-section-grey .pagination > ul > .active > a,
.page-section-grey .pagination > ul > .active > span {
    background-color: var(--color-light);
}
.pagination svg {
    width: 14px;
    height: 14px;
    vertical-align: top;
    position: relative;
    top: 15px;
}

.popup {
    max-width: 564px;
    margin: 0 auto;
    position: relative;
}
.popup .popup-inner {
    padding-top: 44px;
}
.mfp-wrap .popup .mfp-close,
.mfp-wrap .popup .mfp-close:active {
    top: 0;
    right: 0;
    padding-right: 0;
    text-align: right;
    width: 100%;
}

.loader {
    --loader-progress: 0;
}
.loader:not(:first-child) {
    margin-top: var(--margin-medium);
}
.loader:not(:last-child) {
    margin-bottom: var(--margin-medium);
}
.loader-bar {
    position: relative;
    height: 21px;
    overflow: hidden;
    border-radius: 4px;
}
.loader-bar-outer {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 1px solid var(--color-primary);
    border-radius: 4px;
}
.loader-bar-inner {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    transform-origin: left;
    width: calc(var(--loader-progress) * 100%);
    --color-1: var(--color-primary-alt);
    --color-2: var(--color-light);
    --bg-width: 24px;
    background: linear-gradient(to bottom right, var(--color-1) 0%, var(--color-1) 25%, var(--color-2) 0, var(--color-2) 50%, var(--color-1) 0, var(--color-1) 75%, var(--color-2) 0, var(--color-2) 100%);
    background-size: var(--bg-width) 100%;
    border: 1px solid var(--color-primary);
    border-radius: 4px;
    transition: width 0.3s ease-out;
    animation: loader-bar-inner linear infinite 0.8s;
}
@keyframes loader-bar-inner {
    0% {
        background-position: 0 0;
    }
    100% {
        background-position: var(--bg-width) 0;
    }
}
.loader:not(.js-loader-increased) .loader-text-additional {
    display: none;
}

#tarteaucitronRoot #tarteaucitronAlertBig::before,
#tarteaucitronRoot #tarteaucitronServices #tarteaucitronMainLineOffset::before {
    content: '';
    display: block;
    margin: 0 auto 20px;
    width: 280px;
    height: 100px;
    background: url('../img/logo-neftys-cookies_280x100.png') no-repeat 0 0 / 280px 100px;
}
@media
screen and (min-resolution: 1.5dppx),
screen and (-webkit-min-device-pixel-ratio: 1.5),
screen and (min-device-pixel-ratio: 1.5) {
    #tarteaucitronRoot #tarteaucitronAlertBig::before,
    #tarteaucitronRoot #tarteaucitronServices #tarteaucitronMainLineOffset::before {
        background-image: url('../img/logo-neftys-cookies_560x200.png');
    }
}

/* Formations table
------------------------------------------------------------------------*/
.table.formations-table > tbody > tr > .formations-table-detail-by-month-toggler-cell {
    padding: var(--margin-large) 0;
    border-left: hidden;
    border-right: hidden;
}
.table.formations-table:not(.formations-table-detailed) > tbody > tr > .formations-table-detail-by-month-toggler-cell {
    border-bottom: hidden;
    padding-bottom: 0;
}
.formations-table-detail-by-month-toggler {
    position: relative;
}
.formations-table-detail-by-month-toggler input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}
.formations-table-detail-by-month-toggler label {
    transition: color 0.3s;
    color: var(--color-primary);
    text-decoration: underline;
    cursor: pointer;
}
.formations-table-detail-by-month-toggler input:focus-visible + label,
.formations-table-detail-by-month-toggler label:focus,
.formations-table-detail-by-month-toggler label:hover {
    color: var(--color-primary-alt);
    text-decoration: none;
}
.formations-table-detail-by-month-toggler input:focus-visible + label {
    outline: 1px dotted;
}
.formations-table-detail-by-month-toggler input:checked + label .formations-table-detail-by-month-toggler-icon {
    transform: scaleY(-1);
}
.formations-table:not(.formations-table-detailed) .formations-table-detail-by-month {
    display: none;
}

/* Charts
------------------------------------------------------------------------*/
.chart {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.chart-inner {
    min-width: 504px;
    overflow: hidden;
}
.chart-inner-mini {
    min-width: auto;
}
.chart-legend:not(:first-child) {
    margin-top: var(--margin-medium);
}
.chart-legend ul {
    list-style: none;
    padding: 0;
    margin: 0 -15px -20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    overflow: visible;
}
.chart-legend-vertical ul {
    flex-direction: column;
}
.chart-legend ul > li {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    margin: 0 15px 20px;
}
.chart-legend-inner {
    display: flex;
    flex-direction: column;
}
.chart-legend-main {
    display: flex;
    align-items: center;
}
.chart-legend .chart-legend-pill {
    flex: 0 0 auto;
    --chart-color: #fff;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: var(--chart-color);
    border: 2px solid #fff;
    margin-right: 10px;
}
.chart-legend-details {
    display: block;
    margin-top: 8px;
}

/* Simulator
------------------------------------------------------------------------*/
.simulator-year-block {
    display: flex;
    flex-flow: column;
}

.simulator-year-block + .simulator-year-block {
    margin-top: var(--margin-mini);
}

.simulator-year-block-header {
    position: relative;
    padding: 10px 15px;
    background: var(--color-light);
    align-self: flex-start;
    width: 100px;
}

.simulator-year-block-header label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.simulator-year-block-active .simulator-year-block-header {
    width: 100%;
    background: var(--color-dark);
    color: var(--color-light);
}

.simulator-year-block-body {
    display: none;
}

.simulator-year-block-body-inner {
    padding: 16px;
    background: var(--color-light);
}

.simulator-year-block-active .simulator-year-block-body {
    display: block;
}

.simulator-summary {
    margin-top: var(--margin-large);
}

.simulator-summary-first-amount {
    text-align: center;
}

.simulator-summary-first-amount:not(:last-child) {
    margin-bottom: var(--margin-medium);
}

.simulator-summary-first-amount-title:not(:last-child) {
    margin-bottom: var(--margin-mini);
}

.simulator-summary-first-amount-value {
    color: var(--color-primary);
}

.simulator-summary-first-amount-value:not(:last-child) {
    margin-bottom: var(--margin-mini);
}

.simulator-summary-first-amount-delay {
    font-size: var(--font-size-small);
    color: var(--color-primary);
}

.simulator-summary-notes {
    margin-top: var(--margin-medium);
}

.graph-simulation-bar {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.graph-simulation-bar .graph-simulation-inner {
    min-width: 504px;
}

.graph-simulation-legend > ul,
.graph-simulation-legend-global > ul {
    list-style: none;
    padding: 0;
    overflow: visible;
    margin-top: calc(-1 * var(--margin-small));
}

.graph-simulation-legend > ul > li,
.graph-simulation-legend-global > ul > li {
    display: inline-flex;
    width: 100%;
    flex: auto;
    --chart-color: var(--color-light);
    padding-top: var(--margin-small);
}

.graph-simulation-legend > ul > li::before,
.graph-simulation-legend-global > ul > li::before {
    content: '';
    width: 16px;
    height: 16px;
    margin-top: calc((1em * 1.5 - 16px) / 2);
    background: var(--chart-color);
    border-radius: 50%;
    border: 2px solid var(--color-light);
    flex: 0 0 auto;
    margin-right: 20px;
}

.graph-simulation-legend .label {
    padding-right: 15px;
    margin-right: auto;
}

.graph-simulation-legend .value {
    flex: 0 0 auto;
    margin-left: auto;
}

.graph-simulation-legend .tooltip-info {
    flex: 0 0 auto;
    position: relative;
    top: 0;
    right: 0;
    margin-left: 20px;
}

/* Dashboard
------------------------------------------------------------------------*/
.dashboard-top-actions:not(:last-child) {
    margin-bottom: var(--margin-medium);
}

.dashboard-top-side:not(:first-child) {
    margin-top: var(--margin-small);
}

.dashboard-section + .dashboard-section {
    margin-top: var(--margin-medium);
    padding-top: var(--margin-medium);
    border-top: 1px solid var(--color-grey-light);
}

.dashboard-col + .dashboard-main {
    margin-top: var(--margin-large);
}

.dashboard-request-steps-accordion {
    padding-bottom: 0;
    border-bottom: 0;
}

.dashboard-request-steps-accordion .accordion-panel-header h3,
.dashboard-request-steps-accordion .accordion-panel-header .h3 {
    margin-right: auto;
    margin-bottom: 0;
}

.dashboard-request-steps-accordion .accordion-panel-header:not(:hover) .accordion-panel-toggler:not(:focus):not(:hover) {
    color: var(--color-accent);
}

.dashboard-request-steps ol {
    list-style: none;
    padding: 0;
}

.dashboard-request-steps ol ol {
    margin-top: 0;
    margin-bottom: 0;
}

.dashboard-request-steps .step-item {
    display: flex;
    align-items: center;
    padding: 1rem 20px;
    color: var(--color-grey-medium);
    font-weight: bold;
}

.dashboard-request-steps li li .step-item {
    padding-left: 40px;
}

.dashboard-request-steps .step-text {
    flex: auto;
    padding-right: 20px;
}

.dashboard-request-steps .step-indicator {
    flex: 0 0 auto;
    margin-left: auto;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    color: var(--color-grey-light);
    background: currentColor;
}

.dashboard-request-steps .step-indicator-icon {
    display: none;
    fill: currentColor;
}

.dashboard-request-steps .step-active {
    color: var(--color-primary);
}

.dashboard-request-steps a.step-active:focus,
.dashboard-request-steps a.step-active:hover {
    color: var(--color-primary-alt);
}

.dashboard-request-steps .step-active .step-indicator {
    color: var(--color-primary);
    background: none;
    border: 1px solid currentColor;
}

.dashboard-request-steps .step-pending .step-indicator,
.dashboard-request-steps .step-error .step-indicator {
    position: relative;
    background: none;
    border: 0;
}

.dashboard-request-steps .step-pending .step-indicator {
    color: var(--color-accent);
}

.dashboard-request-steps .step-error .step-indicator {
    color: var(--color-danger);
}

.dashboard-request-steps .step-pending .step-indicator-icon-pending,
.dashboard-request-steps .step-error .step-indicator-icon-error {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
}

.dashboard-request-steps .step-valid .step-indicator {
    position: relative;
    color: var(--color-success);
    background: none;
    border: 1px solid currentColor;
}

.dashboard-request-steps .step-valid .step-indicator-icon-valid {
    display: block;
    position: absolute;
    top: -2px;
    right: -2px;
    width: 14px;
    height: 14px;
}

.dashboard-request-steps .step-current {
    background: var(--color-grey-lighter);
}

.dashboard-request-steps .step-current .step-indicator {
    color: var(--color-primary);
    background: currentColor;
}

.dashboard-request-steps .step-current .step-indicator-icon {
    display: none;
}

.dashboard-followup-steps > ol {
    list-style-type: none;
    padding: 0 0 0 26px;
}

.dashboard-followup-step {
    position: relative;
}

.dashboard-followup-step:not(:last-child) {
    padding-bottom: var(--margin-small);
}

.dashboard-followup-step-indicator {
    content: '';
    position: absolute;
    top: 4px;
    left: -26px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--color-grey-light);
}

.dashboard-followup-step-indicator-icon {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 10px;
    height: 10px;
    margin: auto;
    fill: var(--color-light);
}

.dashboard-followup-step:not(:last-child)::before {
    content: '';
    position: absolute;
    left: -18px;
    top: 12px;
    bottom: -12px;
    border-left: 1px dashed var(--color-grey-light);
    transform: translateX(-50%);
}

.dashboard-followup-step-current .dashboard-followup-step-indicator {
    background-color: var(--color-primary);
}

.dashboard-followup-step-current .dashboard-followup-step-indicator-icon-current {
    display: block;
}

.dashboard-followup-step-past .dashboard-followup-step-indicator {
    background-color: var(--color-success);
}

.dashboard-followup-step-past:not(:last-child)::before {
    border-left: 1px solid var(--color-success);
}

.dashboard-followup-step-title {
    color: var(--color-grey-medium);
}

.dashboard-followup-step-past .dashboard-followup-step-title {
    color: var(--color-dark);
    font-weight: bold;
}

.dashboard-followup-step-current .dashboard-followup-step-title {
    color: var(--color-primary);
    font-weight: bold;
}

.dashboard-followup-step .dashboard-followup-step-actions,
.dashboard-followup-step .dashboard-followup-step-actions:not(:first-child) {
    margin-top: var(--margin-small);
}

/* Files list
------------------------------------------------------------------------*/
.files-list-item-filename {
    display: flex;
    align-items: center;
}
.files-list-item-filename .icon-container {
    flex: 0 0 auto;
}

/* Chat
------------------------------------------------------------------------*/
.chat-zone:not(:first-child) {
    margin-top: var(--margin-large);
}
.chat-zone:not(:last-child) {
    margin-bottom: var(--margin-large);
}
.chat-messages-list {
    min-height: 200px;
    max-height: 50vh;
    overflow-y: auto;
    overflow-x: hidden;
    padding-bottom: var(--margin-medium);
}
.chat-message + .chat-message {
    margin-top: var(--margin-medium);
}
.chat-message-text {
    padding: var(--margin-small);
    border: 1px solid var(--color-chat-message);
    background: var(--color-chat-message);
    border-radius: 4px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.chat-message-highlight .chat-message-text {
    border-color: var(--color-primary);
    background-color: var(--color-chat-message-highlight);
}
.chat-message-self .chat-message-text {
    border-color: var(--color-grey-lighter);
    background-color: var(--color-grey-lighter);
}
.chat-message-metadata {
    margin-top: var(--margin-small);
    color: var(--color-grey-medium);
}
.chat-message-author {
    font-weight: bold;
    color: var(--color-dark);
}
.chat-compose-form {
    padding-top: var(--margin-medium);
    padding-left: var(--margin-large);
    padding-right: var(--margin-large);
    background: var(--color-light);
    box-shadow: 0 -16px 16px -16px var(--color-primary-20);
}

.table-grid:not(:first-child) {
    margin-top: var(--margin-medium);
}

.table-grid:not(:last-child) {
    margin-bottom: var(--margin-medium);
}

.table-grid-tip,
.table-grid-labels {
    display: none;
}

.table-grid + .table-grid,
.table-grid-column + .table-grid-column {
    margin-top: var(--margin-medium);
    padding-top: var(--margin-medium);
    border-top: 1px solid var(--color-grey-light);
}

.table-grid-column-header {
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.075em;
}

.table-grid-column-header:not(:last-child) {
    margin-bottom: var(--margin-small);
}

.table-grid-column-subheader,
.table-grid-subheader {
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.075em;
    color: var(--color-primary);
}

.table-grid-column-subheader:not(:first-child) {
    margin-top: var(--margin-medium);
}

.table-grid-column-subheader:not(:last-child) {
    margin-bottom: var(--margin-mini);
}

.complementary-info-accordion-panel.accordion-panel {
    border: 0;
}

.complementary-info-accordion-panel.accordion-panel-open {
    border-color: transparent;
    box-shadow: 0 0 10px var(--color-grey-lighter);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.complementary-info-accordion-panel .accordion-panel-body-inner {
    padding: 0;
}

/* Footer
------------------------------------------------------------------------*/
.footer {
    flex: 0 0 auto;
    background: var(--color-grey-lighter);
    padding-top: 18px;
    padding-bottom: 18px;
}
.footer-nav > ul {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-left: calc(-1 * var(--gutter-half));
    margin-right: calc(-1 * var(--gutter-half));
    margin-bottom: calc(-1 * var(--margin-small));
}
.footer-nav > ul > li {
    flex: 0 0 auto;
    padding-left: var(--gutter-half);
    padding-right: var(--gutter-half);
    margin-bottom: var(--margin-small);
}
.footer .js-manage-cookies {
    background: none;
    border: 0;
    padding: 0;
    margin: 0;
    color: var(--color-primary);
    font-weight: bold;
    text-decoration: underline;
}
.footer .js-manage-cookies:focus {
    outline: 1px dotted;
}
.footer .js-manage-cookies:focus,
.footer .js-manage-cookies:hover {
    color: var(--color-primary-alt);
    text-decoration: none;
}

@media (min-width: 600px) {

    /* Basic HTML
    ------------------------------------------------------------------------*/
    .list-fixed-label-value .label {
        width: calc(var(--col-with-gutter) * 4.5 - var(--gutter-half) - 32px);
    }

    .list-fixed-label-value .value {
        width: auto;
        flex: 1 0 0;
    }

    .table-cell-min-tablet-auto {
        min-width: auto;
    }
    .table-cell-min-tablet-1 {
        --cols-span: 1;
    }
    .table-cell-min-tablet-2 {
        --cols-span: 2;
    }
    .table-cell-min-tablet-3 {
        --cols-span: 3;
    }
    .table-cell-min-tablet-4 {
        --cols-span: 4;
    }
    .table-cell-min-tablet-5 {
        --cols-span: 5;
    }
    .table-cell-min-tablet-6 {
        --cols-span: 6;
    }
    .table-cell-min-tablet-7 {
        --cols-span: 7;
    }
    .table-cell-min-tablet-8 {
        --cols-span: 8;
    }
    .table-cell-min-tablet-9 {
        --cols-span: 9;
    }
    .table-cell-min-tablet-10 {
        --cols-span: 10;
    }
    .table-cell-min-tablet-11 {
        --cols-span: 11;
    }
    .table-cell-min-tablet-12 {
        --cols-span: 12;
    }

    .alt-accordion-panel-header-main {
        display: flex;
        align-items: center;
    }
    .alt-accordion-panel-date {
        flex: 0 0 auto;
    }

    .panel-header {
        display: flex;
        align-items: center;
    }
    .panel-header-side {
        flex: 0 0 auto;
        padding-left: var(--gutter-full);
        margin-left: auto;
    }
    .panel-header-side:not(:first-child) {
        margin-top: 0;
    }
    .panel-body-part {
        display: flex;
        align-items: center;
    }
    .panel-body-part-side {
        align-self: flex-start;
        text-align: right;
        flex: 0 0 auto;
        padding-left: var(--gutter-full);
        margin-left: auto;
        max-width: calc(50% + var(--gutter-half));
    }

    .panel-body-part-side:not(:first-child) {
        margin-top: 0;
    }

    .downloadable-file {
        max-width: calc(var(--col-with-gutter) * 4.5 - var(--gutter-full));
    }
    .downloadable-file-full {
        max-width: none;
    }

    /* Header
    ------------------------------------------------------------------------*/

    /* Columns
    ------------------------------------------------------------------------*/
    .cols > .col-tablet-fixed {
        width: calc(var(--col-with-gutter) * var(--cols-span));
    }
    .cols > .col-tablet-1 {
        --cols-span: 1;
    }
    .cols > .col-tablet-2 {
        --cols-span: 2;
    }
    .cols > .col-tablet-3 {
        --cols-span: 3;
    }
    .cols > .col-tablet-4 {
        --cols-span: 4;
    }
    .cols > .col-tablet-5 {
        --cols-span: 5;
    }
    .cols > .col-tablet-6 {
        --cols-span: 6;
    }
    .cols > .col-tablet-7 {
        --cols-span: 7;
    }
    .cols > .col-tablet-8 {
        --cols-span: 8;
    }
    .cols > .col-tablet-9 {
        --cols-span: 9;
    }
    .cols > .col-tablet-10 {
        --cols-span: 10;
    }
    .cols > .col-tablet-11 {
        --cols-span: 11;
    }
    .cols > .col-tablet-12 {
        --cols-span: 12;
    }
    .cols > .col-tablet-auto {
        width: auto;
    }

    .cols > .col-tablet-push-0 {
        --cols-push: 0;
    }
    .cols > .col-tablet-push-1 {
        --cols-push: 1;
    }
    .cols > .col-tablet-push-2 {
        --cols-push: 2;
    }
    .cols > .col-tablet-push-3 {
        --cols-push: 3;
    }
    .cols > .col-tablet-push-4 {
        --cols-push: 4;
    }
    .cols > .col-tablet-push-5 {
        --cols-push: 5;
    }
    .cols > .col-tablet-push-6 {
        --cols-push: 6;
    }
    .cols > .col-tablet-push-7 {
        --cols-push: 7;
    }
    .cols > .col-tablet-push-8 {
        --cols-push: 8;
    }
    .cols > .col-tablet-push-9 {
        --cols-push: 9;
    }
    .cols > .col-tablet-push-10 {
        --cols-push: 10;
    }
    .cols > .col-tablet-push-11 {
        --cols-push: 11;
    }

    /* Forms
    ------------------------------------------------------------------------*/
    .btns {
        margin-left: calc(-1 * var(--gutter-half));
        margin-right: calc(-1 * var(--gutter-half));
    }
    .btns .btn,
    .btns .link-btn,
    .btns form {
        margin-left: var(--gutter-half);
        margin-right: var(--gutter-half);
        flex-shrink: 1;
    }
    .btns .btns {
        width: auto;
        flex-shrink: 1;
    }
    .btns form {
        width: auto;
    }
    .btns form .btn,
    .btns form .link-btn {
        margin-left: 0;
        margin-right: 0;
    }
    .btns .btns-pos-right {
        margin-left: auto;
    }

    .btn,
    .link-btn {
        width: auto;
    }

    .checkrads-cols-tablet-2 {
        columns: 2;
    }
    .checkrads-cols-tablet-3 {
        columns: 3;
    }
    .checkrads-cols-tablet-4 {
        columns: 4;
    }

    .tooltip-container {
        position: relative;
    }
    .tooltip-container:after {
        content: none;
    }
    .with-tooltip,
    .label-with-tooltip,
    .title-with-tooltip {
        padding-right: 0;
    }
    .with-tooltip .tooltip-inline,
    .label-with-tooltip .tooltip-inline,
    .title-with-tooltip .tooltip-inline {
        position: static;
        display: inline-flex;
        vertical-align: bottom;
        margin-left: 5px;
    }

    .tooltip-content-tablet-bottom,
    .tooltip-content-tablet-top,
    .tooltip-content-tablet-left,
    .tooltip-content-tablet-right {
        margin: 0;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        transform: none;
    }
    .tooltip-content-tablet-bottom::before,
    .tooltip-content-tablet-top::before,
    .tooltip-content-tablet-left::before,
    .tooltip-content-tablet-right::before {
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        transform: none;
    }

    .tooltip-content-tablet-bottom {
        margin-top: 12px;
        top: 100%;
    }
    .tooltip-content-tablet-bottom::before {
        top: -9px;

        border-top: 0;
        border-bottom: 9px solid var(--color-grey-dark);
        border-left: 7px solid transparent;
        border-right: 7px solid transparent;
    }
    .tooltip-content-tablet-top {
        margin-bottom: 12px;
        bottom: 100%;
    }
    .tooltip-content-tablet-top::before {
        bottom: -9px;

        border-top: 9px solid var(--color-grey-dark);
        border-bottom: 0;
        border-left: 7px solid transparent;
        border-right: 7px solid transparent;
    }

    .tooltip-content-tablet-top-left,
    .tooltip-content-tablet-bottom-left {
        right: -10px;
    }
    .tooltip-content-tablet-top-left::before,
    .tooltip-content-tablet-bottom-left::before {
        right: 10px;
    }
    .tooltip-content-tablet-top-center,
    .tooltip-content-tablet-top-center::before,
    .tooltip-content-tablet-bottom-center,
    .tooltip-content-tablet-bottom-center::before {
        left: 50%;
        transform: translateX(-50%);
    }
    .tooltip-content-tablet-top-right,
    .tooltip-content-tablet-bottom-right {
        left: -10px;
    }
    .tooltip-content-tablet-top-right::before,
    .tooltip-content-tablet-bottom-right::before {
        left: 10px;
    }

    .tooltip-content-tablet-left {
        margin-right: 12px;
        right: 100%;
    }
    .tooltip-content-tablet-left::before {
        right: -9px;

        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 9px solid var(--color-grey-dark);
        border-right: 0;
    }
    .tooltip-content-tablet-right {
        margin-left: 12px;
        left: 100%;
    }
    .tooltip-content-tablet-right::before {
        left: -9px;

        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 0;
        border-right: 9px solid var(--color-grey-dark);
    }

    .tooltip-content-tablet-left-top,
    .tooltip-content-tablet-right-top {
        bottom: -10px;
    }
    .tooltip-content-tablet-left-top::before,
    .tooltip-content-tablet-right-top::before {
        bottom: 10px;
    }
    .tooltip-content-tablet-left-center,
    .tooltip-content-tablet-left-center::before,
    .tooltip-content-tablet-right-center,
    .tooltip-content-tablet-right-center::before {
        top: 50%;
        transform: translateY(-50%);
    }
    .tooltip-content-tablet-left-bottom,
    .tooltip-content-tablet-right-bottom {
        top: -10px;
    }
    .tooltip-content-tablet-left-bottom::before,
    .tooltip-content-tablet-right-bottom::before {
        top: 10px;
    }

    .file-drop .controls .field {
        flex-direction: row;
        justify-content: space-evenly;
    }
    .file-drop .controls .field .control-label {
        flex: 0 0 auto;
        margin-right: var(--gutter-full);
        margin-bottom: 0;
    }

    /* Content
    ------------------------------------------------------------------------*/
    .pagination {
        justify-content: flex-start;
    }
    .pagination-center {
        justify-content: center;
    }
    .pagination > ul {
        padding-left: 0;
        padding-right: 0;
    }

    /* Dashboard
    ------------------------------------------------------------------------*/
    .table-grid-column::after {
        content: '';
        display: table;
        clear: both;
    }

    .table-grid-column-header {
        float: left;
        width: 50%;
        padding-right: var(--gutter-half);
    }

    .table-grid-group {
        margin-left: 50%;
        padding-left: var(--gutter-half);
    }
}

@media (min-width: 960px) {

    /* Basic HTML
    ------------------------------------------------------------------------*/
    :root {
        font-size: 16px;

        --font-size-small: 14px;
        --font-size-normal: 1rem;
        --font-size-large: 18px;
        --font-size-h1: 40px;
        --font-size-h2: 30px;
        --font-size-h3: 20px;
        --font-size-h4: 18px;

        --gutter-full: 24px;
        --gutter-half: calc(var(--gutter-full) / 2);
        --wrapper-max: 960px;

        --margin-medium: 30px;
        --margin-large: 42px;
    }

    .img-left {
        float: left;
        margin: 0 var(--gutter-full) 10px 0;
    }
    .img-right {
        float: right;
        margin: 0 0 10px var(--gutter-full);
    }

    a:target {
        display: block;
        visibility: hidden;
        position: relative;
        top: -90px;
    }

    .form-error-inline-icon {
        margin-top: 0;
        margin-right: var(--margin-mini);
    }

    .table-cell-min-desktop-auto {
        min-width: auto;
    }
    .table-cell-min-desktop-1 {
        --cols-span: 1;
    }
    .table-cell-min-desktop-2 {
        --cols-span: 2;
    }
    .table-cell-min-desktop-3 {
        --cols-span: 3;
    }
    .table-cell-min-desktop-4 {
        --cols-span: 4;
    }
    .table-cell-min-desktop-5 {
        --cols-span: 5;
    }
    .table-cell-min-desktop-6 {
        --cols-span: 6;
    }
    .table-cell-min-desktop-7 {
        --cols-span: 7;
    }
    .table-cell-min-desktop-8 {
        --cols-span: 8;
    }
    .table-cell-min-desktop-9 {
        --cols-span: 9;
    }
    .table-cell-min-desktop-10 {
        --cols-span: 10;
    }
    .table-cell-min-desktop-11 {
        --cols-span: 11;
    }
    .table-cell-min-desktop-12 {
        --cols-span: 12;
    }

    .steps > ol {
        display: flex;
        padding-left: 0;
        padding-top: 34px;
    }
    .steps > ol::before {
        top: 10px;
        left: 0;
        height: 4px;
        width: 100%;
    }
    .steps > ol > li {
        flex: 1 0 0;
        text-align: center;
    }
    .steps > ol > li + li {
        margin-top: 0;
    }
    .steps .step-past::before,
    .steps .step-current::before {
        top: -24px;
        left: 0;
        width: 100%;
        height: 4px;
        bottom: auto;
    }
    .steps li:first-child {
        text-align: left;
    }
    .steps li:last-child {
        text-align: right;
    }
    .steps li:first-child::before {
        top: -24px;
        border-top-left-radius: 2px;
        border-bottom-left-radius: 2px;
        border-top-right-radius: 0;
    }
    .steps .step-current::before {
        width: 50%;
    }
    .steps .step-current::after {
        left: 50%;
        top: -34px;
        transform: translateX(-50%);
    }
    .steps .step-current:first-child::before {
        width: 0;
    }
    .steps .step-current:first-child::after {
        left: 0;
        transform: translateX(0);
    }
    .steps .step-current:last-child::before {
        width: 100%;
    }
    .steps .step-current:last-child::after {
        left: 100%;
        transform: translateX(-100%);
    }

    .panel-price-amount,
    .panel-price-label {
        margin-top: 0;
        margin-bottom: 0;
    }

    .downloadable-file {
        max-width: calc(var(--col-with-gutter) * 3 - var(--gutter-full));
    }
    .downloadable-file-full {
        max-width: none;
    }

    /* Header
    ------------------------------------------------------------------------*/
    .header {
        position: fixed;
        width: 100%;
        background: var(--color-light);
        z-index: 500;
    }
    .header-inner {
        max-width: var(--wrapper-max);
        margin: 0 auto;
        padding: 0 var(--gutter-full);
        position: relative;
        height: 90px;
    }
    .header-inner::after {
        content: '';
        display: block;
        position: absolute;
        bottom: 0;
        left: var(--gutter-full);
        right: var(--gutter-full);
        border-top: 1px solid var(--color-grey-lighter);
    }
    .header-logo-toggler-part {
        width: auto;
        max-width: var(--wrapper-max);
        padding: 0;
        margin: 0;
        position: absolute;
        top: 0;
        left: var(--gutter-full);
    }
    .header-logo-toggler-part-inner {
        border-bottom: 0;
    }

    .main-nav-toggler {
        display: none;
    }

    .header-nav-actions-part {
        display: flex;
        height: auto;
        position: absolute;
        top: 0;
        left: auto;
        right: var(--gutter-full);
        overflow: visible;
        width: auto;
    }

    .main-nav {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    .main-nav-inner {
        padding: 0;
        flex: 0 0 auto;
        max-width: 100%;
    }

    .main-nav ul {
        display: flex;
    }

    .main-nav-inner > ul > li + li {
        margin-top: 0;
    }

    .main-nav-inner > ul > li > a,
    .main-nav-item-has-sub > button {
        padding: 33px 0 32px;
    }

    .main-nav-inner .active,
    .main-nav-inner .active.main-nav-item-has-sub {
        border-left: 0;
        padding-left: 16px;
    }

    .main-nav-inner .active > button,
    .main-nav-inner .active > a {
        border-bottom: 4px solid var(--color-primary);
        padding-bottom: 28px;
    }

    .main-nav-sub {
        position: absolute;
        background: var(--color-light);
        border: 1px solid var(--color-grey-lighter);
        top: calc(100% - 24px);
        right: var(--gutter-full);
        z-index: 1;
    }

    .main-nav-sub > ul {
        flex-direction: column;
        white-space: nowrap;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .main-nav-sub > ul > li,
    .main-nav-inner .main-nav-sub .active,
    .main-nav-inner .main-nav-sub .active.main-nav-item-has-sub {
        padding-left: 0;
        padding-right: 0;
    }

    .main-nav-sub > ul > li > a {
        padding: 10px 16px;
    }

    .main-nav-sub .active > a {
        border-bottom: 0;
        padding-bottom: 10px;
        border-left: 4px solid var(--color-primary);
        padding-left: 12px;
    }

    .main-nav-sub > ul > .main-nav-last-update {
        margin-top: 10px;
        margin-bottom: -10px;
        padding-left: 16px;
    }

    .fixed-side-actions a,
    .fixed-side-actions button {
        width: 24px;
        height: 24px;
    }

    /* Columns
    ------------------------------------------------------------------------*/
    .cols > .col-desktop-fixed {
        width: calc(var(--col-with-gutter) * var(--cols-span));
    }
    .cols > .col-desktop-1 {
        --cols-span: 1;
    }
    .cols > .col-desktop-2 {
        --cols-span: 2;
    }
    .cols > .col-desktop-3 {
        --cols-span: 3;
    }
    .cols > .col-desktop-4 {
        --cols-span: 4;
    }
    .cols > .col-desktop-5 {
        --cols-span: 5;
    }
    .cols > .col-desktop-6 {
        --cols-span: 6;
    }
    .cols > .col-desktop-7 {
        --cols-span: 7;
    }
    .cols > .col-desktop-8 {
        --cols-span: 8;
    }
    .cols > .col-desktop-9 {
        --cols-span: 9;
    }
    .cols > .col-desktop-10 {
        --cols-span: 10;
    }
    .cols > .col-desktop-11 {
        --cols-span: 11;
    }
    .cols > .col-desktop-12 {
        --cols-span: 12;
    }
    .cols > .col-desktop-auto {
        width: auto;
    }

    .cols > .col-desktop-push-0 {
        --cols-push: 0;
    }
    .cols > .col-desktop-push-1 {
        --cols-push: 1;
    }
    .cols > .col-desktop-push-2 {
        --cols-push: 2;
    }
    .cols > .col-desktop-push-3 {
        --cols-push: 3;
    }
    .cols > .col-desktop-push-4 {
        --cols-push: 4;
    }
    .cols > .col-desktop-push-5 {
        --cols-push: 5;
    }
    .cols > .col-desktop-push-6 {
        --cols-push: 6;
    }
    .cols > .col-desktop-push-7 {
        --cols-push: 7;
    }
    .cols > .col-desktop-push-8 {
        --cols-push: 8;
    }
    .cols > .col-desktop-push-9 {
        --cols-push: 9;
    }
    .cols > .col-desktop-push-10 {
        --cols-push: 10;
    }
    .cols > .col-desktop-push-11 {
        --cols-push: 11;
    }

    /* Forms
    ------------------------------------------------------------------------*/
    input[type="text"],
    input[type="password"],
    input[type="datetime"],
    input[type="datetime-local"],
    input[type="date"],
    input[type="month"],
    input[type="time"],
    input[type="week"],
    input[type="number"],
    input[type="email"],
    input[type="url"],
    input[type="search"],
    input[type="tel"],
    input[type="color"],
    textarea,
    .select-like,
    .select2.select2-container .select2-selection--single,
    .select2.select2-container .select2-selection--multiple {
        height: 46px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .form-row .controls-with-unit .unit {
        height: 46px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .select2.select2-container .select2-selection--multiple {
        min-height: 46px;
        height: auto;
    }
    .select2-container .select2-dropdown .select2-search--dropdown .select2-search__field {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .btns {
        margin-left: -15px;
        margin-right: -15px;
    }
    .btns .btn,
    .btns .link-btn,
    .btns form {
        margin-left: 15px;
        margin-right: 15px;
    }

    .btn {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .btns .link-btn:not(.link-btn-no-pad) {
        padding-top: 11px;
        padding-bottom: 11px;
    }

    .multiple-actions {
        margin-left: -8px;
        margin-right: -8px;
    }
    .multiple-actions form,
    .multiple-actions .multiple-action-btn {
        margin-left: 8px;
        margin-right: 8px;
    }
    .multiple-action-btn {
        padding-top: 5px;
        padding-bottom: 5px;
    }

    .checkrads-cols-desktop-2 {
        columns: 2;
    }
    .checkrads-cols-desktop-3 {
        columns: 3;
    }
    .checkrads-cols-desktop-4 {
        columns: 4;
    }

    .tooltip-content-desktop-bottom,
    .tooltip-content-desktop-top,
    .tooltip-content-desktop-left,
    .tooltip-content-desktop-right {
        margin: 0;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        transform: none;
    }
    .tooltip-content-desktop-bottom::before,
    .tooltip-content-desktop-top::before,
    .tooltip-content-desktop-left::before,
    .tooltip-content-desktop-right::before {
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        transform: none;
    }

    .tooltip-content-desktop-bottom {
        margin-top: 12px;
        top: 100%;
    }
    .tooltip-content-desktop-bottom::before {
        top: -9px;

        border-top: 0;
        border-bottom: 9px solid var(--color-grey-dark);
        border-left: 7px solid transparent;
        border-right: 7px solid transparent;
    }
    .tooltip-content-desktop-top {
        margin-bottom: 12px;
        bottom: 100%;
    }
    .tooltip-content-desktop-top::before {
        bottom: -9px;

        border-top: 9px solid var(--color-grey-dark);
        border-bottom: 0;
        border-left: 7px solid transparent;
        border-right: 7px solid transparent;
    }

    .tooltip-content-desktop-top-left,
    .tooltip-content-desktop-bottom-left {
        right: -10px;
    }
    .tooltip-content-desktop-top-left::before,
    .tooltip-content-desktop-bottom-left::before {
        right: 10px;
    }
    .tooltip-content-desktop-top-center,
    .tooltip-content-desktop-top-center::before,
    .tooltip-content-desktop-bottom-center,
    .tooltip-content-desktop-bottom-center::before {
        left: 50%;
        transform: translateX(-50%);
    }
    .tooltip-content-desktop-top-right,
    .tooltip-content-desktop-bottom-right {
        left: -10px;
    }
    .tooltip-content-desktop-top-right::before,
    .tooltip-content-desktop-bottom-right::before {
        left: 10px;
    }

    .tooltip-content-desktop-left {
        margin-right: 12px;
        right: 100%;
    }
    .tooltip-content-desktop-left::before {
        right: -9px;

        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 9px solid var(--color-grey-dark);
        border-right: 0;
    }
    .tooltip-content-desktop-right {
        margin-left: 12px;
        left: 100%;
    }
    .tooltip-content-desktop-right::before {
        left: -9px;

        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 0;
        border-right: 9px solid var(--color-grey-dark);
    }

    .tooltip-content-desktop-left-top,
    .tooltip-content-desktop-right-top {
        bottom: -10px;
    }
    .tooltip-content-desktop-left-top::before,
    .tooltip-content-desktop-right-top::before {
        bottom: 10px;
    }
    .tooltip-content-desktop-left-center,
    .tooltip-content-desktop-left-center::before,
    .tooltip-content-desktop-right-center,
    .tooltip-content-desktop-right-center::before {
        top: 50%;
        transform: translateY(-50%);
    }
    .tooltip-content-desktop-left-bottom,
    .tooltip-content-desktop-right-bottom {
        top: -10px;
    }
    .tooltip-content-desktop-left-bottom::before,
    .tooltip-content-desktop-right-bottom::before {
        top: 10px;
    }

    /* Content
    ------------------------------------------------------------------------*/
    .content-main {
        padding-top: 90px;
    }

    .page-section {
        padding-top: 70px;
        padding-bottom: 70px;
    }

    .page-title {
        padding-top: 23px;
    }
    .page-title-inner {
        display: flex;
        align-items: flex-start;
    }
    .page-title-inner h1,
    .page-title-inner .h1 {
        margin-top: 0;
        margin-bottom: 0;
    }
    .page-title-side {
        flex: 0 0 auto;
        padding-left: var(--gutter-full);
        margin-left: auto;
    }
    .page-title + .page-section {
        padding-top: 30px;
    }
    .page-title + .page-section-white {
        margin-top: -70px;
    }
    .page-title + .page-section-grey {
        margin-top: -40px;
        padding-top: 70px;
    }
    .block-with-btns {
        --btn-height: 46px;
    }

    .pagination > ul > li > a,
    .pagination > ul > li > span {
        min-width: 46px;
        height: 46px;
        line-height: 46px;
    }
    .pagination svg {
        top: 17px;
    }

    .breadcrumb {
        display: block;
        padding: 23px 0 0;
    }
    .breadcrumb ol {
        list-style: none;
        padding: 0;
        margin-bottom: calc(-1 * var(--margin-small));
        display: flex;
        flex-wrap: wrap;
    }
    .breadcrumb li {
        margin-bottom: var(--margin-small);
    }
    .breadcrumb li:not(:first-child)::before {
        content: '/';
        margin-left: 10px;
        margin-right: 10px;
    }

    .popup {
        max-width: calc(var(--col-with-gutter) * 8 - var(--gutter-full));
    }

    /* Charts
    ------------------------------------------------------------------------*/
    .chart {
        overflow: visible;
    }
    .chart-inner {
        min-width: 0;
    }

    /* Dashboard
    ------------------------------------------------------------------------*/
    .dashboard-top-actions {
        display: flex;
    }
    .dashboard-top-side {
        flex: 0 0 auto;
        padding-left: var(--gutter-full);
        margin-left: auto;
    }
    .dashboard-top-side:not(:first-child) {
        margin-top: 0;
    }

    .dashboard-col + .dashboard-main {
        margin-top: 0;
    }

    .dashboard-request-steps-accordion .accordion-panel-toggler {
        display: none;
    }
    .dashboard-request-steps-accordion .accordion-panel-header {
        cursor: auto;
    }
    .dashboard-request-steps-accordion .accordion-panel-body {
        display: block;
    }
    .dashboard-request-steps {
        border-right: 1px solid var(--color-grey-lighter);
    }
}

@media (min-width: 1200px) {

    /* Basic HTML
    ------------------------------------------------------------------------*/
    :root {
        --wrapper-max: 1200px;
    }
    .scrollable-table {
        overflow-x: visible;
    }
    .scrollable-table .table {
        white-space: normal;
    }
    .table-cell-min {
        min-width: auto;
    }

    /* Columns
    ------------------------------------------------------------------------*/
    .cols-large-7 {
        --cols-nb: 7;
    }
    .cols > .col-large-fixed {
        width: calc(var(--col-with-gutter) * var(--cols-span));
    }
    .cols > .col-large-1 {
        --cols-span: 1;
    }
    .cols > .col-large-2 {
        --cols-span: 2;
    }
    .cols > .col-large-3 {
        --cols-span: 3;
    }
    .cols > .col-large-4 {
        --cols-span: 4;
    }
    .cols > .col-large-5 {
        --cols-span: 5;
    }
    .cols > .col-large-6 {
        --cols-span: 6;
    }
    .cols > .col-large-7 {
        --cols-span: 7;
    }
    .cols > .col-large-8 {
        --cols-span: 8;
    }
    .cols > .col-large-9 {
        --cols-span: 9;
    }
    .cols > .col-large-10 {
        --cols-span: 10;
    }
    .cols > .col-large-11 {
        --cols-span: 11;
    }
    .cols > .col-large-12 {
        --cols-span: 12;
    }
    .cols > .col-large-auto {
        width: auto;
    }

    .cols > .col-large-push-0 {
        --cols-push: 0;
    }
    .cols > .col-large-push-1 {
        --cols-push: 1;
    }
    .cols > .col-large-push-2 {
        --cols-push: 2;
    }
    .cols > .col-large-push-3 {
        --cols-push: 3;
    }
    .cols > .col-large-push-4 {
        --cols-push: 4;
    }
    .cols > .col-large-push-5 {
        --cols-push: 5;
    }
    .cols > .col-large-push-6 {
        --cols-push: 6;
    }
    .cols > .col-large-push-7 {
        --cols-push: 7;
    }
    .cols > .col-large-push-8 {
        --cols-push: 8;
    }
    .cols > .col-large-push-9 {
        --cols-push: 9;
    }
    .cols > .col-large-push-10 {
        --cols-push: 10;
    }
    .cols > .col-large-push-11 {
        --cols-push: 11;
    }

    /* Header
    ------------------------------------------------------------------------*/
    .main-nav-inner > ul {
        margin-left: -30px;
        margin-right: -30px;
    }

    .main-nav-inner > ul > li,
    .main-nav-inner .active,
    .main-nav-inner .active.main-nav-item-has-sub {
        padding-left: 30px;
        padding-right: 30px;
    }

    .main-nav-sub {
        right: 30px;
    }

    /* Forms
    ------------------------------------------------------------------------*/
    .form-row-fixed-col-large-2,
    .controls-fixed-col-large-2 {
        width: calc(var(--col-with-gutter) * 2 - var(--gutter-full));
    }
    .form-row-fixed-col-large-3,
    .controls-fixed-col-large-3 {
        width: calc(var(--col-with-gutter) * 3 - var(--gutter-full));
    }
    .form-row-fixed-col-large-4,
    .controls-fixed-col-large-4 {
        width: calc(var(--col-with-gutter) * 4 - var(--gutter-full));
    }
    .form-row-fixed-col-large-6,
    .controls-fixed-col-large-6 {
        width: calc(var(--col-with-gutter) * 6 - var(--gutter-full));
    }

    .checkrads-cols-large-2 {
        columns: 2;
    }
    .checkrads-cols-large-3 {
        columns: 3;
    }
    .checkrads-cols-large-4 {
        columns: 4;
    }

    .tooltip-content-large-bottom,
    .tooltip-content-large-top,
    .tooltip-content-large-left,
    .tooltip-content-large-right {
        margin: 0;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        transform: none;
    }
    .tooltip-content-large-bottom::before,
    .tooltip-content-large-top::before,
    .tooltip-content-large-left::before,
    .tooltip-content-large-right::before {
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        transform: none;
    }

    .tooltip-content-large-bottom {
        margin-top: 12px;
        top: 100%;
    }
    .tooltip-content-large-bottom::before {
        top: -9px;

        border-top: 0;
        border-bottom: 9px solid var(--color-grey-dark);
        border-left: 7px solid transparent;
        border-right: 7px solid transparent;
    }
    .tooltip-content-large-top {
        margin-bottom: 12px;
        bottom: 100%;
    }
    .tooltip-content-large-top::before {
        bottom: -9px;

        border-top: 9px solid var(--color-grey-dark);
        border-bottom: 0;
        border-left: 7px solid transparent;
        border-right: 7px solid transparent;
    }

    .tooltip-content-large-top-left,
    .tooltip-content-large-bottom-left {
        right: -10px;
    }
    .tooltip-content-large-top-left::before,
    .tooltip-content-large-bottom-left::before {
        right: 10px;
    }
    .tooltip-content-large-top-center,
    .tooltip-content-large-top-center::before,
    .tooltip-content-large-bottom-center,
    .tooltip-content-large-bottom-center::before {
        left: 50%;
        transform: translateX(-50%);
    }
    .tooltip-content-large-top-right,
    .tooltip-content-large-bottom-right {
        left: -10px;
    }
    .tooltip-content-large-top-right::before,
    .tooltip-content-large-bottom-right::before {
        left: 10px;
    }

    .tooltip-content-large-left {
        margin-right: 12px;
        right: 100%;
    }
    .tooltip-content-large-left::before {
        right: -9px;

        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 9px solid var(--color-grey-dark);
        border-right: 0;
    }
    .tooltip-content-large-right {
        margin-left: 12px;
        left: 100%;
    }
    .tooltip-content-large-right::before {
        left: -9px;

        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 0;
        border-right: 9px solid var(--color-grey-dark);
    }

    .tooltip-content-large-left-top,
    .tooltip-content-large-right-top {
        bottom: -10px;
    }
    .tooltip-content-large-left-top::before,
    .tooltip-content-large-right-top::before {
        bottom: 10px;
    }
    .tooltip-content-large-left-center,
    .tooltip-content-large-left-center::before,
    .tooltip-content-large-right-center,
    .tooltip-content-large-right-center::before {
        top: 50%;
        transform: translateY(-50%);
    }
    .tooltip-content-large-left-bottom,
    .tooltip-content-large-right-bottom {
        top: -10px;
    }
    .tooltip-content-large-left-bottom::before,
    .tooltip-content-large-right-bottom::before {
        top: 10px;
    }

    /* Dashboard
    ------------------------------------------------------------------------*/
    @supports (display: grid) and (display: contents) {

        .table-grid-tip,
        .table-grid-labels {
            display: block;
        }

        .table-grid + .table-grid,
        .table-grid-column + .table-grid-column {
            margin-top: 0;
            padding-top: 0;
            border-top: 0;
        }

        .table-grid + .table-grid {
            margin-top: var(--margin-large);
        }

        .table-grid {
            display: grid;
            grid-template-columns: calc(100% - 450px) 150px 150px 150px;
            grid-auto-columns: 150px;
            grid-auto-flow: column;
            overflow: hidden;
        }
        .table-grid.table-grid-4 {
            grid-template-columns: calc(100% - 450px) 112.5px 112.5px 112.5px 112.5px;
        }
        .table-grid-4 input {
            font-size: 14px;
        }

        .table-grid-labels,
        .table-grid-column,
        .table-grid-group {
            display: contents;
        }

        .table-grid-controls,
        .table-grid-subheader,
        .table-grid-label {
            grid-column: 1;
            font-size: var(--font-size-small);
            position: sticky;
            left: 0;
            z-index: 1;
            background: var(--color-grey-lighter);
        }

        .table-grid-label:hover {
            /* Fix tooltip appearing behind other elements */
            z-index: 2;
        }

        .table-grid-subheader,
        .table-grid-label {
            display: flex;
            align-items: center;
        }

        .table-grid-subheader {
            margin-right: -450px;
        }

        .table-grid-cell-bg-grey {
            background-color: var(--color-grey-light);
        }

        .table-grid-cell-full-grey {
            background-color: var(--color-grey-light);
            border: none;
        }
        .table-grid-cell-full-grey input {
            background: none !important;
            border: none;
        }

        .table-grid-subheader,
        .table-grid-label .label-with-tooltip,
        .table-grid-label .control-label {
            margin-top: 0;
            margin-bottom: 0;
        }

        .table-grid-column::after {
            content: none;
        }

        .table-grid-column-header {
            float: none;
            width: auto;
            padding-right: 0;
        }

        .table-grid-group {
            margin-left: 0;
            padding-left: 0;
        }

        .table-grid-column-header,
        .table-grid-column-subheader,
        .table-grid-column-subheader:not(:first-child),
        .table-grid-column-subheader:not(:last-child),
        .table-grid-column .table-grid-form-row {
            margin-top: 0;
            margin-bottom: 0;
        }

        .table-grid-form-row .label-with-tooltip,
        .table-grid-form-row .control-label {
            display: none;
        }

        .table-grid-cell {
            padding: 9px;
        }

        .table-grid-cell,
        .table-grid .table-grid-form-row {
            border: 1px solid var(--color-grey-light);
            /* make borders collapse */
            margin-top: -1px;
            margin-left: -1px;
        }

        .table-grid-controls,
        .table-grid-subheader,
        .table-grid-label {
            /* fix margin for first column of the grid */
            margin-left: 0;
        }

        .table-grid-controls,
        .table-grid-column-header {
            /* fix margin for first line of the grid */
            margin-top: 0;
        }

        .table-grid-controls,
        .table-grid-controls-dots {
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .table-grid-controls-dots {
            transition: 0.3s;
            transition-property: opacity, visibility;
        }

        .table-grid-controls-prev,
        .table-grid-controls-next {
            background: none;
            padding: 0;
            margin: 0;
            border: 0;
        }

        .table-grid-controls-prev,
        .table-grid-controls-next {
            position: relative;
            width: 16px;
            height: 16px;
            color: var(--color-primary);
            transition: 0.3s;
            transition-property: color, opacity, visibility;
        }

        .table-grid-controls-prev:focus,
        .table-grid-controls-next:focus,
        .table-grid-controls-dot:focus {
            outline: 1px dotted;
        }

        .table-grid-controls-prev:focus,
        .table-grid-controls-prev:hover,
        .table-grid-controls-next:focus,
        .table-grid-controls-next:hover {
            color: var(--color-primary-alt);
        }

        .table-grid-no-prev .table-grid-controls-prev,
        .table-grid-no-next .table-grid-controls-next,
        .table-grid-no-prev.table-grid-no-next .table-grid-controls-dots {
            opacity: 0;
            visibility: hidden;
            cursor: default;
        }

        .table-grid-controls-prev {
            margin-right: 4px;
        }

        .table-grid-controls-next {
            margin-left: 4px;
        }

        .table-grid-controls-prev svg,
        .table-grid-controls-next svg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            fill: currentColor;
        }

        .table-grid-controls-dot {
            width: 8px;
            height: 8px;
            background: var(--color-grey-medium);
            border-radius: 50%;
            margin-left: 2px;
            margin-right: 2px;
            transition: background-color 0.3s;
        }

        .table-grid-controls-dot-active {
            background-color: var(--color-primary);
        }

        .table-grid-column-header {
            background: var(--color-primary);
            color: var(--color-light);
            font-size: var(--font-size-small);
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
        }

        .table-grid-column-header:not(:last-child) {
            margin-bottom: 0;
        }

        .table-grid-column-header .tooltip-info svg {
            color: var(--color-light);
        }

        .table-grid-column-header .tooltip-info.hovered svg,
        .table-grid-column-header .tooltip-info:hover svg {
            color: var(--color-accent);
        }

        .table-grid-column-subheader {
            border: 0;
            width: 1px;
            height: 1px;
            margin: -1px;
            overflow: hidden;
            padding: 0;
        }

        .table-grid-input {
            display: flex;
            align-items: center;
            padding: 1px;
        }

        .table-grid-input:not(.table-grid-cell-bg-grey,.table-grid-cell-full-grey) {
            background: var(--color-light);
        }
        .disabled .table-grid-input:not(.table-grid-cell-bg-grey,.table-grid-cell-full-grey) {
            background: none;
        }

        .table-grid-input:focus-within {
            box-shadow: inset 0 0 0 1px var(--color-primary);
        }

        .table-grid-input.error {
            box-shadow: inset 0 0 0 1px var(--color-danger);
        }

        .table-grid-input.disabled {
            background-color: var(--color-grey-lighter);
        }

        .table-grid-input input[type="text"],
        .table-grid-input input[type="password"],
        .table-grid-input input[type="datetime"],
        .table-grid-input input[type="datetime-local"],
        .table-grid-input input[type="date"],
        .table-grid-input input[type="month"],
        .table-grid-input input[type="time"],
        .table-grid-input input[type="week"],
        .table-grid-input input[type="number"],
        .table-grid-input input[type="email"],
        .table-grid-input input[type="url"],
        .table-grid-input input[type="search"],
        .table-grid-input input[type="tel"],
        .table-grid-input input[type="color"],
        .table-grid-input textarea {
            border-color: transparent;
            text-align: inherit;
        }

        .table-grid-input.error input[type="text"],
        .table-grid-input.error input[type="password"],
        .table-grid-input.error input[type="datetime"],
        .table-grid-input.error input[type="datetime-local"],
        .table-grid-input.error input[type="date"],
        .table-grid-input.error input[type="month"],
        .table-grid-input.error input[type="time"],
        .table-grid-input.error input[type="week"],
        .table-grid-input.error input[type="number"],
        .table-grid-input.error input[type="email"],
        .table-grid-input.error input[type="url"],
        .table-grid-input.error input[type="search"],
        .table-grid-input.error input[type="tel"],
        .table-grid-input.error input[type="color"],
        .table-grid-input.error textarea {
            border-color: transparent;
        }

        .table-grid-form-row-static {
            font-size: var(--font-size-small);
        }

        .table-grid-cell-right {
            text-align: right;
        }
    }
}
