@import url(https://fonts.googleapis.com/css?family=Titillium+Web:400,600,700);

img, legend {
    border: 0
}

pre, textarea {
    overflow: auto
}

legend, td, th {
    padding: 0
}

.checklist, .checklist li, ol, ul {
    list-style: none
}

*, ::after, ::before {
    box-sizing: inherit
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block
}

audio, canvas, progress, video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden], template {
    display: none
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: 1px dotted
}

b, optgroup, strong {
    font-weight: 700
}

h1 {
    margin: .67em 0
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}

code, kbd, pre, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

button, input, optgroup, select, textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button, select {
    text-transform: none
}

.label, .label-big, .pa-title, h6 {
    text-transform: uppercase
}

button, html input[type=button], input[type=reset], input[type=submit] {
    cursor: pointer
}

button[disabled], html input[disabled] {
    cursor: default
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

input[type=checkbox], input[type=radio] {
    box-sizing: border-box;
    padding: 0;
    position: absolute;
    left: -999em
}

input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
    height: auto
}

input[type=search] {
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box
}

textarea {
    height: 16rem
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

*, :after, :before {
    box-sizing: inherit
}

.lt-ie9 * {
    filter: none !important
}

[aria-hidden=true] {
    display: none !important
}

.grid, .grid-full {
    margin-left: auto;
    margin-right: auto;
    max-width: 400px
}

.grid-full::after, .grid::after {
    clear: both;
    content: "";
    display: table
}

@media screen and (min-width: 0) {
    .grid .width-one-whole, .grid-full .width-one-whole {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%
    }

    .grid .width-one-whole:last-child, .grid-full .width-one-whole:last-child {
        margin-right: 0
    }

    .grid .width-one-half, .grid-full .width-one-half {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 48.82117%
    }

    .grid .width-one-half:last-child, .grid-full .width-one-half:last-child {
        margin-right: 0
    }
}

@media screen and (min-width: 750px) {
    .grid .width-one-whole, .grid-full .width-one-whole {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%
    }

    .grid .width-one-whole:last-child, .grid-full .width-one-whole:last-child {
        margin-right: 0
    }

    .grid .width-one-half, .grid-full .width-one-half {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 48.82117%
    }

    .grid .width-one-half:last-child, .grid-full .width-one-half:last-child {
        margin-right: 0
    }
}

@media screen and (min-width: 1170px) {
    .grid .width-one-whole, .grid-full .width-one-whole {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%
    }

    .grid .width-one-whole:last-child, .grid-full .width-one-whole:last-child {
        margin-right: 0
    }

    .grid .width-one-half, .grid-full .width-one-half {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 48.82117%
    }

    .grid .width-one-half:last-child, .grid-full .width-one-half:last-child {
        margin-right: 0
    }
}

.grid .end-row, .grid-full .end-row {
    margin-right: 0
}

.grid {
    padding: 0 3rem
}

.grid-full {
    padding: 0
}

.sr-only {
    position: absolute;
    left: -999em
}

.button, .button-primary, .button-primary:visited, .button:visited, [type=button], [type=image], [type=reset], [type=submit], button {
    background-color: #0071bc;
    border: 0;
    border-radius: .3rem;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-family: "Titillium Web", HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1;
    margin-bottom: .5em;
    margin-right: .5em;
    margin-top: .5em;
    outline: 0;
    padding: 1rem 2rem;
    text-align: center;
    text-decoration: none;
    width: 100%;
    -webkit-font-smoothing: antialiased
}

@media screen and (min-width: 0) {
    .button, .button-primary, .button-primary:visited, .button:visited, [type=button], [type=image], [type=reset], [type=submit], button {
        width: auto
    }
}

.button-primary.button-hover, .button-primary:hover, .button-primary:visited.button-hover, .button-primary:visited:hover, .button.button-hover, .button:hover, .button:visited.button-hover, .button:visited:hover, [type=button].button-hover, [type=button]:hover, [type=image].button-hover, [type=image]:hover, [type=reset].button-hover, [type=reset]:hover, [type=submit].button-hover, [type=submit]:hover, button.button-hover, button:hover {
    background-color: #205493;
    border-bottom: 0;
    color: #fff;
    text-decoration: none
}

.content-list a, a, a:active, a:hover, a:visited, p a {
    text-decoration: underline
}

.button-primary.button-focus, .button-primary:focus, .button-primary:visited.button-focus, .button-primary:visited:focus, .button.button-focus, .button:focus, .button:visited.button-focus, .button:visited:focus, [type=button].button-focus, [type=button]:focus, [type=image].button-focus, [type=image]:focus, [type=reset].button-focus, [type=reset]:focus, [type=submit].button-focus, [type=submit]:focus, button.button-focus, button:focus {
    box-shadow: 0 0 3px #3e94cf, 0 0 7px #3e94cf
}

.button-primary.button-active, .button-primary:active, .button-primary:visited.button-active, .button-primary:visited:active, .button.button-active, .button:active, .button:visited.button-active, .button:visited:active, [type=button].button-active, [type=button]:active, [type=image].button-active, [type=image]:active, [type=reset].button-active, [type=reset]:active, [type=submit].button-active, [type=submit]:active, button.button-active, button:active {
    background-color: #112e51
}

.button-primary.button-primary-alt, .button-primary:visited.button-primary-alt, .button.button-primary-alt, .button:visited.button-primary-alt, [type=button].button-primary-alt, [type=image].button-primary-alt, [type=reset].button-primary-alt, [type=submit].button-primary-alt, button.button-primary-alt {
    background-color: #02bfe7;
    color: #212121
}

.button-primary.button-primary-alt.button-hover, .button-primary.button-primary-alt:hover, .button-primary:visited.button-primary-alt.button-hover, .button-primary:visited.button-primary-alt:hover, .button.button-primary-alt.button-hover, .button.button-primary-alt:hover, .button:visited.button-primary-alt.button-hover, .button:visited.button-primary-alt:hover, [type=button].button-primary-alt.button-hover, [type=button].button-primary-alt:hover, [type=image].button-primary-alt.button-hover, [type=image].button-primary-alt:hover, [type=reset].button-primary-alt.button-hover, [type=reset].button-primary-alt:hover, [type=submit].button-primary-alt.button-hover, [type=submit].button-primary-alt:hover, button.button-primary-alt.button-hover, button.button-primary-alt:hover {
    background-color: #00a6d2
}

.button-primary.button-primary-alt.button-active, .button-primary.button-primary-alt:active, .button-primary:visited.button-primary-alt.button-active, .button-primary:visited.button-primary-alt:active, .button.button-primary-alt.button-active, .button.button-primary-alt:active, .button:visited.button-primary-alt.button-active, .button:visited.button-primary-alt:active, [type=button].button-primary-alt.button-active, [type=button].button-primary-alt:active, [type=image].button-primary-alt.button-active, [type=image].button-primary-alt:active, [type=reset].button-primary-alt.button-active, [type=reset].button-primary-alt:active, [type=submit].button-primary-alt.button-active, [type=submit].button-primary-alt:active, button.button-primary-alt.button-active, button.button-primary-alt:active {
    background-color: #046b99;
    color: #fff
}

.button-primary.button-secondary, .button-primary:visited.button-secondary, .button.button-secondary, .button:visited.button-secondary, [type=button].button-secondary, [type=image].button-secondary, [type=reset].button-secondary, [type=submit].button-secondary, button.button-secondary {
    background-color: #e31c3d
}

.button-primary.button-secondary.button-hover, .button-primary.button-secondary:hover, .button-primary:visited.button-secondary.button-hover, .button-primary:visited.button-secondary:hover, .button.button-secondary.button-hover, .button.button-secondary:hover, .button:visited.button-secondary.button-hover, .button:visited.button-secondary:hover, [type=button].button-secondary.button-hover, [type=button].button-secondary:hover, [type=image].button-secondary.button-hover, [type=image].button-secondary:hover, [type=reset].button-secondary.button-hover, [type=reset].button-secondary:hover, [type=submit].button-secondary.button-hover, [type=submit].button-secondary:hover, button.button-secondary.button-hover, button.button-secondary:hover {
    background-color: #cd2026
}

.button-primary.button-secondary.button-active, .button-primary.button-secondary:active, .button-primary:visited.button-secondary.button-active, .button-primary:visited.button-secondary:active, .button.button-secondary.button-active, .button.button-secondary:active, .button:visited.button-secondary.button-active, .button:visited.button-secondary:active, [type=button].button-secondary.button-active, [type=button].button-secondary:active, [type=image].button-secondary.button-active, [type=image].button-secondary:active, [type=reset].button-secondary.button-active, [type=reset].button-secondary:active, [type=submit].button-secondary.button-active, [type=submit].button-secondary:active, button.button-secondary.button-active, button.button-secondary:active {
    background-color: #981b1e
}

.button-primary.button-gray, .button-primary:visited.button-gray, .button.button-gray, .button:visited.button-gray, [type=button].button-gray, [type=image].button-gray, [type=reset].button-gray, [type=submit].button-gray, button.button-gray {
    background-color: #5b616b
}

.button-primary.button-gray.button-hover, .button-primary.button-gray:hover, .button-primary:visited.button-gray.button-hover, .button-primary:visited.button-gray:hover, .button.button-gray.button-hover, .button.button-gray:hover, .button:visited.button-gray.button-hover, .button:visited.button-gray:hover, [type=button].button-gray.button-hover, [type=button].button-gray:hover, [type=image].button-gray.button-hover, [type=image].button-gray:hover, [type=reset].button-gray.button-hover, [type=reset].button-gray:hover, [type=submit].button-gray.button-hover, [type=submit].button-gray:hover, button.button-gray.button-hover, button.button-gray:hover {
    background-color: #323a45
}

.button-primary.button-gray.button-active, .button-primary.button-gray:active, .button-primary:visited.button-gray.button-active, .button-primary:visited.button-gray:active, .button.button-gray.button-active, .button.button-gray:active, .button:visited.button-gray.button-active, .button:visited.button-gray:active, [type=button].button-gray.button-active, [type=button].button-gray:active, [type=image].button-gray.button-active, [type=image].button-gray:active, [type=reset].button-gray.button-active, [type=reset].button-gray:active, [type=submit].button-gray.button-active, [type=submit].button-gray:active, button.button-gray.button-active, button.button-gray:active {
    background-color: #212121
}

.button-primary.button-outline, .button-primary:visited.button-outline, .button.button-outline, .button:visited.button-outline, [type=button].button-outline, [type=image].button-outline, [type=reset].button-outline, [type=submit].button-outline, button.button-outline {
    background-color: #fff;
    box-shadow: inset 0 0 0 2px #0071bc;
    color: #0071bc
}

.button-primary.button-outline.button-hover, .button-primary.button-outline:hover, .button-primary:visited.button-outline.button-hover, .button-primary:visited.button-outline:hover, .button.button-outline.button-hover, .button.button-outline:hover, .button:visited.button-outline.button-hover, .button:visited.button-outline:hover, [type=button].button-outline.button-hover, [type=button].button-outline:hover, [type=image].button-outline.button-hover, [type=image].button-outline:hover, [type=reset].button-outline.button-hover, [type=reset].button-outline:hover, [type=submit].button-outline.button-hover, [type=submit].button-outline:hover, button.button-outline.button-hover, button.button-outline:hover {
    box-shadow: inset 0 0 0 2px #205493;
    color: #205493
}

.button-primary.button-outline.button-active, .button-primary.button-outline:active, .button-primary:visited.button-outline.button-active, .button-primary:visited.button-outline:active, .button.button-outline.button-active, .button.button-outline:active, .button:visited.button-outline.button-active, .button:visited.button-outline:active, [type=button].button-outline.button-active, [type=button].button-outline:active, [type=image].button-outline.button-active, [type=image].button-outline:active, [type=reset].button-outline.button-active, [type=reset].button-outline:active, [type=submit].button-outline.button-active, [type=submit].button-outline:active, button.button-outline.button-active, button.button-outline:active {
    box-shadow: inset 0 0 0 2px #112e51;
    color: #112e51
}

.button-primary.button-outline.button-focus, .button-primary.button-outline:focus, .button-primary:visited.button-outline.button-focus, .button-primary:visited.button-outline:focus, .button.button-outline.button-focus, .button.button-outline:focus, .button:visited.button-outline.button-focus, .button:visited.button-outline:focus, [type=button].button-outline.button-focus, [type=button].button-outline:focus, [type=image].button-outline.button-focus, [type=image].button-outline:focus, [type=reset].button-outline.button-focus, [type=reset].button-outline:focus, [type=submit].button-outline.button-focus, [type=submit].button-outline:focus, button.button-outline.button-focus, button.button-outline:focus {
    box-shadow: inset 0 0 0 2px #112e51, 0 0 3px #3e94cf, 0 0 7px #3e94cf
}

.button-primary.button-outline-inverse, .button-primary:visited.button-outline-inverse, .button.button-outline-inverse, .button:visited.button-outline-inverse, [type=button].button-outline-inverse, [type=image].button-outline-inverse, [type=reset].button-outline-inverse, [type=submit].button-outline-inverse, button.button-outline-inverse {
    background: 0 0;
    box-shadow: inset 0 0 0 2px #fff;
    color: #fff
}

.button-primary.button-outline-inverse.button-hover, .button-primary.button-outline-inverse:hover, .button-primary:visited.button-outline-inverse.button-hover, .button-primary:visited.button-outline-inverse:hover, .button.button-outline-inverse.button-hover, .button.button-outline-inverse:hover, .button:visited.button-outline-inverse.button-hover, .button:visited.button-outline-inverse:hover, [type=button].button-outline-inverse.button-hover, [type=button].button-outline-inverse:hover, [type=image].button-outline-inverse.button-hover, [type=image].button-outline-inverse:hover, [type=reset].button-outline-inverse.button-hover, [type=reset].button-outline-inverse:hover, [type=submit].button-outline-inverse.button-hover, [type=submit].button-outline-inverse:hover, button.button-outline-inverse.button-hover, button.button-outline-inverse:hover {
    box-shadow: inset 0 0 0 2px #d6d7d9;
    color: #d6d7d9
}

.button-primary.button-outline-inverse.button-active, .button-primary.button-outline-inverse:active, .button-primary:visited.button-outline-inverse.button-active, .button-primary:visited.button-outline-inverse:active, .button.button-outline-inverse.button-active, .button.button-outline-inverse:active, .button:visited.button-outline-inverse.button-active, .button:visited.button-outline-inverse:active, [type=button].button-outline-inverse.button-active, [type=button].button-outline-inverse:active, [type=image].button-outline-inverse.button-active, [type=image].button-outline-inverse:active, [type=reset].button-outline-inverse.button-active, [type=reset].button-outline-inverse:active, [type=submit].button-outline-inverse.button-active, [type=submit].button-outline-inverse:active, button.button-outline-inverse.button-active, button.button-outline-inverse:active {
    box-shadow: inset 0 0 0 2px #aeb0b5;
    color: #d6d7d9
}

.button-primary.button-outline-inverse.button-focus, .button-primary.button-outline-inverse:focus, .button-primary:visited.button-outline-inverse.button-focus, .button-primary:visited.button-outline-inverse:focus, .button.button-outline-inverse.button-focus, .button.button-outline-inverse:focus, .button:visited.button-outline-inverse.button-focus, .button:visited.button-outline-inverse:focus, [type=button].button-outline-inverse.button-focus, [type=button].button-outline-inverse:focus, [type=image].button-outline-inverse.button-focus, [type=image].button-outline-inverse:focus, [type=reset].button-outline-inverse.button-focus, [type=reset].button-outline-inverse:focus, [type=submit].button-outline-inverse.button-focus, [type=submit].button-outline-inverse:focus, button.button-outline-inverse.button-focus, button.button-outline-inverse:focus {
    box-shadow: inset 0 0 0 2px #aeb0b5, 0 0 3px #3e94cf, 0 0 7px #3e94cf
}

.button-primary.button-big, .button-primary:visited.button-big, .button.button-big, .button:visited.button-big, [type=button].button-big, [type=image].button-big, [type=reset].button-big, [type=submit].button-big, button.button-big {
    font-size: 1.9rem;
    padding: 1.5rem 3rem
}

.button-disabled, [type=submit]:disabled {
    background-color: #d6d7d9;
    color: #323a45;
    cursor: default
}

.button-disabled.button-active, .button-disabled.button-hover, .button-disabled:active, .button-disabled:focus, .button-disabled:hover, [type=submit]:disabled.button-active, [type=submit]:disabled.button-hover, [type=submit]:disabled:active, [type=submit]:disabled:focus, [type=submit]:disabled:hover {
    background-color: #d6d7d9;
    border: 0;
    box-shadow: none;
    color: #323a45
}

.button-unstyled {
    background: 0 0;
    border: 0;
    border-radius: 0;
    outline: 0;
    padding: 0;
    text-align: left
}

.button-unstyled:focus, .button-unstyled:hover {
    box-shadow: initial
}

img {
    max-width: 100%
}

.media_link {
    display: inline-block;
    line-height: 0
}

input, input[type=date], input[type=datetime-local], input[type=email], input[type=file], input[type=month], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], select, textarea {
    border: 1px solid #5b616b;
    border-radius: 0;
    box-sizing: border-box;
    color: #212121;
    display: block;
    font-size: 1.4rem;
    margin: .2em 0;
    max-width: 46rem;
    outline: 0;
    padding: 1rem .7em;
    width: 100%;
    font-family: "Titillium Web", HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif
}

