.fers-intro { max-width: 48rem; }
.fers-review { padding: .9rem 1.1rem; border-left: .3rem solid var(--liberty); background: var(--sky); }
.fers-layout { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 28rem), 1fr)); gap: 2rem; align-items: start; }
.fers-inputs { min-width: 0; margin: 0; padding: 1.4rem; border: 1px solid var(--line); border-radius: .35rem; }
.fers-inputs legend { padding: 0 .35rem; font-size: 1.2rem; font-weight: 700; }
.fers-inputs .field { margin-top: 1.1rem; }
.fers-inputs label { display: block; font-weight: 700; margin-bottom: .4rem; }
.fers-inputs input, .fers-inputs select { box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; min-height: 2.75rem; padding: .65rem; font: inherit; color: var(--ink); background: var(--paper); border: 1px solid var(--muted); border-radius: .25rem; }
.fers-inputs input:focus-visible, .fers-inputs select:focus-visible { outline: .2rem solid var(--ink); outline-offset: .15rem; }
.fers-inputs [aria-invalid="true"] { border: .15rem solid #a21d27; }
.fers-service { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem; }
.fers-hint { display: block; margin-top: .4rem; font-size: .9rem; color: var(--muted); }
.fers-error { display: block; margin: .4rem 0 0; font-weight: 600; color: #a21d27; }
.fers-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.25rem; }
.fers-actions button { min-height: 2.75rem; }
.fers-status { min-height: 3rem; margin: 1rem 0; }
.fers-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); gap: 1rem; }
.fers-card { min-width: 0; padding: 1.1rem; border: 1px solid var(--line); border-top: .3rem solid var(--ink); border-radius: .25rem; }
.fers-card h3 { margin-top: 0; }
.fers-card dl { margin: 0; }
.fers-card dt { margin-top: 1rem; font-size: .9rem; }
.fers-card dd { margin: .25rem 0 0; font-weight: 700; font-size: 1.5rem; overflow-wrap: anywhere; }
.fers-card p { font-size: .95rem; }
.fers-method { margin-top: 2rem; max-width: 52rem; }
@media (max-width: 34rem) { .fers-cards { grid-template-columns: 1fr; } .fers-inputs { padding: 1rem; } }
