/* Custom Font Declarations */

/* P22 Mackinac Pro Font Family */
@font-face {
  font-family: 'P22 Mackinac Pro';
  src: url('../fonts/p22-mackinac-pro/P22MackinacPro-Book_25.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'P22 Mackinac Pro';
  src: url('../fonts/p22-mackinac-pro/P22MackinacPro-BookItalic_15.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'P22 Mackinac Pro';
  src: url('../fonts/p22-mackinac-pro/P22MackinacPro-Medium_26.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'P22 Mackinac Pro';
  src: url('../fonts/p22-mackinac-pro/P22MackinacPro-MedItalic_18.otf') format('opentype');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'P22 Mackinac Pro';
  src: url('../fonts/p22-mackinac-pro/P22MackinacPro-Bold_16.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'P22 Mackinac Pro';
  src: url('../fonts/p22-mackinac-pro/P22MackinacPro-BoldItalic_11.otf') format('opentype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'P22 Mackinac Pro';
  src: url('../fonts/p22-mackinac-pro/P22MackinacPro-ExtraBold_12.otf') format('opentype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'P22 Mackinac Pro';
  src: url('../fonts/p22-mackinac-pro/P22MackinacPro-ExBoldItalic_17.otf') format('opentype');
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

/* Avenir Next Font Family */
@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-UltraLight.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-UltraLightIt.otf') format('opentype');
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-Thin.otf') format('opentype');
  font-weight: 250;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-ThinItalic.otf') format('opentype');
  font-weight: 250;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-LightItalic.otf') format('opentype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-Italic.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-MediumItalic.otf') format('opentype');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-Demi.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-DemiItalic.otf') format('opentype');
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-BoldItalic.otf') format('opentype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-Heavy.otf') format('opentype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Avenir Next';
  src: url('../fonts/avenir-next/AvenirNextW1G-HeavyItalic.otf') format('opentype');
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

/* PP Neue Montreal Font Family */
@font-face {
  font-family: 'PP Neue Montreal';
  src: url('../fonts/pp-neue-montreal/PPNeueMontreal-Thin.woff2') format('woff2'),
       url('../fonts/pp-neue-montreal/PPNeueMontreal-Thin.woff') format('woff');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('../fonts/pp-neue-montreal/PPNeueMontreal-ThinItalic.woff2') format('woff2'),
       url('../fonts/pp-neue-montreal/PPNeueMontreal-ThinItalic.woff') format('woff');
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('../fonts/pp-neue-montreal/PPNeueMontreal-Light.woff2') format('woff2'),
       url('../fonts/pp-neue-montreal/PPNeueMontreal-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('../fonts/pp-neue-montreal/PPNeueMontreal-Book.woff2') format('woff2'),
       url('../fonts/pp-neue-montreal/PPNeueMontreal-Book.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('../fonts/pp-neue-montreal/PPNeueMontreal-Italic.woff2') format('woff2'),
       url('../fonts/pp-neue-montreal/PPNeueMontreal-Italic.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('../fonts/pp-neue-montreal/PPNeueMontreal-Regular.woff2') format('woff2'),
       url('../fonts/pp-neue-montreal/PPNeueMontreal-Regular.woff') format('woff');
  font-weight: 450;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('../fonts/pp-neue-montreal/PPNeueMontreal-Medium.woff2') format('woff2'),
       url('../fonts/pp-neue-montreal/PPNeueMontreal-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('../fonts/pp-neue-montreal/PPNeueMontreal-Bold.woff2') format('woff2'),
       url('../fonts/pp-neue-montreal/PPNeueMontreal-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('../fonts/pp-neue-montreal/PPNeueMontreal-BoldItalic.woff2') format('woff2'),
       url('../fonts/pp-neue-montreal/PPNeueMontreal-BoldItalic.woff') format('woff');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

/* Font Variables for easier usage */
:root {
  --font-pp-neue-montreal: 'PP Neue Montreal', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-p22-mackinac-pro: 'P22 Mackinac Pro', Georgia, 'Times New Roman', serif;
  --font-avenir-next: 'Avenir Next', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* PP Neue Montreal Utility classes */
.font-pp-thin { font-weight: 100; }
.font-pp-light { font-weight: 300; }
.font-pp-book { font-weight: 400; }
.font-pp-regular { font-weight: 450; }
.font-pp-medium { font-weight: 500; }
.font-pp-bold { font-weight: 700; }

/* P22 Mackinac Pro Utility classes */
.font-mackinac-book { font-weight: 400; }
.font-mackinac-medium { font-weight: 500; }
.font-mackinac-bold { font-weight: 700; }
.font-mackinac-extrabold { font-weight: 800; }

/* Avenir Next Utility classes */
.font-avenir-ultralight { font-weight: 200; }
.font-avenir-thin { font-weight: 250; }
.font-avenir-light { font-weight: 300; }
.font-avenir-regular { font-weight: 400; }
.font-avenir-medium { font-weight: 500; }
.font-avenir-demi { font-weight: 600; }
.font-avenir-bold { font-weight: 700; }
.font-avenir-heavy { font-weight: 800; }