/* Custom Font Declarations */

/* P22 Mackinac Pro Font Family */
@font-face {
    font-family: 'P22 Mackinac Pro';
    src: url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-Bold.woff2') format('woff2'),
        url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'P22 Mackinac Pro';
    src: url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-BoldItalic.woff2') format('woff2'),
        url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'P22 Mackinac Pro';
    src: url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-Book.woff2') format('woff2'),
        url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-Book.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'P22 Mackinac Pro';
    src: url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-BookItalic.woff2') format('woff2'),
        url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-BookItalic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'P22 Mackinac Pro';
    src: url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-ExtraBoldItalic.woff2') format('woff2'),
        url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-ExtraBoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'P22 Mackinac Pro';
    src: url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-ExtraBold.woff2') format('woff2'),
        url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'P22 Mackinac Pro';
    src: url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-MediumItalic.woff2') format('woff2'),
        url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'P22 Mackinac Pro';
    src: url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-Medium.woff2') format('woff2'),
        url('../fonts/p22-mackinac-pro/woff/P22MackinacPro-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

/* Avenir Next Font Family */
@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-Bold.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-Demi.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-Demi.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-BoldItalic.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-DemiItalic.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-DemiItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-Heavy.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-Heavy.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-HeavyItalic.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-HeavyItalic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-Italic.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-Light.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-LightItalic.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-Medium.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-MediumItalic.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-Regular.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-Thin.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-ThinItalic.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-ThinItalic.woff') format('woff');
    font-weight: 100;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-UltraLightIt.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-UltraLightIt.woff') format('woff');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('../fonts/avenir-next/woff/AvenirNextW1G-UltraLight.woff2') format('woff2'),
        url('../fonts/avenir-next/woff/AvenirNextW1G-UltraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    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; }

/* Global font defaults */
body {
  font-family: var(--font-pp-neue-montreal);
  color: #333f5b;
  background-color: #fafbfd;
  -webkit-font-smoothing: antialiased;
}

/* Headings use Mackinac like your OM site */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-p22-mackinac-pro);
  font-weight: 500;
  letter-spacing: -0.04em;
}