/* Páginas legales: encabezado editorial y documento de lectura continua */
body.body-5,
body.body-6 {
  color: #25282d;
  background: #f6f0e7;
}

body.body-5 .legal-page-hero,
body.body-6 .legal-page-hero {
  padding: clamp(4rem, 8vw, 6.5rem) 2rem clamp(3rem, 5vw, 4.25rem);
  background: #191d23;
  color: #fffdf9;
  text-align: center;
}

body.body-5 .legal-page-heading,
body.body-6 .legal-page-heading {
  width: min(100%, 1320px);
  max-width: 1320px;
  margin: 0 auto;
  padding: 0;
}

body.body-5 .legal-page-eyebrow,
body.body-6 .legal-page-eyebrow {
  margin: 0 0 1rem;
  color: #d5ad73;
  font-family: Montserrat, sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.24em;
  line-height: 1.4;
}

body.body-5 .legal-page-title,
body.body-6 .legal-page-title {
  margin: 0;
  color: #fffdf9;
  font-family: Nohemi, Montserrat, sans-serif;
  font-size: clamp(2.4rem, 5.2vw, 4.6rem);
  font-weight: 400;
  letter-spacing: -0.035em;
  line-height: 1.08;
}

body.body-5 .legal-page-divider,
body.body-6 .legal-page-divider {
  display: block;
  width: 3.75rem;
  height: 2px;
  margin: 1.75rem auto 0;
  background: #d5ad73;
}

body.body-5 .legal-page-body,
body.body-6 .legal-page-body {
  padding: clamp(2.25rem, 5vw, 4.5rem) clamp(1.25rem, 5vw, 5rem) clamp(3.5rem, 7vw, 6rem);
  background: #f6f0e7;
}

body.body-5 .legal-document-container,
body.body-6 .legal-document-container {
  width: min(100%, 1320px);
  max-width: 1320px;
  margin: 0 auto;
  padding: 0;
}

body.body-5 .utility-text,
body.body-6 .utility-text {
  width: 100%;
  margin: 0;
  color: #34383e;
  font-family: Montserrat, sans-serif;
  font-size: clamp(1rem, 0.96rem + 0.15vw, 1.1rem);
  font-weight: 400;
  line-height: 1.72;
  text-align: left;
}

body.body-5 .utility-text p,
body.body-6 .utility-text p {
  margin: 0 0 1rem;
  color: inherit;
  font-size: inherit;
  letter-spacing: 0;
  line-height: inherit;
}

body.body-5 .utility-text h6,
body.body-6 .utility-text h6 {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  align-items: baseline;
  column-gap: 0.75rem;
  margin: 2.1rem 0 0.65rem;
  color: #191d23;
  font-family: Nohemi, Montserrat, sans-serif;
  font-size: clamp(1.2rem, 1.5vw, 1.5rem);
  font-weight: 500;
  line-height: 1.4;
}

body.body-5 .utility-text h6::before,
body.body-6 .utility-text h6::before {
  color: #a77b4a;
  content: counter(legal-section, decimal-leading-zero);
  font-family: Montserrat, sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

body.body-5 .utility-text,
body.body-6 .utility-text {
  counter-reset: legal-section;
}

body.body-5 .utility-text h6,
body.body-6 .utility-text h6 {
  counter-increment: legal-section;
}

body.body-5 .utility-text ul,
body.body-5 .utility-text ol,
body.body-6 .utility-text ul,
body.body-6 .utility-text ol {
  margin: 0.5rem 0 1.25rem;
  padding-left: 1.5rem;
  color: inherit;
  line-height: inherit;
}

body.body-5 .utility-text li,
body.body-6 .utility-text li {
  margin-bottom: 0.3rem;
  padding-left: 0.2rem;
  color: inherit;
}

body.body-5 .utility-text a,
body.body-6 .utility-text a {
  color: #8d623a;
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

body.body-5 .utility-text blockquote,
body.body-6 .utility-text blockquote {
  margin: 1.5rem 0;
  padding: 0.25rem 0 0.25rem 1.25rem;
  border: 0;
  border-left: 3px solid #c99f67;
  color: #565a60;
}

@media screen and (max-width: 767px) {
  body.body-5 .legal-page-hero,
  body.body-6 .legal-page-hero {
    padding: 3.25rem 1rem 2.75rem;
  }

  body.body-5 .legal-page-body,
  body.body-6 .legal-page-body {
    padding: 2rem 1.15rem 3rem;
  }

  body.body-5 .utility-text,
  body.body-6 .utility-text {
    font-size: 0.96rem;
    line-height: 1.68;
  }

  body.body-5 .utility-text h6,
  body.body-6 .utility-text h6 {
    grid-template-columns: 2rem minmax(0, 1fr);
    column-gap: 0.5rem;
    margin-top: 1.7rem;
    font-size: 1.16rem;
  }
}
