.form {
    label,
    input,
    select,
    textarea {
        display: block;
        cursor: pointer;
        width: -webkit-fill-available;
        font-weight: 300;
    }

    label {
        margin-top: 1rem;
        margin-bottom: .5rem;

        i {
            color: red;
        }

        span {
            color: $black;
        }
    }

    input,
    select,
    textarea {
        padding: 15px 10px;
        color: $black;
        border: 1px solid;
        border-radius: 0;
        background-color: transparent;

        &:focus-visible {
            outline: none;
            border-radius: 0;
        }
    }

    input[type="radio"],
    input[type="checkbox"] {  

        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;

        position: relative;
        display: inline-block;
        background: transparent;
        padding: 0;
        margin: 0;
        border: 0;
        margin-right: 1rem;
        width: 12px;
        height: 12px;
        outline: 1px solid $black;
        outline-offset: 2px;       
        @include transition(all, .25s, ease);

        &:checked {
            background: $black;
        } 
    }

    input[type="radio"] {
        border-radius: 50%;        
    }

    button, a {
        margin-top: 1rem;
    }

    p, span {
        @extend .text-sm;
        margin-top: 0;
        margin-bottom: .5rem;
    }

    span {
        color: $grey;
    }

    .bi {
        position: absolute;
        top: 30%;
        right: 13px;
        cursor: pointer;
        @extend .text-lg;
    }

    &-accordion {
        background-color: $white;
        margin: $size-sm 0;

        button {
            margin: 0;
        }

        .accordion-button,
        .accordion-body {
            font-size: 10.5pt;
        }

        .accordion-button {
            @extend .text-light, .text-uppercase;
        }

        .accordion-body {
            padding: 1rem 1.25rem;
        }
    }
}

.form-newsletter {
    height: $size-md;
    border-bottom: 1px solid $black;
    display: flex;
    align-items: center;

    button,
    input {
        background: none;
        border: 0;
        font-size: 9.75pt;
        
        &:focus {
            outline: none;
        }
    }
    
    input {
        width: 100%;
        
        &::placeholder {
            font-family: $Metropolis;
            color: $black;
        }
    }
    
    button {
        display: flex;
        align-items: center;
        font-weight: 700;
        text-transform: uppercase;

        img {
            margin-left: 1.5rem;
        }
    }
}