/* PMP Bienestar · páginas legales.
   Misma paleta y tipografías que styles.css, con la densidad de un documento:
   una sola columna estrecha, jerarquía sobria y cero motion. */

:root {
  --bg:         #F6F2EB;
  --surface:    #FCFAF6;
  --text:       #1E2B28;
  --text-dim:   #5B6866;
  --line:       #DAD1C3;
  --line-soft:  #E7E0D4;
  --accent-deep:#0E6C79;
  --accent-soft:#DCEDF0;
  --display: 'Petrona', Georgia, serif;
  --sans:    'Instrument Sans', system-ui, -apple-system, sans-serif;
}

@font-face {
  font-family: 'Petrona';
  src: url('../fonts/petrona-latin.woff2') format('woff2');
  font-weight: 400 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Instrument Sans';
  src: url('../fonts/instrument-sans-latin.woff2') format('woff2');
  font-weight: 400 600; font-style: normal; font-display: swap;
}

*, *::before, *::after { box-sizing: border-box; }
html { overflow-x: hidden; max-width: 100%; -webkit-text-size-adjust: 100%; }

body.legal-page {
  margin: 0;
  overflow-x: hidden;
  background: var(--bg);
  color: var(--text);
  font-family: var(--sans);
  font-size: 1rem;
  line-height: 1.68;
}

.legal-page__inner {
  max-width: 78ch;
  margin-inline: auto;
  padding: clamp(2.5rem, 1.6rem + 3.4vw, 5rem) clamp(1.15rem, .6rem + 2.1vw, 2.75rem)
           clamp(4rem, 3rem + 3vw, 6rem);
}

.legal-page__eyebrow {
  font-size: .72rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--accent-deep);
  margin: 0 0 .9rem;
}

.legal-page h1 {
  font-family: var(--display);
  font-weight: 500;
  font-size: clamp(2rem, 1.5rem + 2vw, 3rem);
  line-height: 1.1;
  letter-spacing: -0.015em;
  margin: 0 0 .5rem;
}

.legal-page__updated {
  font-size: .82rem;
  color: var(--text-dim);
  margin: 0 0 2.6rem;
  padding-bottom: 1.4rem;
  border-bottom: 1px solid var(--line-soft);
}

.legal-page h2 {
  font-family: var(--display);
  font-weight: 600;
  font-size: clamp(1.15rem, 1rem + .5vw, 1.4rem);
  line-height: 1.25;
  margin: 2.6rem 0 .8rem;
}

.legal-page p { margin: 0 0 1rem; }
.legal-page ul { margin: 0 0 1.2rem; padding-left: 1.15rem; }
.legal-page li { margin-bottom: .45rem; }

.legal-page a { color: var(--accent-deep); text-underline-offset: 3px; }

.legal-page code {
  font-family: ui-monospace, 'SF Mono', Menlo, monospace;
  font-size: .86em;
  background: var(--accent-soft);
  padding: .1em .38em;
  border-radius: 4px;
}

.legal-page table {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 1.4rem;
  font-size: .88rem;
  display: block;
  overflow-x: auto;      /* tablas anchas no rompen el viewport en móvil */
}
.legal-page th,
.legal-page td {
  text-align: left;
  vertical-align: top;
  padding: .7rem .9rem .7rem 0;
  border-bottom: 1px solid var(--line-soft);
}
.legal-page th {
  font-weight: 600;
  font-size: .72rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-dim);
  border-bottom-color: var(--line);
}

.legal-page__back {
  margin-top: 3rem;
  padding-top: 1.4rem;
  border-top: 1px solid var(--line-soft);
  font-size: .9rem;
}
.legal-page__back a { text-decoration: none; }
.legal-page__back a:hover { text-decoration: underline; }

:focus-visible { outline: 2px solid var(--accent-deep); outline-offset: 3px; }
