/* === CHARTE GRAPHIQUE GLOBALE === */
:root {
  --primary-color: #0d6efd; /* Le nouveau Bleu Roi */
  --primary-dark: #0a58ca; /* Bleu plus foncé pour les survels (hover) */
  --secondary-color: #1f2937; /* Gris foncé (Footer/Texte) */
  --light-bg: #f8f9fa; /* Fond léger unifié */
  --white: #ffffff;
}

body {
  color: var(--secondary-color);
  background-color: var(--light-bg);
}

/* === LOGO === */
.logo {
  max-width: min(4.5em, 18.25vmin);
}

.logo img {
  width: 100%;
  height: auto;
}

/* === BOUTONS & LIENS (Override Bootstrap) === */
a {
  color: var(--primary-color);
  transition: 0.3s;
}

a:hover {
  color: var(--primary-dark);
  text-decoration: none;
}

.btn-primary {
  background-color: var(--primary-color) !important;
  color: var(--white) !important;
  border-color: var(--primary-color) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: var(--white) !important;
  color: var(--primary-dark) !important;
  border-color: var(--primary-dark) !important;
}

.btn-outline-primary {
  background: transparent;
  color: var(--primary-color);
  border-color: var(--primary-color);
}

.btn-outline-primary:hover {
  background-color: var(--primary-color);
  color: var(--white);
}

/* Formulaire */
.form-control {
  background: #fff !important;
  color: #333 !important;
  font-size: 14px;
  border-radius: 4px;
  box-shadow: none !important;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.form-control:focus {
  border-color: var(--primary-color);
}

/* === NAVIGATION (Menu actif) === */
.ftco-navbar-light .navbar-nav > .nav-item.active > .nav-link {
  color: var(--primary-color) !important;
}

/* === LOADER (Le cercle de chargement) === */
#ftco-loader .path {
  stroke: var(--primary-color) !important;
}

/* === TITRES & SECTIONS === */
.heading-section h2 {
  color: var(--secondary-color);
}

.heading-section span {
  color: var(--primary-color); /* Pour les mots mis en évidence */
}

/* === PAGINATION === */
.block-27 ul li.active a,
.block-27 ul li.active span {
  background: var(--primary-color);
  border: 1px solid var(--primary-color);
}

/* Carousel */
.owl-carousel .owl-stage-outer {
  touch-action: pan-y pinch-zoom;
}

.owl-carousel {
  -webkit-overflow-scrolling: touch;
}

.home-slider,
.carousel-testimony {
  pointer-events: auto;
}

.icon-2x {
  font-size: 2em;
}
.icon-3x {
  font-size: 3em;
}
.icon-4x {
  font-size: 4em;
}
.icon-5x {
  font-size: 5em;
}
