/* Páginas legales (terms.html, cookies.html) + aviso de consentimiento */
.legal-top{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line)}
.legal-top .brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.legal-top .brand img{height:28px}
.legal-top .back{color:var(--text);text-decoration:none;font-size:14px}
.legal-top .back:hover{color:var(--white)}
.legal-wrap{max-width:820px;margin:0 auto;padding:40px 22px 80px}
.legal-wrap h1{color:var(--white);font:800 clamp(28px,4vw,40px)/1.1 var(--f);letter-spacing:-.03em;margin-bottom:6px}
.legal-updated{color:var(--text);font-size:13px;margin-bottom:32px}
.legal-wrap h2{color:var(--white);font:700 20px var(--f);letter-spacing:-.01em;margin:2em 0 .6em;padding-bottom:.35em;border-bottom:1px solid var(--line)}
.legal-wrap h3{color:var(--white);font:600 16px var(--f);margin:1.4em 0 .4em}
.legal-wrap p{margin:0 0 1em;color:#c4c9d4;font-size:15px;line-height:1.7}
.legal-wrap ul{margin:0 0 1em;padding-left:1.3em}
.legal-wrap li{margin:.4em 0;color:#c4c9d4;font-size:15px;line-height:1.65}
.legal-wrap li::marker{color:var(--red)}
.legal-wrap a{color:#ff6b78}
.legal-wrap a:hover{color:#fff}
.legal-wrap strong{color:var(--white)}
.legal-note{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--red);border-radius:0 10px 10px 0;padding:14px 18px;margin:1.2em 0;font-size:14px;color:#c4c9d4}
[data-lang-block]{display:none}
[data-lang-block].active{display:block}

/* ---- Aviso de cookies / términos (bloqueante) ---- */
#consentGate{position:fixed;inset:0;z-index:999;background:rgba(5,5,6,.88);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px}
#consentGate[hidden]{display:none}
.consent-box{width:min(560px,100%);max-height:88vh;display:flex;flex-direction:column;background:var(--surface-2,#16161a);border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.consent-head{padding:22px 26px 14px;border-bottom:1px solid var(--line)}
.consent-head h2{color:var(--white);font:800 20px var(--f);letter-spacing:-.02em;margin-bottom:4px}
.consent-head p{color:var(--text);font-size:13px;margin:0}
.consent-scroll{overflow-y:auto;padding:18px 26px;flex:1;scrollbar-width:thin;scrollbar-color:#5a1218 transparent}
.consent-scroll h3{color:var(--white);font-size:14px;margin:1.1em 0 .4em}
.consent-scroll h3:first-child{margin-top:0}
.consent-scroll ul{margin:0 0 .8em;padding-left:1.15em}
.consent-scroll li{color:#c4c9d4;font-size:13.5px;line-height:1.6;margin:.3em 0}
.consent-scroll li::marker{color:var(--red)}
.consent-end{font-size:12px;color:#6b7280;text-align:center;padding:10px 0 2px}
.consent-foot{padding:16px 26px 22px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.consent-links{display:flex;gap:14px;font-size:12.5px}
.consent-links a{color:var(--text);text-decoration:underline}
.consent-links a:hover{color:var(--white)}
.consent-actions{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.consent-reject{background:none;border:0;color:#6b7280;font:500 12.5px var(--f);text-decoration:underline;cursor:pointer;padding:6px 0}
.consent-reject:hover{color:var(--text)}
.consent-accept{background:var(--red);color:#fff;border:0;border-radius:8px;font:700 14px var(--f);padding:12px 20px;cursor:pointer;transition:background .15s,opacity .15s}
.consent-accept:hover{background:var(--red-d)}
.consent-accept[disabled]{opacity:.45;cursor:not-allowed}
.consent-hint{font-size:11.5px;color:#6b7280;text-align:right;flex:1 1 100%}
@media(max-width:480px){.consent-actions{flex-direction:column;align-items:stretch}.consent-hint{text-align:left}}

/* Ambiente de fondo consistente en TODA la web: mismo brillo rojo y línea diagonal
   de la portada, fijos en la pantalla (no se van al hacer scroll). Se usa en cualquier
   página añadiendo la clase "glow-bg" al <body>. */
body.glow-bg{
  background-color: var(--bg);
  background-image: radial-gradient(900px 480px at 88% -4%, rgba(239,29,45,.16), transparent 70%);
  background-attachment: fixed;
  background-repeat: no-repeat;
}
body.glow-bg::before{
  content:"";
  position:fixed;
  top:0; right:-12%;
  width:62%; height:2px;
  background:linear-gradient(90deg,transparent,var(--red));
  box-shadow:0 0 22px 2px rgba(239,29,45,.5);
  transform:rotate(-24deg) translateY(150px);
  transform-origin:right;
  opacity:.5;
  pointer-events:none;
  z-index:-1;
}
body.glow-bg::after{
  content:"";
  position:fixed;
  top:0; right:-24%;
  width:52%; height:2px;
  background:linear-gradient(90deg,transparent,var(--red));
  box-shadow:0 0 18px 2px rgba(239,29,45,.35);
  transform:rotate(-24deg) translateY(280px);
  transform-origin:right;
  opacity:.25;
  pointer-events:none;
  z-index:-1;
}
@media(max-width:860px){
  body.glow-bg::before,body.glow-bg::after{opacity:.3}
}
