/*
 * 01-base.css - Variables :root, reset, body, capa de ruido y cursor personalizado.
 * Origen: index.html, <style> #1 (lineas 1-16). Contenido identico al original.
 */
:root{
  --bg:#030507; --bg2:#080b0f; --gold:#d9a83b; --gold2:#f7d77b; --white:#f7f4ed;
  --muted:#a7a39a; --line:rgba(221,171,65,.28);
  --glass:rgba(255,255,255,.055); --glass2:rgba(255,255,255,.09);
  --shadow:0 30px 90px rgba(0,0,0,.55);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden;width:100%}
body{margin:0;background:radial-gradient(circle at 50% 0%,#10151c 0,#030507 44%,#020304 100%);color:var(--white);font-family:Inter,system-ui,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
.noise{position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
#cursor{position:fixed;width:18px;height:18px;border:1px solid rgba(255,214,112,.8);border-radius:50%;pointer-events:none;z-index:100;transform:translate(-50%,-50%);mix-blend-mode:difference;transition:width .2s,height .2s,background .2s;display:none}
@media(pointer:fine){#cursor{display:block}}
