*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Bricolage Grotesque',sans-serif;
  background:var(--bg);
  color:var(--ink);
  font-weight:400;
  line-height:1.5;
  overflow-x:hidden;
  cursor:none;
  transition:background .6s cubic-bezier(.2,.8,.2,1),color .6s cubic-bezier(.2,.8,.2,1);
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;border:0;background:0;cursor:none;color:inherit}

::selection{background:var(--accent);color:var(--bg)}

/* Funky gradient scrollbar (WebKit) */
::-webkit-scrollbar{width:10px}
::-webkit-scrollbar-track{background:var(--bg-2)}
::-webkit-scrollbar-thumb{
  background:var(--grad-soft);
  border-radius:999px;
  border:2px solid var(--bg-2);
}
html{scrollbar-color:var(--accent) var(--bg-2);scrollbar-width:thin}

/* Reusable gradient-text helper */
.grad-text{
  background:var(--grad);
  background-size:220% 220%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:gradShift 9s ease infinite;
}
@keyframes gradShift{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}
