.container, .container-wide, .container-reading { width: calc(100% - (var(--gutter) * 2)); margin-inline: auto; }
.container { max-width: var(--container-default); }
.container-wide { max-width: var(--container-wide); }
.container-reading { max-width: var(--container-reading); }
.section { padding-block: clamp(var(--space-16), 7vw, var(--space-24)); }
.section--compact { padding-block: clamp(var(--space-12), 5vw, var(--space-20)); }
.section-header { min-height: 1.5rem; display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); margin-bottom: var(--space-5); }
.section-heading { color: var(--color-brand-red); }
.grid { display: grid; gap: var(--space-6); }
.grid-two-column { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(var(--space-8), 4vw, var(--space-16)); }
.stack { display: flex; flex-direction: column; gap: var(--space-4); }
.cluster { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4); }
.split-layout { display: flex; align-items: center; justify-content: space-between; gap: var(--space-8); }
.full-bleed { width: 100vw; margin-left: calc(50% - 50vw); }
.detail-shell { width: min(var(--container-reading), calc(100% - (var(--gutter) * 2))); margin-inline: auto; padding-block: var(--space-20); }
.detail-shell--flush { padding-block: 0; }
.listing-wrap { padding-block: var(--space-20); }
@media (max-width: 767px) {
    .grid-two-column { grid-template-columns: 1fr; }
    .mobile-scroll { display: grid !important; grid-auto-flow: column; grid-auto-columns: minmax(240px, 82vw); overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scrollbar-width: none; }
    .mobile-scroll > * { scroll-snap-align: start; }
    .mobile-scroll::-webkit-scrollbar { display: none; }
}
