#app{min-height:68vh}
.shell{width:min(calc(100% - 2rem),var(--content-width));margin-inline:auto}
.section{padding-block:3rem}
.section--tight{padding-block:clamp(1.5rem,3vw,3rem)}
.grid{display:grid;gap:var(--space-lg)}
.grid--2,.grid--3{grid-template-columns:1fr}
.stack>*+*{margin-top:var(--space-md)}
.article-shell{width:min(calc(100% - 2rem),var(--article-width));margin-inline:auto}
.full-bleed{width:min(calc(100% - 2rem),1400px);margin-inline:auto}
@media(min-width:821px){
  .section{padding-block:clamp(2.5rem,6vw,6rem)}
  .grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:1500px){.shell{width:min(calc(100% - 5rem),var(--content-width))}}
