/* =================================================================
   GCS Design System - fonts.css
   Growth Consultant Services | Naomi Withers

   SINGLE SOURCE OF TRUTH for @font-face on this site.

   Consolidated 2026-08-22 from four separate declaration sites:
     - colors_and_type.css              (32 faces, loaded on 5 page IDs only)
     - WPCode snippet #819              (9 faces,  site-wide)
     - WPCode Header & Footer > Body    (2 faces,  site-wide)
     - WPCode Header & Footer > Footer  (3 faces,  site-wide)

   The duplication existed because colors_and_type.css is gated behind
   gcs_should_load_redesign(), which matches only pages 748/762/784/792/805.
   The site-wide nav and footer therefore needed their own copies. This file
   is enqueued UNCONDITIONALLY in functions.php, outside that gate, so every
   page gets the faces and no snippet needs to declare them.

   Do NOT re-add @font-face to colors_and_type.css or to any WPCode snippet.
   Add new faces here.

   Format: WOFF2 first (subsetted to latin + latin-ext + editorial extras),
   with the original TTF/OTF as fallback. Any browser that cannot read WOFF2
   still gets the full original file, so a partial deploy degrades to the
   previous rendering rather than to unstyled text.

   Paths are RELATIVE - they resolve against this stylesheet's location, so
   they survive a domain or staging change. (A WPCode snippet cannot do this;
   it needs absolute URLs. That is one reason the fonts live here now.)
   ================================================================= */

/* ---------- Playfair Display ---------- */
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-Regular.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-Regular.ttf') format('truetype');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-Italic.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-Italic.ttf') format('truetype');
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-Medium.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-Medium.ttf') format('truetype');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-SemiBold.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-SemiBold.ttf') format('truetype');
  font-weight: 600; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-SemiBoldItalic.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-SemiBoldItalic.ttf') format('truetype');
  font-weight: 600; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-Bold.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-Bold.ttf') format('truetype');
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-ExtraBold.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-ExtraBold.ttf') format('truetype');
  font-weight: 800; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-ExtraBoldItalic.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-ExtraBoldItalic.ttf') format('truetype');
  font-weight: 800; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-MediumItalic.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-MediumItalic.ttf') format('truetype');
  font-weight: 500; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-BlackItalic.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-BlackItalic.ttf') format('truetype');
  font-weight: 900; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-BoldItalic.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-BoldItalic.ttf') format('truetype');
  font-weight: 700; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Playfair Display';
  src: url('fonts/PlayfairDisplay-Black.woff2') format('woff2'),
       url('fonts/PlayfairDisplay-Black.ttf') format('truetype');
  font-weight: 900; font-style: normal; font-display: swap;
}
/* ---------- Lato ---------- */
@font-face {
  font-family: 'Lato';
  src: url('fonts/Lato-Thin.woff2') format('woff2'),
       url('fonts/Lato-Thin.ttf') format('truetype');
  font-weight: 100; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Lato';
  src: url('fonts/Lato-Light.woff2') format('woff2'),
       url('fonts/Lato-Light.ttf') format('truetype');
  font-weight: 300; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Lato';
  src: url('fonts/Lato-LightItalic.woff2') format('woff2'),
       url('fonts/Lato-LightItalic.ttf') format('truetype');
  font-weight: 300; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Lato';
  src: url('fonts/Lato-Regular.woff2') format('woff2'),
       url('fonts/Lato-Regular.ttf') format('truetype');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Lato';
  src: url('fonts/Lato-Italic.woff2') format('woff2'),
       url('fonts/Lato-Italic.ttf') format('truetype');
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Lato';
  src: url('fonts/Lato-Bold.woff2') format('woff2'),
       url('fonts/Lato-Bold.ttf') format('truetype');
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Lato';
  src: url('fonts/Lato-BoldItalic.woff2') format('woff2'),
       url('fonts/Lato-BoldItalic.ttf') format('truetype');
  font-weight: 700; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Lato';
  src: url('fonts/Lato-Black.woff2') format('woff2'),
       url('fonts/Lato-Black.ttf') format('truetype');
  font-weight: 900; font-style: normal; font-display: swap;
}
/* ---------- Montserrat ---------- */
@font-face {
  font-family: 'Montserrat';
  src: url('fonts/Montserrat-Regular.woff2') format('woff2'),
       url('fonts/Montserrat-Regular.ttf') format('truetype');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('fonts/Montserrat-Italic.woff2') format('woff2'),
       url('fonts/Montserrat-Italic.ttf') format('truetype');
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('fonts/Montserrat-Medium.woff2') format('woff2'),
       url('fonts/Montserrat-Medium.ttf') format('truetype');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('fonts/Montserrat-SemiBold.woff2') format('woff2'),
       url('fonts/Montserrat-SemiBold.ttf') format('truetype');
  font-weight: 600; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('fonts/Montserrat-Bold.woff2') format('woff2'),
       url('fonts/Montserrat-Bold.ttf') format('truetype');
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('fonts/Montserrat-BoldItalic.woff2') format('woff2'),
       url('fonts/Montserrat-BoldItalic.ttf') format('truetype');
  font-weight: 700; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('fonts/Montserrat-Light.woff2') format('woff2'),
       url('fonts/Montserrat-Light.ttf') format('truetype');
  font-weight: 300; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('fonts/Montserrat-ExtraBold.woff2') format('woff2'),
       url('fonts/Montserrat-ExtraBold.ttf') format('truetype');
  font-weight: 800; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Montserrat';
  src: url('fonts/Montserrat-Black.woff2') format('woff2'),
       url('fonts/Montserrat-Black.ttf') format('truetype');
  font-weight: 900; font-style: normal; font-display: swap;
}
/* ---------- Glacial Indifference ---------- */
@font-face {
  font-family: 'Glacial Indifference';
  src: url('fonts/GlacialIndifference-Regular.woff2') format('woff2'),
       url('fonts/GlacialIndifference-Regular.otf') format('opentype');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Glacial Indifference';
  src: url('fonts/GlacialIndifference-Italic.woff2') format('woff2'),
       url('fonts/GlacialIndifference-Italic.otf') format('opentype');
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Glacial Indifference';
  src: url('fonts/GlacialIndifference-Bold.woff2') format('woff2'),
       url('fonts/GlacialIndifference-Bold.otf') format('opentype');
  font-weight: 700; font-style: normal; font-display: swap;
}
