/* ============================================================
   Páginas legales — Dra. Carmen Álvarez
   Requiere base.css (variables, cabecera y pie).
   ============================================================ */
/* ---------- documento ---------- */
.doc{ max-width:820px; margin:0 auto; padding:clamp(3rem,7vw,5.5rem) var(--pad) clamp(4rem,8vw,7rem); }
.doc-over{
  font-size:.72rem; letter-spacing:.4em; text-transform:uppercase;
  color:var(--rose-deep); font-weight:400; margin-bottom:1.3rem;
  display:flex; align-items:center; gap:1rem;
}
.doc-over::before{ content:""; height:1px; width:40px; background:var(--hairline-rose); }
.doc h1{
  font-family:var(--serif); font-weight:400; color:var(--petrol);
  font-size:clamp(2.1rem,1.5rem + 3vw,3.6rem); line-height:1.1; letter-spacing:-.005em;
}
.doc-date{
  margin-top:1rem; font-size:.75rem; letter-spacing:.2em; text-transform:uppercase;
  color:var(--ink-soft);
}
.doc-body{ margin-top:2.8rem; border-top:1px solid var(--hairline); padding-top:2.4rem; }
.doc-body h2{
  font-family:var(--serif); font-weight:400; color:var(--petrol); line-height:1.25;
  font-size:clamp(1.5rem,1.2rem + 1.3vw,2.05rem);
  margin:2.8rem 0 1rem;
}
.doc-body h2:first-child{ margin-top:0; }
.doc-body h3{
  font-family:var(--serif); font-weight:400; color:var(--petrol);
  font-size:1.3rem; margin:1.9rem 0 .7rem;
}
.doc-body p{ margin-bottom:1.15rem; color:#2c4653; }
.doc-body strong{ font-weight:500; color:var(--petrol); }
.doc-body ul{ margin:0 0 1.2rem 1.2rem; }
.doc-body li{ margin-bottom:.5rem; color:#2c4653; }
.doc-body li::marker{ color:var(--rose-deep); }
.doc-body a{
  color:var(--rose-deep); text-decoration:none;
  border-bottom:1px solid var(--hairline-rose); transition:border-color .3s;
}
.doc-body a:hover{ border-color:var(--rose-deep); }

/* dato pendiente de completar */
.todo{
  background:#FCEFC7; color:#6B4E00;
  border:1px dashed #C9A227; border-radius:5px;
  padding:.1rem .5rem; font-size:.88em; font-weight:400;
  font-family:var(--sans);
}

/* tabla */
.doc-table{ width:100%; border-collapse:collapse; margin:1.2rem 0 1.6rem; font-size:.92rem; }
.doc-table th, .doc-table td{
  text-align:left; padding:.85rem .9rem; border-bottom:1px solid var(--hairline);
  vertical-align:top;
}
.doc-table th{
  font-weight:400; font-size:.7rem; letter-spacing:.18em; text-transform:uppercase;
  color:var(--ink-soft); border-bottom-color:var(--hairline-rose);
}
.doc-table td{ color:#2c4653; }
.doc-table code{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.86em;
  background:var(--cream-2); padding:.12rem .4rem; border-radius:4px; color:var(--petrol);
}
.table-wrap{ overflow-x:auto; }

/* caja destacada */
.doc-note{
  background:var(--cream-2); border-left:2px solid var(--rose);
  padding:1.3rem 1.5rem; margin:1.8rem 0; border-radius:0 8px 8px 0;
}
.doc-note p:last-child{ margin-bottom:0; }
