/* ==========================================================================
 * TYPOGRAPHY SETTINGS
 * ========================================================================== */

/* Base Typographical Styles
 * --------------------------- */

$baseFontSize: 16px !default;
$baseLineHeight: 1.5 !default;



/* Font Size Variants
 * --------------------------- */

$fontSizes: (
  "hero1": ($baseFontSize * 4), // 64px
  "hero2": ($baseFontSize * 3), // 48px
  1: ($baseFontSize * 2.25),  // 36px
  2: ($baseFontSize * 1.75),  // 28px
  3: ($baseFontSize * 1.5),   // 24px
  4: ($baseFontSize * 1.25),  // 20px
  5: ($baseFontSize * 1.125), // 18px
  6: $baseFontSize,           // 16px
) !default;



/* Measure Widths
 * --------------------------- */

$measureWidths: (
  "narrow": 20em, // ~45 characters
  null: 30em,     // ~66 characters
  "wide": 34em,   // ~80 characters
) !default;



/* Line-height
 * --------------------------- */

$lineHeights: (
  "solid": 1,
  "title": 1.25,
  "copy": $baseLineHeight,
) !default;



/* Letter-spacing
 * --------------------------- */

$letterSpacings: (
  "tight": -0.05em,
  null: normal,
  "loose": 0.25em,
) !default;




/* Accessors
 * ========================================================================== */

@function getFontSize($key) {
  @return map-get($fontSizes, $key);
}

@function getMeasure($key) {
  @return map-get($measureWidths, $key);
}

@function getLineHeight($key) {
  @return map-get($lineHeights, $key);
}

@function getLetterSpacing($key) {
  @return map-get($letterSpacings, $key);
}

