/* ═══════════════════════════════════════════════════════════
 * Legal pages (Aviso legal, Privacidad, Cookies, Términos)
 * Diseño Aiden · hero compacto + body + sidebar + CTA
 * ═══════════════════════════════════════════════════════════ */

.aiden-page-legal{padding:120px 0 0}

/* ───── HERO compacto ───── */
.alg-hero{position:relative;overflow:hidden;padding:20px 0 60px}
.alg-hero-orbs{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.alg-hero-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.4}
.alg-hero-orb--1{width:420px;height:420px;background:radial-gradient(circle,rgba(19,150,126,.25),transparent 70%);top:-15%;left:-10%}
.alg-hero-orb--2{width:380px;height:380px;background:radial-gradient(circle,rgba(87,74,135,.22),transparent 70%);top:-20%;right:-8%}

.alg-hero-inner{position:relative;z-index:2;max-width:720px;margin:0 auto;text-align:center}
.alg-breadcrumb{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:rgba(255,255,255,.72);backdrop-filter:blur(20px) saturate(1.5);-webkit-backdrop-filter:blur(20px) saturate(1.5);border:1px solid rgba(255,255,255,.85);border-radius:9999px;margin-bottom:24px;font-size:12.5px;font-weight:500;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.alg-breadcrumb a{color:var(--n500);text-decoration:none;transition:color .2s}
.alg-breadcrumb a:hover{color:var(--t600)}
.alg-breadcrumb-sep{color:var(--n300)}
.alg-breadcrumb-cat{color:var(--n950);font-weight:700}

.alg-h1{font-family:var(--fd);font-weight:800;font-size:clamp(2rem,4.5vw,3rem);line-height:1.08;letter-spacing:-.04em;color:var(--n950);margin:0 0 18px}
.alg-intro{font-size:17px;line-height:1.55;color:var(--n500);margin:0 auto 24px;max-width:560px}

.alg-meta{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;background:rgba(255,255,255,.78);backdrop-filter:blur(16px) saturate(1.5);-webkit-backdrop-filter:blur(16px) saturate(1.5);border:1px solid rgba(255,255,255,.85);border-radius:9999px;font-size:12.5px;color:var(--n600);font-weight:500;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.alg-meta svg{width:14px;height:14px;color:var(--t500)}
.alg-meta strong{font-weight:700;color:var(--n950)}

/* ───── BODY + sidebar ───── */
.alg-body-wrap{padding:40px 0 80px;position:relative}
.alg-body-grid{display:grid;grid-template-columns:minmax(0,720px) 260px;gap:56px;max-width:1100px;margin:0 auto;padding:0 32px;align-items:start}

.alg-body{min-width:0;font-family:var(--fb);font-size:16px;line-height:1.7;color:var(--n800)}
.alg-body > *:first-child{margin-top:0}
.alg-body h2{font-family:var(--fd);font-weight:800;font-size:26px;line-height:1.2;letter-spacing:-.03em;color:var(--n950);margin:48px 0 16px}
.alg-body h3{font-family:var(--fd);font-weight:700;font-size:19px;line-height:1.3;letter-spacing:-.02em;color:var(--n950);margin:32px 0 10px}
.alg-body h2:first-child,.alg-body h3:first-child{margin-top:0}
.alg-body p{margin:0 0 18px}
.alg-body a{color:var(--t600);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:rgba(19,150,126,.3);transition:all .2s var(--ease)}
.alg-body a:hover{text-decoration-color:var(--t600);color:var(--t700)}
.alg-body strong{font-weight:700;color:var(--n950)}
.alg-body em{font-style:italic;color:var(--n500)}
.alg-body ul,.alg-body ol{margin:0 0 20px;padding-left:24px}
.alg-body li{margin-bottom:7px}
.alg-body ul li::marker{color:var(--t500)}
.alg-body ol li::marker{color:var(--t500);font-weight:700}
.alg-body code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em;padding:2px 7px;background:var(--n75);color:var(--t700);border-radius:5px}

.alg-empty{padding:24px 28px;background:rgba(255,184,168,.1);border:1px solid rgba(255,184,168,.3);border-radius:12px;color:var(--n700);font-size:14.5px}

/* ───── Sidebar de otros legales ───── */
.alg-side{position:sticky;top:100px}
body.has-topbanner .alg-side{top:140px}
.alg-nav{padding:22px 20px;background:rgba(255,255,255,.7);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);border:1px solid rgba(255,255,255,.85);border-radius:18px;box-shadow:0 2px 6px rgba(0,0,0,.04),0 12px 32px rgba(0,0,0,.05),inset 0 1px 0 rgba(255,255,255,.95)}
.alg-nav-title{font-family:var(--fd);font-weight:800;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--n400);margin-bottom:14px}
.alg-nav-list{list-style:none;padding:0;margin:0 0 18px}
.alg-nav-list li{margin-bottom:3px}
.alg-nav-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;font-family:var(--fb);font-size:13.5px;font-weight:500;color:var(--n700);text-decoration:none;transition:all .2s var(--ease);line-height:1.3}
.alg-nav-list a:hover{background:rgba(19,150,126,.06);color:var(--n950)}
.alg-nav-list a.is-active{background:linear-gradient(135deg,var(--t100),rgba(181,232,208,.6));color:var(--t700);font-weight:700}
.alg-nav-list a svg{width:13px;height:13px;color:var(--n400);flex-shrink:0;opacity:.6;transition:transform .2s var(--ease)}
.alg-nav-list a:hover svg{opacity:1;transform:translate(2px,-2px)}

