/* ifs-Styles : fichier généré, ne pas modifier à la main. */
:root {
  --ifs-s-primary: #4f6f52;
  --ifs-s-primary-2: #3a5340;
  --ifs-s-accent: #a35a32;
  --ifs-s-ink: #23302a;
  --ifs-s-muted: #5d6b63;
  --ifs-s-surface: #f6f3ed;
  --ifs-s-line: #e3ddd2;
  --ifs-s-white: #ffffff;
  --ifs-s-success: #1b7f50;
  --ifs-s-success-bg: #e8f6ee;
  --ifs-s-warning: #9a5b00;
  --ifs-s-warning-bg: #fff4e0;
  --ifs-s-danger: #b8322b;
  --ifs-s-danger-bg: #fdecea;
  --ifs-s-info: #1b64a8;
  --ifs-s-info-bg: #e8f1fb;
  --ifs-s-font-heading: Garamond, Baskerville, "Baskerville Old Face", "Times New Roman", serif;
  --ifs-s-font-body: "Gill Sans", "Gill Sans MT", Calibri, "Trebuchet MS", sans-serif;
  --ifs-s-radius-sm: 6px;
  --ifs-s-radius-md: 12px;
  --ifs-s-radius-lg: 24px;
  --ifs-s-space-0: 0;
  --ifs-s-space-xs: .25rem;
  --ifs-s-space-sm: .5rem;
  --ifs-s-space-md: 1rem;
  --ifs-s-space-lg: 1.5rem;
  --ifs-s-space-xl: 2.5rem;
  --ifs-s-space-2xl: 4rem;
  --ifs-s-fs-xs: .8125rem;
  --ifs-s-fs-sm: .9rem;
  --ifs-s-fs-base: 1rem;
  --ifs-s-fs-lg: 1.2rem;
  --ifs-s-fs-xl: clamp(1.3rem, 1.15rem + .6vw, 1.5rem);
  --ifs-s-fs-2xl: clamp(1.5rem, 1.2rem + 1.4vw, 2rem);
  --ifs-s-fs-3xl: clamp(1.8rem, 1.3rem + 2.4vw, 2.75rem);
  --ifs-s-shadow-sm: 0 1px 2px rgba(16, 24, 40, .08);
  --ifs-s-shadow-md: 0 4px 12px rgba(16, 24, 40, .10);
  --ifs-s-shadow-lg: 0 12px 32px rgba(16, 24, 40, .14);
}

body .ifs-s-intro {
  color: var(--ifs-s-muted);
  font-size: var(--ifs-s-fs-lg);
  line-height: 1.6;
}

