/* =========================================================
   Páginas legales — Link360 (heredan variables de styles.css)
   ========================================================= */
.legal-page{ position:relative; min-height:100vh; }
.legal-page::before{ content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:radial-gradient(62% 48% at 50% 0%, rgba(124,58,237,.12), transparent 70%); }

/* nav superior */
.legal-nav{ position:sticky; top:0; z-index:50; backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  background:rgba(10,10,15,.72); border-bottom:1px solid var(--line); }
.legal-nav__bar{ max-width:900px; margin:0 auto; padding:15px 28px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.legal-nav__brand{ display:flex; align-items:center; gap:10px; font-family:var(--disp); font-weight:800; letter-spacing:.04em; color:var(--tx); }
.legal-nav__brand img{ height:26px; width:auto; }
.legal-back{ font-family:var(--mono); font-size:12.5px; color:var(--tx-3); display:inline-flex; align-items:center; gap:7px; transition:color .2s; }
.legal-back:hover{ color:var(--tx); }
.legal-back svg{ width:14px; height:14px; }

/* cabecera */
.legal-hero{ max-width:760px; margin:0 auto; padding:clamp(46px,8vh,86px) 28px 0; }
.legal-eyebrow{ font-family:var(--mono); text-transform:uppercase; letter-spacing:.18em; font-size:11.5px; color:var(--violet-light); }
.legal-hero h1{ font-family:var(--disp); font-weight:300; letter-spacing:-.02em; font-size:clamp(31px,5vw,50px); line-height:1.08; margin:15px 0 18px; }
.legal-meta{ font-family:var(--mono); font-size:12.5px; color:var(--tx-3); line-height:1.75; }
.legal-meta strong{ color:var(--tx-2); font-weight:500; }

/* cuerpo */
.legal-body{ max-width:760px; margin:0 auto; padding:0 28px clamp(70px,12vh,130px); }
.legal-tldr{ margin:40px 0; padding:24px 26px; border-radius:16px; border:1px solid var(--line-2); background:rgba(124,58,237,.06); }
.legal-tldr h2{ font-family:var(--mono); text-transform:uppercase; letter-spacing:.14em; font-size:12px; color:var(--violet-light); margin:0 0 14px; }
.legal-tldr ul{ list-style:none; display:flex; flex-direction:column; gap:10px; margin:0; }
.legal-tldr li{ padding-left:22px; position:relative; color:var(--tx-2); font-size:15px; line-height:1.55; }
.legal-tldr li::before{ content:"→"; position:absolute; left:0; color:var(--violet-light); }

.legal-body h2{ font-family:var(--disp); font-weight:500; font-size:22px; letter-spacing:-.01em; margin:44px 0 14px; color:var(--tx); }
.legal-body h3{ font-family:var(--disp); font-weight:500; font-size:16.5px; margin:26px 0 9px; color:var(--tx); }
.legal-body p{ color:var(--tx-2); font-size:15.5px; line-height:1.72; margin-bottom:14px; }
.legal-body ul, .legal-body ol{ color:var(--tx-2); font-size:15.5px; line-height:1.7; margin:0 0 16px 4px; padding-left:20px; display:flex; flex-direction:column; gap:8px; }
.legal-body a{ color:var(--violet-light); text-decoration:underline; text-underline-offset:3px; }
.legal-body strong{ color:var(--tx); font-weight:600; }
.legal-body hr{ border:none; border-top:1px solid var(--line); margin:38px 0; }
.legal-note{ margin:18px 0; padding:14px 18px; border-left:2px solid var(--violet); background:rgba(124,58,237,.05); border-radius:0 10px 10px 0; font-size:14.5px; color:var(--tx-3); line-height:1.65; }
.legal-note strong{ color:var(--violet-light); }

/* tabla */
.legal-table{ width:100%; border-collapse:collapse; margin:16px 0; font-size:14.5px; }
.legal-table th, .legal-table td{ text-align:left; padding:11px 14px; border:1px solid var(--line); color:var(--tx-2); vertical-align:top; line-height:1.55; }
.legal-table th{ font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--violet-light); background:rgba(124,58,237,.06); }

/* marcador de dato pendiente de confirmar (visible, no se cuela) */
.legal-todo{ display:inline; padding:1px 7px; border-radius:5px; background:rgba(254,188,46,.14);
  border:1px solid rgba(254,188,46,.4); color:#febc2e; font-family:var(--mono); font-size:.85em; }

@media (max-width:560px){
  .legal-nav__bar{ padding:14px 20px; }
  .legal-hero, .legal-body{ padding-left:20px; padding-right:20px; }
}
