/* ═══════════════════════════════════════════════════════════
   TOKENS — curately design system
   Edit here to retheme the entire site.
═══════════════════════════════════════════════════════════ */

:root {
  /* Palette */
  --paper: #f4f0e8;
  --paper2: #ede8de;
  --paper3: #e6e0d4;
  --ink: #16130e;
  --ink2: #3a3630;
  --muted: #8a8478;
  --rule: #d0c8b8;
  --rust: #b5491c;
  --rust-dim: rgba(181, 73, 28, 0.1);
  --rust-bg: #f5ede8;
  --white: #faf8f4;

  /* Typography */
  --serif: "Cormorant Garamond", Georgia, serif;
  --mono: "DM Mono", "Courier New", monospace;

  /* Motion */
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-in: cubic-bezier(0.55, 0, 1, 0.45);
  --t-fast: 0.15s;
  --t-med: 0.25s;
  --t-slow: 0.4s;

  /* Spacing scale */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;

  /* Layout */
  --max-width: 1080px;
  --nav-height: 58px;
}

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

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

@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

body {
  background: var(--paper);
  color: var(--ink);
  font-family: var(--serif);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  overflow-x: hidden;
}

/* Paper grain — applied to body so it sits above all content */
body::after {
  content: "";
  position: fixed;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='400' height='400' filter='url(%23n)' opacity='0.055'/%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 9000;
  opacity: 0.38;
}

a {
  color: inherit;
  text-decoration: none;
}
img {
  display: block;
  max-width: 100%;
}
button {
  cursor: pointer;
  font-family: inherit;
}

/* Layout container */
.container {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 var(--space-10);
}

/* ═══════════════════════════════════════════════════════════
   REDUCED MOTION
═══════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
