/* Apparence « agence » : contenu clair, accueil et bandeaux foncés (bleu nuit), accents bleu, violet et orange du logo. */
:root {
  --rwa-navy: #0b0f1f;
  --rwa-blue: #0a63b5;
  --rwa-violet: #42038a;
  --rwa-orange: #ff9500;
  --bs-tertiary-bg: #f3f6fc;
  --bs-secondary-bg: #f3f6fc;
  --bs-border-color: #dde3f0;
  --bs-border-radius: 0.6rem;
  --bs-border-radius-sm: 0.4rem;
  --bs-border-radius-lg: 1rem;
}

h1, h2, h3, h4 { letter-spacing: 0.01em; }

/* En-tête : blanc, collé en haut de l'écran, logo à ses couleurs naturelles. */
.site-header { position: sticky; top: 0; z-index: 1030; box-shadow: 0 2px 16px rgba(11, 15, 31, 0.08); }
.custom-logo { max-height: 2.75rem; width: auto; }
.custom-logo-link { display: inline-block; line-height: 0; }

/* Petit filet d'accent sous les titres de section. */
.rw-section h2::after {
  content: "";
  display: block;
  width: 3.5rem;
  height: 0.25rem;
  margin: 0.75rem auto 0;
  background: linear-gradient(90deg, var(--rwa-blue), var(--rwa-violet), var(--rwa-orange));
  border-radius: 0.2rem;
}
.rw-section .text-start h2::after,
.rw-section h2.text-start::after { margin-left: 0; }

/* Cartes : coins arrondis, ombre douce, pastille d'icône Font Awesome en dégradé. */
.card { border-color: var(--bs-border-color); border-radius: 1rem; box-shadow: 0 0.5rem 1.5rem rgba(11, 15, 31, 0.07); }
.card:hover { border-color: var(--rwa-blue); }
.rw-card-icon { margin-bottom: 1rem; }
.rw-card-icon i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  color: #fff;
  font-size: 1.6rem;
  background: linear-gradient(135deg, var(--rwa-blue), var(--rwa-violet));
}
.row > div:nth-child(3n) .rw-card-icon i { color: var(--rwa-navy); background: linear-gradient(135deg, #ffb340, var(--rwa-orange)); }

/* Boutons : en forme de pastille. */
.btn { border-radius: 50rem; font-weight: 700; padding-left: 1.75rem; padding-right: 1.75rem; }
.rw-contact-form .wpcf7-submit { border-radius: 50rem; color: var(--rw-on-primary); background: var(--rw-primary); }
.rw-contact-form .wpcf7-not-valid-tip, .rw-contact-form .rw-required { color: #b3261e; }

/* Accueil : bandeau foncé (dégradé bleu nuit et violet) avec le réseau animé du thème. */
.rw-section-hero {
  --rw-network-rgb: 255, 255, 255;
  color: #fff;
  background: linear-gradient(135deg, var(--rwa-navy) 0%, #14307a 58%, var(--rwa-violet) 100%);
}
.rw-section .rw-hero-bg { opacity: 0.22; }
.rw-section-hero .container { padding-top: 3rem !important; padding-bottom: 3rem !important; }
.rw-section-hero h2 { color: #fff; }

/* Bandeaux d'appel à l'action : foncés, bouton orange. */
.rw-section.rw-section-cta {
  color: #fff;
  background: linear-gradient(120deg, var(--rwa-navy), #14307a 60%, var(--rwa-violet));
}
.rw-section-cta h2, .rw-section-cta p { color: #fff; }
.rw-section-cta .btn { color: var(--rwa-navy); background: var(--rwa-orange); border-color: var(--rwa-orange); }

/* Photos : coins arrondis et ombre portée. */
.rw-section-text-image img { border-radius: 1rem; box-shadow: 0 1.25rem 2.5rem rgba(11, 15, 31, 0.18); }

/* Listes à puces : coches orange. */
.rw-section-text-image ul { padding-left: 0; list-style: none; }
.rw-section-text-image li { position: relative; margin-bottom: 0.6rem; padding-left: 1.9rem; }
.rw-section-text-image li::before {
  content: "\f00c";
  position: absolute;
  left: 0;
  top: 0.1rem;
  font-family: "Font Awesome 7 Free";
  font-weight: 900;
  color: var(--rwa-orange);
}

/* Pied de page : bleu nuit. */
.site-footer .site-footer-widgets.bg-body-tertiary,
.site-footer .site-colophon { color: #e8ecf8; background-color: var(--rwa-navy) !important; }
.site-footer a { color: #fff; }