.alg-nav-consulta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:12px;background:linear-gradient(135deg,var(--t500),#1BB896);color:#fff;font-family:var(--fd);font-weight:700;font-size:13px;text-decoration:none;transition:all .3s var(--ease);box-shadow:0 2px 8px rgba(19,150,126,.25)}
.alg-nav-consulta:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(19,150,126,.35)}
.alg-nav-consulta svg{width:14px;height:14px}

/* ───── CTA inferior ───── */
.alg-cta{padding:60px 0 100px;background:linear-gradient(180deg,#fff 0%,#FAFAF9 100%)}
.alg-cta-inner{max-width:880px;margin:0 auto;padding:36px 40px;display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:rgba(255,255,255,.8);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);border:1px solid rgba(255,255,255,.9);border-radius:22px;box-shadow:0 2px 6px rgba(0,0,0,.04),0 16px 48px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.95)}
.alg-cta-h{font-family:var(--fd);font-weight:800;font-size:22px;letter-spacing:-.02em;color:var(--n950);margin:0 0 4px}
.alg-cta-p{font-size:14px;color:var(--n500);margin:0;max-width:360px}
.alg-cta-btns{display:flex;gap:10px;flex-wrap:wrap}

/* Responsive */
@media(max-width:960px){
  .alg-body-grid{grid-template-columns:1fr;gap:24px;max-width:720px}
  .alg-side{position:static;order:-1}
  .alg-nav-list{display:grid;grid-template-columns:repeat(2,1fr);gap:3px 10px;margin-bottom:14px}
}
@media(max-width:768px){
  .aiden-page-legal{padding:90px 0 0}
  .alg-hero{padding:16px 0 40px}
  .alg-body-wrap{padding:24px 0 48px}
  .alg-body-grid{padding:0 20px}
  .alg-body{font-size:15.5px}
  .alg-body h2{font-size:22px;margin:36px 0 14px}
  .alg-body h3{font-size:17px;margin:26px 0 10px}
  .alg-nav-list{grid-template-columns:1fr}
  .alg-cta-inner{flex-direction:column;align-items:flex-start;padding:26px 22px}
  .alg-cta-btns{width:100%}
  .alg-cta-btns a{flex:1;justify-content:center;text-align:center}
}

/* ════════════════════════════════════════════════════════════════════
 * v1.18.9 · Sidebar con buscador + TOC + scrollspy
 * ════════════════════════════════════════════════════════════════════ */

/* Sidebar contenedor unificado */
.alg-sidebox{display:flex;flex-direction:column;gap:14px}

/* ── Buscador ──────────────────────────────────────────────────── */
.alg-search{
  position:relative;display:flex;align-items:center;
  background:rgba(255,255,255,.85);
  backdrop-filter:blur(20px) saturate(1.5);-webkit-backdrop-filter:blur(20px) saturate(1.5);
  border:1px solid rgba(0,0,0,.08);border-radius:12px;
  padding:0 12px;height:42px;
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease);
}
.alg-search:focus-within{
  border-color:rgba(19,150,126,.4);
  box-shadow:0 0 0 3px rgba(19,150,126,.1);
  background:#fff;
}
.alg-search-ico{width:16px;height:16px;color:var(--n400);flex-shrink:0;transition:color .2s}
.alg-search:focus-within .alg-search-ico{color:var(--t500)}
.alg-search input{
  flex:1;border:none;background:transparent;outline:none;
  font-size:14px;color:var(--n900);
  padding:0 8px;font-family:inherit;
  min-width:0;
}
.alg-search input::placeholder{color:var(--n400)}
.alg-search-clear{
  display:flex;align-items:center;justify-content:center;
  width:24px;height:24px;border-radius:6px;
  background:rgba(0,0,0,.05);border:none;color:var(--n500);cursor:pointer;
  transition:all .2s var(--ease);
  flex-shrink:0;padding:0;
}
.alg-search-clear:hover{background:rgba(0,0,0,.1);color:var(--n900)}
.alg-search-clear svg{width:13px;height:13px}

