:root {
  --fonte: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --fonte-leitura: Georgia, "Times New Roman", serif;

  --cor-fundo: #f6f7fb;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #f0f2f8;
  --cor-borda: #dfe3ee;
  --cor-texto: #1b1f2a;
  --cor-texto-suave: #5b647a;
  --cor-primaria: #3d5afe;
  --cor-primaria-forte: #2b3fd6;
  --cor-primaria-suave: #e8ecff;
  --cor-ok: #0f8a5f;
  --cor-ok-suave: #e2f5ec;
  --cor-alerta: #b26a00;
  --cor-alerta-suave: #fdf1dc;
  --cor-erro: #c62828;
  --cor-erro-suave: #fdeaea;
  --cor-sombra: 0 1px 2px rgba(20, 25, 45, 0.06), 0 8px 24px rgba(20, 25, 45, 0.07);
  --cor-sombra-forte: 0 12px 40px rgba(20, 25, 45, 0.16);
  --raio: 14px;
  --raio-pequeno: 9px;
  --largura-max: 1100px;
}

[data-tema="escuro"] {
  --cor-fundo: #12141c;
  --cor-superficie: #1b1e29;
  --cor-superficie-2: #232736;
  --cor-borda: #333849;
  --cor-texto: #eceef6;
  --cor-texto-suave: #a3abc2;
  --cor-primaria: #7d8fff;
  --cor-primaria-forte: #6474ff;
  --cor-primaria-suave: #262b47;
  --cor-ok: #4fd6a1;
  --cor-ok-suave: #16342a;
  --cor-alerta: #f0b445;
  --cor-alerta-suave: #3a2f18;
  --cor-erro: #ff8080;
  --cor-erro-suave: #3d2020;
  --cor-sombra: 0 1px 2px rgba(0, 0, 0, 0.4), 0 8px 24px rgba(0, 0, 0, 0.35);
  --cor-sombra-forte: 0 12px 40px rgba(0, 0, 0, 0.55);
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  font-family: var(--fonte);
  background: var(--cor-fundo);
  color: var(--cor-texto);
  line-height: 1.6;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 { line-height: 1.25; margin: 0 0 0.5em; }
h1 { font-size: clamp(1.6rem, 1.2rem + 1.8vw, 2.4rem); letter-spacing: -0.02em; }
h2 { font-size: clamp(1.25rem, 1.05rem + 0.9vw, 1.6rem); letter-spacing: -0.01em; }
h3 { font-size: 1.1rem; }
p { margin: 0 0 1em; }
a { color: var(--cor-primaria); }

:focus-visible {
  outline: 3px solid var(--cor-primaria);
  outline-offset: 2px;
  border-radius: 4px;
}

.pular-para-conteudo {
  position: absolute;
  left: -9999px;
  top: 0;
  background: var(--cor-primaria);
  color: #fff;
  padding: 10px 16px;
  z-index: 100;
  border-radius: 0 0 var(--raio-pequeno) 0;
}
.pular-para-conteudo:focus { left: 0; }

.topo {
  background: var(--cor-superficie);
  border-bottom: 1px solid var(--cor-borda);
  position: sticky;
  top: 0;
  z-index: 20;
  backdrop-filter: blur(8px);
}

.topo__interno {
  max-width: var(--largura-max);
  margin: 0 auto;
  padding: 12px 20px;
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.marca {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: inherit;
  margin-right: auto;
}
.marca__icone { font-size: 1.6rem; line-height: 1; }
.marca__texto { display: flex; flex-direction: column; }
.marca__texto strong { font-size: 1.05rem; letter-spacing: -0.02em; }
.marca__texto small { color: var(--cor-texto-suave); font-size: 0.75rem; }

.navegacao { display: flex; gap: 4px; flex-wrap: wrap; }
.navegacao a {
  padding: 8px 13px;
  border-radius: 999px;
  text-decoration: none;
  color: var(--cor-texto-suave);
  font-size: 0.92rem;
  font-weight: 500;
  white-space: nowrap;
}
.navegacao a:hover { background: var(--cor-superficie-2); color: var(--cor-texto); }
.navegacao a.ativo { background: var(--cor-primaria); color: #fff; }

.botao-icone {
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  color: var(--cor-texto);
  width: 38px;
  height: 38px;
  border-radius: 50%;
  cursor: pointer;
  font-size: 1.05rem;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.botao-icone:hover { background: var(--cor-superficie-2); }

.pagina {
  display: flex;
  gap: 28px;
  width: 100%;
  max-width: var(--largura-max);
  margin: 0 auto;
  padding: 0 20px;
  align-items: flex-start;
}
.conteudo {
  order: 1;
  flex: 1;
  min-width: 0;
  padding: 32px 0 64px;
}
.conteudo:focus { outline: none; }

.trilho {
  flex: 0 0 184px;
  width: 184px;
  position: sticky;
  top: 96px;
  padding: 32px 0 48px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.trilho--esquerdo { order: 0; align-items: flex-start; }
.trilho--direito { order: 2; align-items: flex-end; }
.sem-anuncios .trilho,
.sem-anuncios .rodape__anuncios,
.sem-anuncios .anuncio,
.sem-anuncios .pl-isolado { display: none !important; }

.pl-isolado {
  position: absolute;
  width: 1px;
  height: 1px;
  border: 0;
  opacity: 0;
  pointer-events: none;
  left: -9999px;
}

.rodape {
  background: var(--cor-superficie);
  border-top: 1px solid var(--cor-borda);
  padding: 24px 20px;
}
.rodape__interno { max-width: var(--largura-max); margin: 0 auto; }
.rodape p { margin: 0 0 4px; font-size: 0.85rem; color: var(--cor-texto-suave); }
.rodape__nota { font-size: 0.78rem !important; }

.aviso {
  position: fixed;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%) translateY(20px);
  background: var(--cor-texto);
  color: var(--cor-superficie);
  padding: 12px 22px;
  border-radius: 999px;
  box-shadow: var(--cor-sombra-forte);
  font-size: 0.9rem;
  font-weight: 500;
  opacity: 0;
  transition: opacity 0.25s ease, transform 0.25s ease;
  z-index: 60;
  pointer-events: none;
  max-width: 90vw;
  text-align: center;
}
.aviso.visivel { opacity: 1; transform: translateX(-50%) translateY(0); }

.cartao {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  padding: 24px;
  box-shadow: var(--cor-sombra);
}
.cartao + .cartao { margin-top: 20px; }
.cartao__titulo { display: flex; align-items: center; gap: 10px; margin-bottom: 4px; }

.grade { display: grid; gap: 20px; }
.grade--2 { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.grade--3 { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
.grade--4 { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }

.pilha { display: flex; flex-direction: column; gap: 16px; }
.pilha--pequena { gap: 8px; }
.linha { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.entre { justify-content: space-between; }

.hero {
  background: linear-gradient(135deg, var(--cor-primaria) 0%, #7b5cff 100%);
  color: #fff;
  border-radius: var(--raio);
  padding: 40px 32px;
  margin-bottom: 28px;
  box-shadow: var(--cor-sombra);
}
.hero h1 { color: #fff; margin-bottom: 12px; }
.hero p { color: rgba(255, 255, 255, 0.92); font-size: 1.05rem; max-width: 62ch; margin-bottom: 20px; }
.hero__acoes { display: flex; gap: 12px; flex-wrap: wrap; }
.hero .botao.secundario { background: rgba(255, 255, 255, 0.16); border-color: rgba(255, 255, 255, 0.4); color: #fff; }
.hero .botao.secundario:hover { background: rgba(255, 255, 255, 0.26); }

.botao {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 20px;
  border-radius: 999px;
  border: 1px solid transparent;
  background: var(--cor-primaria);
  color: #fff;
  font-family: inherit;
  font-size: 0.94rem;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.15s ease, transform 0.1s ease, border-color 0.15s ease;
  line-height: 1.2;
}
.botao:hover { background: var(--cor-primaria-forte); }
.botao:active { transform: translateY(1px); }
.botao[disabled] { opacity: 0.45; cursor: not-allowed; }
.botao.secundario { background: var(--cor-superficie); color: var(--cor-texto); border-color: var(--cor-borda); }
.botao.secundario:hover { background: var(--cor-superficie-2); }
.botao.fantasma { background: transparent; color: var(--cor-texto-suave); border-color: transparent; }
.botao.fantasma:hover { background: var(--cor-superficie-2); color: var(--cor-texto); }
.botao.pequeno { padding: 7px 14px; font-size: 0.84rem; }

.cartao-clicavel {
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-align: left;
  cursor: pointer;
  font-family: inherit;
  color: inherit;
  transition: transform 0.15s ease, border-color 0.15s ease;
}
.cartao-clicavel:hover { transform: translateY(-3px); border-color: var(--cor-primaria); }
.cartao-clicavel .icone { font-size: 1.8rem; line-height: 1; }
.cartao-clicavel strong { font-size: 1.05rem; }
.cartao-clicavel span { color: var(--cor-texto-suave); font-size: 0.9rem; }

.etiqueta {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 0.76rem;
  font-weight: 600;
  background: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.etiqueta--primaria { background: var(--cor-primaria-suave); color: var(--cor-primaria); }
.etiqueta--ok { background: var(--cor-ok-suave); color: var(--cor-ok); }
.etiqueta--alerta { background: var(--cor-alerta-suave); color: var(--cor-alerta); }
.etiqueta--erro { background: var(--cor-erro-suave); color: var(--cor-erro); }

label { display: block; font-weight: 600; font-size: 0.88rem; margin-bottom: 6px; }
label .dica { font-weight: 400; color: var(--cor-texto-suave); font-size: 0.8rem; }

input[type="text"], input[type="email"], input[type="tel"], input[type="url"],
input[type="number"], input[type="date"], select, textarea {
  width: 100%;
  padding: 11px 13px;
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-pequeno);
  background: var(--cor-superficie);
  color: var(--cor-texto);
  font-family: inherit;
  font-size: 0.95rem;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: var(--cor-primaria);
  box-shadow: 0 0 0 3px var(--cor-primaria-suave);
}
textarea { resize: vertical; min-height: 110px; line-height: 1.6; }
select { cursor: pointer; }

.campo { margin-bottom: 16px; }
.campo-linha { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }

fieldset {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-pequeno);
  padding: 16px;
  margin: 0 0 16px;
}
legend { font-weight: 700; font-size: 0.92rem; padding: 0 6px; }

.caixa-marcar {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-pequeno);
  cursor: pointer;
  background: var(--cor-superficie);
  transition: border-color 0.15s ease, background 0.15s ease;
}
.caixa-marcar:hover { border-color: var(--cor-primaria); }
.caixa-marcar input[type="checkbox"] { margin-top: 4px; width: 18px; height: 18px; flex-shrink: 0; accent-color: var(--cor-primaria); cursor: pointer; }
.caixa-marcar span { flex: 1; }
.caixa-marcar.feita { background: var(--cor-ok-suave); border-color: var(--cor-ok); }
.caixa-marcar.feita strong { text-decoration: line-through; text-decoration-color: var(--cor-texto-suave); }
.caixa-marcar.escolhida { background: var(--cor-primaria-suave); border-color: var(--cor-primaria); }
.caixa-marcar.escolhida strong { color: var(--cor-primaria-forte); }

.progresso {
  height: 8px;
  background: var(--cor-superficie-2);
  border-radius: 999px;
  overflow: hidden;
}
.progresso__barra {
  height: 100%;
  background: var(--cor-primaria);
  border-radius: 999px;
  transition: width 0.3s ease;
}

.simulador__pergunta {
  font-family: var(--fonte-leitura);
  font-size: clamp(1.2rem, 1rem + 1vw, 1.6rem);
  font-weight: 600;
  margin: 8px 0 20px;
  line-height: 1.35;
}

.cronometro {
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  font-size: 1.05rem;
  padding: 5px 14px;
  border-radius: 999px;
  background: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
}
.cronometro.ligando { background: var(--cor-primaria-suave); color: var(--cor-primaria); }
.cronometro.dentro { background: var(--cor-ok-suave); color: var(--cor-ok); }
.cronometro.acima { background: var(--cor-alerta-suave); color: var(--cor-alerta); }

.opcoes { display: flex; gap: 8px; flex-wrap: wrap; }
.opcao {
  padding: 8px 15px;
  border-radius: 999px;
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  color: var(--cor-texto);
  font-family: inherit;
  font-size: 0.87rem;
  cursor: pointer;
  font-weight: 500;
}
.opcao:hover { border-color: var(--cor-primaria); }
.opcao.ativa { background: var(--cor-primaria); border-color: var(--cor-primaria); color: #fff; }

.acordeao { border: 1px solid var(--cor-borda); border-radius: var(--raio-pequeno); overflow: hidden; }
.acordeao + .acordeao { margin-top: 10px; }
.acordeao__cabecalho {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 15px 18px;
  background: var(--cor-superficie);
  border: 0;
  cursor: pointer;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  color: var(--cor-texto);
  text-align: left;
}
.acordeao__cabecalho:hover { background: var(--cor-superficie-2); }
.acordeao__cabecalho .seta { transition: transform 0.2s ease; flex-shrink: 0; color: var(--cor-texto-suave); }
.acordeao.aberto .seta { transform: rotate(180deg); }
.acordeao__corpo { padding: 0 18px 18px; border-top: 1px solid var(--cor-borda); }
.acordeao.aberto .acordeao__corpo { padding-top: 16px; }
.acordeao:not(.aberto) .acordeao__corpo { display: none; }

.lista-marcada { margin: 0; padding-left: 20px; }
.lista-marcada li { margin-bottom: 6px; }

.lista-pendencias { list-style: none; padding: 0; margin: 0; }
.lista-pendencias li {
  padding: 9px 0 9px 26px;
  border-bottom: 1px dashed var(--cor-borda);
  position: relative;
  color: var(--cor-texto-suave);
}
.lista-pendencias li:last-child { border-bottom: 0; }
.lista-pendencias li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 9px;
  color: var(--cor-ok);
  font-weight: 700;
}
.lista-pendencias li.feito { color: var(--cor-texto); }
.lista-pendencias li.feito::before {
  content: "○";
  color: var(--cor-borda);
}

.bloco-modelo {
  background: var(--cor-primaria-suave);
  border-left: 4px solid var(--cor-primaria);
  padding: 16px 18px;
  border-radius: 0 var(--raio-pequeno) var(--raio-pequeno) 0;
  font-family: var(--fonte-leitura);
  line-height: 1.7;
}
[data-tema="escuro"] .bloco-modelo { background: var(--cor-superficie-2); }

.bloco-erro {
  background: var(--cor-erro-suave);
  border-left: 4px solid var(--cor-erro);
  padding: 14px 18px;
  border-radius: 0 var(--raio-pequeno) var(--raio-pequeno) 0;
}

.bloco-ok {
  background: var(--cor-ok-suave);
  border-left: 4px solid var(--cor-ok);
  padding: 14px 18px;
  border-radius: 0 var(--raio-pequeno) var(--raio-pequeno) 0;
}

.bloco-alerta {
  background: var(--cor-alerta-suave);
  border-left: 4px solid var(--cor-alerta);
  padding: 14px 18px;
  border-radius: 0 var(--raio-pequeno) var(--raio-pequeno) 0;
}

.metrica {
  text-align: center;
  padding: 18px 12px;
  background: var(--cor-superficie-2);
  border-radius: var(--raio-pequeno);
}
.metrica strong { display: block; font-size: 1.8rem; line-height: 1.1; letter-spacing: -0.02em; }
.metrica span { font-size: 0.8rem; color: var(--cor-texto-suave); text-transform: uppercase; letter-spacing: 0.04em; }

.estatistica {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 0.88rem;
  color: var(--cor-texto-suave);
  margin-bottom: 6px;
}
.estatistica__barra {
  flex: 1;
  height: 7px;
  background: var(--cor-superficie-2);
  border-radius: 999px;
  overflow: hidden;
}
.estatistica__preenchimento { height: 100%; border-radius: 999px; background: var(--cor-primaria); }
.estatistica__preenchimento.ok { background: var(--cor-ok); }
.estatistica__preenchimento.meio { background: var(--cor-alerta); }
.estatistica__preenchimento.ruim { background: var(--cor-erro); }

.aba-conteudo { display: none; }
.aba-conteudo.ativa { display: block; }

.vazio {
  text-align: center;
  padding: 48px 20px;
  color: var(--cor-texto-suave);
}
.vazio .icone { font-size: 3rem; display: block; margin-bottom: 12px; opacity: 0.7; }

.carregando { display: flex; align-items: center; gap: 12px; justify-content: center; padding: 60px 0; color: var(--cor-texto-suave); }
.giro {
  width: 20px; height: 20px;
  border: 3px solid var(--cor-borda);
  border-top-color: var(--cor-primaria);
  border-radius: 50%;
  animation: girar 0.8s linear infinite;
  display: inline-block;
}
@keyframes girar { to { transform: rotate(360deg); } }

.solta-arquivo {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 28px 18px;
  margin: 14px 0;
  border: 2px dashed var(--cor-borda);
  border-radius: var(--raio);
  background: var(--cor-superficie-2);
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.solta-arquivo:hover, .solta-arquivo:focus-visible, .solta-arquivo.sobre {
  border-color: var(--cor-primaria);
  background: var(--cor-primaria-suave);
}
.solta-arquivo span { margin: 0; }

.rodape__anuncios {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 16px;
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid var(--cor-borda);
}
.rodape__container-pl { display: none; }
#container-ba9e8bd5f9fbb8f1044cb1612fe2d312 { display: none; }
.anuncios {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 18px;
}
.anuncio {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 0;
  border: 0;
  background: none;
  width: fit-content;
  max-width: 100%;
}
.anuncio__rotulo {
  font-size: 0.6rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cor-texto-suave);
  opacity: 0.75;
}
.anuncio__area { min-height: 90px; margin: 0 auto; }
.anuncio iframe { border: 0; display: block; }

.repeticao-item {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-pequeno);
  padding: 18px;
  background: var(--cor-superficie-2);
  position: relative;
}
.repeticao-item + .repeticao-item { margin-top: 14px; }
.repeticao-item__cabecalho {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}
.repeticao-item__cabecalho strong { font-size: 0.95rem; }
.repeticao-item__remover {
  background: none;
  border: 1px solid var(--cor-borda);
  color: var(--cor-erro);
  border-radius: 999px;
  width: 28px; height: 28px;
  cursor: pointer;
  font-size: 1rem;
  line-height: 1;
  flex-shrink: 0;
}
.repeticao-item__remover:hover { background: var(--cor-erro-suave); }

.painel-lateral {
  position: sticky;
  top: 88px;
  align-self: start;
}

.roteiro-item__meta {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 8px;
  align-items: center;
}

.contao-botoes { display: flex; gap: 8px; flex-wrap: wrap; }

.estrelas { display: inline-flex; gap: 2px; }
.estrelas input { position: absolute; opacity: 0; width: 0; height: 0; }
.estrelas label {
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
  color: var(--cor-borda);
  margin: 0;
  padding: 0 2px;
  font-weight: 400;
  transition: color 0.12s ease;
}
.estrelas label:hover,
.estrelas label:hover ~ label,
.estrelas input:checked ~ label {
  color: #f5a524;
}

.nota-cabecalho {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}
.nota-grande { font-size: 1.6rem; font-weight: 700; letter-spacing: -0.02em; }

.sinal-alerta {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 700;
  background: var(--cor-erro-suave);
  color: var(--cor-erro);
}

.cartao-empresa {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-pequeno);
  padding: 18px;
  background: var(--cor-superficie);
}
.cartao-empresa + .cartao-empresa { margin-top: 12px; }

.barra-nota {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.82rem;
  color: var(--cor-texto-suave);
  margin-right: 14px;
}
.barra-nota__trilho {
  width: 70px;
  height: 7px;
  background: var(--cor-superficie-2);
  border-radius: 999px;
  overflow: hidden;
}
.barra-nota__valor { height: 100%; background: #f5a524; border-radius: 999px; }

.mensagem-modelo {
  background: var(--cor-superficie-2);
  border: 1px dashed var(--cor-borda);
  border-radius: var(--raio-pequeno);
  padding: 16px;
  font-family: var(--fonte-leitura);
  font-size: 0.95rem;
  line-height: 1.7;
  white-space: pre-wrap;
}

.badge-conta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--cor-superficie-2);
  border-radius: 999px;
  padding: 4px 12px;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--cor-texto-suave);
}

@media (max-width: 720px) {
  .topo__interno { padding: 10px 14px; gap: 10px; }
  .marca__texto small { display: none; }
  .navegacao { order: 3; width: 100%; overflow-x: auto; padding-bottom: 4px; }
  .pagina { flex-direction: column; gap: 0; padding: 0 14px; }
  .conteudo { padding: 22px 0 48px; }
  .trilho { position: static; width: 100%; flex: 1 1 auto; padding: 0 0 32px; flex-direction: row; flex-wrap: wrap; align-items: flex-start; }
  .trilho--esquerdo { order: 0; }
  .trilho--direito { order: 2; }
  .cartao { padding: 18px; }
  .hero { padding: 28px 20px; }
  .painel-lateral { position: static; }
}

@media print {
  .topo, .rodape, .aviso, .contao-botoes, .navegacao, .trilho, .pl-isolado { display: none !important; }
  body { background: #fff; color: #000; }
  .conteudo { max-width: 100%; padding: 0; }
  .pagina { padding: 0; }
  .cartao { box-shadow: none; border: 1px solid #ccc; page-break-inside: avoid; }
}

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
  html { scroll-behavior: auto; }
}