.section {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

fieldset {
    margin: 0.25rem;
}

fieldset.horizontal {
    display: flex;
    flex-direction: row;
}

fieldset.horizontal > div {
    margin: 0 0.5rem 0 0.5rem;
}

legend {
    font-weight: bold;
}

fieldset > div {
    margin: 1em 0;
    display: flex;
    flex-direction: row;
    align-items: center;
}

input[type="radio"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    width: 1em;
    height: 1em;
    border: 2px solid var(--color);
    border-radius: 50%;
    margin-right: 0.5em;
}

input[type="radio"]:checked {
    border-color: var(--accent);
    background-color: var(--accent);
}

input[type="text"],
input[type="email"] {
    background-color: transparent;
    border: 2px solid var(--color);
    margin: 1rem 1rem 1rem 0.3rem;
    padding: 0.2rem;

    font-size: 0.9em;
    color: var(--accent);
}