/* OFFICIAL BRAND FONTS */

/* PP Neue Montreal Sans*/

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-ThinItalic.ttf') format('truetype');
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-Book.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-Italic.ttf') format('truetype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal';
  src: url('/fonts/PPNeueMontreal-BoldItalic.ttf') format('truetype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

/* PP Neue Montreal Mono */

@font-face {
  font-family: 'PP Neue Montreal Mono';
  src: url('/fonts/PPNeueMontrealMono-Thin.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal Mono';
  src: url('/fonts/PPNeueMontrealMono-Book.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal Mono';
  src: url('/fonts/PPNeueMontrealMono-RegularItalic.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal Mono';
  src: url('/fonts/PPNeueMontrealMono-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'PP Neue Montreal Mono';
  src: url('/fonts/PPNeueMontrealMono-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* METRIC-MATCHED FALLBACKS */

/* sans — Helvetica Neue (MacOS) */
@font-face {
  font-family: 'PP Neue Montreal Fallback Helvetica';
  src: local('HelveticaNeue-UltraLight'), local('Helvetica Neue UltraLight');
  font-weight: 100;
  ascent-override: 101.4353%;
  descent-override: 25.6235%;
  line-gap-override: 0%;
  size-adjust: 94.4444%;
}
@font-face {
  font-family: 'PP Neue Montreal Fallback Helvetica';
  src: local('HelveticaNeue-Light'), local('Helvetica Neue Light');
  font-weight: 300;
  ascent-override: 101.4353%;
  descent-override: 25.6235%;
  line-gap-override: 0%;
  size-adjust: 94.4444%;
}
@font-face {
  font-family: 'PP Neue Montreal Fallback Helvetica';
  src: local('Helvetica Neue'), local('HelveticaNeue');
  font-weight: 400;
  ascent-override: 101.4353%;
  descent-override: 25.6235%;
  line-gap-override: 0%;
  size-adjust: 94.4444%;
}
@font-face {
  font-family: 'PP Neue Montreal Fallback Helvetica';
  src: local('HelveticaNeue-Medium'), local('Helvetica Neue Medium');
  font-weight: 500;
  ascent-override: 101.4353%;
  descent-override: 25.6235%;
  line-gap-override: 0%;
  size-adjust: 94.4444%;
}
@font-face {
  font-family: 'PP Neue Montreal Fallback Helvetica';
  src: local('HelveticaNeue-Bold'), local('Helvetica Neue Bold');
  font-weight: 700;
  ascent-override: 101.4353%;
  descent-override: 25.6235%;
  line-gap-override: 0%;
  size-adjust: 94.4444%;
}

/* sans — Roboto (Android) */
@font-face {
  font-family: 'PP Neue Montreal Fallback Roboto';
  src: local('Roboto Thin'), local('Roboto-Thin');
  font-weight: 100;
  ascent-override: 100.2686%;
  descent-override: 25.3288%;
  line-gap-override: 0%;
  size-adjust: 95.5434%;
}
@font-face {
  font-family: 'PP Neue Montreal Fallback Roboto';
  src: local('Roboto Light'), local('Roboto-Light');
  font-weight: 300;
  ascent-override: 100.2686%;
  descent-override: 25.3288%;
  line-gap-override: 0%;
  size-adjust: 95.5434%;
}
@font-face {
  font-family: 'PP Neue Montreal Fallback Roboto';
  src: local('Roboto'), local('Roboto-Regular');
  font-weight: 400;
  ascent-override: 100.2686%;
  descent-override: 25.3288%;
  line-gap-override: 0%;
  size-adjust: 95.5434%;
}
@font-face {
  font-family: 'PP Neue Montreal Fallback Roboto';
  src: local('Roboto Medium'), local('Roboto-Medium');
  font-weight: 500;
  ascent-override: 100.2686%;
  descent-override: 25.3288%;
  line-gap-override: 0%;
  size-adjust: 95.5434%;
}
@font-face {
  font-family: 'PP Neue Montreal Fallback Roboto';
  src: local('Roboto Bold'), local('Roboto-Bold');
  font-weight: 700;
  ascent-override: 100.2686%;
  descent-override: 25.3288%;
  line-gap-override: 0%;
  size-adjust: 95.5434%;
}

/* sans — Arial (Windows + universal); ships only Regular + Bold → 100/300/500 match to Regular */
@font-face {
  font-family: 'PP Neue Montreal Fallback Arial';
  src: local('Arial'), local('ArialMT');
  font-weight: 400;
  ascent-override: 100.4887%;
  descent-override: 25.3844%;
  line-gap-override: 0%;
  size-adjust: 95.3341%;
}
@font-face {
  font-family: 'PP Neue Montreal Fallback Arial';
  src: local('Arial Bold'), local('Arial-BoldMT');
  font-weight: 700;
  ascent-override: 100.4887%;
  descent-override: 25.3844%;
  line-gap-override: 0%;
  size-adjust: 95.3341%;
}

/* mono — Menlo (Apple); ships only Regular + Bold → 100/500 match to Regular */
@font-face {
  font-family: 'PP Neue Montreal Mono Fallback Menlo';
  src: local('Menlo'), local('Menlo-Regular');
  font-weight: 400;
  ascent-override: 96.1274%;
  descent-override: 24.2827%;
  line-gap-override: 0%;
  size-adjust: 99.6594%;
}
@font-face {
  font-family: 'PP Neue Montreal Mono Fallback Menlo';
  src: local('Menlo Bold'), local('Menlo-Bold');
  font-weight: 700;
  ascent-override: 96.1274%;
  descent-override: 24.2827%;
  line-gap-override: 0%;
  size-adjust: 99.6594%;
}

/* mono — Consolas / Cascadia (Windows); Consolas ships only Regular + Bold → 100/500 match to Regular */
@font-face {
  font-family: 'PP Neue Montreal Mono Fallback Cascadia';
  src: local('Cascadia Mono'), local('Cascadia Code'), local('Consolas');
  font-weight: 400;
  ascent-override: 93.5547%;
  descent-override: 23.6328%;
  line-gap-override: 0%;
  size-adjust: 102.4%;
}
@font-face {
  font-family: 'PP Neue Montreal Mono Fallback Cascadia';
  src:
    local('Cascadia Mono Bold'), local('CascadiaMono-Bold'), local('Consolas Bold'),
    local('Consolas-Bold');
  font-weight: 700;
  ascent-override: 93.5547%;
  descent-override: 23.6328%;
  line-gap-override: 0%;
  size-adjust: 102.4%;
}

/* mono — Roboto Mono (Android) */
@font-face {
  font-family: 'PP Neue Montreal Mono Fallback Roboto';
  src: local('Roboto Mono Thin'), local('RobotoMono-Thin');
  font-weight: 100;
  ascent-override: 95.8156%;
  descent-override: 24.2039%;
  line-gap-override: 0%;
  size-adjust: 99.9837%;
}
@font-face {
  font-family: 'PP Neue Montreal Mono Fallback Roboto';
  src: local('Roboto Mono'), local('RobotoMono-Regular');
  font-weight: 400;
  ascent-override: 95.8156%;
  descent-override: 24.2039%;
  line-gap-override: 0%;
  size-adjust: 99.9837%;
}
@font-face {
  font-family: 'PP Neue Montreal Mono Fallback Roboto';
  src: local('Roboto Mono Medium'), local('RobotoMono-Medium');
  font-weight: 500;
  ascent-override: 95.8156%;
  descent-override: 24.2039%;
  line-gap-override: 0%;
  size-adjust: 99.9837%;
}
@font-face {
  font-family: 'PP Neue Montreal Mono Fallback Roboto';
  src: local('Roboto Mono Bold'), local('RobotoMono-Bold');
  font-weight: 700;
  ascent-override: 95.8156%;
  descent-override: 24.2039%;
  line-gap-override: 0%;
  size-adjust: 99.9837%;
}
