card.rich {
    display: grid;
    justify-content: start;
    grid-row: span 2;
    grid-column:  span 2;
    grid-template-columns: 1fr;
    grid-template-rows: max-content auto max-content;
}
card.rich .rich-title {
    margin: var(--gap);
    font-size: 1.8rem;
    font-weight: 300;
}
card.rich .container {
    align-self: baseline;
    margin: 0 var(--gap);
}
card.rich:not(.buttons) .text {
    margin-bottom: var(--gap);
}
card.rich .container .text {
    display: block;
    font-size: var(--text-size);
}
card.rich form {
    margin-top: calc(0rem - var(--gap));
    padding: 0 0.5rem;
    position: relative;
    margin: 0 0 -0.7rem;
}
card.rich form .content {
    font-size: 1.2rem;
    position: absolute;
    bottom: var(--gap);
    left: calc(0.5rem + var(--gap));
    opacity: 0;
    transition: opacity 150ms ease;
}
card.rich form .content.failed {
    opacity: 1;
}