input, textarea, select {
    background: var(--carbon);
    border: 1px solid var(--flint);
    color: var(--parchment);
    padding: var(--s3) var(--s4);
    font-size: var(--t2);
    width: 100%;
    transition: border-color var(--dur-1);
    border-radius: 0;
    outline: none;
}
input:focus, textarea:focus, select:focus {
    border-color: var(--gold);
}
input::placeholder, textarea::placeholder {
    color: var(--cream-ghost);
    font-size: var(--t2);
}
label {
    display: block;
    font-size: var(--t1);
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--cream-ghost);
    margin-bottom: var(--s2);
}
.form-group { display: flex; flex-direction: column; gap: var(--s3); }
.form-error { font-size: var(--t1); color: #e55; margin-top: var(--s2); }
