body {
    min-height: 100vh;
    padding-bottom: 10rem;
}

.bg-grid {
    background-image: linear-gradient(45deg, transparent 49%, #f9fafb 49%,
            #f9fafb 51%, transparent 51%), linear-gradient(-45deg, transparent 49%, #f9fafb 49%, #f9fafb 51%, transparent 51%);
    background-size: 60px 60px;
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
}

header {
    display: flex;
    justify-content: space-between;
    align-items: center;

    a {
        font-weight: 500;
        display: flex;
        align-items: center;
        gap: var(--spacing-2);

        &:hover {
            text-decoration: underline;
        }

        svg {
            width: 1.25rem;
            height: 1.25rem;
        }
    }
}

.hero-section {
    background-color: oklch(from var(--color-accent) l c h / 0.1);
    padding: var(--spacing-16);
    margin-block: 0 4rem;
}

.title {
    max-width: 70rem;
    margin-inline: auto;
}

.constrained {
    max-width: 70rem;
    margin-inline: auto;
}

section {
    margin-top: 3rem;
}

pre,
pre code {
    display: block;
    margin-inline: auto;
    text-align: center;
}