body .ifs-s-surtitre {
  color: var(--ifs-s-primary);
  font-size: var(--ifs-s-fs-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

body .ifs-s-centre {
  text-align: center;
}

body .ifs-s-citation {
  color: var(--ifs-s-ink);
  font-family: var(--ifs-s-font-heading);
  font-size: var(--ifs-s-fs-xl);
  font-style: italic;
  padding-inline: var(--ifs-s-space-lg);
  margin-block: var(--ifs-s-space-lg);
  border-left: 3px solid var(--ifs-s-primary);
}

body .ifs-s-encadre-info {
  color: var(--ifs-s-ink);
  background-color: var(--ifs-s-info-bg);
  padding-block: var(--ifs-s-space-md);
  padding-inline: var(--ifs-s-space-lg);
  margin-block: var(--ifs-s-space-lg);
  border-radius: var(--ifs-s-radius-md);
  border-left: 4px solid var(--ifs-s-info);
}
body .ifs-s-encadre-info > :first-child { margin-top: 0; }
body .ifs-s-encadre-info > :last-child { margin-bottom: 0; }

body .ifs-s-encadre-succes {
  color: var(--ifs-s-ink);
  background-color: var(--ifs-s-success-bg);
  padding-block: var(--ifs-s-space-md);
  padding-inline: var(--ifs-s-space-lg);
  margin-block: var(--ifs-s-space-lg);
  border-radius: var(--ifs-s-radius-md);
  border-left: 4px solid var(--ifs-s-success);
}
body .ifs-s-encadre-succes > :first-child { margin-top: 0; }
body .ifs-s-encadre-succes > :last-child { margin-bottom: 0; }

body .ifs-s-encadre-attention {
  color: var(--ifs-s-ink);
  background-color: var(--ifs-s-warning-bg);
  padding-block: var(--ifs-s-space-md);
  padding-inline: var(--ifs-s-space-lg);
  margin-block: var(--ifs-s-space-lg);
  border-radius: var(--ifs-s-radius-md);
  border-left: 4px solid var(--ifs-s-warning);
}
body .ifs-s-encadre-attention > :first-child { margin-top: 0; }
body .ifs-s-encadre-attention > :last-child { margin-bottom: 0; }

body .ifs-s-encadre-important {
  color: var(--ifs-s-ink);
  background-color: var(--ifs-s-danger-bg);
  padding-block: var(--ifs-s-space-md);
  padding-inline: var(--ifs-s-space-lg);
  margin-block: var(--ifs-s-space-lg);
  border-radius: var(--ifs-s-radius-md);
  border-left: 4px solid var(--ifs-s-danger);
}
body .ifs-s-encadre-important > :first-child { margin-top: 0; }
body .ifs-s-encadre-important > :last-child { margin-bottom: 0; }

body .ifs-s-carte {
  background-color: var(--ifs-s-white);
  box-shadow: var(--ifs-s-shadow-sm);
  padding-block: var(--ifs-s-space-lg);
  padding-inline: var(--ifs-s-space-lg);
  margin-block: var(--ifs-s-space-lg);
  border-radius: var(--ifs-s-radius-lg);
  border: 1px solid var(--ifs-s-line);
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
body .ifs-s-carte:hover,
body .ifs-s-carte:focus-visible {
  transform: translateY(-2px);
  box-shadow: var(--ifs-s-shadow-md);
}
@media (prefers-reduced-motion: reduce) {
  body .ifs-s-carte { transition: none; }
  body .ifs-s-carte:hover { transform: none; }
}
body .ifs-s-carte > :first-child { margin-top: 0; }
body .ifs-s-carte > :last-child { margin-bottom: 0; }

body .ifs-s-bandeau {
  color: var(--ifs-s-white);
  background-color: var(--ifs-s-primary);
  text-align: center;
  padding-block: var(--ifs-s-space-xl);
  padding-inline: var(--ifs-s-space-xl);
  margin-block: var(--ifs-s-space-xl);
  border-radius: var(--ifs-s-radius-lg);
}
body .ifs-s-bandeau a { color: var(--ifs-s-white); }
body .ifs-s-bandeau > :first-child { margin-top: 0; }
body .ifs-s-bandeau > :last-child { margin-bottom: 0; }

body .ifs-s-colonnes-2 {
  margin-block: var(--ifs-s-space-lg);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--ifs-s-space-lg);
}
@media (max-width: 767.98px) {
  body .ifs-s-colonnes-2 { grid-template-columns: minmax(0, 1fr); }
}
body .ifs-s-colonnes-2 > * { margin-block: 0; }

body .ifs-s-colonnes-3 {
  margin-block: var(--ifs-s-space-lg);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--ifs-s-space-lg);
}
@media (max-width: 1023.98px) {
  body .ifs-s-colonnes-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  body .ifs-s-colonnes-3 { grid-template-columns: minmax(0, 1fr); }
}
body .ifs-s-colonnes-3 > * { margin-block: 0; }

body .ifs-s-surligne {
  background-color: var(--ifs-s-warning-bg);
  padding-inline: var(--ifs-s-space-xs);
  border-radius: var(--ifs-s-radius-sm);
}

body .ifs-s-badge {
  color: var(--ifs-s-primary-2);
  background-color: var(--ifs-s-info-bg);
  font-size: var(--ifs-s-fs-xs);
  font-weight: 600;
  padding-inline: var(--ifs-s-space-sm);
  border-radius: 999px;
  display: inline-block;
}

a.ifs-s-bouton, a.ifs-s-bouton:link, a.ifs-s-bouton:visited {
  color: var(--ifs-s-white);
  background-color: var(--ifs-s-primary);
  font-weight: 600;
  padding-block: var(--ifs-s-space-sm);
  padding-inline: var(--ifs-s-space-lg);
  border-radius: 999px;
  display: inline-block;
  text-decoration: none;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
a.ifs-s-bouton:hover,
a.ifs-s-bouton:focus-visible {
  color: var(--ifs-s-white);
  background-color: var(--ifs-s-primary-2);
  transform: translateY(-2px);
  box-shadow: var(--ifs-s-shadow-md);
}
@media (prefers-reduced-motion: reduce) {
  a.ifs-s-bouton { transition: none; }
  a.ifs-s-bouton:hover { transform: none; }
}

a.ifs-s-bouton-contour, a.ifs-s-bouton-contour:link, a.ifs-s-bouton-contour:visited {
  color: var(--ifs-s-primary);
  background-color: transparent;
  font-weight: 600;
  padding-block: var(--ifs-s-space-sm);
  padding-inline: var(--ifs-s-space-lg);
  border-radius: 999px;
  border: 2px solid var(--ifs-s-primary);
  display: inline-block;
  text-decoration: none;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
a.ifs-s-bouton-contour:hover,
a.ifs-s-bouton-contour:focus-visible {
  color: var(--ifs-s-white);
  background-color: var(--ifs-s-primary);
  transform: translateY(-2px);
  box-shadow: var(--ifs-s-shadow-md);
}
@media (prefers-reduced-motion: reduce) {
  a.ifs-s-bouton-contour { transition: none; }
  a.ifs-s-bouton-contour:hover { transform: none; }
}

a.ifs-s-lien-appuye, a.ifs-s-lien-appuye:link, a.ifs-s-lien-appuye:visited {
  color: var(--ifs-s-primary);
  font-weight: 600;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
a.ifs-s-lien-appuye:hover,
a.ifs-s-lien-appuye:focus-visible {
  color: var(--ifs-s-primary-2);
}
@media (prefers-reduced-motion: reduce) {
  a.ifs-s-lien-appuye { transition: none; }
  a.ifs-s-lien-appuye:hover { transform: none; }
}

body .ifs-s-image-arrondie {
  border-radius: var(--ifs-s-radius-lg);
  max-width: 100%;
  height: auto;
}

body .ifs-s-image-ombre {
  box-shadow: var(--ifs-s-shadow-md);
  border-radius: var(--ifs-s-radius-md);
  max-width: 100%;
  height: auto;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
body .ifs-s-image-ombre:hover,
body .ifs-s-image-ombre:focus-visible {
  transform: scale(1.03);
}
@media (prefers-reduced-motion: reduce) {
  body .ifs-s-image-ombre { transition: none; }
  body .ifs-s-image-ombre:hover { transform: none; }
}

body .ifs-s-image-gauche {
  border-radius: var(--ifs-s-radius-md);
  max-width: 40%;
  height: auto;
  float: left;
  margin-right: var(--ifs-s-space-md);
}
@media (max-width: 767.98px) {
  body .ifs-s-image-gauche { float: none; margin-inline: 0; max-width: 100%; }
}

body .ifs-s-image-droite {
  border-radius: var(--ifs-s-radius-md);
  max-width: 40%;
  height: auto;
  float: right;
  margin-left: var(--ifs-s-space-md);
}
@media (max-width: 767.98px) {
  body .ifs-s-image-droite { float: none; margin-inline: 0; max-width: 100%; }
}

body .ifs-s-tableau {
  margin-block: var(--ifs-s-space-lg);
  border: 1px solid var(--ifs-s-line);
  width: 100%;
  border-collapse: collapse;
}
body .ifs-s-tableau th,
body .ifs-s-tableau td { padding: var(--ifs-s-space-sm); }
body .ifs-s-tableau th { background-color: var(--ifs-s-primary); color: var(--ifs-s-white); }
body .ifs-s-tableau tbody tr:nth-child(even) { background-color: var(--ifs-s-surface); }
body .ifs-s-tableau th,
body .ifs-s-tableau td { border-bottom: 1px solid var(--ifs-s-line); }

/* Outils ifs */
body .ifs-boutique,
body .ifs-mini,
body .ifs-toast,
body .ifs-fil {
  --ifs-accent: var(--ifs-s-primary);
  --ifs-accent-dark: var(--ifs-s-primary-2);
  --ifs-ink: var(--ifs-s-ink);
  --ifs-text: var(--ifs-s-ink);
  --ifs-text-2: var(--ifs-s-muted);
  --ifs-muted: var(--ifs-s-muted);
  --ifs-border: var(--ifs-s-line);
  --ifs-pale: var(--ifs-s-surface);
  --ifs-green: var(--ifs-s-accent);
  --ifs-green-text: var(--ifs-s-success);
  --ifs-green-pale: var(--ifs-s-success-bg);
  --ifs-radius: var(--ifs-s-radius-lg);
  --ifs-radius-sm: var(--ifs-s-radius-md);
}
body .ifspv-liste {
  --ifspv-accent: var(--ifs-s-primary);
  --ifspv-accent-sombre: var(--ifs-s-primary-2);
  --ifspv-ok: var(--ifs-s-success);
  --ifspv-bordure: var(--ifs-s-line);
  --ifspv-texte-doux: var(--ifs-s-muted);
  --ifspv-fond-doux: var(--ifs-s-surface);
  --ifspv-rayon: var(--ifs-s-radius-lg);
}
body .ifs-form {
  --accent: var(--ifs-s-primary);
  --accent-hover: var(--ifs-s-primary-2);
  --text: var(--ifs-s-ink);
  --border-2: var(--ifs-s-line);
  --green-text: var(--ifs-s-success);
  --green-pale: var(--ifs-s-success-bg);
  --radius-input: var(--ifs-s-radius-md);
  --radius-sm: var(--ifs-s-radius-sm);
}
body .ifs-horaires,
body .ifs-garde {
  --accent: var(--ifs-s-primary);
  --deep: var(--ifs-s-primary-2);
  --ink: var(--ifs-s-ink);
  --text: var(--ifs-s-ink);
  --text-2: var(--ifs-s-muted);
  --muted: var(--ifs-s-muted);
  --brand-green-dark: var(--ifs-s-accent);
  --radius-md: var(--ifs-s-radius-lg);
  --radius-sm: var(--ifs-s-radius-sm);
}
body .ifs-rdv {
  --rdv-accent: var(--ifs-s-primary);
  --rdv-accent-dark: var(--ifs-s-primary-2);
  --rdv-ink: var(--ifs-s-ink);
  --rdv-text: var(--ifs-s-ink);
  --rdv-muted: var(--ifs-s-muted);
  --rdv-border: var(--ifs-s-line);
  --rdv-pale: var(--ifs-s-info-bg);
  --rdv-vert: var(--ifs-s-success-bg);
  --rdv-vert-texte: var(--ifs-s-success);
  --rdv-r-lg: var(--ifs-s-radius-lg);
  --rdv-r-md: var(--ifs-s-radius-md);
  --rdv-r-sm: var(--ifs-s-radius-sm);
}
body .com-profils {
  --labo-blue: var(--ifs-s-primary);
  --labo-blue-deep: var(--ifs-s-primary-2);
  --labo-ink: var(--ifs-s-ink);
  --profils-muted: var(--ifs-s-muted);
  --profils-line: var(--ifs-s-line);
}
body .com-satisfaction {
  --sat-blue: var(--ifs-s-primary);
  --sat-blue-deep: var(--ifs-s-primary-2);
  --sat-blue-light: var(--ifs-s-info-bg);
  --sat-green: var(--ifs-s-accent);
  --sat-green-dark: var(--ifs-s-success);
  --sat-ink: var(--ifs-s-ink);
  --sat-muted: var(--ifs-s-muted);
  --sat-line: var(--ifs-s-line);
  --sat-radius: var(--ifs-s-radius-lg);
  --sat-radius-sm: var(--ifs-s-radius-md);
}
body .com-medicaments {
  --med-accent: var(--ifs-s-primary);
  --med-muted: var(--ifs-s-muted);
  --med-surface: var(--ifs-s-surface);
  --med-radius: var(--ifs-s-radius-md);
}
body .com-crm {
  --crm-accent: var(--ifs-s-primary);
  --crm-accent-2: var(--ifs-s-accent);
  --crm-line: var(--ifs-s-line);
  --crm-muted: var(--ifs-s-muted);
  --crm-bg-soft: var(--ifs-s-surface);
  --crm-warn: var(--ifs-s-warning);
  --crm-alert: var(--ifs-s-danger);
}
body .chatifs {
  --chatifs-accent: var(--ifs-s-primary);
  --chatifs-accent-text: var(--ifs-s-white);
  --chatifs-radius: var(--ifs-s-radius-lg);
}
body .ld {
  --ld-accent: var(--ifs-s-primary);
  --ld-accent-dark: var(--ifs-s-primary-2);
  --ld-ok: var(--ifs-s-success);
  --ld-texte: var(--ifs-s-ink);
  --ld-muted: var(--ifs-s-muted);
  --ld-danger: var(--ifs-s-danger);
  --ld-radius: var(--ifs-s-radius-md);
}
body .mod-emailotp-login {
  --otp-primary: var(--ifs-s-primary);
  --otp-primary-dark: var(--ifs-s-primary-2);
  --otp-text: var(--ifs-s-ink);
  --otp-text-muted: var(--ifs-s-muted);
  --otp-border: var(--ifs-s-line);
}
body .ifsgc {
  --ef-primaire: var(--ifs-s-primary);
  --ef-primaire-fonce: var(--ifs-s-primary-2);
  --ef-accent: var(--ifs-s-accent);
  --ef-encre: var(--ifs-s-ink);
  --ef-douce: var(--ifs-s-muted);
  --ef-fond: var(--ifs-s-surface);
  --ef-bord: var(--ifs-s-line);
  --ef-rayon: var(--ifs-s-radius-lg);
  --ef-rayon-sm: var(--ifs-s-radius-md);
}

