.page { width: 100%; max-width: 1120px; padding: 36px 40px 80px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-content: start; }
.page.narrow { max-width: 800px; }
.page.wide { max-width: none; }
.page-head, .section-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
.section-head p { margin-top: 4px; }
.back { display: inline-flex; align-items: center; gap: 4px; font-size: .9rem; font-weight: 500; text-decoration: none; color: var(--text-2); justify-self: start; }
.back:hover { color: var(--primary); }
/* Trilha "Você está em": no computador, o caminho inteiro; no celular, só o "‹ Voltar" */
.crumbs { font-size: .88rem; justify-self: start; min-width: 0; max-width: 100%; }
.crumbs ol { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 2px; }
.crumbs li { display: inline-flex; align-items: center; gap: 2px; min-width: 0; }
.crumbs a, .crumbs [aria-current] { padding: 4px 6px; border-radius: var(--r-sm); text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 28ch; }
.crumbs li:first-child a { padding-left: 0; }
.crumbs a { color: var(--text-2); font-weight: 500; }
.crumbs a:hover { color: var(--primary); background: var(--primary-soft); }
.crumbs li:first-child a:hover { padding-left: 6px; margin-left: -6px; }
.crumbs [aria-current] { color: var(--text); font-weight: 600; }
.crumbs-sep { width: 14px; height: 14px; color: var(--text-3); flex: none; }
.crumbs-up { display: none; }
.lede { font-size: 1.05rem; color: var(--text-2); max-width: 62ch; }
@media (max-width: 760px) {
  .crumbs ol { display: none; }
  .crumbs-up { display: inline-flex; align-items: center; gap: 2px; padding: 6px 12px 6px 6px; margin-left: -6px; border-radius: var(--r-pill); background: var(--surface-2); color: var(--text); font-weight: 600; text-decoration: none; max-width: 100%; }
  .crumbs-up svg { width: 18px; height: 18px; flex: none; }
  .page { padding: 20px 16px 96px; gap: 20px; }
  h1 { font-size: 1.6rem; }
}
