/* ==========================================================================
   V-Zone Cloud — Typographie unifiée (site public)
   ========================================================================== */

:root {
  --vz-font: "Source Sans Pro", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --vz-text: #0f172a;
  --vz-text-muted: #64748b;
  --vz-text-size: 1rem;
  --vz-line-height: 1.6;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body,
.page-wraper,
.page-content {
  font-family: var(--vz-font) !important;
  font-size: var(--vz-text-size);
  line-height: var(--vz-line-height);
  color: var(--vz-text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.section-head .title,
.home-section-head .title {
  font-family: var(--vz-font) !important;
  font-weight: 700;
  line-height: 1.25;
  color: var(--vz-text);
}

p, .lead, li, label, td, th, span, a, button, input, select, textarea {
  font-family: inherit;
}

input, select, textarea, button {
  font-size: inherit;
}

/* Navbar — typo sans wildcard (préserve les icônes fa/bx) */
.vz-navbar {
  font-family: var(--vz-font) !important;
}

/* Legacy nitro / templates — sans wildcard */
.new-hx-tabs,
.hx-table-content,
.hx_web-hosting-sec,
.hx_supprt-sec,
.hx-tablesearchbar,
.ic-card,
.section-head,
.content-inner,
.content-inner-1 {
  font-family: var(--vz-font) !important;
}

/* Lisibilité formulaires */
.form-control,
.form-select,
.input-group-text {
  font-family: var(--vz-font) !important;
  color: var(--vz-text);
}

.form-control::placeholder {
  color: #94a3b8;
  opacity: 1;
}

/* Boutons (texte uniquement — les <i> ont leurs propres polices ci-dessous) */
.btn {
  font-family: var(--vz-font) !important;
  font-weight: 600;
  letter-spacing: 0.01em;
}

footer,
.wws-popup-container {
  font-family: var(--vz-font) !important;
}

/* ------------------------------------------------------------------
   Polices d'icônes — priorité maximale (ne pas hériter de Source Sans Pro)
   ------------------------------------------------------------------ */
.fa,
.fas,
.far,
.fab,
.fal,
.fad,
i.fa,
i.fas,
i.far,
i.fab,
i.fal,
i.bx,
i[class*="fa-"],
i[class*="bx"],
i[class*="flaticon-"],
[class^="fa-"],
[class*=" fa-"],
i.fad {
  font-family: "Font Awesome 5 Free", FontAwesome, "FontAwesome" !important;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}

.fab,
i.fab,
.brand,
i.brand {
  font-family: "Font Awesome 5 Brands", FontAwesome, "FontAwesome" !important;
  font-weight: 400 !important;
}

.fa,
.fas,
i.fa,
i.fas {
  font-weight: 900 !important;
}

.far,
i.far {
  font-weight: 400 !important;
}

.bx,
[class^="bx"],
[class*=" bx"],
i.bx,
i[class^="bx"],
i[class*=" bx"] {
  font-family: boxicons !important;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  line-height: 1;
  display: inline-block;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
}

.flaticon,
[class*="flaticon-"] {
  font-family: Flaticon !important;
}

.ti,
[class^="ti-"],
[class*=" ti-"] {
  font-family: themify !important;
}

.las,
.la,
[class^="la-"],
[class*=" la-"] {
  font-family: "Line Awesome Free" !important;
}
