
/* ==========================================================
   FAACIL V11 · PÁGINAS LEGALES
   Mantiene la identidad visual de la home.
   ========================================================== */
.legal-hero{
  padding:70px 0 52px;
  background:
    radial-gradient(circle at 12% 12%,rgba(62,183,168,.12),transparent 24%),
    linear-gradient(180deg,#fbfdfc,#f3f9f6);
  border-bottom:1px solid var(--line);
}
.legal-hero-inner{max-width:900px;margin:0 auto}
.legal-eyebrow{
  display:flex;align-items:center;gap:8px;
  color:var(--green-2);font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase
}
.legal-eyebrow:before{content:"";width:24px;height:2px;background:var(--teal);border-radius:99px}
.legal-hero h1{
  margin:13px 0 14px;color:var(--ink);font-family:"Space Grotesk",sans-serif;
  font-size:clamp(42px,4.4vw,62px);line-height:1;letter-spacing:-.045em
}
.legal-hero p{max-width:780px;margin:0;color:#58716d;font-size:16px;line-height:1.72}
.legal-meta{
  display:flex;gap:8px;flex-wrap:wrap;margin-top:18px
}
.legal-meta span{
  padding:6px 9px;border:1px solid var(--line);border-radius:999px;background:#fff;
  color:#627a76;font-size:10px;font-weight:800
}
.legal-wrap{padding:58px 0 84px;background:#fff}
.legal-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:46px;align-items:start}
.legal-toc{
  position:sticky;top:136px;padding:16px;border:1px solid var(--line);border-radius:16px;
  background:#f8fbfa
}
.legal-toc strong{display:block;margin-bottom:9px;color:var(--ink);font-size:11px}
.legal-toc a{
  display:block;padding:7px 8px;border-radius:9px;color:#667d79;font-size:10px;font-weight:700
}
.legal-toc a:hover{background:#eaf7f3;color:var(--ink)}
.legal-content{max-width:850px}
.legal-content section{scroll-margin-top:150px;padding:0 0 30px;margin:0 0 30px;border-bottom:1px solid #e7efec}
.legal-content section:last-child{border-bottom:0;margin-bottom:0}
.legal-content h2{
  margin:0 0 14px;color:var(--ink);font-family:"Space Grotesk",sans-serif;
  font-size:27px;line-height:1.12;letter-spacing:-.025em
}
.legal-content h3{margin:21px 0 9px;color:var(--ink);font-size:16px}
.legal-content p,.legal-content li{
  color:#4f6965;font-size:14px;line-height:1.82
}
.legal-content p{margin:0 0 13px}
.legal-content ul,.legal-content ol{padding-left:22px;margin:10px 0 15px}
.legal-content a{color:#287d73;font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.legal-box{
  margin:17px 0;padding:17px 18px;border:1px solid var(--line);border-radius:14px;background:#f7fbf9
}
.legal-box.warning{background:#fff9dd;border-color:#eee1a8}
.legal-box strong{color:var(--ink)}
.legal-table-wrap{overflow:auto;margin:16px 0;border:1px solid var(--line);border-radius:14px}
.legal-table{width:100%;border-collapse:collapse;min-width:720px;background:#fff}
.legal-table th,.legal-table td{padding:12px 14px;border-bottom:1px solid #e7efec;text-align:left;vertical-align:top}
.legal-table th{background:#f5f9f7;color:#536d68;font-size:11px}
.legal-table td{color:#536c68;font-size:12px;line-height:1.55}
.legal-table tr:last-child td{border-bottom:0}
.legal-contact{
  display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:15px 0
}
.legal-contact div{padding:14px;border:1px solid var(--line);border-radius:13px;background:#fafcfb}
.legal-contact span{display:block;color:#78908b;font-size:9px;font-weight:900;letter-spacing:.09em}
.legal-contact strong{display:block;margin-top:4px;color:var(--ink);font-size:12px}
.legal-updated{
  margin-top:30px;padding-top:18px;border-top:1px solid var(--line);color:#718681;font-size:10px
}
@media(max-width:860px){
  .legal-grid{grid-template-columns:1fr}
  .legal-toc{position:static;display:flex;gap:6px;overflow-x:auto;white-space:nowrap}
  .legal-toc strong{display:none}
  .legal-toc a{flex:0 0 auto;border:1px solid var(--line);background:#fff}
}
@media(max-width:700px){
  .legal-hero{padding:48px 0 38px}
  .legal-hero h1{font-size:40px}
  .legal-hero p{font-size:14px}
  .legal-wrap{padding:42px 0 64px}
  .legal-content p,.legal-content li{font-size:13.5px}
  .legal-contact{grid-template-columns:1fr}
}