.input-error-label, .input-error-message {
    font-size: 1.7rem;
    display: block;
    font-weight: 600
}

input.input-focus, input:focus, input[type=date].input-focus, input[type=date]:focus, input[type=datetime-local].input-focus, input[type=datetime-local]:focus, input[type=email].input-focus, input[type=email]:focus, input[type=file].input-focus, input[type=file]:focus, input[type=month].input-focus, input[type=month]:focus, input[type=number].input-focus, input[type=number]:focus, input[type=password].input-focus, input[type=password]:focus, input[type=search].input-focus, input[type=search]:focus, input[type=tel].input-focus, input[type=tel]:focus, input[type=text].input-focus, input[type=text]:focus, input[type=time].input-focus, input[type=time]:focus, input[type=url].input-focus, input[type=url]:focus, input[type=week].input-focus, input[type=week]:focus, select.input-focus, select:focus, textarea.input-focus, textarea:focus {
    box-shadow: 0 0 3px #3e94cf, 0 0 7px #3e94cf;
    font-family: "Titillium Web", HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif
}

input.input-success, input[type=date].input-success, input[type=datetime-local].input-success, input[type=email].input-success, input[type=file].input-success, input[type=month].input-success, input[type=number].input-success, input[type=password].input-success, input[type=search].input-success, input[type=tel].input-success, input[type=text].input-success, input[type=time].input-success, input[type=url].input-success, input[type=week].input-success, select.input-success, textarea.input-success {
    border: 3px solid #4aa564;
    font-family: "Titillium Web", HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif
}

