.svg-button {
    display: inline-flex;
    height: 48px;
    padding: 12px 24px;
    justify-content: center;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
    border-radius: 24px;
    background: var(--Actions-Button_Default, #281805);
    color: white;
    width: fit-content;
    font-family: "Forever Forma Variable", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 150%;
    text-decoration: none;
}

.svg-button svg {
    transition: transform 0.1s ease-in-out;
}

.svg-button:hover{
    text-decoration: solid underline ;
}

.svg-button:hover svg,
.svg-button:active svg {
    transform: translateX(6px)
}

.login-container {
    width: 386px;
    height: 476px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-right: 109px;
}

@media screen and ( min-width: 960px ) and (max-width: 1439px) {

    .login-container {
        width: 400px;
        height: 476px;
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
}
@media screen and ( min-width: 600px ) and (max-width: 959px) {

    .login-container {
        max-width: 600px;
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
    
}
@media screen and ( min-width:375px ) and (max-width: 599px) {

    .login-container {
        max-width: 375px;
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .forgot-errorbox-description {
        line-height: 20px;
    }
    #errorBanner {
        width: 100%;
        height: 100px;
        margin-bottom: 32px;
    }
}
    .login-title {
        margin: 0;
        padding: 0;
        color: var(--color-neutral-900, black);
        font-size: 36px;
        font-family: "Forever Forma Heading", sans-serif;
        font-weight: 400;
        line-height: 43px;
    }

    /* Form fields */
    .form-field {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }
    .form-field:has(input:focus-visible) .field-label  {
        color: var(--color-blue);
    }

    .field-label {
        display: flex;
        color: var(--Inputs-Default, #281805);
        font-size: 16px;
        font-family: "Forever Forma Body Text", sans-serif;
        font-weight: 700;
        line-height: 24px;
        gap: 6px;
        align-items: center;
    }

    .error-label {
        color: var(--Inputs-Error-1, #C51321);
    }

.has-error .req-label::before {
    content: "";
    height: 24px;
    width: 24px;
    margin-right:6px;
    background-image: url("../Images/Icons/triangle-error.svg");
}

    .input-box {
        padding: 12px 14px;
        background: var(--Inputs-Bg_Default, white);
        border: 2px solid var(--Inputs-Default, #281805);
        display: flex;
        align-items: center;
        box-sizing: border-box;
    }

    /* Remove conflicting styles when interactive class is applied */
    .input-box.interactive {
        border: 2px solid var(--Inputs-Default, #281805);
    }

    /* Apply interactive focus styling when child is focused */
    .input-box.interactive:has(:focus-visible) {
        border: 2px solid var(--color-blue);
        box-shadow: 0 0 0 6px var(--color-focus);
    }

    .input-field {
        flex: 1;
        height: 24px;
        border: none;
        outline: none; /* Remove native focus ring */
        font-size: 16px;
        font-family: "Forever Forma Body Text", sans-serif;
        background: transparent;
    }

    /* Forgot links */
    .forgot-links {
        display: flex;
        gap: 24px;
        flex-wrap: wrap;
        height: 48px;
        align-items: center;
        align-content: center;
        flex-shrink: 0;
        align-self: stretch;
    }

    .link {
        color: var(--Actions-Link_Default, #281805);
        font-size: 16px;
        font-family: "Forever Forma Body Text", sans-serif;
        font-weight: 500;
        text-decoration: underline;
    }

    /* Login button */
    .btn-primary {
        height: 48px;
        padding: 12px 24px;
        background: var(--Actions-Button_Default, #281805);
        border-radius: 24px;
        border: none;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        color: white;
        font-size: 16px;
        font-family: "Forever Forma Variable", sans-serif;
        font-weight: 500;
    }

        /* Arrow icon (CSS-only SVG) */
        .btn-primary .btn-icon {
            width: 16px;
            height: 12px;
            background-repeat: no-repeat;
            background-size: contain;
            background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='16'%20height='12'%20viewBox='0%200%2016%2012'%3E%3Cpath%20fill='white'%20d='M5%2012L3.6%2010.55L7.15%207H0V5H7.15L3.6%201.45L5%200L11%206L5%2012Z'/%3E%3C/svg%3E");
        }

    /* Footer */
    .footer-links {
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    .footer-row {
        display: flex;
        gap: 4px;
        align-items: center;
    }

    .footer-text {
        color: var(--Actions-Button_Default, #281805);
        font-size: 16px;
        font-family: "Forever Forma Variable", sans-serif;
        font-weight: 500;
    }

    .help-link {
        display: flex;
        height: 48px;
        padding: 12px 0;
        justify-content: center;
        align-items: center;
        gap: 4px;
        flex-shrink: 0;
        text-decoration: none;
        width: fit-content;
    }

    .help-text {
        color: var(--Actions-Button_Default, #281805);
        font-size: 16px;
        font-family: "Forever Forma Variable", sans-serif;
        font-weight: 500;
        line-height: 24px;
    }
