/* Cultural Intelligence · páginas legales (aviso legal, privacidad, cookies) */

.legal-hero{padding-top:calc(var(--header-h) + clamp(40px,7vw,104px));padding-bottom:clamp(40px,5vw,72px);border-bottom:1px solid var(--line)}
.legal-hero h1{font-size:clamp(2.4rem,5.4vw,4.5rem);line-height:1.02;letter-spacing:-.035em;max-width:16ch;margin-top:24px}
.legal-hero h1 em{font-style:normal;color:var(--brand-ink)}
.legal-lead{margin-top:clamp(20px,2.4vw,28px);max-width:58ch;color:var(--ink-soft);font-size:clamp(1.0625rem,.95rem + .4vw,1.2rem);line-height:1.55}

/* Pestañas entre las tres páginas */
.legal-tabs{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:clamp(28px,3.4vw,44px) 0 0;padding:0}
.legal-tabs a{display:inline-flex;align-items:center;min-height:40px;padding:0 18px;border-radius:999px;border:1px solid var(--line-strong);color:var(--ink);text-decoration:none;font-weight:500;font-size:.92rem;transition:border-color .2s,background-color .2s,color .2s}
.legal-tabs a:hover{border-color:var(--ink)}
.legal-tabs a[aria-current="page"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}

.legal-meta{margin-top:22px;font:500 .74rem/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* Cuerpo: índice lateral + texto */
.legal-body{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:48px clamp(48px,8vw,128px);padding-block:clamp(56px,7vw,104px) clamp(80px,10vw,152px)}
.legal-toc{position:sticky;top:calc(var(--header-h) + 32px);align-self:start}
.legal-toc p{font:500 .72rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.legal-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px;counter-reset:toc}
.legal-toc li{counter-increment:toc}
.legal-toc a{display:grid;grid-template-columns:2.4em minmax(0,1fr);padding:7px 0;color:var(--ink-soft);text-decoration:none;font-size:.94rem;line-height:1.35;border-top:1px solid var(--line);transition:color .2s}
.legal-toc a::before{content:counter(toc,decimal-leading-zero);font:500 .72rem/1.9 var(--f-mono);color:var(--muted)}
.legal-toc a:hover{color:var(--brand-ink)}

.legal-text{max-width:70ch;color:var(--ink-soft);font-size:1.0625rem;line-height:1.7}
.legal-text section{padding-top:clamp(36px,4vw,52px);margin-top:clamp(36px,4vw,52px);border-top:1px solid var(--line);scroll-margin-top:calc(var(--header-h) + 24px)}
.legal-text section:first-child{padding-top:0;margin-top:0;border-top:0}
.legal-text h2{display:flex;align-items:baseline;gap:16px;font-size:clamp(1.5rem,2.4vw,2rem);color:var(--ink);margin-bottom:20px}
.legal-text h2 .n{font:500 .78rem/1 var(--f-mono);letter-spacing:.08em;color:var(--brand-ink);flex:none;transform:translateY(-.35em)}
.legal-text h3{font-size:1.15rem;color:var(--ink);margin:28px 0 10px}
.legal-text p + p,.legal-text p + ul,.legal-text ul + p{margin-top:14px}
.legal-text ul{margin:0;padding-left:1.15em;display:grid;gap:8px}
.legal-text li::marker{color:var(--brand)}
.legal-text strong{color:var(--ink);font-weight:600}
.legal-text a{color:var(--brand-ink);text-underline-offset:3px;text-decoration-thickness:1px}
.legal-text a:hover{color:var(--ink)}

/* Ficha de datos del titular */
.legal-card{margin:0;display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);background:var(--paper-alt);border:1px solid var(--line);border-radius:4px;overflow:hidden}
.legal-card dt,.legal-card dd{margin:0;padding:14px 20px;border-top:1px solid var(--line)}
.legal-card dt{padding-top:17px;font:500 .72rem/1.6 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.legal-card dd{color:var(--ink);font-size:1rem}
.legal-card dt:first-of-type,.legal-card dt:first-of-type + dd{border-top:0}

/* Tabla de derechos / cookies */
.legal-table{width:100%;border-collapse:collapse;font-size:.98rem;margin-top:6px}
.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:12px 16px 12px 0;border-top:1px solid var(--line)}
.legal-table th{font-weight:600;color:var(--ink);white-space:nowrap}

/* Aviso destacado */
.legal-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start;padding:20px 22px;background:var(--brand-deep);color:var(--on-brand);border-radius:4px;line-height:1.55}
.legal-note .mark{width:34px;height:auto;margin-top:2px}
.legal-note .mark .m-c,.legal-note .mark .m-i{fill:var(--on-brand)}
.legal-note .mark .m-moon{fill:var(--accent)}
.legal-note strong{color:var(--on-brand)}

/* Cabecera de las páginas legales: siempre con fondo */
.legal-page .site-header{background:var(--header-bg);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);box-shadow:0 1px 0 var(--line)}
.legal-page .header-actions .btn--line{min-height:46px}

@media (max-width:900px){
  .legal-body{grid-template-columns:minmax(0,1fr)}
  .legal-toc{position:static}
}
@media (max-width:560px){
  .legal-card{grid-template-columns:minmax(0,1fr)}
  .legal-card dt{padding-bottom:0}
  .legal-card dd{border-top:0;padding-top:4px}
  .legal-card dt:first-of-type{border-top:0}
  .legal-table th{white-space:normal}
  .legal-page .header-actions .btn--ink{display:none}
}
