/* 03 — LAYOUT */

.l-container {
  width: 100%;
  max-width: calc(var(--container) + var(--gutter) * 2);
  margin-inline: auto;
  padding-inline: var(--gutter);
}

.l-section {
  padding-block: var(--section-y);
  position: relative;
}

.l-section--tight {
  padding-block: calc(var(--section-y) * 0.6);
}

.l-section-head {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  margin-block-end: var(--space-10);
}

.l-section-head__meta {
  align-self: flex-end;
  color: var(--c-text-dim);
}

@media (min-width: 768px) {
  .l-section-head {
    flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--space-6);
  }

  .l-section-head__meta {
    align-self: auto;
  }
}

.l-measure {
  max-width: 64ch;
  margin-inline: auto;
}

.l-rule {
  height: var(--line);
  background-color: var(--c-border);
  border: 0;
  margin: 0;
}