/*
 * This file used to be generated at build time from login.less by BuildWebCompiler2022.
 * That LESS build step has been removed (the file barely used any LESS-specific syntax,
 * mainly a few `&`-nesting blocks, which have been flattened below). This is now a plain,
 * hand-maintained CSS file — edit it directly.
 *
 * The two @font-face blocks below used to be inlined automatically by the LESS compiler,
 * which resolved `@import url("https://fonts.googleapis.com/css?family=PT+Sans:400,700")`
 * at build time. They are preserved here verbatim so the served styles are unchanged.
 */
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/ptsans/v18/jizaRExUiTo99u79D0KEwA.ttf) format('truetype');
}
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 700;
    src: url(https://fonts.gstatic.com/s/ptsans/v18/jizfRExUiTo99u79B_mh0O6tKA.ttf) format('truetype');
}
/*
 * Brand Colors
 * 1) Brand color variables should typically not be used directly in Sass partials. Instead, use
 *    second-tier application colors.
 */
/**
 * Neutral colors
 */
/**
 * Utility Colors
 * 1) Utility colors are colors used to provide feedback, such as alert messages,
 * form validation, etc.
 */
/*
 * Compared to Material, Cito uses a less aggressive
 * start and/or end, while still being speedy.
 */
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    box-sizing: border-box;
    font: 16px/1.5 PT Sans, Helvetica, Arial, sans-serif;
    color: #333;
    -webkit-tap-highlight-color: transparent;
}

body {
    margin: 0;
    overflow-x: hidden;
    position: relative;
}

article, aside, footer, header, nav, section {
    display: block;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

figcaption, figure, main {
    display: block;
}

figure {
    margin: 0;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

pre {
    font-family: monospace;
    font-size: 1em;
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
    text-decoration: none;
    color: inherit;
}

abbr[title] {
    border-bottom: none;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
}

b, strong {
    font-weight: bolder;
}

code, kbd, samp {
    font-family: monospace;
    font-size: 1em;
}

dfn {
    font-style: italic;
}

mark {
    background-color: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

audio, video {
    display: inline-block;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

img {
    border-style: none;
    display: block;
    max-width: 100%;
}

svg:not(:root) {
    overflow: hidden;
}

button, input, optgroup, select, textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

button, input {
    overflow: visible;
}

button, select {
    text-transform: none;
}

[type=reset], [type=submit], button, html [type=button] {
    -webkit-appearance: button;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
    outline: 1px dotted ButtonText;
}

fieldset {
    padding: 0.35em 0.75em 0.625em;
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}

progress {
    display: inline-block;
    vertical-align: baseline;
}

textarea {
    overflow: auto;
}

[type=checkbox], [type=radio] {
    box-sizing: border-box;
    padding: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto;
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
}

details, menu {
    display: block;
}

summary {
    display: list-item;
}

canvas {
    display: inline-block;
}

[hidden], template {
    display: none;
}

*, :after, :before {
    box-sizing: inherit;
}

p {
    margin: 0 0 1em;
}

p a {
    color: #0074a7;
}

.text-link {
    color: #0074a7;
}

a:active, a:hover {
    text-decoration: underline;
}

blockquote {
    margin: 0;
    font-family: Merriweather, Helvetica, Arial, sans-serif;
    font-style: italic;
    font-weight: 300;
    font-size: 28px;
    line-height: 1.29;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    margin-top: 25px;
    margin-bottom: 8px;
    line-height: 1.1;
}

.h1:first-child, .h2:first-child, .h3:first-child, .h4:first-child, .h5:first-child, .h6:first-child, h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
    margin-top: 0;
}

.h1, h1 {
    font-size: 46px;
}

.h1, .h2, h1, h2 {
    font-weight: 700;
}

.h2, h2 {
    font-size: 28px;
}

h2 + h3 {
    margin-top: 0;
}

.h3, h3 {
    font-size: 32px;
}

.h3, .h4, h3, h4 {
    font-weight: 700;
}

.h4, h4 {
    font-size: 20px;
}

.h5, h5 {
    font-size: 16px;
    font-weight: 700;
}

.heading--primary {
    color: #e30075;
}

.heading--secondary {
    color: #0074a7;
}

.heading--underline {
    position: relative;
    margin-bottom: 40px;
}

.heading--underline:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -18px;
    height: 3px;
    width: 21%;
    max-width: 170px;
    background-color: #333;
}

.a-arrow-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 10px 20px;
    transition: background-color 0.1s ease-in-out;
}

.a-arrow-link__title {
    display: block;
    min-width: 180px;
    padding-right: 40px;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.56;
}

.a-arrow-link .a-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    border: 2px solid #fff;
    border-radius: 50%;
}

