/* TWKLausanne font-face declarations */

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne') format('woff2');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-100Italic.woff2') format('woff2');
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-200.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-200.woff') format('woff');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-200Italic.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-200Italic.woff') format('woff');
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-300.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-300.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-300Italic.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-300Italic.woff') format('woff');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-400.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-400.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-400Italic.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-400Italic.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-500.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-500.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-500Italic.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-500Italic.woff') format('woff');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-600.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-600.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-600Italic.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-600Italic.woff') format('woff');
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-700.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-700.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-700Italic.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-700Italic.woff') format('woff');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-800.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-800.woff') format('woff');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-800Italic.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-800Italic.woff') format('woff');
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-900.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-900.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-900Italic.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-900Italic.woff') format('woff');
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-1000.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-1000.woff') format('woff');
  font-weight: 1000;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'TWKLausanne';
  src: url('./TWKLausanne/TWKLausanne-1000Italic.woff2') format('woff2'),
    url('./TWKLausanne/TWKLausanne-1000Italic.woff2') format('woff');
  font-weight: 1000;
  font-style: italic;
  font-display: swap;
}




/* === MDIO FONTS === */
@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO') format('woff2'),
    url('./MDIO/MDIO-Thin.woff') format('woff');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-ThinItalic.woff2') format('woff2'),
    url('./MDIO/MDIO-ThinItalic.woff') format('woff');
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-Light.woff2') format('woff2'),
    url('./MDIO/MDIO-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-LightItalic.woff2') format('woff2'),
    url('./MDIO/MDIO-LightItalic.woff') format('woff');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-Regular.woff2') format('woff2'),
    url('./MDIO/MDIO-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-Italic.woff2') format('woff2'),
    url('./MDIO/MDIO-Italic.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-Medium.woff2') format('woff2'),
    url('./MDIO/MDIO-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-MediumItalic.woff2') format('woff2'),
    url('./MDIO/MDIO-MediumItalic.woff') format('woff');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-Semibold.woff2') format('woff2'),
    url('./MDIO/MDIO-Semibold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-SemiboldItalic.woff2') format('woff2'),
    url('./MDIO/MDIO-SemiboldItalic.woff') format('woff');
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-Bold.woff2') format('woff2'),
    url('./MDIO/MDIO-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-BoldItalic.woff2') format('woff2'),
    url('./MDIO/MDIO-BoldItalic.woff') format('woff');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-Black.woff2') format('woff2'),
    url('./MDIO/MDIO-Black.woff') format('woff');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-BlackItalic.woff2') format('woff2'),
    url('./MDIO/MDIO-BlackItalic.woff') format('woff');
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-Ultra.woff2') format('woff2'),
    url('./MDIO/MDIO-Ultra.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'MDIO';
  src: url('./MDIO/MDIO-UltraItalic.woff2') format('woff2'),
    url('./MDIO/MDIO-UltraItalic.woff') format('woff');
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

/* ============================================
   CORRECTION ZOOM WINDOWS VS LINUX
   Utilise des unités clamp() et des media queries
   pour adapter les tailles selon le zoom du navigateur
   ============================================ */

/* Reset pour uniformiser le rendu entre OS */
html {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: TWKLausanne, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  /* Base responsive pour la taille de police */
  /* font-size: clamp(14px, 0.875rem, 16px); */
}


@media ((-webkit-min-device-pixel-ratio: 1.5) and (min-width: 1024px)),
((min-resolution: 120dpi) and (min-width: 1024px)) {
  body {
    zoom: 0.85;
  }

}

/* Utiliser des tailles fluides pour les textes principaux */
.title-responsive {
  font-size: clamp(2.5rem, 5vw + 1rem, 5rem);
  line-height: 1.1;
}

.subtitle-responsive {
  font-size: clamp(1rem, 1.5vw + 0.5rem, 1.5rem);
  line-height: 1.5;
}

#description,
#description * {
  color: inherit !important;
  /* font-size: inherit !important; */
  font-family: inherit !important;
  line-height: inherit !important;
}

#description ul {
  list-style: disc;
  padding-left: 1.5rem;
}

#description ol {
  list-style: decimal;
  padding-left: 1.5rem;
}