.body > footer {
    margin-top: auto;
}
.body > footer nav {
    display: flex;
    flex-direction: column;
    column-gap: 0.5rem;
}
.body > footer nav ul {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0;
    padding: 0;
}
@media (min-width: 768px) {
    .body > footer nav {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }
    .body > footer nav ul {
        flex-direction: row;
        column-gap: 1rem;
    }
}

aside nav .entry a {
    display: block;
    padding: 0.4rem 0.9rem;
    border-radius: 9999px; /* pill shape */
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease;
}
aside nav .entry a.primary {
    background: var(--pico-primary-hover-background);
    color: var(--pico-primary-inverse);
}
aside nav .entry a.text-pill {
    background: transparent;
    color: var(--pico-color);
}
aside nav .entry[data-level="2"] a {
    margin-left: 1rem;
}
aside nav .entry[data-level="3"] a {
    margin-left: 2rem;
}

a:not([role="button"]) {
    text-decoration: underline var(--primary) 2px;
}
a:not([role="button"]):hover {
    color: var(--primary);
}

.has-text-required {
    color: hsl(348, 100%, 61%);
}

.error-alert {
    border-left: 4px solid #c0392b;
    background: rgba(192,57,43,0.06);
    padding: 0.75rem 1rem;
    border-radius: 6px;
    margin-bottom: 1rem;
    color: #5b1f1f;
    font-weight: 600;
}

.auth-form {
    max-width: 500px !important;
    margin: 0 auto;
}

.customer-account-pill .stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.customer-account-pill :is(.stack, .stack-with-button)::before {
    content: unset;
}
.customer-account-pill .stack-with-button {
    display: grid;
    grid-template-columns: auto 1rem;
    column-gap: 0.5rem;
}
.customer-account-pill .stack-with-button :nth-child(1) {
    grid-row: 1 / span 1;
    grid-column: 1 / span 1;
}
.customer-account-pill .stack-with-button :nth-child(2) {
    grid-row: 2 / span 2;
    grid-column: 1 / span 1;
}
.customer-account-pill .stack-with-button :nth-child(3) {
    grid-row: 1 / span 2;
    grid-column: 2 / span 2;
}
.customer-account-pill li > a {
    margin: 0 !important;
}
.customer-account-pill li > a + a {
    margin: calc(var(--pico-form-element-spacing-vertical)) 0 0 0 !important;
}

.incident-banner {
    margin-bottom: 1.5rem;
}
.incident-card header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.incident-card header.incident-card-collapsed {
    margin-bottom: 0;
}
.incident-card .toggle-btn {
    margin-top: calc(var(--pico-block-spacing-vertical) * -1);
    margin-bottom: calc(var(--pico-block-spacing-vertical) * -1);
}

.product-btn {
    height: fit-content;
}