/* ── Tabla de contenidos ───────────────────────────────────────── */
.alg-toc-wrap{
  background:rgba(255,255,255,.7);
  backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);
  border:1px solid rgba(255,255,255,.85);border-radius:18px;
  box-shadow:0 2px 6px rgba(0,0,0,.04),0 12px 32px rgba(0,0,0,.05),inset 0 1px 0 rgba(255,255,255,.95);
  padding:18px 18px 14px;
  max-height:calc(100vh - 160px);
  overflow-y:auto;
}
.alg-toc-title{
  display:flex;align-items:center;gap:8px;
  font-family:var(--fd);font-weight:800;font-size:10.5px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--n500);
  margin-bottom:12px;padding-bottom:12px;
  border-bottom:1px solid rgba(0,0,0,.06);
}
.alg-toc-title svg{width:14px;height:14px;color:var(--t500)}
.alg-toc{display:flex;flex-direction:column;gap:4px}
.alg-toc-item{
  display:block;padding:9px 12px;
  font-size:12.5px;line-height:1.4;color:var(--n600);
  text-decoration:none;border-radius:9px;
  transition:background .25s var(--ease),color .25s var(--ease),padding .25s var(--ease);
  cursor:pointer;
}
.alg-toc-item:hover{background:rgba(19,150,126,.05);color:var(--n900)}
.alg-toc-item.is-active{
  background:rgba(19,150,126,.1);
  color:var(--t700);
  font-weight:700;
}
.alg-toc-item.is-hidden{display:none}
.alg-toc-item.has-match{
  background:rgba(255,193,7,.1);
  color:var(--n900);
  font-weight:600;
}
.alg-toc-item.has-match.is-active{
  background:rgba(255,193,7,.18);
  color:var(--n950);
}

/* Custom scrollbar del TOC */
.alg-toc-wrap::-webkit-scrollbar{width:6px}
.alg-toc-wrap::-webkit-scrollbar-thumb{background:rgba(0,0,0,.08);border-radius:99px}
.alg-toc-wrap::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.15)}

/* ── Highlight de coincidencias en el cuerpo ──────────────────── */
.alg-body mark.alg-mark{
  background:linear-gradient(180deg,transparent 60%,rgba(255,193,7,.45) 60%);
  color:inherit;padding:0 2px;border-radius:2px;
  font-weight:600;
}

/* ── Mensaje "sin resultados" ─────────────────────────────────── */
.alg-noresults{
  text-align:center;padding:60px 32px;
  background:rgba(255,255,255,.7);
  backdrop-filter:blur(20px) saturate(1.5);-webkit-backdrop-filter:blur(20px) saturate(1.5);
  border:1px solid rgba(0,0,0,.06);border-radius:16px;
  margin:20px 0;
}
.alg-noresults svg{
  width:48px;height:48px;color:var(--n300);
  margin:0 auto 16px;display:block;
}
.alg-noresults h3{
  font-family:var(--fd);font-weight:800;font-size:20px;
  letter-spacing:-.02em;color:var(--n900);margin:0 0 8px;
}
.alg-noresults p{
  font-size:14.5px;color:var(--n500);
  margin:0 auto 20px;max-width:380px;line-height:1.55;
}
.alg-noresults p em{font-style:normal;font-weight:700;color:var(--n900)}
.alg-noresults-btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 16px;
  background:var(--n900);color:#fff;border:none;
  border-radius:99px;font-size:13px;font-weight:600;
  cursor:pointer;font-family:inherit;
  transition:all .2s var(--ease);
}
.alg-noresults-btn:hover{background:var(--n800);transform:translateY(-1px)}

/* ── Sidebar "otros documentos" actualizado ────────────────────── */
.alg-side .alg-nav{
  padding:16px 18px;
  background:rgba(255,255,255,.6);
  backdrop-filter:blur(20px) saturate(1.5);-webkit-backdrop-filter:blur(20px) saturate(1.5);
  border:1px solid rgba(255,255,255,.8);border-radius:14px;
  box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.alg-side .alg-nav-title{
  font-family:var(--fd);font-weight:800;font-size:10.5px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--n400);
  margin-bottom:10px;
}
.alg-side .alg-nav-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1px}
.alg-side .alg-nav-list li{margin:0}
.alg-side .alg-nav-list a{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:7px 10px;
  font-size:13px;color:var(--n600);text-decoration:none;
  border-radius:7px;
  transition:all .2s var(--ease);
}
.alg-side .alg-nav-list a:hover{background:rgba(19,150,126,.06);color:var(--t700)}
.alg-side .alg-nav-list a svg{width:12px;height:12px;opacity:.4;transition:opacity .2s,transform .2s}
.alg-side .alg-nav-list a:hover svg{opacity:1;transform:translate(2px,-2px);color:var(--t500)}

/* ── Responsive: buscador + TOC en mobile ──────────────────────── */
@media(max-width:960px){
  .alg-side{position:static;order:-1}
  .alg-sidebox{gap:10px}
  .alg-toc-wrap{max-height:none;padding:16px 18px}
  .alg-toc{max-height:240px;overflow-y:auto;padding-right:4px}
  .alg-toc-item{padding:10px 12px}
}
@media(max-width:768px){
  .alg-search{height:46px;border-radius:14px}
  .alg-search input{font-size:15px}
  .alg-toc-wrap{border-radius:14px}
  .alg-toc{max-height:220px}
  .alg-toc-item{padding:11px 12px;font-size:13.5px}
  .alg-noresults{padding:40px 20px}
  .alg-noresults h3{font-size:17px}
}