.input-error input {
    border: 3px solid #cd2026;
    font-family: "Titillium Web", HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif
}

.input-error-message {
    color: #cd2026;
    padding-bottom: 3px;
    padding-top: 3px
}

label {
    display: block;
    margin-top: 1rem;
    max-width: 46rem;
    font-size: 12px;
    color: #FFF
}

select {
    background-color: #fff;
    background-image: url(../img/arrow-down.svg);
    background-position: right 1.3rem center;
    background-repeat: no-repeat;
    background-size: 1.3rem;
    font-family: "Titillium Web", HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif
}

legend {
    font-size: 3rem;
    font-weight: 600
}

.fieldset-inputs label {
    margin-top: 0
}

.form-hint {
    color: #757575;
    font-family: "Source Sans Pro", Helvetica, Arial, sans-serif;
    margin-bottom: 0
}

.lt-ie9 input[type=checkbox], .lt-ie9 input[type=radio] {
    border: 0;
    float: left;
    margin: .4em .4em 0 0;
    position: static;
    width: auto
}

input[type=checkbox] + label, input[type=radio] + label {
    cursor: pointer;
    font-weight: 400;
    margin-bottom: .5em
}

h1, h2, h3, h4, h5 {
    font-weight: 600
}

input[type=checkbox] + label::before, input[type=radio] + label::before {
    background: #fff;
    border-radius: .3rem;
    box-shadow: 0 0 0 1px #757575;
    content: '\a0';
    display: inline-block;
    height: 1.8rem;
    line-height: .8;
    margin-right: .6em;
    text-indent: .15em;
    vertical-align: .2em;
    width: 1.8rem
}

