#try-another-way {
    display: none;
}
#kc-social-providers {
    display: none;
}
/* ------ FONT ------ */
@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 200;
    font-style: normal;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-ExtraLight.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-ExtraLight.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-ExtraLight.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-ExtraLight.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-ExtraLight.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 200;
    font-style: italic;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-ExtraLightIt.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-ExtraLightIt.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-ExtraLightIt.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-ExtraLightIt.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-ExtraLightIt.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 300;
    font-style: normal;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-Light.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-Light.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-Light.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-Light.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-Light.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 300;
    font-style: italic;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-LightIt.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-LightIt.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-LightIt.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-LightIt.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-LightIt.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-Regular.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-Regular.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-Regular.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-Regular.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 400;
    font-style: italic;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-It.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-It.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-It.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-It.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-It.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 600;
    font-style: normal;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-Semibold.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-Semibold.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-Semibold.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-Semibold.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-Semibold.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 600;
    font-style: italic;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-SemiboldIt.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-SemiboldIt.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-SemiboldIt.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-SemiboldIt.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-SemiboldIt.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 700;
    font-style: normal;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-Bold.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-Bold.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-Bold.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-Bold.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-Bold.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 700;
    font-style: italic;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-BoldIt.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-BoldIt.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-BoldIt.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-BoldIt.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-BoldIt.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 900;
    font-style: normal;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-Black.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-Black.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-Black.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-Black.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-Black.ttf') format('truetype');
}

@font-face{
    font-family: 'Source Sans Pro';
    font-weight: 900;
    font-style: italic;
    font-stretch: normal;
    src: url('../fonts/source-sans-pro/EOT/SourceSansPro-BlackIt.eot') format('embedded-opentype'),
    url('../fonts/source-sans-pro/WOFF2/TTF/SourceSansPro-BlackIt.ttf.woff2') format('woff2'),
    url('../fonts/source-sans-pro/WOFF/OTF/SourceSansPro-BlackIt.otf.woff') format('woff'),
    url('../fonts/source-sans-pro/OTF/SourceSansPro-BlackIt.otf') format('opentype'),
    url('../fonts/source-sans-pro/TTF/SourceSansPro-BlackIt.ttf') format('truetype');
}

@font-face{
    font-family: 'Bundes-CMS-Icons';
    font-weight: 500;
    font-style: normal;
    font-stretch: normal;
    src: url('../fonts/heimat_bist_du_schoener_icons/Bundes-CMS-Icons.woff2') format('woff2'),
    url('../fonts/heimat_bist_du_schoener_icons/Bundes-CMS-Icons.woff') format('woff'),
    url('../fonts/heimat_bist_du_schoener_icons/Bundes-CMS-Icons.ttf') format('truetype');
}


/* ------ DEFAULT ------ */
:root {
    --white: #ffffff;
    --black: #000000;
    --brand1: #286f9c;
    --brand2: #104166;
    --function1: #e9f0f5;
    --bg-brand1-hover: #20597e; /* darken brand1 7.5% */
    --border-brand1-hover: #1e5273; /* darken brand1 10% */
    --gray-400: #ced4da;
    --input-border-color: #949494;
    --input-focus-color: #6baed9;
}

html {
    font-size: 100%;
    font-variant-ligatures: none;
    text-rendering: optimizeLegibility;
    font-smoothing: antialiased;
    font-family: sans-serif;
    line-height: 1.15;
}

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

body {
    background-color: rgba(40,111,156,.1); /*brand1 10%*/
    letter-spacing: .011rem;
    word-break: break-word;
    margin: 0;
    font-size: 1.0625rem;
    font-weight: 400;
    line-height: 1.765;
    color: var(--black);
    text-align: left;
}

body, button, input {
    font-family: "Source Sans Pro",Arial,sans-serif;
}

abbr[title], abbr[data-original-title] {
    text-decoration: none;
    border-bottom: 1px dotted #000;
}

a {
    color: var(--black);
    text-decoration: underline;
}

a:hover {
    color: var(--brand1);
}

button {
    border: 1px solid rgba(0,0,0,0);
    background-color: var(--white);
    cursor: pointer;
    border-radius: 0;
    letter-spacing: inherit;
}


