/* ── BASE — compartido en todos los archivos ──────────────────────────── */
/* Modificar aquí afecta a web-canarytek, alirotek, alirodev, alirolex,   */
/* aviso-legal, politica-privacidad y politica-cookies.                    */

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

:root {
  --bg:   #05080f;
  --bg2:  #090f1c;
  --bg3:  #0d1528;
  --b:    #00c5ff;
  --bd:   #0062e0;
  --text: #edf4ff;
  --mut:  #637a98;
  --bdr:  rgba(255,255,255,.07);
}

html { scroll-behavior:smooth; }
body { font-family:'Inter',sans-serif; background:var(--bg); color:var(--text); }

::-webkit-scrollbar { width:8px; }
::-webkit-scrollbar-track { background:var(--bg); }

h1,h2,h3,h4 { font-family:'Space Grotesk',sans-serif; font-weight:700; }
p            { line-height:1.75; color:var(--mut); }

.container { max-width:1200px; margin:0 auto; padding:0 28px; }
section    { padding:120px 0; }

/* Animaciones scroll — usadas por divisiones y página principal */
.reveal   { opacity:0; transform:translateY(28px);  transition:opacity .68s ease,transform .68s ease; }
.reveal-l { opacity:0; transform:translateX(-28px); transition:opacity .68s ease,transform .68s ease; }
.reveal-r { opacity:0; transform:translateX(28px);  transition:opacity .68s ease,transform .68s ease; }
.stagger  { opacity:0; transform:translateY(20px);  transition:opacity .56s ease,transform .56s ease; }
.reveal.on,.reveal-l.on,.reveal-r.on,.stagger.on { opacity:1; transform:none; }
