main { flex: 1; outline: none; }

.aviso { padding: 3.2rem 0 4.5rem; }

.aviso h1 {
  font-size: clamp(2.1rem, 6vw, 3rem);
  letter-spacing: -0.01em;
  margin: 0 0 0.9rem;
}

.aviso h1::after {
  content: "";
  display: block;
  width: 3.5rem;
  height: 1px;
  margin-top: 0.7rem;
  background: linear-gradient(90deg, var(--ouro), transparent);
}

.aviso .data {
  margin: 0 0 2.2rem;
  font: 400 14px/1.5 var(--letra-ui);
  color: var(--tinta-3);
}

.aviso h2 {
  margin: 2.8rem 0 0.9rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--regua);
  font-size: clamp(1.35rem, 3.4vw, 1.65rem);
  line-height: 1.2;
}

.aviso h3 {
  margin: 1.9rem 0 0.7rem;
  font-size: 1.2rem;
  line-height: 1.25;
}

.aviso p { max-width: 62ch; }

.aviso ul {
  margin: 0 0 1.2em;
  padding-left: 1.3em;
  max-width: 62ch;
}
.aviso li { margin-bottom: 0.35em; padding-left: 0.2em; }
.aviso li::marker { color: var(--ouro-tinta); }

.aviso a {
  color: var(--ouro-tinta);
  text-underline-offset: 3px;
  overflow-wrap: anywhere;
}
.aviso a:hover { color: var(--tinta); }

.aviso .contato-linha a {
  display: inline-block;
  padding: 12px 0;
  line-height: 20px;
}
.aviso .contato-linha { margin-block: 0.4rem 1.4rem; }

.aviso p a[target="_blank"] {
  display: inline-block;
  padding: 10px 0;
  line-height: 24px;
}

.aviso table {
  width: 100%;
  margin: 0 0 1.6rem;
  border-collapse: collapse;
  font: 400 15px/1.55 var(--letra-ui);
}

.aviso thead th {
  padding: 0 1.2rem 0.6rem 0;
  text-align: left;
  font: 600 12px/1.4 var(--letra-ui);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--tinta-3);
  border-bottom: 1px solid var(--ouro);
}

.aviso tbody th,
.aviso tbody td {
  padding: 0.85rem 1.2rem 0.85rem 0;
  border-bottom: 1px solid var(--regua);
  vertical-align: top;
  text-align: left;
}
.aviso tbody th { width: 46%; font-weight: 600; color: var(--tinta); }
.aviso tbody td { color: var(--tinta-2); }

@media (max-width: 600px) {
  .aviso { padding-top: 2.4rem; }

  .aviso thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
  .aviso table,
  .aviso tbody,
  .aviso tr,
  .aviso tbody th,
  .aviso tbody td { display: block; width: auto; }

  .aviso tr { padding: 0.9rem 0; border-bottom: 1px solid var(--regua); }
  .aviso tbody th,
  .aviso tbody td { padding: 0; border: 0; }
  .aviso tbody td { margin-top: 0.3rem; }
}
