/* ============================================================
   ResinPlan — Font Override
   Unifies the font system to Bebas Neue (display) + Quicksand (body).
   Must load AFTER all other CSS files.
   ============================================================ */

/* ---- Override legacy CSS variables ------------------------- */
:root {
  --body-font:    'Quicksand', system-ui, -apple-system, sans-serif;
  --heading-font: 'Quicksand', system-ui, -apple-system, sans-serif;
}

/* ---- Global base: body cascades Quicksand to all children -- */
/*
   NOT using * { !important } — it would kill Font Awesome / lord-icon
   pseudo-elements that render via ::before with their own font-family.
   body inheritance is enough; !important is reserved for elements
   that have a hardcoded font-family in the old theme CSS.
*/
body {
  font-family: var(--font-sans);
}

/* ---- Bebas Neue: only for big display headings (≈15%) ------ */
/*
   h1, h2            → Bebas Neue (page titles, section titles)
   .rp-display-xl,
   .rp-display,
   .rp-h1, .rp-h2    → already in colors_and_type.css, reinforce here
   .display, .eyebrow → utility classes from glass.css
*/
h1,
h2,
.rp-display-xl,
.rp-display,
.rp-h1,
.rp-h2,
.display {
  font-family: var(--font-display) !important;
  letter-spacing: 0.01em;
}

/* ---- Override hardcoded fonts from old theme CSS ----------- */
/*
   demo8.css sets Poppins via @font-face on headings,
   custom.css sets Roboto/Montserrat on specific selectors.
   Only these need !important to win.
*/
h3, h4, h5, h6,
input, select, textarea, button,
.rp-h3, .rp-h4 {
  font-family: var(--font-sans) !important;
}

/* Eyebrow stays Bebas Neue per brand system */
.rp-eyebrow,
.eyebrow {
  font-family: var(--font-display) !important;
  letter-spacing: 0.16em;
  font-size: 13px;
}

/* ---- Weights — Quicksand supports 300–700 ------------------ */
body {
  font-weight: 400;
}

h3 { font-weight: 700; }
h4 { font-weight: 600; }
h5 { font-weight: 600; }
h6 { font-weight: 500; }

/* Inputs/buttons: medium weight feels crisper in Quicksand */
input,
select,
textarea,
button,
.btn {
  font-weight: 500;
}

label {
  font-weight: 600;
}

/* ---- Nav items: keep Bebas Neue for the pill labels -------- */
.nav-item {
  font-family: var(--font-display) !important;
}

/* ---- Product name: bold Quicksand is fine ------------------ */
.rp-product-name {
  font-weight: 700;
}

/* ---- Price: semi-bold Quicksand ---------------------------- */
.rp-product-price,
.product-price,
.price {
  font-weight: 700;
}

/* ---- Footer column headings: small-caps Quicksand ---------- */
.rp-footer-column h4 {
  font-family: var(--font-sans) !important;
  font-weight: 700;
  letter-spacing: 0.14em;
}
