/* -----------------------------------
   Load Google Fonts
----------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500;600&family=IBM+Plex+Sans:wght@300;400;500&display=swap');

/* -----------------------------------
   Base typography
----------------------------------- */
html {
  font-size: 16px;
}
body {
  font-family: 'IBM Plex Sans', sans-serif !important;
  font-weight: 400 !important;
  line-height: 1.6;             /* removed !important to avoid forcing admin bar */
  color: #222 !important;
  /* removed smoothing/text-rendering hints to avoid warnings */
}

/* -----------------------------------
   Headings (H1–H6) — EB Garamond
----------------------------------- */
h1, h2, h3, h4, h5, h6,
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6,
.elementor-heading-title, .elementor-widget-heading h1, .elementor-widget-heading h2, .elementor-widget-heading h3, .elementor-widget-heading h4, .elementor-widget-heading h5, .elementor-widget-heading h6 {
  font-family: 'EB Garamond', serif !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.25px !important;
}

/* Responsive sizes for main headings */
h1, .entry-content h1, .elementor-widget-heading h1 { font-size: clamp(32px, 5vw, 44px) !important; }
h2, .entry-content h2, .elementor-widget-heading h2 { font-size: clamp(24px, 3.5vw, 32px) !important; }
h3, .entry-content h3, .elementor-widget-heading h3 { font-size: clamp(20px, 3vw, 26px) !important; }
h4, .entry-content h4, .elementor-widget-heading h4 { font-size: clamp(18px, 2.5vw, 22px) !important; }
h5, .entry-content h5, .elementor-widget-heading h5 { font-size: clamp(16px, 2vw, 20px) !important; }
h6, .entry-content h6, .elementor-widget-heading h6 { font-size: clamp(14px, 1.8vw, 18px) !important; }

/* -----------------------------------
   Paragraphs — IBM Plex Sans
----------------------------------- */
p, .entry-content p, .elementor-widget-container p {
  font-family: 'IBM Plex Sans', sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
}

/* -----------------------------------
   UI elements — IBM Plex Sans
   (limit to form fields only to avoid affecting admin bar)
----------------------------------- */
input, textarea {
  font-family: 'IBM Plex Sans', sans-serif !important;
  font-weight: 400 !important;
  line-height: 1.6;             /* no !important */
}

/* Buttons (site buttons only) */
button, input[type="submit"], .btn-primary, .btn-secondary {
  font-weight: 500 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
}