/**
 * aptax Font Definitions
 * 
 * Spectral (Serif) - Google Fonts API in index.html
 * Geist (Sans-Serif) - Official Vercel Geist fonts from npm package
 * 
 * Spectral is loaded via Google Fonts API in index.html
 * Geist is loaded locally from /fonts/woff2/ (official npm package)
 */

/* ===== GEIST (Sans-Serif) - Official Vercel Fonts ===== */

/* Geist Variable Font - supports all weights 100-900 */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/fonts/woff2/Geist-Variable.woff2') format('woff2');
}

/* Geist Regular (400) - static fallback */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/woff2/Geist-Regular.woff2') format('woff2');
}

/* Geist Medium (500) - static fallback */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/woff2/Geist-Medium.woff2') format('woff2');
}

/* Geist SemiBold (600) - static fallback */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/woff2/Geist-SemiBold.woff2') format('woff2');
}

/* Geist Bold (700) - static fallback */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/woff2/Geist-Bold.woff2') format('woff2');
}

/* ===== DEFAULT FONT FAMILIES ===== */

body {
  font-family: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Spectral', Georgia, 'Times New Roman', Times, serif;
}

/* ===== CSS CUSTOM PROPERTIES ===== */

:root {
  --font-spectral: 'Spectral', Georgia, 'Times New Roman', Times, serif;
  --font-geist: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', sans-serif;
}

/* ===== UTILITY CLASSES ===== */

.font-spectral {
  font-family: var(--font-spectral);
}

.font-geist {
  font-family: var(--font-geist);
}

/* ===== FIGMA-STYLE FONT FAMILY ALIASES ===== */
/* These aliases support Figma-exported component styles that use names like 'Geist:Regular' */

/* Spectral:Regular - uses Google Fonts Spectral */
@font-face {
  font-family: 'Spectral:Regular';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local('Spectral Regular'), local('Spectral-Regular');
}

/* Geist:Regular */
@font-face {
  font-family: 'Geist:Regular';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/woff2/Geist-Regular.woff2') format('woff2');
}

/* Geist:Medium */
@font-face {
  font-family: 'Geist:Medium';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/woff2/Geist-Medium.woff2') format('woff2');
}

/* Geist:SemiBold */
@font-face {
  font-family: 'Geist:SemiBold';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/woff2/Geist-SemiBold.woff2') format('woff2');
}

/* Geist:Bold */
@font-face {
  font-family: 'Geist:Bold';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/woff2/Geist-Bold.woff2') format('woff2');
}
