/* Containers */
.site-shell,
.ro-container {
  width: min(var(--ro-max-wide), calc(100% - (var(--ro-page-pad) * 2)));
  margin-inline: auto;
}

.ro-container--reading {
  width: min(var(--ro-max-reading), calc(100% - (var(--ro-page-pad) * 2)));
  margin-inline: auto;
}

.ro-container--copy {
  max-width: var(--ro-max-copy);
}

.ro-full-bleed {
  width: 100%;
}

/* Grid — 12 colunas desktop. */
.ro-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--ro-gutter);
}

.ro-grid--align-start {
  align-items: start;
}

.ro-grid--align-center {
  align-items: center;
}

.ro-section {
  padding-block: var(--ro-section-space);
}

.ro-section--compact {
  padding-block: var(--ro-section-space-compact);
}

.ro-section--paper {
  background: var(--ro-color-paper);
}

.ro-section--stone {
  background: var(--ro-color-stone);
}

.ro-section--deep {
  background: var(--ro-color-deep);
  color: var(--ro-color-off-white);
}

.ro-stack > * {
  margin-block: 0;
}

.ro-stack > * + * {
  margin-block-start: var(--ro-stack-space, var(--ro-space-5));
}

.ro-cluster {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--ro-cluster-space, var(--ro-space-4));
}

/* Pacote 02: shell demonstrativo, não é a Home homologada. */
.foundation-placeholder {
  padding-block: clamp(88px, 12vw, 176px);
}

.foundation-placeholder__content {
  grid-column: 1 / span 7;
  max-width: 760px;
}

.foundation-placeholder__note {
  max-width: 58ch;
  margin: var(--ro-space-7) 0 0;
  color: var(--ro-color-taupe);
}

.foundation-system-preview {
  grid-column: 1 / -1;
  margin-top: var(--ro-space-9);
  padding-top: var(--ro-space-7);
  border-top: 1px solid var(--ro-color-line);
}

.foundation-system-preview__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  gap: clamp(32px, 6vw, 96px);
  align-items: start;
}

.ro-stack--space-5 {
  --ro-stack-space: var(--ro-space-5);
}