/* ------ HEADER ------ */
#kc-header {
    background-color: var(--white);
    padding: 1.5625rem 5%;
}

#kc-header-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
}

#kc-header-wrapper a {
    display: flex;
    margin-left: -0.75rem;
}

#kc-header-logo {
    height: 2.25rem;
    width: auto;
}

#kc-current-locale-link {
    text-decoration: none;
    min-width: 2.75rem;
    padding: 0.375rem 0.563rem 0.813rem 0.563rem;
    font-size: .875rem;
}

#kc-locale-dropdown {
    position: relative;
}

#kc-locale-dropdown ul {
    display: none;
    position: absolute;
    right: 0;
    left: auto;
    font-size: 1.0625rem;
    z-index: 1040;
    padding: 0.5rem 0;
    min-width: 18rem;
    top: 100%;
    margin-top: -1px;
    list-style: none;
    color: var(--white);
    background-color: var(--brand2);
}

#kc-locale-dropdown ul a {
    color: var(--white);
    padding: .625rem 1.0625rem .625rem 3.25rem;
    text-decoration: none;
    width: 100%;
    display: block;
    line-height: normal;
}

#kc-locale-dropdown ul a::before {
    font-family: "Bundes-CMS-Icons";
    content: "";
    position: absolute;
    left: 1.5rem;
    margin-top: 2px;
}

#kc-locale-dropdown ul a:hover {
    text-decoration: underline;
}

#kc-current-locale-link[aria-expanded='true'] + ul {
    display: block;
}

#kc-current-locale-link[aria-expanded='true'], #kc-current-locale-link:hover  {
    color: var(--white);
    background-color: var(--brand2);
}

#kc-current-locale-link:hover abbr, #kc-current-locale-link[aria-expanded='true'] abbr {
    border-color: var(--white);
}

#kc-current-locale-link::after {
    font-family: "Bundes-CMS-Icons";
    content: "";
    position: relative;
    top: 0.25rem;
    font-size: 1.25rem;
}

#kc-current-locale-link[aria-expanded='true']::after {
    content: "";
}


/* ------ FOOTER ------ */
footer {
    padding: 1.875rem 0;
    font-size: .875rem;
    text-align: center;
}

footer ul {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

footer ul li {
    display: inline;
}

footer a {
    text-decoration: none;
    color: var(--black);
    transition: all .15s ease-in-out;
}

footer a:hover, footer a:focus {
    text-decoration: underline;
}


/* ------ MAIN ------ */
main {
    margin: 3.75rem 0.938rem;
}

.text-center {
    text-align: center;
}

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

.d-block {
    display: block;
}

.d-none {
    display: none !important;
}

.card-pf {
    max-width: calc(1200px * 0.83);
    background-color: var(--white);
    padding: 0.938rem;
    margin: 0 auto;
}

@media (min-width: 768px) {
    .card-pf {
        padding: 3rem;
    }
}

h1 {
    margin-top: 0;
    margin-bottom: 1.875rem;
    font-size: 2.65625rem;
    font-weight: 500;
    line-height: 1.2;
}

h2 {
    font-size: 1.25rem;
    line-height: 1.875rem;
    margin: 0 0 1rem 0;
    color: var(--brand1);
    font-weight: 700;
}

p {
    margin-bottom: 1.875rem;
    margin-top: 0;
}

label {
    display: inline-block;
    margin-bottom: 0.5rem;
}

fieldset {
    all: unset;
    display: block;
    width: 100%;
}

legend {
    margin-bottom: 1.875rem;
}

.pf-c-form-control, .pf-c-button {
    display: block;
    border-radius: 0;
    padding: 0.25rem 0.5625rem;
    font-size: 1.0625rem;
    line-height: 1.765;
    letter-spacing: .011rem;
    width: 100%;
    transition: all .15s ease-in-out;
}

.pf-c-button, #backToApplication {
    font-weight: 400;
    text-align: center;
    text-decoration: none;
    white-space: unset;
    border: 1px solid;
    transition: all .15s ease-in-out;
}

.pf-m-primary, #backToApplication {
    color: var(--white);
    background-color: var(--brand1);
    border-color: var(--brand1);
}

