.input-wrapper {
    --padding: 16px;
    --focus-color: #dfb863;
    position: relative;
    display: flex;
    align-items: center;
}

input {
    padding: var(--padding);
    border: 2px solid gray;
    outline: none;
    border-radius: 6px;
}

.select{
    width: 100%;
    padding: 10px;
    margin: 5px 0 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-sizing: border-box;
}

.placeholder {
    position: absolute;
    background-color: white;
    color: gray;
    left: var(--padding);
    padding: 0 4px;
    transition: all 0.2s ease-in;
}

input:is(:focus, :valid) {
    border: 2px solid var(--focus-color);
}

input:is(:focus, :valid) + .placeholder {
    transform: translatey(calc(-1 * var(--padding) - 12px));
    font-size: 12px;
    color: var(--focus-color);
}
select:is(:focus, :valid) {
    border: 2px solid var(--focus-color);
}

select:is(:focus, :valid) + .placeholder {
    transform: translatey(calc(-1 * var(--padding) - 12px));
    font-size: 12px;
    color: var(--focus-color);
}
