body {
    max-width: 100%;
    overflow-x: clip;
}

main,
.page-hero,
.prose,
.legal {
    min-width: 0;
}

h1,
h2,
h3 {
    overflow-wrap: normal;
    word-break: normal;
}

@media (max-width: 680px) {
    .menu-jump a,
    .contact-links .text-link {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
    }

    .site-footer a {
        display: flex;
        align-items: center;
        min-height: 44px;
    }

    .site-footer .footer-address {
        display: grid;
        align-items: start;
    }

    .site-footer .footer-links {
        display: grid;
        justify-items: start;
        align-content: start;
        gap: 2px;
    }

    .footer-newsletter .button-small {
        min-height: 44px;
    }

    .newsletter-consent input,
    .check input {
        min-width: 20px;
        min-height: 20px;
    }

    .page-hero h1 {
        font-size: clamp(2.65rem, 13vw, 3.4rem);
        hyphens: auto;
    }

    .legal h2,
    .prose h2 {
        font-size: clamp(1.75rem, 9vw, 2.2rem);
        hyphens: auto;
    }

    .admin-user-row > summary {
        grid-template-columns: 40px minmax(0, 1fr);
        align-items: start;
    }

    .admin-user-row > summary > .status {
        grid-row: auto;
        grid-column: 2;
        justify-self: start;
        max-width: 100%;
        white-space: normal;
    }

    .admin-user-manage {
        grid-column: 2;
    }
}