ol li, p, ul li {
    line-height: 1.5
}

input[type=radio] + label::before {
    box-shadow: 0 0 0 2px #fff, 0 0 0 3px #757575;
    height: 1.6rem;
    width: 1.6rem;
    border-radius: 100%
}

input[type=checkbox]:checked + label::before, input[type=radio]:checked + label::before {
    background-color: #8EBEED;
    box-shadow: 0 0 0 1px #0071bc
}

input[type=radio]:checked + label::before {
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px #0071bc
}

input[type=radio]:focus + label::before {
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px #0071bc, 0 0 3px 4px #3e94cf, 0 0 7px 4px #3e94cf
}

input[type=checkbox]:checked + label::before {
    background-image: url(../img/checkicon.svg);
    background-position: 50%;
    background-repeat: no-repeat
}

input[type=checkbox]:focus + label::before {
    box-shadow: 0 0 0 1px #fff, 0 0 0 3px #0071bc
}

input[type=checkbox]:disabled + label {
    color: #5b616b
}

input[type=checkbox]:disabled + label::before, input[type=radio]:disabled + label::before {
    background: #d6d7d9;
    box-shadow: 0 0 0 1px #aeb0b5;
    cursor: not-allowed
}

input[type=range] {
    border: none;
    padding-left: 0;
    width: 100%
}

