/* ==========================================================================
   WORK SANS (Corrected Local Relative Path)
   ========================================================================== */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400 700; 
  font-display: swap;
  /* Since the file is already inside the css folder, go straight to fonts/ */
  src: url('../fonts/WorkSans-VariableFont_wght.woff') format('woff');
}

/* ==========================================================================
   FRAUNCES (Corrected Local Relative Path)
   ========================================================================== */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400 500 600; 
  font-display: swap;
  /* Since the file is already inside the css folder, go straight to fonts/ */
  src: url('../fonts/Fraunces-VariableFont_SOFT\,WONK\,opsz\,wght.woff') format('woff');
}

/* ==========================================================================
   GLOBAL TYPOGRAPHY RULES
   ========================================================================== */
/* ==========================================================================
   GLOBAL TYPOGRAPHY RULES
   ========================================================================== */

/* Target h1, h2, and h3 directly to wipe out default browser thicknesses */
h1, h2, h3, .main-heading, .section-heading {
  font-family: 'Fraunces', serif !important;
  font-style: normal !important;
  
  /* FORCE RE-MAPPING OF BASE WEIGHTS: 
     Strips away the browser's default chunky smudging layer */
  font-weight: 400 !important; 
  font-optical-sizing: auto !important;
  
  /* EXPLICIT ALL-AXIS CONTROLLERS:
     Forces the rendering engine to scale down to regular weight (400) 
     and use razor-sharp display serifs ('opsz' 144) instead of bulky text curves. */
  font-variation-settings: 'opsz' 144, 'wght' 400, 'SOFT' 0, 'WONK' 1 !important;
  
  /* Anti-aliasing adjustments to cleanly shave off blurry outer borders */
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
}

}

/* Calibrate individual line-height and layout spaces per element */
h1, .main-heading {
  letter-spacing: -0.02em !important;
  line-height: 1.15 !important;
}

h2, .section-heading { 
  letter-spacing: -0.01em !important;
  line-height: 1.25 !important; 
  margin-top: 1.5rem !important; 
}

h3 { 
  letter-spacing: -0.01em !important;
  line-height: 1.3 !important; 
}

/* 3. PARAGRAPH AND STRUCTURAL TEXT MAP */
body, p, li, span, button {
  font-family: 'Work Sans', sans-serif !important;
  font-style: normal !important;
  font-weight: 400;
}