.pf-c-button:not(.pf-m-primary) {
    border: 1px solid var(--brand1);
    background-color: var(--white);
    color: var(--brand1);
}

#backToApplication:hover,
.pf-c-button:not(.pf-m-primary):hover {
    border-color: var(--brand1);
    background-color: var(--brand1);
    color: var(--white);
}

.pf-c-button:hover, #backToApplication:hover {
    background-color: var(--bg-brand1-hover);
    border-color: var(--border-brand1-hover);
    cursor: pointer;
}

.pf-c-button:focus, a:focus, button:focus {
    outline-width: 0.1875rem;
    outline-offset: 0;
    outline-color: rgba(40,111,156,.85);
    outline-style: solid;
}

.pf-c-button:focus, button:focus {
    background-color: var(--bg-brand1-hover);
}

a#backToHome {
    float: left;
    width: auto;
}

.pf-c-button.pf-m-primary#backToHome {
    float: left;
    width: auto;
}

a#continueToRegistration {
    display: inline-block;
    width: auto;
    margin-left: 10px;
}

a#continueToRegistration:hover {
    color: var(--white);
}

.clearer {
    display: block;
    clear: both;
    overflow: hidden;
    font-size: 0;
    line-height: 0;
}

.mb-0 {
  margin-bottom: 0;
}

input:focus:not(.pf-m-primary) {
    color: var(--brand1);
    background-color: var(--white);
    border-color: #6baed9;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(40,111,156,.25);
}

#kc-form-buttons {
    text-align: center;
}

#kc-form-login #kc-form-buttons {
    margin-top: 2.5rem;
}

#kc-form-buttons > div:not(:last-of-type) .pf-c-button {
    margin-bottom: 1rem;
}

#kc-form-buttons a {
    text-decoration: none;
}

.pf-c-form-control {
    font-size: 1.0625rem;
    font-weight: 400;
    line-height: 1.765;
}

#kc-additional-info {
    margin: 1.875rem 0 0 0;
}

#kc-form-heading {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    font-size: 1.25rem;
    line-height: 1.875rem;
}

#kc-form-heading-help {
    text-decoration: none;
    font-size: 1.25rem;
}

#kc-form-heading-help::after {
    font-family: "Bundes-CMS-Icons";
    content: "";
}

#kc-info h2 + p {
    font-size: 1rem;
    line-height: 1.375rem;
    margin-bottom: 2.5rem;
}

#kc-info img {
    margin: 1rem 1.875rem 2.188rem 0;
    vertical-align: middle;
}

.pf-c-button + a, #kc-forgot-pin {
    margin-top: 1rem;
    display: block;
}

#kc-form-login > div:last-of-type {
    border-top: 1px solid var(--gray-400);
    padding-top: 1.5rem;
}

#kc-form-login .pf-c-form-control {
    height: calc(1.765em + 0.5rem + 2px);
    padding: 0.25rem 0.5625rem;
    border: 1px solid var(--input-border-color);
    width: 100%;
    margin-bottom: 1rem;
}

#kc-search-wrapper {
    margin-bottom: 2rem;
}

#kc-searchbar {
    position: relative;
    display: flex;
    align-items: stretch;
    width: 100%;
}

#kc-search-input {
    width: 100%;
    height: calc(1.765em + 0.5rem + 2px);
    padding: 0.25rem 0.5625rem;
    font-size: 1.0625rem;
    font-weight: 400;
    line-height: 1.765;
    color: #000;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #949494;
    border-radius: 0;
    transition: all .15s ease-in-out;
}

#kc-search-button {
    position: relative;
    height: 100%;
    width: 2.5rem;
}

#kc-search-button::before {
    font-family: "Bundes-CMS-Icons";
    content: "";
    position: absolute;
    left: 10px;
    top: 5px;
}

#kc-select-form .pf-c-form-control {
    padding: 0 0.9375rem;
    margin-bottom: 0;
}

#kc-select-form .pf-c-form-control label {
    width: 100%;
    margin-bottom: 0;
    font-size: 0.875rem;
    line-height: 1.375rem;
    height: 100%;
}

#kc-select-form #kc-mandates-same-company {
    border-bottom: 0.15rem solid var(--gray-400);
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    position: relative;
}

