/* AI-MATE shared base styles — single source of truth for all pages */

@font-face {
  font-family: 'Metaballs';
  src: url('../brand_assets/Metaballs/vf/MetaballsVF.ttf') format('truetype');
  font-weight: 100 900;
  font-display: block;
}
@font-face {
  font-family: 'Rhymes Display';
  src: url('../brand_assets/Rhymes/ttf/Rhymes Display Light.ttf') format('truetype');
  font-weight: 300;
  font-display: block;
}

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

html {
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: 'Rhymes Display', serif;
  text-transform: uppercase;
  overflow-x: hidden;
  background: #000;
}

.grain-overlay {
  position: fixed;
  top: 0; left: 0; width: 100%; height: 100%;
  pointer-events: none;
  z-index: 9999;
  opacity: 0.03;
}
.grain-overlay svg { width: 100%; height: 100%; }

.line-reveal { overflow: hidden; }
.line-reveal-inner {
  transform: translateY(110%);
  animation: lineRevealUp 1s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  will-change: transform;
  padding-top: 0.15em;
}
.line-reveal-inner.delay-1 { animation-delay: 0.15s; }
.line-reveal-inner.delay-2 { animation-delay: 0.3s; }
.line-reveal-inner.delay-3 { animation-delay: 0.45s; }
.line-reveal-inner.delay-4 { animation-delay: 0.6s; }

@keyframes lineRevealUp {
  to { transform: translateY(0); }
}
