.site-container {
    width: min(100% - (var(--gutter) * 2), var(--container-content));
    margin-inline: auto;
}

.site-container--wide { max-width: 1440px; }
.site-container--reading { max-width: var(--container-reading); }

.site-section { padding-block: clamp(var(--space-6), 7vw, var(--space-8)); }

.site-main {
    min-height: 60vh;
}

.site-header__inner,
.site-footer__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4) var(--space-6);
}

.site-navigation ul,
.site-footer__navigation {
    display: flex;
    align-items: center;
    gap: var(--space-4);
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-navigation__toggle { display: none; }

.content-entry {
    width: min(100%, var(--container-reading));
    padding: clamp(var(--space-5), 5vw, var(--space-7));
    border: var(--border-width-default) solid var(--color-border);
    background: var(--color-surface);
    box-shadow: var(--shadow-subtle);
}

.content-entry--front { padding-block: clamp(var(--space-7), 9vw, var(--space-8)); }

@media (max-width: 48rem) {
    .site-header__inner,
    .site-footer__inner { align-items: flex-start; flex-direction: column; }
    .site-footer__navigation { flex-wrap: wrap; }
    .site-navigation__toggle { display: inline-flex; }
    html.js .site-navigation { width: 100%; }
    html.js .site-navigation[hidden] { display: none; }
    .site-navigation ul { align-items: flex-start; flex-direction: column; padding-block: var(--space-3); }
}