#kc-select-form .pf-c-form-control label a, #kc-select-form #kc-mandates-same-company label {
    text-decoration: none;
    width: 100%;
    height: 100%;
    padding: 0.625rem 1.25rem;
    background-color: var(--function1);
    display: flex;
    align-items: center;
    transition: all .15s ease-in-out;
}

#kc-select-form .pf-c-form-control label a {
    display: block;
}

#kc-select-form .pf-c-form-control label h2, #kc-select-form #kc-mandates-same-company label {
    margin: 0;
    font-size: 1.063rem;
    line-height: 1.375rem;
    font-weight: 700;
    color: var(--brand1);
    transition: all .15s ease-in-out;
}

#kc-select-form .pf-c-form-control label .kc-mandates-option {
    background-color: var(--white);
    border: 0.1225em solid var(--brand1);
}

#kc-select-form .pf-c-form-control label .kc-mandates-option:hover {
    background-color: var(--brand1);
}

#kc-select-form #kc-mandates-same-company > a {
    width: fit-content;
    /* float: right; */
    bottom: 0;
    right: 0;
    position: absolute;
    margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
    #kc-select-form #kc-mandates-same-company > div.spacer {
        display: none;
    }
}

@media screen and (min-width: 767px) {
    #kc-select-form #kc-mandates-same-company-information {
        width: fit-content;
    }
}

#kc-select-form .pf-c-form-control input {
    display: none;
}

#kc-select-form .pf-c-form-control input:checked ~ label,
#kc-select-form .pf-c-form-control input:checked ~ label h2,
#kc-select-form .pf-c-form-control input:checked ~ label a,
#kc-select-form .pf-c-form-control a:hover,
#kc-select-form .pf-c-form-control a:hover h2,
#kc-select-form #kc-mandates-same-company > a:hover{
    color: var(--white);
}

#kc-select-form .pf-c-form-control input:checked ~ label a,
#kc-select-form .pf-c-form-control label a:hover {
    background-color: var(--brand1);
}

#kc-no-results-status {
    margin-bottom: 0;
}

#kc-results {
	all: unset;
    display: flex;
    flex-wrap: wrap;
    row-gap: 1.875rem;
    margin: 0 -15px 0 -15px;
}

#kc-results .pf-c-form-control {
    position: relative;
}

#kc-results p {
    all: unset;
}

#backToApplication {
    display: inline-block;
    padding: 0.25rem 0.5625rem;
}

@media (min-width: 992px) {
    #kc-form-login {
        display: flex;
    }

    #kc-form-login > div {
        width: 50%
    }

    #kc-form-login > div:first-of-type {
        padding-right: 3rem;
    }

    #kc-form-login > div:last-of-type {
        border-top: 0;
        padding-top: 0;
        padding-left: 3rem;
        padding-bottom: 0.5rem;
        border-left: 1px solid var(--gray-400);
    }

    #kc-form-login #kc-form-buttons {
        justify-content: space-between;
    }

    #kc-form-login #kc-form-buttons .pf-c-button {
        width: 50%;
    }

    #kc-forgot-pin {
        margin: 0;
    }

    #kc-form-buttons > div:not(:last-of-type) .pf-c-button {
        margin-bottom: 0;
    }

    #kc-logout-confirm #kc-form-buttons,
    #kc-form-login #kc-form-buttons,
    #kc-select-form #kc-form-buttons {
        display: flex;
        align-items: baseline;
        gap: 1rem;
    }

    .pf-c-form-control {
        flex: 0 0 33.33333333%;
        width: 33.33333333%;
    }
}

.alert {
    margin-bottom: 1.875rem;
    padding: 1.875rem;
    font-size: 1.0625rem;
    line-height: 1.875rem;
}
.alert.boxed {
    border: 1px solid red;
    padding: 10px 15px 10px 15px;
    background: #ffeeee;
}

.alert .alert-heading {
    margin-bottom: .625rem;
    display: block;
    font-size: 1.0625rem;
    font-weight: 700;
    color: inherit
}

.alert .alert-heading .icon {
    margin-right: .3125rem;
    font-size: 1.25rem;
    vertical-align: text-top
}