input[type=range]:focus {
    box-shadow: none;
    outline: 0
}

input[type=range]::-webkit-slider-runnable-track {
    background: #aeb0b5;
    border: 1px solid #757575;
    cursor: pointer;
    height: 1.2rem;
    width: 100%
}

input[type=range]::-moz-range-track {
    background: #0071bc;
    border: 1px solid #757575;
    cursor: pointer;
    height: 1.2rem;
    width: 100%
}

input[type=range]::-ms-track {
    background: 0 0;
    color: transparent;
    cursor: pointer;
    height: 1.2rem;
    width: 100%
}

input[type=range]::-webkit-slider-thumb {
    border: 1px solid #757575;
    height: 2.2rem;
    border-radius: 1.5rem;
    background: #f1f1f1;
    cursor: pointer;
    margin-top: -.65rem;
    width: 2.2rem
}

input[type=range]::-moz-range-thumb {
    background: #f1f1f1;
    border: 1px solid #757575;
    border-radius: 1.5rem;
    cursor: pointer;
    height: 2.2rem;
    width: 2.2rem
}

input[type=range]::-ms-thumb {
    background: #f1f1f1;
    border: 1px solid #757575;
    border-radius: 1.5rem;
    cursor: pointer;
    height: 2.2rem;
    width: 2.2rem
}

input[type=range]::-ms-fill-lower {
    background: #aeb0b5;
    border: 1px solid #757575;
    border-radius: 2rem
}

input[type=range]::-ms-fill-upper {
    background: #aeb0b5;
    border: 1px solid #757575;
    border-radius: 2rem
}

input[type=range]:focus::-webkit-slider-thumb {
    border: 2px solid #3e94cf
}

input[type=range]:focus::-moz-range-thumb {
    border: 2px solid #3e94cf
}

input[type=range]:focus::-ms-thumb {
    border: 2px solid #3e94cf
}

.sans a, a.label, a.label-big {
    border-bottom: none
}

.date-of-birth label {
    margin-top: 0
}

.date-of-birth input[type=number]::-webkit-inner-spin-button, .date-of-birth input[type=number]::-webkit-outer-spin-button {
    margin: 0
}

