/* Páginas institucionais (Política de Privacidade, Política de Cookies, 404)
   Paleta alinhada ao tema do site: dourado #c6ac82, fundo escuro #222 */

.legal-hero {
  background-color: #1c1c1c;
  padding: 70px 0 60px;
  text-align: center;
}
.legal-hero .legal-breadcrumb {
  color: #cfcfcf;
  font-size: 14px;
  margin-bottom: 14px;
  letter-spacing: .3px;
}
.legal-hero .legal-breadcrumb a {
  color: #c6ac82;
  text-decoration: none;
}
.legal-hero .legal-breadcrumb a:hover {
  text-decoration: underline;
}
.legal-hero .legal-breadcrumb span {
  margin: 0 8px;
  color: #777;
}
.legal-hero h1 {
  color: #fff;
  font-size: 38px;
  font-weight: 700;
  margin: 0;
}
.legal-hero h1 i {
  color: #c6ac82;
  margin-right: 12px;
}
.legal-hero .legal-updated {
  color: #b9b9b9;
  font-size: 14px;
  margin: 14px 0 0;
}

.legal-section {
  background-color: #222222;
  padding: 50px 0 80px;
}
.legal-wrapper {
  max-width: 1100px;
  display: flex;
  gap: 30px;
  align-items: flex-start;
}
.legal-toc {
  flex: 0 0 270px;
  background: #fff;
  border-radius: 8px;
  padding: 24px;
  position: sticky;
  top: 100px;
}
.legal-toc h2 {
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .5px;
  color: #1a1a1a;
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid #c6ac82;
}
.legal-toc ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.legal-toc li + li {
  margin-top: 10px;
}
.legal-toc a {
  color: #555;
  font-size: 14px;
  text-decoration: none;
  display: block;
  transition: color .15s ease, padding-left .15s ease;
}
.legal-toc a:hover {
  color: #c6ac82;
  padding-left: 4px;
}

.legal-content {
  flex: 1 1 auto;
  background: #fff;
  border-radius: 8px;
  padding: 40px;
}
.legal-content .legal-lead {
  font-size: 17px;
  line-height: 1.7;
  color: #333;
  border-left: 4px solid #c6ac82;
  padding-left: 18px;
  margin-bottom: 30px;
}
.legal-content section {
  margin-bottom: 30px;
  scroll-margin-top: 100px;
}
.legal-content section:last-child {
  margin-bottom: 0;
}
.legal-content h2 {
  font-size: 20px;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 12px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.legal-content h2 i {
  color: #c6ac82;
  font-size: 18px;
  width: 22px;
  text-align: center;
}
.legal-content p {
  font-size: 15px;
  line-height: 1.8;
  color: #444;
  text-align: justify;
  margin: 0;
}
.legal-content a {
  color: #c6ac82;
  font-weight: 600;
}

@media (max-width: 991px) {
  .legal-wrapper {
    flex-direction: column;
  }
  .legal-toc {
    position: static;
    width: 100%;
    flex: 1 1 auto;
  }
  .legal-content {
    padding: 28px 22px;
  }
  .legal-hero h1 {
    font-size: 28px;
  }
}

/* ---------------------------------- */
/* Resultados de busca */
/* ---------------------------------- */
.search-results {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.search-result-item {
  display: flex;
  gap: 18px;
  align-items: center;
  background: #fff;
  border-radius: 8px;
  padding: 16px;
  text-decoration: none;
  transition: box-shadow .15s ease, transform .15s ease;
}
.search-result-item:hover {
  box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.12);
  transform: translateY(-2px);
}
.search-result-item img {
  flex: 0 0 120px;
  width: 120px;
  height: 80px;
  object-fit: cover;
  border-radius: 6px;
}
.search-result-text h2 {
  font-size: 17px;
  font-weight: 700;
  color: #1a1a1a;
  margin: 6px 0;
}
.search-result-text p {
  font-size: 14px;
  line-height: 1.6;
  color: #666;
  margin: 0;
}
.search-result-tag {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .5px;
  padding: 3px 10px;
  border-radius: 3px;
  color: #1a1a1a;
  background-color: #c6ac82;
}
.search-result-tag-blog {
  background-color: #c6ac82;
}
.search-result-tag-article {
  background-color: #9fcdd8;
}
.search-result-tag-video {
  background-color: #f0b3a3;
}

@media (max-width: 575px) {
  .search-result-item {
    flex-direction: column;
    align-items: stretch;
  }
  .search-result-item img {
    width: 100%;
    height: 160px;
  }
}

/* ---------------------------------- */
/* Página 404 */
/* ---------------------------------- */
.error-section {
  background-color: #1c1c1c;
  padding: 110px 0;
  min-height: 60vh;
  display: flex;
  align-items: center;
}
.error-box {
  max-width: 640px;
  text-align: center;
  margin: 0 auto;
}
.error-box .error-code {
  font-size: 110px;
  font-weight: 800;
  line-height: 1;
  color: #c6ac82;
  letter-spacing: 4px;
}
.error-box h1 {
  color: #fff;
  font-size: 26px;
  font-weight: 700;
  margin: 10px 0 14px;
}
.error-box p {
  color: #cfcfcf;
  font-size: 15px;
  line-height: 1.7;
  margin: 0 0 30px;
}
.error-search {
  display: flex;
  justify-content: center;
  gap: 0;
  margin-bottom: 35px;
}
.error-search input {
  width: 100%;
  max-width: 360px;
  padding: 12px 16px;
  border: none;
  font-size: 14px;
  border-radius: 4px 0 0 4px;
}
.error-search button {
  padding: 0 22px;
  border: none;
  background-color: #c6ac82;
  color: #1a1a1a;
  font-size: 16px;
  border-radius: 0 4px 4px 0;
  cursor: pointer;
  transition: background-color .15s ease;
}
.error-search button:hover {
  background-color: #fff;
}
.error-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}
.error-links a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 22px;
  border: 1px solid #c6ac82;
  border-radius: 4px;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  transition: background-color .15s ease, color .15s ease;
}
.error-links a:hover {
  background-color: #c6ac82;
  color: #1a1a1a;
}