.alert.alert-danger {
    background-color: #fde7e3
}

.icon {
    font-family: "Bundes-CMS-Icons" !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-alert_fehler:before {
    content: ""
}

.error-page-buttons {
    display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (min-width: 768px) {
    #kc-logout-confirm {
        float: left;
        width: 50%;
    }
}

@media screen and (min-width: 768px) {
    div#kc-alles-aus-einer-hand-icon::before {
        content: "x"
    }
}

@media screen and (min-width: 768px) {
    div#kc-alles-aus-einer-hand-icon {
        display: inline-block;
        margin-top: -1.25rem;
        line-height: normal;
        padding: 0 1.25rem 1.25rem 5rem;
        font-family: "Bundes-CMS-Icons";
        font-size: 16.667rem;
        width: 40%;
        color: var(--brand1);
    }
}

@media screen and (min-width: 768px) {
    #kc-info-message-top {
        text-align: right;
        margin-top: -4.063rem;
    }
}
@media screen and (max-width: 767px) {
    #kc-info-message-top {
        display: none;
    }
}

@media screen and (min-width: 768px) {
    #kc-info-message-bottom {
        display: none;
    }
}

#kc-info-message-bottom {
    text-align: center;
}

.chatbot {
    display: block;
    z-index: 100;
    position: fixed;
    bottom: 3%;
    right: 3%;
    width: 100px;
    height: 100px;
    -webkit-animation: 0;
    animation: 0
}

.chatbot .chatbot-icon {
    position: absolute;
    display: block;
    width: 100px;
    height: 100px;
    background-image: url(../img/Mona-2x.png);
    background-position: center center;
    background-size: contain;
    z-index: 20
}

.chatbot .text-wrapper {
    display: none;
    overflow: hidden;
    position: absolute;
    top: 18%;
    right: 50px;
    margin-right: 29px;
    z-index: 10;
    width: 0;
    height: 64%;
    -webkit-animation-duration: .2s;
    animation-duration: .2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-name: chatbot-inactive;
    animation-name: chatbot-inactive
}

.chatbot .text-wrapper .text-box {
    display: table;
    background-color: #d3dfe7;
    height: 100%;
    width: 300px;
    font-size: 13px;
    padding: 0 10px
}

.chatbot .text-wrapper .text-box .text {
    display: table-cell;
    vertical-align: middle;
    padding-right: 5px
}

.chatbot.show .text-wrapper {
    display: block;
    width: 300px;
    -webkit-animation-duration: .2s;
    animation-duration: .2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-name: chatbot-active;
    animation-name: chatbot-active
}

.error-hidden {
    display: none;
}

.error-page-title {
    text-align: center;
    color: #286f9c;
    margin-bottom: .2em;
}

.error-page-image {
    max-width: 50%;
    max-height: 50%;
    margin-top: -2em;
}

@media screen and (min-width: 768px) {
    .error-page-image {
        margin-top: -6.5em;
    }
}
#kc-error-message {
    text-align: center;
}

@-webkit-keyframes chatbot-active {
    from {
        width: 0
    }

    to {
        width: 300px
    }
}

@keyframes chatbot-active {
    from {
        width: 0
    }

    to {
        width: 300px
    }
}

@-webkit-keyframes chatbot-inactive {
    from {
        width: 300px
    }

    to {
        width: 0
    }
}

@keyframes chatbot-inactive {
    from {
        width: 300px
    }

    to {
        width: 0
    }
}

#skiplinks a {
    position: absolute;
    z-index: 2000;
    font-size: .875rem;
    text-decoration: none;
    outline: none;
}

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

.sr-only-focusable:active, .sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal
}

#skiplinks-container, #skiplinks-container .old-shared-portlets .button, .old-shared-portlets #skiplinks-container .button {
    min-height: 0 !important;
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
}

#skiplinks {
    margin: 0;
    padding: 0;
    list-style: none
}

.centeredFormGroup {
    margin: 2rem auto 4rem auto;
}

@media screen and (min-width: 768px) {
    .centeredFormGroup {
        width: 50%;
    }

    #unlockpinInput {
        width: 100%;
    }

    #unlockPinButton {
        margin: auto;
    }
}