.form-group-day, .form-group-month, .form-group-year {
    clear: none;
    float: left;
    margin-right: 1.5rem;
    width: 5rem
}

.clear, .form-note + * {
    clear: both
}

.form-group-year {
    width: 7rem
}

.label, .label-big {
    background-color: #0071bc;
    border-radius: .3rem;
    color: #fff;
    font-size: 1.5rem;
    margin-right: .5rem;
    padding: .1rem .7rem
}

.label-big:only-of-type, .label:only-of-type {
    margin-right: 0
}

.label-big {
    font-size: 1.7rem;
    padding-left: .9rem;
    padding-right: .9rem
}

ol li:before, ul li:before {
    display: table-cell;
    padding-right: .4em
}

a.label-big:hover, a.label:hover {
    background-color: #205493;
    border-bottom: none;
    color: #fff
}

ol, ul {
    margin-bottom: 2em;
    margin-top: 2em;
    padding-left: 0;
    display: table
}

ol li, ul li {
    display: table-row;
    margin-bottom: .75em;
    margin-top: .75em
}

h1 + ol, h1 + ul, h2 + ol, h2 + ul, h3 + ol, h3 + ul, h4 + ol, h4 + ul, h5 + ol, h5 + ul, h6 + ol, h6 + ul, p + ol, p + ul {
    margin-top: 0
}

ol li:after, ul li:after {
    content: "";
    display: block;
    margin-bottom: .5em
}

ul li:before {
    content: "\2022"
}

ol li {
    counter-increment: table-ol
}

ol li:before {
    content: counter(table-ol) ".";
    text-align: right
}

.access-icon-box, .italia-it-button, .pa-title {
    text-align: center
}

li {
    margin-bottom: .5em
}

.unstyled-list {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.unstyled-list li {
    display: list-item;
    margin: 0
}

.unstyled-list li:after, .unstyled-list li:before {
    display: none
}

html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    box-sizing: border-box;
    font-family: "Titillium Web", HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;
    font-size: 10px
}

body {
    font-size: 1.7rem
}

p {
    margin-bottom: 1em;
    margin-top: 1em
}

a {
    cursor: pointer
}

a:active, a:hover {
    outline: 0;
    color: #B2EBED
}

a:visited {
    color: #FFF
}

a:focus {
    box-shadow: 0 0 3px #3e94cf, 0 0 7px #3e94cf;
    outline: 0
}

h1, h2, h3, h4, h5, h6 {
    clear: both;
    font-family: Merriweather, Georgia, "Times New Roman", serif;
    line-height: 1.3;
    margin-bottom: .5em;
    margin-top: 1.5em
}

.sans a, .sans li, .sans p, .sans span, h6 {
    font-family: "Source Sans Pro", Helvetica, Arial, sans-serif
}

.alert ul, .display, .drop_text {
    margin-bottom: 0
}

.image-text, .text-small {
    margin-top: 0
}

h1 {
    font-size: 4rem
}

h2 {
    font-size: 3rem
}

h3 {
    font-size: 2rem
}

h4 {
    font-size: 1.7rem
}

h5 {
    font-size: 1.5rem
}

h6 {
    font-size: 1.3rem;
    font-weight: 400
}

.alert-heading, .display, .sans a {
    font-weight: 600
}

address, cite, dfn, var {
    font-style: normal
}

.content p, .content-list {
    max-width: 53rem
}

.font-lead, .serif a, .serif li, .serif p, .serif span {
    font-family: Merriweather, Georgia, "Times New Roman", serif
}

.alert-heading, .alert-text, .form-note, .italia-it-button, .label-bold, .pa-message, .pa-submessage, .pa-title, .show-password-label, a {
    font-family: "Titillium Web", HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif
}

.display {
    font-size: 2rem
}

@media screen and (min-width: 0) {
    .display {
        font-size: 4rem;
        font-weight: 600
    }
}

@media screen and (min-width: 750px) {
    .display {
        font-size: 5.2rem;
        font-weight: 600
    }
}

.font-lead {
    font-size: 2rem;
    line-height: 1.7
}

.image-block {
    position: relative
}

.image-text-block {
    color: #fff;
    left: 0;
    margin-left: 8%;
    position: absolute;
    top: 0
}

#footer, #header {
    position: fixed;
    z-index: 999
}

.background-dark {
    background-color: #323a45
}

.background-dark p, .background-dark span {
    color: #fff
}

.background-dark a {
    color: #d6d7d9
}

.background-dark a:hover {
    color: #fff
}

.text-small {
    font-size: 1.3rem
}

.alert {
    background-color: #f1f1f1;
    background-position: 1rem 2rem;
    background-repeat: no-repeat;
    background-size: 4rem;
    padding: 1em
}

.alert ul {
    margin-top: 1em
}

.alert-icon {
    display: table-cell;
    padding-right: 1rem
}

