/* Legal reading page: the title and body share one column-defined lane. */
.landing-header, .offer-main { width: min(var(--content-width), calc(100% - 2 * var(--gutter))); margin-inline: auto; }
.landing-header { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 16px 32px; padding-block: 24px; }
.landing-brand { font-size: 1.5rem; line-height: 2rem; font-weight: 750; text-decoration: none; color: var(--ink); }
.landing-header > span { font-size: .875rem; line-height: 1.5rem; color: var(--muted); }
.offer-main { display: grid; grid-template-columns: repeat(var(--grid-columns), minmax(0, 1fr)); column-gap: var(--grid-gap); padding-block: 64px; }
.offer-main > * { grid-column: 1 / span var(--text-columns); min-width: 0; }
h1, h2, p { margin: 0; }
h1, h2 { color: var(--ink); text-wrap: balance; }
h1 { font-size: 3rem; line-height: 3.5rem; font-weight: 700; }
h2 { font-size: 2rem; line-height: 2.5rem; font-weight: 600; margin-bottom: 24px; }
p, li, address { font-size: 1.125rem; line-height: 2rem; }
.offer-meta { font-size: .875rem; line-height: 1.5rem; color: var(--muted); margin-top: 24px; }
.offer-intro { margin-top: 32px; }
.offer-section { margin-top: 48px; }
.offer-section p + p { margin-top: 16px; }
.offer-section ul { margin: 16px 0; padding-left: 24px; }
.offer-section li + li { margin-top: 8px; }
.offer-details { font-style: normal; overflow-wrap: anywhere; }
.offer-details > span { display: block; margin-bottom: 8px; }
@media (max-width: 650px) {
  .offer-main { padding-block: 40px 48px; }
  .landing-brand { font-size: 1.125rem; line-height: 1.5rem; }
  h1 { font-size: 2rem; line-height: 2.5rem; }
  h2 { font-size: 1.5rem; line-height: 2rem; }
  p, li, address { font-size: 1rem; line-height: 1.5rem; }
  .offer-section { margin-top: 32px; }
}