.a-arrow-link .a-icon svg {
    width: 18px;
    height: 12px;
}

.a-arrow-link--theme {
    background-color: #e30075;
    color: #fff;
}

.a-arrow-link--theme:active, .a-arrow-link--theme:hover {
    background-color: #cf006a;
}

.a-arrow-list {
    margin: 0;
    list-style: none;
    padding: 20px 0;
    font-size: 16px;
}

.a-arrow-list > li {
    margin-bottom: 10px;
}

.a-arrow-list > li a {
    position: relative;
    display: inline-block;
    padding-left: 26px;
}

.a-arrow-list > li a:active, .a-arrow-list > li a:hover {
    color: #0074a7;
    text-decoration: none;
}

.a-arrow-list > li .a-icon {
    position: absolute;
    left: 0;
    top: 6px;
    width: 18px;
    height: 12px;
}

.a-badge {
    display: inline-block;
    padding: 1px 8px;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.4px;
    border-radius: 20px;
    transition: 0.1s ease-in-out;
    background-color: #00b1aa;
    color: #fff;
}

.a-badge:hover {
    text-decoration: none;
}

.a-badge:link:hover {
    background-color: #009892;
}

.a-btn, .a-btn--link, .a-btn--primary, .a-btn--quaternary, .a-btn--quinary, .a-btn--secondary, .a-btn--senary, .a-btn--septenary, .a-btn--tertiary {
    display: inline-block;
    text-align: left;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 0;
    outline: none;
    transition: 0.2s;
    padding: 0.85em 1.28em;
    line-height: 1.5;
    color: #000;
    text-decoration: none;
    font-family: PT Sans, Helvetica, Arial, sans-serif;
    font-size: 18px;
    font-weight: 700;
    position: relative;
    padding-right: 3.8em;
    min-width: 204px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.a-btn--sm.a-btn--link, .a-btn--sm.a-btn--primary, .a-btn--sm.a-btn--quaternary, .a-btn--sm.a-btn--quinary, .a-btn--sm.a-btn--secondary, .a-btn--sm.a-btn--senary, .a-btn--sm.a-btn--septenary, .a-btn--sm.a-btn--tertiary, .a-btn--xs.a-btn--link, .a-btn--xs.a-btn--primary, .a-btn--xs.a-btn--quaternary, .a-btn--xs.a-btn--quinary, .a-btn--xs.a-btn--secondary, .a-btn--xs.a-btn--senary, .a-btn--xs.a-btn--septenary, .a-btn--xs.a-btn--tertiary, .a-btn.a-btn--sm, .a-btn.a-btn--xs {
    padding-right: 3.2em;
}

.a-btn--sm.a-btn--link:after, .a-btn--sm.a-btn--primary:after, .a-btn--sm.a-btn--quaternary:after, .a-btn--sm.a-btn--quinary:after, .a-btn--sm.a-btn--secondary:after, .a-btn--sm.a-btn--senary:after, .a-btn--sm.a-btn--septenary:after, .a-btn--sm.a-btn--tertiary:after, .a-btn--xs.a-btn--link:after, .a-btn--xs.a-btn--primary:after, .a-btn--xs.a-btn--quaternary:after, .a-btn--xs.a-btn--quinary:after, .a-btn--xs.a-btn--secondary:after, .a-btn--xs.a-btn--senary:after, .a-btn--xs.a-btn--septenary:after, .a-btn--xs.a-btn--tertiary:after, .a-btn.a-btn--sm:after, .a-btn.a-btn--xs:after {
    right: 1.2em;
}

.a-btn--link:after, .a-btn--primary:after, .a-btn--quaternary:after, .a-btn--quinary:after, .a-btn--secondary:after, .a-btn--senary:after, .a-btn--septenary:after, .a-btn--tertiary:after, .a-btn:after {
    content: "";
    display: block;
    position: absolute;
    right: 1.48em;
    bottom: 23px;
    width: 17px;
    height: 11px;
}

.a-btn--primary {
    background-color: #e30075;
    background-image: linear-gradient(31deg, #e30075, #ff0083 50%, #e30075);
    background-size: 200% 100%;
    color: #fff;
    border-radius: 3px;
    box-shadow: 0 3px 0 0 #ce006a;
}

.a-btn--primary:after {
    background: transparent url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='11' viewBox='0 0 18 13'%3E%3Cpath fillRule='evenodd' fill='%23FFF' d='M13.82 5.431H.084v2.138H13.82l-3.475 3.488 1.514 1.518 4.539-4.556 1.513-1.52L11.859.425l-1.514 1.52L13.82 5.43z'/%3E%3C/svg%3E") no-repeat 0 0;
}

.a-btn--primary:hover {
    background-position: 100% 0;
}

.a-btn--primary:active, .a-btn--primary:focus {
    background-position: 100% 0;
    box-shadow: 0 0 0 0 #ce006a;
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
}

.a-btn--primary.a-btn--disabled:hover, .a-btn--primary.a-btn[disabled]:hover {
    background-color: #e30075;
    background-position: 0 0;
}

.a-btn--primary.a-btn--disabled:active, .a-btn--primary.a-btn--disabled:focus, .a-btn--primary.a-btn[disabled]:active, .a-btn--primary.a-btn[disabled]:focus {
    background-color: #e30075;
    background-position: 0 0;
    box-shadow: 0 3px 0 0 #ce006a;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.a-btn--secondary {
    background-color: #00a1c7;
    background-image: linear-gradient(31deg, #00a1c7, #00b8e3 50%, #00a1c7);
    background-size: 200% 100%;
    color: #fff;
    border-radius: 3px;
    box-shadow: 0 3px 0 0 #0090b2;
}

.a-btn--secondary:after {
    background: transparent url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='11' viewBox='0 0 18 13'%3E%3Cpath fillRule='evenodd' fill='%23FFF' d='M13.82 5.431H.084v2.138H13.82l-3.475 3.488 1.514 1.518 4.539-4.556 1.513-1.52L11.859.425l-1.514 1.52L13.82 5.43z'/%3E%3C/svg%3E") no-repeat 0 0;
}

.a-btn--secondary:hover {
    background-position: 100% 0;
}

.a-btn--secondary:active, .a-btn--secondary:focus {
    background-position: 100% 0;
    box-shadow: 0 0 0 0 #0090b2;
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
}

.a-btn--secondary.a-btn--disabled:hover, .a-btn--secondary.a-btn[disabled]:hover {
    background-color: #00a1c7;
    background-position: 0 0;
}

.a-btn--secondary.a-btn--disabled:active, .a-btn--secondary.a-btn--disabled:focus, .a-btn--secondary.a-btn[disabled]:active, .a-btn--secondary.a-btn[disabled]:focus {
    background-color: #00a1c7;
    background-position: 0 0;
    box-shadow: 0 3px 0 0 #0090b2;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.a-btn--tertiary {
    background-color: transparent;
    background-image: linear-gradient(31deg, transparent, rgba(13, 13, 13, 0) 50%, transparent);
    background-size: 200% 100%;
    color: #fff;
    border-radius: 3px;
    border: 2px solid #fff;
    box-shadow: none;
}

.a-btn--tertiary:after {
    background: transparent url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='11' viewBox='0 0 18 13'%3E%3Cpath fillRule='evenodd' fill='%23FFF' d='M13.82 5.431H.084v2.138H13.82l-3.475 3.488 1.514 1.518 4.539-4.556 1.513-1.52L11.859.425l-1.514 1.52L13.82 5.43z'/%3E%3C/svg%3E") no-repeat 0 0;
}

.a-btn--tertiary:hover {
    background-position: 100% 0;
    background-color: rgba(255, 255, 255, 0.3);
}

.a-btn--tertiary:active, .a-btn--tertiary:focus {
    background-position: 100% 0;
    background-color: rgba(255, 255, 255, 0.5);
    box-shadow: none;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.a-btn--tertiary.a-btn--disabled:hover, .a-btn--tertiary.a-btn[disabled]:hover {
    background-color: transparent;
    background-position: 0 0;
}

.a-btn--tertiary.a-btn--disabled:active, .a-btn--tertiary.a-btn--disabled:focus, .a-btn--tertiary.a-btn[disabled]:active, .a-btn--tertiary.a-btn[disabled]:focus {
    background-color: transparent;
    background-position: 0 0;
    box-shadow: 0 3px 0 0 transparent;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.a-btn--link {
    padding-right: 1.28em;
    color: #0074a7;
    min-width: 0;
}

.a-btn--link .a-btn__icon {
    display: none;
}

.a-btn--component {
    margin-bottom: 30px;
}

.a-btn--sm {
    padding: 0.6em 1.2em;
}

.a-btn--sm:after {
    bottom: 18px;
}

.a-btn--sm .a-btn__icon {
    bottom: 12px;
}

.a-btn--xs {
    padding: 0.3em 0.8em;
}

.a-btn--xs:after {
    bottom: 13px;
}

.a-btn--xs .a-btn__icon {
    bottom: 7px;
}

.a-btn--block {
    display: block;
    width: 100%;
    text-align: left;
}

.a-btn--disabled, .a-btn[disabled], [disabled].a-btn--link, [disabled].a-btn--primary, [disabled].a-btn--quaternary, [disabled].a-btn--quinary, [disabled].a-btn--secondary, [disabled].a-btn--senary, [disabled].a-btn--septenary, [disabled].a-btn--tertiary {
    opacity: 0.65;
    cursor: not-allowed;
}

.a-btn--custom-icon:after {
    display: none;
}

.a-btn--chevron:after {
    background: transparent url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='11' viewBox='0.00800000037997961 0.010000000707805157 8 12.979000091552734'%3E%3Cpath fill='%230074a7' fillRule='evenodd' d='M4.64 6.5L.01 11.259l1.683 1.73L8.008 6.5 6.324 4.77 1.694.01.008 1.741 4.64 6.5z'/%3E%3C/svg%3E") no-repeat 0 0;
}

.a-btn--loading {
    opacity: 0.7;
    cursor: not-allowed;
}

.a-btn--align-center {
    text-align: center;
}

.a-btn--align-right {
    text-align: right;
}

.a-btn--link:hover, .a-btn--primary:hover, .a-btn--quaternary:hover, .a-btn--quinary:hover, .a-btn--secondary:hover, .a-btn--senary:hover, .a-btn--septenary:hover, .a-btn--tertiary:hover, .a-btn:hover {
    text-decoration: none;
}

.o-modal {
    padding: 10px;
    margin: auto;
}

.o-modal--cookie .o-modal__content {
    padding: 20px;
    max-width: 700px;
    background-color: #fff;
}

.o-modal--cookie .o-modal__heading {
    margin-bottom: 12px;
}

.o-modal--cookie .a-btn {
    min-width: 175px;
    display: block;
    width: 100%;
}

.o-modal__overlay {
    position: fixed;
    overflow-y: auto;
    z-index: 8;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(222,211,197,.23);
}

.o-modal__heading, .o-modal__overlay {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.o-modal__heading {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 40px;
}

.o-modal__content {
    position: relative;
}

.o-modal__close {
    position: absolute;
    right: 10px;
    top: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    padding: 10px;
}

.o-modal__close .a-icon {
    display: block;
    width: 17px;
    height: 17px;
}

.o-modal__close-text {
    display: block;
    margin-left: 15px;
    font-size: 18px;
    font-weight: 700;
}

.ReactModal__Body--open {
    overflow: hidden;
}

.ReactModal__Content:focus {
    outline: 0;
}

.site-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 100vh;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.site-wrapper > .placeholder__container {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.site-wrapper main {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    min-height: 1px;
}

.site-wrapper main .m-section {
    margin-bottom: 25px;
}

.site-wrapper main .m-section.h-mb-n {
    margin-bottom: 0;
}

.placeholder__container {
    min-height: 1px;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
}

@media (min-width: 450px) {
    .o-modal {
        padding: 20px;
    }

    .o-modal--cookie .o-modal__content {
        padding: 40px;
    }

    .o-modal__close {
        right: 15px;
        top: 20px;
    }
}

@media (min-width: 550px) {
    .m-cookie__btn-row {
        margin-left: -12px;
        margin-right: -12px;
    }

    .m-cookie__btn-row .a-btn {
        margin-right: 12px;
        margin-left: 12px;
    }

    .o-modal--cookie .a-btn {
        display: inline-block;
        width: auto;
    }
}

@media only screen and (min-width: 576px) {
    .m-grid__S1 {
        width: 8.333%;
    }

    .m-grid__S2 {
        width: 16.666%;
    }

    .m-grid__S3 {
        width: 25%;
    }

    .m-grid__S4 {
        width: 33.333%;
    }

    .m-grid__S5 {
        width: 41.666%;
    }

    .m-grid__S6 {
        width: 50%;
    }

    .m-grid__S7 {
        width: 58.333%;
    }

    .m-grid__S8 {
        width: 66.666%;
    }

    .m-grid__S9 {
        width: 75%;
    }

    .m-grid__S10 {
        width: 83.333%;
    }

    .m-grid__S11 {
        width: 91.666%;
    }

    .m-grid__S12 {
        width: 100%;
    }

    .o-hero--plectrum .o-hero__content {
        top: 13px;
    }

    .o-hero__abstract {
        font-size: 1em;
    }
}

@media (min-width: 600px) {
    .o-modal__heading {
        padding-top: 0;
    }
}
/* mdl-textfield */
.mdl-textfield {
    position: relative;
    font-size: 16px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    max-width: 100%;
    margin: 0;
    padding: 20px 0;
}

.mdl-textfield .mdl-button {
    position: absolute;
    bottom: 20px;
}

.mdl-textfield--align-right {
    text-align: right;
}

.mdl-textfield--full-width {
    width: 100%;
}

.mdl-textfield--expandable {
    min-width: 32px;
    width: auto;
    min-height: 32px;
}

.mdl-textfield--expandable .mdl-button--icon {
    top: 16px;
}

.mdl-textfield__input {
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    display: block;
    font-size: 16px;
    font-family: "Helvetica", "Arial", sans-serif;
    margin: 0;
    padding: 4px 0;
    width: 100%;
    background: none;
    text-align: left;
    color: inherit;
}

.mdl-textfield__input[type=number] {
    -moz-appearance: textfield;
}

.mdl-textfield__input[type=number]::-webkit-inner-spin-button, .mdl-textfield__input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.mdl-textfield.is-focused .mdl-textfield__input {
    outline: none;
}

.mdl-textfield.is-invalid .mdl-textfield__input {
    border-color: #E73446;
    box-shadow: none;
}

fieldset[disabled] .mdl-textfield .mdl-textfield__input,
.mdl-textfield.is-disabled .mdl-textfield__input {
    background-color: transparent;
    border-bottom: 1px dotted rgba(0, 0, 0, 0.12);
    color: rgba(0, 0, 0, 0.26);
}

.mdl-textfield textarea.mdl-textfield__input {
    display: block;
}

.mdl-textfield__label {
    bottom: 0;
    color: rgba(0, 0, 0, 0.26);
    font-size: 16px;
    left: 0;
    right: 0;
    pointer-events: none;
    position: absolute;
    display: block;
    top: 24px;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-align: left;
}

.mdl-textfield.is-dirty .mdl-textfield__label,
.mdl-textfield.has-placeholder .mdl-textfield__label {
    visibility: hidden;
}

.mdl-textfield--floating-label .mdl-textfield__label {
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.mdl-textfield--floating-label.has-placeholder .mdl-textfield__label {
    transition: none;
}

fieldset[disabled] .mdl-textfield .mdl-textfield__label,
.mdl-textfield.is-disabled.is-disabled .mdl-textfield__label {
    color: rgba(0, 0, 0, 0.26);
}

.mdl-textfield--floating-label.is-focused .mdl-textfield__label,
.mdl-textfield--floating-label.is-dirty .mdl-textfield__label,
.mdl-textfield--floating-label.has-placeholder .mdl-textfield__label {
    color: #0074a7;
    font-size: 12px;
    top: 4px;
    visibility: visible;
}

.mdl-textfield--floating-label.is-focused .mdl-textfield__expandable-holder .mdl-textfield__label,
.mdl-textfield--floating-label.is-dirty .mdl-textfield__expandable-holder .mdl-textfield__label,
.mdl-textfield--floating-label.has-placeholder .mdl-textfield__expandable-holder .mdl-textfield__label {
    top: -16px;
}

.mdl-textfield--floating-label.is-invalid .mdl-textfield__label {
    color: #E73446;
    font-size: 12px;
}

.mdl-textfield__label:after {
    background-color: #0074a7;
    bottom: 20px;
    content: "";
    height: 2px;
    left: 45%;
    position: absolute;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    visibility: hidden;
    width: 10px;
}

.mdl-textfield.is-focused .mdl-textfield__label:after {
    left: 0;
    visibility: visible;
    width: 100%;
}

.mdl-textfield.is-invalid .mdl-textfield__label:after {
    background-color: #E73446;
}

.mdl-textfield__error {
    color: #E73446;
    position: absolute;
    font-size: 12px;
    margin-top: 3px;
    visibility: hidden;
    display: block;
}

.mdl-textfield.is-invalid .mdl-textfield__error {
    visibility: visible;
}

.mdl-textfield__expandable-holder {
    display: inline-block;
    position: relative;
    margin-left: 32px;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    max-width: 0.1px;
}

.mdl-textfield.is-focused .mdl-textfield__expandable-holder, .mdl-textfield.is-dirty .mdl-textfield__expandable-holder {
    max-width: 600px;
}

.mdl-textfield__expandable-holder .mdl-textfield__label:after {
    bottom: 0;
}

.icon {
    /*32px*/
    width: 2em;
    height: 2em;
    /* basic style: line weight and color */
    stroke: #333;
    fill: #333;
    stroke-width: 0.075em;
    stroke-linejoin: round;
    /* Inline-block to get the icon to honor horizontal align of parent */
    display: inline-block;
    /* Vertical align top to prevent additional vertical space because of inline-block */
    vertical-align: top;
    flex-shrink: 0;
    /* For future reference: Edge needs .02 thicker stroke
   * because it renders them very slim.
   */
}

.icon.invert {
    stroke: white;
    fill: white;
}
/* loginspecific-citostyles */
.o-modal--login .o-modal__content {
    padding: 40px;
    max-width: 700px;
    min-width: 375px;
    background-color: #fff;
}

.o-modal--login .o-modal__content .mdl-textfield {
    width: 100%;
}

.o-modal--login .o-modal__content .mdl-textfield__input {
    font-family: "PT Sans", sans-serif;
}

.o-modal--login .o-modal__logo {
    text-align: center;
}

.o-modal--login .o-modal__logo .logo {
    object-fit: contain;
    max-height: 168px;
    max-width: 328px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 25px;
}

.o-modal--login form {
    display: flex;
    flex-direction: column;
}

.o-modal--login .form-group {
    margin: 20px 0;
}

.o-modal--login #btn-login {
    margin-left: auto;
    min-width: 140px;
}

#startcode {
    text-transform: uppercase;
}

.error-alerts {
    position: relative;
}

.alert {
    transition: padding-top 0.2s cubic-bezier(0.565, 0.055, 0.625, 0.155), padding-bottom 0.2s cubic-bezier(0.565, 0.055, 0.625, 0.155), max-height 0.23s cubic-bezier(0.205, 0, 0, 1);
    max-height: 0;
    background: #f5e3eb;
    overflow-y: auto;
}

.alert:not(:empty) {
    transition: padding-top 0.23s cubic-bezier(0.205, 0, 0, 1), padding-bottom 0.23s cubic-bezier(0.205, 0, 0, 1), max-height 0.25s cubic-bezier(0.1, 0.555, 0.3, 1);
    max-height: 120px;
    max-width: 450px;
    padding: 10px 10px 10px 50px;
}

.alert-danger {
    color: #b22e52;
}

.alert ~ svg {
    margin: 6px;
    position: absolute;
    top: 0;
}

.alert-danger ~ svg {
    stroke: #b22e52;
    fill: #b22e52;
}

.validation-summary-errors ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.aanmeldoptie {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 0.5em;
}

.aanmeldoptie:hover {
    background-color: rgba(0,0,0,0.1);
}

a.aanmeldoptie__link {
    cursor: pointer;
}

a.aanmeldoptie__link:hover {
    text-decoration: none;
}

a.aanmeldoptie__link:hover .aanmeldoptie__titel {
    font-weight: bold;
}

.aanmeldoptie .aanmeldoptiebeschrijving {
    display: flex;
    flex-direction: column;
    margin-left: 1em;
}

.aanmeldoptie .aanmeldoptiebeschrijving span {
    font-size: 80%;
}

.aanmeldoptie .aanmeldoptiebeschrijving .aanmeldoptie__titel {
    font-size: 16px;
}

div.verify-schools {
    display: flex;
}

div.verify-school {
    flex: 1;
}

a.verify-retry-button {
    background-color: #28a745;
    background-image: linear-gradient(31deg, #28a745, #23913b 50%, #28a745);
    box-shadow: 0 3px 0 0 #1e7e34;
}

button.verify-activate-button {
    background-color: #28a745;
    background-image: linear-gradient(31deg, #ffeb3b, #ffe066 50%, #ffeb3b);
    box-shadow: 0 3px 0 0 #ffd600;
}

form.verify-activate-form {
    display: inline;
}
