@font-face {
    font-family: "Inter";
    src: url(../fonts/Inter.woff) format("woff"), url(../fonts/Inter.woff2) format("woff2"), url(../fonts/Inter.ttf) format("truetype")
}

@font-face {
    font-family: "Inter Semi-Bold";
    src: url(../fonts/InterSemiBold.woff) format("woff"), url(../fonts/InterSemiBold.woff2) format("woff2"), url(../fonts/InterSemiBold.ttf) format("truetype")
}

body {
    font-family: Inter, sans-serif;
    font-size: 1rem;
    line-height: 1.5;
}

.login-pf body {
    background: unset;
}

.login-pf-header h1 {
    color: #103941;
    font-size: 2rem;
    line-height: 2.25rem;
    font-family: Inter Semi-bold;
    font-weight: 600;
}

.kc-logo-text {
    display: none;
}

#kc-header {
    padding-top: 2em;
    display: flex;
}

#kc-info-wrapper {


    background-color: #FFF;
}

.greeting {

    box-sizing: border-box;
    color: rgb(90, 94, 104);
    display: block;


    font-weight: 400;

    letter-spacing: -0.6px;
    line-height: 36px;

    text-align: left;


}

#kc-header-wrapper {
    background-image: url(../img/logo-laek-bw.webp);
    background-repeat: no-repeat;
    background-size: contain;
    height: 50px;
    width: 200px;
    margin: auto;
    /* text-indent: -999em; */
    overflow: hidden;
}

.pf-c-button {
    --pf-c-button--m-primary--BackgroundColor: #103941;
    --pf-c-button--m-primary--hover--BackgroundColor: #0d4c59;
    border-radius: 4px;

    font-size: 16px;
    font-weight: 600;
    vertical-align: middle;
    /*   padding: 12px 17px;
    margin: 10px 0;*/
    white-space: nowrap;
    /*  background-color: #103941;*/
}

.pf-c-button:hover {
    /* background-color: #0d4c59;*/
}

.card-pf {

    border-top: none;

}

@media (max-width: 450px) {
    .login-pf-page .login-pf-header h1 {
        font-size: 12px;
    }

    .greeting {
        font-size: 14px;
    }
}

@media (min-width: 1024px) {
    .card-pf {
        max-width: 1000px;
        min-height: 750px;
        border-top: none;
        padding-left: 540px !important;
        background-size: 500px 750px;
        background-image: url(../img/desk.jpg);
        background-repeat: no-repeat;
        background-color: #FFF;
        background-position: left top;
    }

    .greeting {
        font-size: 22px;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {

    .card-pf {
        max-width: 500px;
        height: 750px;
        border-top: none;

    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .greeting {
        font-size: 22px;
    }
}

@media (min-width: 450px) and (max-width: 768px) {

    .login-pf-page .login-pf-header h1 {
        font-size: 16px;

    }

    .greeting {
        font-size: 18px;
    }
}

.footer {
    padding-top: 2em;
    font-size: 12px;
}

#loginSafeguardNotes {

}

/* OTP Device Selection Cards */
.otp-device-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
    width: 100%;
}

.otp-device-item {
    position: relative;
    width: 100%;
}

.otp-device-radio {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.otp-device-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 16px;
    border: 2px solid #ddd;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    background-color: #fff;
    text-align: center;
    min-height: 120px;
    width: 100%;
    margin-bottom: 0;
}

.otp-device-card:hover {
    border-color: #809193;
    background-color: #f8f8f8;
}

.otp-device-radio:checked + .otp-device-card {
    border-color: #0076fe;
    box-shadow: 0 0 0 1px #0076fe;
}

.otp-device-icon {
    font-size: 2rem;
    color: #103941;
    margin-bottom: 8px;
    display: block;
}

.otp-device-name {
    font-weight: 500;
    color: #333;
    overflow-wrap: break-word;
    word-break: normal;
    font-size: 14px;
    line-height: 1.2;
}