.alert-body {
    display: table-cell;
    padding-left: 3.5rem;
    vertical-align: top
}

.alert-heading {
    margin-bottom: .3rem;
    margin-top: 0;
    font-size: 2.4rem;
}

@media screen and (min-width: 750px) {
    .alert {
        background-size: 5.2rem
    }

    .alert-body {
        padding-left: 5rem
    }

    .alert-heading {
        margin-top: .3rem
    }

    form {
        max-width: 32rem
    }
}

.alert-text {
    font-weight: 400;
    margin-bottom: 0;
    margin-top: 0;
    font-size: 1.8rem;
}

.alert-success {
    background-color: #e7f4e4;
    background-image: url(../img/icons/success.svg)
}

.alert-warning {
    background-color: #fff1d2;
    background-image: url(../img/icons/warning.svg)
}

.alert-error {
    background-color: #f9dede;
    background-image: url(../img/icons/error.svg)
}

.alert-info {
    background-color: #e1f3f8;
    background-image: url(../img/icons/info.svg)
}

.alert-no_icon {
    background-image: none
}

form a {
    border-bottom: 0
}

form button[type=submit], form input[type=submit] {
    display: block;
    margin-bottom: 1.5em;
    margin-top: 2.5rem
}

form input[name=confirmPassword], form input[name=password] {
    margin-bottom: 1.1rem
}

.form-note {
    float: right;
    font-size: 1.5rem;
    margin: 0 0 1.5rem
}

.pa-message, .pa-title, .show-password-label, a {
    color: #FFF
}

.alert-error a {
    color: black;
}

fieldset {
    border: none;
    margin: 0;
    padding: 0
}

.input-grid-large input, .input-grid-large select, .input-grid-medium input, .input-grid-medium select, .input-grid-small input, .input-grid-small select {
    margin-bottom: 3rem
}

@media screen and (min-width: 750px) {
    .form-large {
        max-width: 46rem
    }

    input.input-tiny {
        max-width: 6rem
    }

    input.input-medium {
        max-width: 12rem
    }

    .input-grid {
        padding-right: 5%
    }

    .input-grid:last-of-type {
        padding-right: 0
    }

    .input-grid-small {
        float: left;
        width: 35%
    }

    .input-grid-medium {
        float: left;
        width: 65%
    }

    .input-grid-large {
        float: left;
        width: 100%
    }
}

.form-width {
    max-width: 32rem
}

.additional_text {
    float: right;
    font-style: italic;
    font-weight: 400
}

.input-buttons-inline button, .input-buttons-inline button[type=submit], .input-buttons-inline input[type=submit], .input-buttons-inline > * {
    display: inline;
    margin-right: 1.5em
}

.checklist {
    margin-left: 0;
    padding-left: 0
}

.checklist li {
    display: inline-block;
    margin-bottom: 0;
    margin-top: 0;
    padding-left: 3em;
    text-indent: -2em
}

.checklist li:before {
    content: ' ';
    display: inline-block;
    height: .8em;
    margin-right: .2em;
    width: 1.8em
}

.checklist-checked:before {
    background-image: url(../img/correct9.svg);
    background-position: 100%;
    background-repeat: no-repeat;
    background-size: 100%
}

body.stop-scrolling {
    height: 100%;
    overflow: hidden
}

body, html {
    margin: 0;
    padding: 0;
    height: 100%;
    background-color: #06C
}

#header {
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    overflow: hidden
}

#header-inner {
    background-color: #FFF;
    height: 50px
}

#footer-inner img, #header-inner img {
    display: block;
    text-align: center;
}

#idp-logo {
    padding-top: 5px;
    height: 40px
}

#footer {
    bottom: 0;
    width: 100%;
    height: 40px
}

#footer-inner {
    background-color: #333;
    height: 40px
}

.inner {
    padding: 50px 0;
    position: relative;
    background: #06C
}

p {
    margin: 0 0 1em
}

.spacer-top-1 {
    margin-top: .5em
}

.spacer-top-2 {
    margin-top: 1em
}

.spacer-top-3 {
    margin-top: 1.5em
}

.spacer-bottom-3 {
    margin-bottom: 1.5em
}

.spacer-top-4 {
    margin-top: 2em
}

.spacer-top-5 {
    margin-top: 2.5em
}

.spid-logo img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: 40px
}

.show-password-label {
    margin: 10px 0
}

.pa-title {
    font-weight: 700
}

.pa-message {
    font-weight: 600
}

.show-password-label, a {
    font-weight: 400
}

.italia-it-button, .label-bold, .pa-submessage {
    font-weight: 600
}

a:hover {
    color: #A1FFFC
}

.pa-submessage {
    color: #FFF
}

.spid-hr {
    background: rgba(0, 0, 0, .6);
    height: 1px;
    width: 100%;
    display: block;
    border-bottom: 1px solid rgba(1, 88, 185, .6)
}

