/* Form Group */
.form-group {
    position: relative;
    margin-bottom: 1.5rem;
}

/* Input + Textarea */
.form-control {
    width: 100%;
    padding: 1.2rem 0.75rem 0.5rem;
    font-size: var(--btn-font-size);
    border: 1px solid var(--color-accent);
    border-radius: var(--border-radius);
    background-color: transparent;
    color: var(--text-dark);
    transition: var(--btn-transition);
}

.form-control:focus {
    border-color: var(--color-primary);
    outline: none;
}

/* Floating Label */
.form-group label {
    position: absolute;
    top: 1.1rem;
    left: 0.75rem;
    font-size: var(--btn-font-size);
    color: var(--accent-dark);
    pointer-events: none;
    transition: 0.2s ease all;
    background-color: var(--bg-light);
    padding: 0 0.25rem;
}

/* Active Floating State */
.form-control:focus+label,
.form-control:not(:placeholder-shown)+label {
    top: -0.5rem;
    left: 0.6rem;
    font-size: 0.75rem;
    color: var(--color-primary);
}
