/* design-tokens.css */

:root {
  /* Font */
  --font-family-base: 'Inter', sans-serif;

  /* Font Sizes */
  --font-size-quote: 24px;
  --line-height-quote: 36px;

  --font-size-sub: 14px;
  --line-height-sub: 18px;

  --font-size-small: 12px;
  --line-height-small: 16px;

  --font-weight-regular: 400;
  --font-weight-medium: 500;

  /* Colors */
  --color-bg: #FAF9F6;
  --color-bg-button: #F5F3F0;
  --color-bg-hover: #EBE9E5;

  --color-text: #111111;
  --color-text-secondary: #999999;
  --color-text-link: #8F8F8F;
  --color-text-link-hover: #797777;

  /* Spacing */
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 32px;

  /* Border Radius */
  --radius-sm: 4px;
  --radius-md: 8px;

  /* Shadows (optional) */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.06);
}

html {
  font-family: var(--font-family-base);
  font-feature-settings: "cv11", "ss01";
  background-color: var(--color-bg);
  color: var(--color-text);
  overflow-x: hidden;
}

body {
  margin: 0;
  padding: 0;
  font-weight: var(--font-weight-medium);
}

a {
  text-decoration-line: underline;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 4px;
  text-decoration-color: var(--color-text);
  color: var(--color-text-link);
  transition: opacity 0.2s ease;
}

a:hover {
  opacity: 0.6;
  color: var(--color-text-link-hover);
}

.fade-in {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fade-in.visible {
  opacity: 1;
  transform: none;
}

.about-date {
  font-size: var(--font-size-small);
  color: var(--color-text-secondary);
}
