/* =========================================================
   QuickTalent — Typographie auto-hébergée (RGPD : pas de CDN)
   Space Grotesk (titres) + Inter (texte), subset latin, woff2.
   ========================================================= */

@font-face {
  font-family: 'Space Grotesk';
  src: url('../fonts/space-grotesk-v22-latin-500.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Space Grotesk';
  src: url('../fonts/space-grotesk-v22-latin-700.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url('../fonts/inter-v20-latin-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url('../fonts/inter-v20-latin-600.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

/* ---------- Application ---------- */

body,
button,
input,
select,
textarea {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

h1, h2, h3, h4,
.qt-price,
.qt-price-card h3,
.qt-contact-card h3,
.qt-footer__title,
.qt-account-bridge__text h2,
.qt-header__brand-text,
.elementor-widget-heading .elementor-heading-title.elementor-heading-title {
  font-family: 'Space Grotesk', 'Inter', sans-serif;
}

.elementor-widget-heading h1.elementor-heading-title,
.elementor-widget-heading h2.elementor-heading-title {
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.05;
}

.elementor-widget-heading h3.elementor-heading-title {
  font-weight: 500;
}

h1, h2 {
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.08;
}

.qt-price {
  font-weight: 700;
  letter-spacing: -0.02em;
}

h3, h4 {
  font-weight: 500;
}

/* Gros titres : contraste de taille renforcé */
.qt-hero h1,
.qt-sec h1.elementor-heading-title,
.qt-hero .elementor-widget-heading h1 {
  font-size: 2.4rem;
  line-height: 1.02;
  letter-spacing: -0.03em;
  font-weight: 500;
}

.qt-sec h2.elementor-heading-title {
  font-size: 1.8rem;
}

@media (min-width: 1024px) {
  .qt-sec h2.elementor-heading-title {
    font-size: 2.8rem;
  }
}

@media (min-width: 1024px) {
  .qt-hero h1,
  .qt-sec h1.elementor-heading-title,
  .qt-hero .elementor-widget-heading h1 {
    font-size: 4.5rem;
  }

  .qt-jobs-dark .qt-page-title,
  .qt-jobs-dark h1 {
    font-size: 2.6rem;
  }
}

/* Boutons en Inter semi-bold */
.qt-btn,
.qt-nav a,
.wpcf7 input[type="submit"],
.job_filters .search_submit input[type="submit"],
.woocommerce a.button,
.woocommerce button.button {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
}
