/* Plantilla legal PatiMovil (misma base que FAQ / tarifas) */
:root {
  --sbk-primary:#0b3d60;
  --sbk-secondary:#ffb703;
  --sbk-body:#f4f6fb;
  --sbk-text:#253043;
  --sbk-muted:#6c748b;
  --sbk-border:#d8e0ef;
  --sbk-radius:20px;
  --sbk-shadow:0 30px 70px rgba(15,23,42,0.12);
}
* { box-sizing:border-box; }
body {
  margin:0;
  font-family:'Rubik','Segoe UI',system-ui,-apple-system,sans-serif;
  background:var(--sbk-body);
  color:var(--sbk-text);
  padding:clamp(1.5rem, 6vw, 3rem) clamp(0.8rem, 5vw, 1.5rem);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
main.legal-shell.legal-doc {
  width:min(960px, 100%);
  margin:0 auto;
  background:#fff;
  border-radius:var(--sbk-radius);
  padding:clamp(2rem, 5vw, 3.5rem) clamp(1.25rem, 4vw, 4.5rem);
  box-shadow:var(--sbk-shadow);
  border:1px solid var(--sbk-border);
}
.legal-header { margin-bottom:2rem; }
.legal-eyebrow {
  text-transform:uppercase;
  letter-spacing:0.2em;
  font-size:0.8rem;
  color:var(--sbk-muted);
  font-weight:600;
  margin:0 0 0.75rem;
}
.legal-doc-title {
  font-size:clamp(1.85rem, 5vw, 2.5rem);
  line-height:1.15;
  margin:0 0 1rem;
  color:var(--sbk-primary);
}
.legal-doc-lead {
  margin:0 0 0.5rem;
  max-width:70ch;
  color:var(--sbk-text);
}
.legal-meta {
  color:var(--sbk-muted);
  font-size:0.95rem;
  margin:0;
}
.legal-doc-content {
  margin-top:1.5rem;
}
.legal-doc-content p {
  margin:0 0 1rem;
  max-width:72ch;
  text-align:justify;
  hyphens:auto;
}
.legal-doc-content ul {
  margin:0 0 1rem;
  padding-left:1.35rem;
  max-width:72ch;
}
.legal-doc-content ul li { margin-bottom:0.45rem; }
.legal-doc-content a {
  color:var(--sbk-primary);
  font-weight:500;
  text-decoration:underline;
  text-underline-offset:2px;
}
.legal-doc-content a:hover { color:#0a3250; }
.legal-doc-h1, .legal-doc-h2, .legal-doc-h3, .legal-doc-h4 {
  font-weight:600;
  color:var(--sbk-primary);
  margin:2rem 0 0.85rem;
  line-height:1.25;
}
.legal-doc-content .legal-doc-h1:first-child,
.legal-doc-content .legal-doc-h2:first-child { margin-top:0; }
.legal-doc-h1 { font-size:1.35rem; }
.legal-doc-h2 { font-size:1.2rem; }
.legal-doc-h3 { font-size:1.1rem; }
.legal-doc-h4 { font-size:1.05rem; }
.legal-doc-table {
  width:100%;
  border-collapse:collapse;
  margin:1.25rem 0;
  font-size:0.92rem;
  border:1px solid var(--sbk-border);
  border-radius:12px;
  overflow:hidden;
}
.legal-doc-table td {
  border:1px solid var(--sbk-border);
  padding:0.65rem 0.85rem;
  vertical-align:top;
}
.legal-card {
  background:linear-gradient(135deg, rgba(255,183,3,0.12), rgba(11,61,96,0.08));
  border-radius:16px;
  padding:1.75rem;
  border:1px solid rgba(255,183,3,0.35);
  margin-top:2.5rem;
}
.legal-card p { margin:0; max-width:none; }
.legal-section h2.legal-doc-h2 { margin-top:0; }
@media (max-width:640px) {
  main.legal-shell.legal-doc {
    padding:2rem 1.35rem 2.4rem;
    border-radius:16px;
    box-shadow:0 18px 45px rgba(15,23,42,0.12);
  }
}