.italia-it-button {
    display: inline-block;
    position: relative;
    padding: 0;
    color: #FFF;
    line-height: 1em;
    text-decoration: none;
    border: 0;
    cursor: pointer;
    overflow: hidden;
    width: 100%
}

.text-white {
    color: #FFFFFF;
}

.forgot-link, .italia-it-block {
    display: block
}

.italia-it-button-icon, .italia-it-button-text {
    display: block;
    float: left
}

.italia-it-button-icon {
    margin: 0 -.4em 0 0;
    padding: .6em .8em .5em;
    border-right: rgba(255, 255, 255, .1) .1em solid
}

.italia-it-button-text {
    padding: .95em 1em .85em;
    font-size: 1.15em;
    text-align: center
}

svg {
    width: 1.8em;
    height: 1.8em
}

.italia-it-button-size-s {
    font-size: 10px
}

.italia-it-button-size-s > span img {
    width: 19px;
    height: 19px;
    border: 0
}

.italia-it-button-size-m {
    font-size: 15px
}

.italia-it-button-size-m > span img {
    width: 29px;
    height: 29px;
    border: 0
}

.italia-it-button-size-l {
    font-size: 20px
}

.italia-it-button-size-l > span img {
    width: 38px;
    height: 38px;
    border: 0
}

.italia-it-button-size-xl {
    font-size: 25px
}

.italia-it-button-size-xl > span img {
    width: 47px;
    height: 47px;
    border: 0
}

.button-spid {
    background-color: #036;
    color: #FFF
}

.button-spid:hover {
    background-color: #83BEED;
    color: #036
}

.button-spid:active {
    background-color: #93cbf7;
    color: #036
}

.spid-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.forgot-link {
    margin-top: 1rem;
    float: right
}

.hidden-content {
    display: none
}

.push-left {
    text-align: left
}

.push-right {
    text-align: right
}

.push-center {
    text-align: center
}

.float-left {
    float: left
}

.float-right {
    float: right
}

@media screen and (min-width: 0) {
    #footer, #footer-inner, #idp-logo {
        height: 40px
    }

    #header, #header-inner {
        height: 50px
    }

    .inner {
        padding: 50px 0
    }

    #idp-logo, #spid-agid-logo {
        padding-top: 5px
    }

    #spid-agid-logo {
        height: 30px
    }

    .spid-logo img {
        height: 35px
    }

    .pa-title {
        font-size: .7em
    }

    .pa-message {
        font-size: .6em
    }

    .pa-submessage {
        font-size: .5em
    }

    label {
        font-size: .65em
    }

    .forgot-link {
        font-size: .6em
    }

    .spid-link {
        font-size: .65em
    }

    .spid-icon-screen img {
        height: 60px;
        display: block;
        margin-left: auto;
        margin-right: auto
    }

    input[type=checkbox] + label::before {
        height: 1.2rem;
        width: 1.2rem
    }
}

@media screen and (min-width: 750px) {
    #footer, #footer-inner, #idp-logo {
        height: 55px
    }

    #header, #header-inner {
        height: 65px
    }

    #spid-agid-logo, .spid-logo img {
        height: 45px
    }

    .inner {
        padding: 65px 0
    }

    #idp-logo, #spid-agid-logo {
        padding-top: 5px
    }

    .pa-title {
        font-size: .8em
    }

    .pa-message, .pa-submessage, label {
        font-size: .7em
    }

    .forgot-link {
        font-size: .65em
    }

    .spid-link {
        font-size: .7em
    }

    .spid-icon-screen img {
        height: 80px;
        display: block;
        margin-left: auto;
        margin-right: auto
    }

    input[type=checkbox] + label::before {
        height: 1.3rem;
        width: 1.3rem
    }
}

@media screen and (min-width: 1170px) {
    #footer, #footer-inner, #idp-logo {
        height: 70px
    }

    #header, #header-inner {
        height: 80px
    }

    .inner {
        padding: 80px 0
    }

    #idp-logo, #spid-agid-logo {
        padding-top: 5px
    }

    #spid-agid-logo {
        height: 60px
    }

    .spid-logo img {
        height: 50px
    }

    .pa-title {
        font-size: .9em
    }

    .pa-message, .pa-submessage, label {
        font-size: .8em
    }

    .forgot-link {
        font-size: .75em
    }

    .spid-link {
        font-size: .8em
    }

    .spid-icon-screen img {
        height: 100px;
        display: block;
        margin-left: auto;
        margin-right: auto
    }

    input[type=checkbox] + label::before {
        height: 1.4rem;
        width: 1.4rem
    }
}

.flex {
    display: flex !important;
}

.flex-col {
    flex-direction: column;
}

.gap-1 {
    gap: 0.25rem;
}

.gap-2 {
    gap: 0.5rem;
}

.gap-3 {
    gap: 1rem;
}

.gap-4 {
    gap: 1.5rem;
}

.my-1 {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}