/* source-sans-pro-regular - latin */
@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 400;
    src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url('../fonts/source-sans-pro-v11-latin-regular.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('../fonts/source-sans-pro-v11-latin-regular.woff') format('woff'),
    /* Modern Browsers */
    url('../fonts/source-sans-pro-v11-latin-regular.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('../fonts/source-sans-pro-v11-latin-regular.svg#SourceSansPro') format('svg');
    /* Legacy iOS */
}

/* source-sans-pro-600 - latin */

@font-face {
    font-family: 'Source Sans Pro';
    font-style: normal;
    font-weight: 600;
    src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url('../fonts/source-sans-pro-v11-latin-600.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('../fonts/source-sans-pro-v11-latin-600.woff') format('woff'),
    /* Modern Browsers */
    url('../fonts/source-sans-pro-v11-latin-600.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('../fonts/source-sans-pro-v11-latin-600.svg#SourceSansPro') format('svg');
    /* Legacy iOS */
}

body {
    color: #313740;
    font-family: 'Source Sans Pro';
    font-weight: 400;
    margin: 0;
    padding: 0;
    position: relative;
    width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin: 0;
    padding: 0;
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

a {
    color: #418fde;
    text-decoration: none;
}

.header-top {
    height: 20px;
    width: 100%;
}

.headerContainer {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.brand {
    height: 120px;
    margin-left: 80px;
    object-fit: contain;
    object-position: 0%;
    width: 240px;
}

.profil {
    align-items: center;
    display: flex;
    margin: 57px 80px 0 0;
}

.userText {
    font-weight: 400;
    letter-spacing: 0.5px;
    margin-right: 15px;
}

.Icon {
    height: 25px;
    width: 25px;
}

.nav {
    margin-right: 50px;
    padding: 10px;
}

    .nav a {
        align-items: center;
        color: #313740;
        display: flex;
        text-decoration: none;
    }

.dropdown {
    background: #fff;
    display: flex;
    justify-content: flex-end;
    position: relative;
}

.dropdown-content {
    background-color: #ffffff;
    border: solid 1px #ececec;
    border-radius: 3px;
    box-shadow: 0px 3px 12px -4px #87878780;
    display: none;
    min-width: 160px;
    padding: 8px 0;
    position: absolute;
    right: 8px;
    top: 40px;
    z-index: 1;
}

    .dropdown-content a {
        color: #313740;
        display: block;
        min-width: 160px;
        padding: 12px 16px;
        text-align: right;
        text-decoration: none;
    }

        .dropdown-content a:hover {
            background-color: #ececec;
        }

.dropdown:hover .dropdown-content {
    display: block;
}

.grow {
    transform: perspective(1px) translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
}

.nav:hover .grow {
    transform: scale(1.2);
}

.outerWrapper {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin-top: 60px;
    width: 100%;
}

.innerWrapper {
    width: 1300px;
}

.login-btn {
    margin-right: 70px;
}


.loginContainer {
    display: flex;
    justify-content: space-between;
}

.loginContainer-right {
    margin-left: 20px;
    width: 600px;
}

.loginContainer-left {
    margin-right: 20px;
    margin-left: 2px;
    width: 600px;
}

.form {
    display: flex;
    flex-direction: column;
    margin-top: 40px;
}

.inputContainer {
    margin: 0 0 20px 1px;
}

.inputWidth {
    width: 350px;
}

.headlineContainer {
    display: flex;
    margin-bottom: 60px;
    width: 100%;
}

.headlineAdditive {
    font-size: 18px;
    padding-top: 2px;
}

.identityHubText {
    font-size: 16px;
    margin-bottom: 30px;
}

.alert {
    color: #D00218;
}

h2 {
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 10px;
}

h3 {
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 10px;
}

h4 {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 10px;
}

input {
    border: none;
    border-bottom: solid 1px #c3c2c3;
    height: 30px;
}

    input:-webkit-autofill,
    input:-webkit-autofill:hover,
    input:-webkit-autofill:focus {
        -webkit-text-fill-color: #313740;
        background: none;
        border-bottom: solid 1px #c3c2c3;
        transition: background-color 5000s ease-in-out 0s;
    }

    input:focus {
        outline-color: white;
    }

button {
    background: none;
    border: none;
    cursor: pointer;
    font-weight: 600;
    letter-spacing: 1.2px;
}

    button[disabled] {
        background: #e1e1e1;
    }

.checkboxLabel {
    align-items: center;
    color: #313740;
    cursor: pointer;
    display: flex;
    font-size: 16px;
    margin: 0 30px 10px 0;
}

.checkbox {
    align-items: center;
    display: flex;
    margin: 20px 0 50px;
}

    .checkbox input {
        cursor: pointer;
    }

.required {
    color: #D00218;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.5px;
    margin-bottom: 5px;
}

.requiredIcon {
    color: #D00218;
    margin-left: 3px;
}

.privacyUppercase {
    font-size: 16px;
    letter-spacing: 0.5px;
    margin-bottom: 30px;
}

.requiredHeadline {
    color: #D00218;
    font-size: 20px;
}

.marginLabel {
    margin-left: 10px;
}

.permissionContainer {
    margin-bottom: 40px;
}

.permissionList {
    display: flex;
}

.checkbox label {
    color: #313740;
    cursor: pointer;
    font-size: 16px;
    margin: 0 10px;
    user-select: None;
}

.checkboxLabel label {
    cursor: pointer;
    user-select: None;
}

label {
    display: flex;
    flex-direction: column;
    font-size: 16px;
    letter-spacing: 0.5px;
}

.iconInfo {
    fill: green;
    width: 30px;
}

.btn-group {
    display: flex;
}

.btn-allow {
    color: white;
}

.btn-group button {
    border-radius: 3px;
    font-size: 12px;
    font-weight: 300;
    height: 30px;
    min-width: 100px;
    margin: 10px;
    padding: 0 15px;
  
}

.btn-login {
    color: white;
}

.btn-password {
    color: white;
}

.btn-execute {
    color: white;
}

.btn-cancel {
    background-color: #e1e1e1;
}

.btn-danger {
    background-color: #D00218;
    color: white;
}

.btn-details {
    color: white;
}

.btn-text-white {
    color: white
}

.btn-group-external {
    display: flex;
    flex-direction: column;
    font-size: 14px;
    margin-top: 10px;
}

.btn-external-provider {
    align-items: center;
    background: #418fde;
    border-radius: 3px;
    color: white;
    display: flex;
    height: 40px;
    justify-content: center;
    list-style: none;
    margin-bottom: 20px;
    width: 100%;
    cursor: pointer;
}

    .btn-external-provider a {
        align-items: center;
        color: white;
        display: flex;
        font-size: 16px;
        justify-content: center;
        letter-spacing: 1.2px;
    }

.sublineContainer {
    height: 40px;
    margin-bottom: 10px;
}

.grantContainer {
    display: flex;
}

.grantContent {
    display: flex;
}

.grantContentContainer {
    margin-right: 40px;
}

.grantTitle {
    font-size: 16px;
    margin-bottom: 5px;
}

.grantList {
    margin-right: 25px;
    min-height: 60px;
}

.grantItem {
    font-size: 14px;
}

.clientItem {
    font-size: 20px;
    margin-bottom: 8px;
}

.created {
    color: lightgray;
    margin-right: 10px;
}

.expires {
    color: lightgray;
    margin-right: 10px;
}

.formGrantContainer {
    margin: 15px 0 30px 0;
}

.cookieOuterWrapper {
    display: flex;
}

.cookieWrapper {
    margin-bottom: 30px;
}

.cookieContainer {
    margin: 20px 80px 25px 0;
}

.cookieLabel {
    color: lightgray;
}

.cookieText {
    margin-bottom: 5px;
}

.profileWrapper {
    margin-right: 180px;
    margin-top: 30px;
}

.forgotPassword {
    font-size: 14px;
    margin-top: 30px;
}

.passwordContainer {
    margin-top: 30px;
}

.passwordRequest {
    margin-bottom: 30px;
}

.passwort-btn {
    margin-top: 20px;
}

.profileContainer {
    margin: 20px 80px 25px 0;
}

.profileLabel {
    color: lightgray;
}

.profileText {
    margin-bottom: 5px;
}

.textLargeContainer {
    margin-top: 100px;
}

.textMedium {
    font-size: 20px;
    margin-bottom: 10px;
}

.textLarge {
    margin-bottom: 20px;
}

.textContainer {
    margin-top: 50px;
}

.details {
    background: lightgray;
    border-radius: 3px;
    margin-top: 30px;
    padding: 20px;
}

:focus {
    outline: -webkit-focus-ring-color auto 0px;
}

.hidden {
    display: none;
}

.displayFlex {
    display: flex;
}

.locker {
    margin-bottom: 20px;
    width: 150px;
}

.delete {
    margin-left: 15px;
}

.loggedOutContainer {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 100px;
}

.errorWrapper {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 100px;
}

.errorContainer {
    border-left: 4px solid #D00218;
    margin-bottom: 30px;
    padding: 5px 10px;
}

.notificationContainer {
    border-left: 4px solid #418fde;
    display: flex;
    margin-bottom: 30px;
    padding: 5px 10px;
}

.tooltip {
    display: inline-block;
    margin-left: 20px;
    position: relative;
}

    .tooltip .tooltiptext {
        background-color: black;
        border-radius: 3px;
        color: #fff;
        left: 120%;
        padding: 7px;
        position: absolute;
        text-align: center;
        top: -10px;
        visibility: hidden;
        width: 180px;
        z-index: 1;
    }

    .tooltip:hover .tooltiptext {
        visibility: visible;
    }

.signout {
    border: 0;
}

.tooltip:hover .tooltiptext {
    visibility: visible;
}

.innerWrapper .form-check {
    align-items: center;
    display: flex;
    margin: 15px 0 20px;
}

    .innerWrapper .form-check .form-check-label {
        margin-left: 5px;
    }

.powered {
    align-self: flex-end;
    border-bottom: solid 1.5px lightgray;
    color: lightgray;
    cursor: pointer;
    display: flex;
    font-size: 14px;
    letter-spacing: 0.5px;
    margin: 120px 100px 0 0;
    padding-bottom: 1.5px;
}

@media (max-width: 1400px) {
    .innerWrapper {
        display: flex;
        flex-direction: column;
        justify-self: center;
        margin: 0;
        width: 900px;
    }


    .loginContainer-left {
        margin-right: 20px;
        width: 50%;
    }

    .loginContainer-right {
        margin-left: 20px;
        width: 50%;
    }
}

@media (max-width: 1000px) {
    .outerWrapper {
        margin-top: 80px;
    }

    .headerContainer {
        align-items: center;
        display: flex;
        margin: 0;
        width: 100%;
    }

    .brand {
        height: 100px;
        margin-left: 30px;
    }

    .profil {
        margin: 0;
    }

    .innerWrapper {
        margin: 0 0 0 0;
        width: 90%;
    }

    .loginContainer {
        display: flex;
        flex-direction: column;
    }

    .loginContainer-left {
        margin: 0 0 40px 0;
        padding: 0;
        width: 100%;
    }

    .loginContainer-right {
        margin: 0 0 40px 0;
        padding: 0;
        width: 100%;
    }

    .checkbox {
        margin: 15px 0 30px;
    }

    .permissionList {
        display: block;
    }

    .grantContent {
        display: block;
    }

    .cookieOuterWrapper {
        display: block;
        margin-top: 20px;
    }

    .displayFlex {
        display: block;
    }

    .powered {
        margin: 20px 50px 0 0;
    }

    .btn-external-provider {
        width: 340px;
    }

    .innerWrapper .form-check {
        align-items: center;
        display: flex;
        margin: 5px 0 0px;
    }
}


@media (max-width: 600px) {
    .outerWrapper {
        margin-top: 50px;
    }

    .headerContainer {
        align-items: center;
        width: 100%
    }

    .headlineContainer {
        display: flex;
        flex-direction: column;
        width: 100%
    }

    .brand {
        height: 80px;
        margin: 0 0 0 12px;
    }

    .userText {
        display: none
    }

    .permissionList {
        display: block;
    }

    .pipe {
        display: none;
    }

    .grantContent {
        display: block;
        margin-top: 20px;
    }

    .cookieOuterWrapper {
        display: block;
        margin-top: 20px;
    }

    .powered {
        margin: 20px 25px 0 0;
    }

    .login-btn {
        margin: 0 30px;
    }

    .btn-external-provider {
        height: 30px;
        margin-bottom: 15px;
        width: 100%;
    }

    .form {
        display: flex;
        flex-direction: column;
        margin-top: 20px;
    }
}
