/*|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||*\
|||||  Web Agency SC-CONCEPTION ---------------------- sc-conception.com  |||||
|||||  Powered by cms Iminence.com software --------------- iminence.com  |||||
\*|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/* =========================================================
   Framework global Sainte-ThÃ©rÃ¨se
   Variables, base, composants communs, header, footer, animations
   ========================================================= */
:root {
  --color-institution: #007497;
  --color-ecole: #B0D286;
  --color-college: #FFA065;
  --color-off-white: #F6F4EF;
  --color-gray-light: #D9D6D1;
  --color-gray-dark: #4A4F57;
  --color-navy: #182C60;
  --blue: var(--color-navy);
  --blue-dark: var(--color-navy);
  --green: var(--color-ecole);
  --teal: var(--color-institution);
  --orange: var(--color-college);
  --light: var(--color-off-white);
  --text: var(--color-gray-dark);
  --muted: #6f747b;
  --shadow: 0 14px 35px rgba(20, 48, 90, 0.11);
  --radius: 22px;
  --font-main: 'Montserrat', Arial, sans-serif;
  --font-title: 'Montserrat', Arial, sans-serif;
  --font-weight-quote: 200;
  --font-weight-body: 300;
  --font-weight-section-header: 400;
  --font-weight-subtitle: 500;
  --font-weight-header: 600;
  --font-weight-title: 600;
  --heading-color: var(--color-navy);
  --body-color: var(--color-gray-dark);
  --surface-soft: var(--color-off-white);
  --border-soft: var(--color-gray-light);
  --theme-color: var(--blue);
  --theme-color-contrast: #fff;
}
/* =========================================================
   01. Base
   ========================================================= */
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: var(--orange) #edf3fb;
}
body {
  font-family: var(--font-main);
  font-weight: var(--font-weight-body);
  color: var(--body-color);
  background: radial-gradient(circle at 8% 14%, color-mix(in srgb, var(--theme-color) 12%, transparent), transparent 28%), radial-gradient(circle at 92% 20%, rgba(0, 116, 151, 0.08), transparent 30%), linear-gradient(180deg, #fff 0%, #fbfcf8 48%, #fff 100%);
  overflow-x: hidden;
}
body::-webkit-scrollbar {
  width: 12px;
}
body::-webkit-scrollbar-track {
  background: #edf3fb;
}
body::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--blue), var(--teal), var(--green), var(--orange));
  border-radius: 999px;
  border: 3px solid #edf3fb;
}
body::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, var(--orange), var(--green), var(--teal), var(--blue));
}
a {
  text-decoration: none;
  color: inherit;
}
img {
  max-width: 100%;
  display: block;
}
.container {
  width: min(1180px, 92%);
  max-width: 1180px;
}
/* Couleurs utilitaires */
.green {
  color: var(--green);
}
.teal {
  color: var(--teal);
}
.orange {
  color: var(--orange);
}
.institution,
.site,
.pastoral,
.ogce,
.history,
.apel,
.page-institution,
.page-site,
.page-pastoral,
.page-ogce,
.page-history,
.page-apel,
.menu-institution,
.menu-site,
.menu-pastoral,
.menu-ogce,
.menu-history,
.menu-apel,
.theme-institution,
.theme-site,
.theme-pastoral,
.theme-ogce,
.theme-history,
.theme-apel {
  --theme-color: var(--blue);
  --theme-color-contrast: #fff;
}
.ecole,
.elementaire,
.ecole-elementaire,
.page-ecole,
.page-elementaire,
.page-ecole-elementaire,
.menu-ecole,
.menu-elementaire,
.menu-ecole-elementaire,
.theme-ecole,
.theme-elementaire,
.theme-ecole-elementaire {
  --theme-color: var(--teal);
  --theme-color-contrast: #fff;
}
.college,
.page-college,
.menu-college,
.theme-college {
  --theme-color: var(--green);
  --theme-color-contrast: var(--color-navy);
}
.maternelle,
.ecole-maternelle,
.page-maternelle,
.page-ecole-maternelle,
.menu-maternelle,
.menu-ecole-maternelle,
.theme-maternelle,
.theme-ecole-maternelle {
  --theme-color: var(--color-college);
  --theme-color-contrast: var(--color-navy);
}
.theme-color,
.page-institution > a,
.page-site > a,
.page-pastoral > a,
.page-ogce > a,
.page-history > a,
.page-apel > a,
.page-ecole > a,
.page-elementaire > a,
.page-ecole-elementaire > a,
.page-college > a,
.page-maternelle > a,
.page-ecole-maternelle > a {
  color: var(--theme-color);
}
.theme-bg {
  background: var(--theme-color);
  color: var(--theme-color-contrast);
}
.theme-border {
  border-color: var(--theme-color);
}
.bg-green {
  background: linear-gradient(135deg, #8fc553, #b7db76);
}
.bg-teal {
  background: linear-gradient(135deg, #007a91, #0aa3b6);
}
.bg-orange {
  background: linear-gradient(135deg, #ff8041, #ffa163);
}
.bg-blue {
  background: linear-gradient(135deg, #0b3473, #16498e);
}
/* =========================================================
   02. Boutons
   ========================================================= */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 13px 25px;
  border-radius: 15px;
  font-weight: 900;
  border: 0;
  cursor: pointer;
  transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease;
  white-space: nowrap;
}
.btn:hover {
  transform: translateY(-2px);
}
.btn i,
.mini-icon i,
.plus-icon i {
  line-height: 1;
}
.btn-orange {
  background: var(--orange);
  color: #fff;
  box-shadow: 0 8px 18px rgba(255, 139, 74, 0.26);
}
.btn-orange:hover,
.btn-orange:focus {
  background: #ff7b33;
  color: #fff;
}
.btn-blue {
  background: var(--blue);
  color: #fff;
  box-shadow: 0 10px 25px rgba(16, 58, 120, 0.25);
}
.btn-blue:hover,
.btn-blue:focus {
  background: var(--blue-dark);
  color: #fff;
}
.btn-white {
  background: #fff;
  color: var(--blue);
  border: 2px solid #cdd6e7;
}
.btn-white:hover,
.btn-white:focus {
  background: #f8fbff;
  color: var(--blue);
}
/* =========================================================
   03. Header / Navigation Bootstrap
   ========================================================= */
.header-section {
  position: sticky;
  top: 0;
  z-index: 1030;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(10px);
  box-shadow: 0 5px 24px rgba(13, 42, 84, 0.08);
}
.header-section .navbar {
  min-height: 96px;
  padding: 0;
}
.logo,
.header-section .navbar-brand {
  display: flex;
  align-items: center;
  margin-right: auto;
  padding: 0;
}
.logo-img {
  width: 245px;
  height: auto;
  object-fit: contain;
}
/* Menu principal */
/* Menu principal */
.header-section .navbar-nav {
  gap: 10px;
}
.header-section .navbar-nav .nav-item {
  position: relative;
}
.header-section .navbar-nav .nav-link {
  position: relative;
  z-index: 1;
  overflow: visible;
  padding: 10px 8px;
  color: #243e70;
  font-size: 15.5px;
  font-weight: var(--font-weight-header);
  line-height: 1.2;
  border-radius: 0;
  background: transparent;
  transition: color .2s ease, transform .2s ease;
}
.header-section .navbar-nav .nav-link:before {
  content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 2px;
  height: 3px;
  background: var(--blue);
  border-radius: 999px;
  opacity: 0;
  transform: scaleX(0.35);
  transform-origin: left;
  transition: opacity .25s ease, transform .25s ease;
}
.header-section .navbar-nav .menu-institution > .nav-link:before,
.header-section .navbar-nav .menu-site > .nav-link:before,
.header-section .navbar-nav .menu-ecole > .nav-link:before,
.header-section .navbar-nav .menu-elementaire > .nav-link:before,
.header-section .navbar-nav .menu-ecole-elementaire > .nav-link:before,
.header-section .navbar-nav .menu-college > .nav-link:before {
  background: var(--theme-color);
}
.header-section .navbar-nav .menu-maternelle > .nav-link:before,
.header-section .navbar-nav .menu-ecole-maternelle > .nav-link:before {
  background: var(--theme-color);
}
.header-section .navbar-nav .nav-link:hover,
.header-section .navbar-nav .nav-link:focus {
  color: var(--blue);
  transform: translateY(-1px);
  background: transparent;
}
.header-section .navbar-nav .nav-link:hover:before,
.header-section .navbar-nav .nav-link:focus:before,
.header-section .navbar-nav .nav-link.active:before,
.header-section .navbar-nav .nav-link[aria-current="page"]:before {
  opacity: 1;
  transform: scaleX(1);
}
.header-section .navbar-nav .nav-link.active,
.header-section .navbar-nav .nav-link[aria-current="page"] {
  color: var(--blue);
  background: transparent;
}
.header-section .navbar-nav .dropdown-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.header-section .navbar-nav .dropdown-toggle:after {
  position: static;
  width: auto;
  height: auto;
  margin-left: 2px;
  border: 0;
  content: "\F282";
  font-family: "bootstrap-icons";
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  font-size: 11px;
  line-height: 1;
  background: transparent;
  opacity: 1;
  transform: none;
  text-transform: none;
  vertical-align: -0.125em;
  transition: transform .2s ease;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.header-section .navbar-nav .dropdown-toggle[aria-expanded="true"]:after {
  transform: rotate(180deg);
}
.header-section .navbar-nav .dropdown-menu {
  min-width: 230px;
  padding: 10px;
  margin-top: 14px;
  border: 0;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(13, 42, 84, 0.16);
}
.header-section .navbar-nav .dropdown-menu.show {
  display: block;
}
.header-section .navbar-nav .dropdown-menu:before {
  content: "";
  position: absolute;
  top: -8px;
  left: 24px;
  width: 16px;
  height: 16px;
  background: #fff;
  transform: rotate(45deg);
  box-shadow: -4px -4px 12px rgba(13, 42, 84, 0.04);
}
.header-section .navbar-nav .dropdown-menu .dropdown-menu {
  top: -10px;
  left: 100%;
  margin-top: 0;
  margin-left: 10px;
}
.header-section .navbar-nav .dropdown-menu .dropdown-menu:before {
  top: 18px;
  left: -7px;
}
.header-section .navbar-nav .dropdown-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 9px 11px;
  border-radius: 7px;
  color: #243e70;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.25;
  white-space: normal;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
.header-section .navbar-nav .dropdown-item:hover,
.header-section .navbar-nav .dropdown-item:focus,
.header-section .navbar-nav .dropdown-item.active {
  background: color-mix(in srgb, var(--theme-color) 16%, transparent);
  color: var(--blue);
  transform: translateX(2px);
}
.header-section .navbar-nav .dropdown-item.dropdown-toggle:after {
  content: "\F285";
  margin-left: auto;
  transform: none;
}
.header-section .navbar-nav .dropdown-item.dropdown-toggle[aria-expanded="true"]:after {
  transform: rotate(90deg);
}
/* Lien Institution mis en avant */
.header-section .navbar-nav .nav-item-featured .nav-link {
  font-size: 17px;
  font-weight: 900;
  color: var(--blue);
  padding-inline: 10px;
}
.header-section .navbar-nav .nav-item-featured .nav-link:before,
.header-section .navbar-nav .nav-link.active:before,
.header-section .navbar-nav .nav-link[aria-current="page"]:before {
  background: var(--theme-color);
}
/* Actions header : rÃ©seaux sociaux + inscription */
.header-section .header-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin-left: 26px;
}
.header-section .header-socials {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  margin: 0;
}
.header-section .header-socials a {
  position: relative;
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(16, 58, 120, 0.06);
  color: var(--blue);
  font-size: 15px;
  overflow: hidden;
  transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}
.header-section .header-socials a:before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--orange);
  opacity: 0;
  transform: scale(0.65);
  border-radius: 50%;
  transition: opacity .25s ease, transform .25s ease;
  z-index: 0;
}
.header-section .header-socials a i {
  position: relative;
  z-index: 1;
  transition: transform .25s ease;
}
.header-section .header-socials a:hover,
.header-section .header-socials a:focus {
  color: #fff;
  background: transparent;
  transform: translateY(-3px);
  box-shadow: 0 8px 18px rgba(16, 58, 120, 0.18);
}
.header-section .header-socials a:hover:before,
.header-section .header-socials a:focus:before {
  opacity: 1;
  transform: scale(1);
}
.header-section .header-socials a:hover i,
.header-section .header-socials a:focus i {
  transform: scale(1.08) rotate(-4deg);
}
.header-section .header-socials a.header-school-direct {
  width: 42px;
  height: 30px;
  padding: 3px 4px;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(16, 58, 120, 0.12);
}
.header-section .header-socials a.header-school-direct:before {
  display: none;
}
.header-section .header-socials a.header-school-direct img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform .16s ease;
}
.header-section .header-socials a.header-school-direct:hover,
.header-section .header-socials a.header-school-direct:focus {
  color: inherit;
  background: #fff;
  box-shadow: 0 6px 14px rgba(16, 58, 120, 0.16);
  transform: translateY(-1px);
}
.header-section .header-socials a.header-school-direct:hover img,
.header-section .header-socials a.header-school-direct:focus img {
  transform: scale(1.03);
}
.header-section .header-register-btn {
  padding: 10px 20px;
  font-size: 13px;
  border-radius: 999px;
}
/* =========================================================
   05. Sections communes
   ========================================================= */
.section-title {
  font-size: 25px;
  line-height: 1.08;
  color: var(--heading-color);
  font-family: var(--font-title);
  font-weight: var(--font-weight-title);
  margin-bottom: 12px;
}
h1,
h2 {
  font-family: var(--font-title);
  font-weight: var(--font-weight-title);
  color: var(--heading-color);
}
h3,
.subtitle {
  font-family: var(--font-title);
  font-weight: var(--font-weight-subtitle);
  color: var(--heading-color);
}
.section-header {
  font-weight: var(--font-weight-section-header);
}
blockquote,
.quote {
  font-weight: var(--font-weight-quote);
  font-style: italic;
}
/* DÃ©cor discret autour des titres */
.title-with-leaf {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  position: relative;
}
.title-with-leaf span {
  position: relative;
  z-index: 1;
}
.title-leaf {
  width: 34px;
  height: 34px;
  object-fit: contain;
  opacity: .82;
  flex: 0 0 auto;
  pointer-events: none;
  transform-origin: center;
  animation: softLeafFloat 5s ease-in-out infinite;
}
.title-leaf-blue {
  width: 30px;
  height: 30px;
  transform: rotate(-8deg);
}
.title-leaf-orange {
  width: 36px;
  height: 36px;
  transform: rotate(8deg);
}
.title-leaf-green {
  width: 35px;
  height: 35px;
  transform: rotate(-5deg);
}
@keyframes softLeafFloat {
  0%,
  100% {
    transform: translateY(0) rotate(-5deg);
  }
  50% {
    transform: translateY(-3px) rotate(2deg);
  }
}
.small-line {
  width: 52px;
  height: 6px;
  border-radius: 20px;
  background: var(--green);
  margin: 0 0 22px;
}
nav.block-breadcrumb {
  background: var(--blue-dark);
  padding: .25rem 0;
  margin: 0 0 2rem 0;
}
nav.block-breadcrumb ol {
  margin: 0;
}
nav.block-breadcrumb ol > li,
nav.block-breadcrumb ol > li a,
nav.block-breadcrumb ol > li.active {
  color: #fff;
}
nav.block-breadcrumb ol .breadcrumb-item + .breadcrumb-item::before {
  color: #fff;
}
.main-section {
  position: relative;
  overflow: hidden;
  background: radial-gradient(circle at 5% 5%, color-mix(in srgb, var(--theme-color) 18%, transparent), transparent 28%), radial-gradient(circle at 92% 12%, color-mix(in srgb, var(--theme-color) 10%, transparent), transparent 26%), linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(251, 252, 248, 0.96));
}
.main-section::before,
.main-section::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
  z-index: 0;
}
.main-section::before {
  width: 220px;
  height: 220px;
  left: -82px;
  top: 44px;
  background: color-mix(in srgb, var(--theme-color) 16%, transparent);
}
.main-section::after {
  width: 150px;
  height: 150px;
  right: 6%;
  top: 140px;
  background: color-mix(in srgb, var(--theme-color) 10%, transparent);
}
.main-section > * {
  position: relative;
  z-index: 1;
}
.main-section .page-header {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  position: relative;
  gap: 8px;
  margin-bottom: 2rem;
}
.main-section .page-header > h1 {
  font-size: 25px;
  line-height: 1.08;
  color: var(--heading-color);
  font-family: var(--font-title);
  font-weight: var(--font-weight-title);
}
.main-section .page-header::before {
  content: "";
  width: 52px;
  height: 6px;
  border-radius: 20px;
  background: var(--green);
  margin: 0 0 22px;
  position: absolute;
  z-index: 1;
  left: 0px;
  top: 32px;
  object-fit: contain;
  opacity: .82;
  flex: 0 0 auto;
  pointer-events: none;
  transform-origin: center;
  animation: softLeafFloat 5s ease-in-out infinite;
}
.main-section .block-editor {
  background: #fff;
  border-radius: 24px;
  box-shadow: var(--shadow);
  padding: 28px 38px;
  margin: 0 0 2rem 0;
}
.main-section .block-editor {
  font-size: 16px;
  line-height: 1.78;
  color: var(--body-color);
}
.main-section .block-editor > section,
.main-section .block-editor .content-section {
  position: relative;
  padding: 0 0 32px 30px;
  margin: 0 0 34px;
  border-left: 3px solid color-mix(in srgb, var(--theme-color) 34%, var(--color-gray-light));
}
.main-section .block-editor > section:last-child,
.main-section .block-editor .content-section:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}
.main-section .block-editor > section::before,
.main-section .block-editor .content-section::before {
  content: "";
  position: absolute;
  top: 7px;
  left: -8px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: var(--theme-color);
  box-shadow: 0 0 0 6px color-mix(in srgb, var(--theme-color) 14%, transparent);
}
.main-section .block-editor h2 {
  position: relative;
  margin: 0 0 18px;
  font-size: 27px;
  line-height: 1.22;
  color: var(--heading-color);
}
.main-section .block-editor h2::after {
  content: "";
  display: block;
  width: 58px;
  height: 4px;
  margin-top: 13px;
  border-radius: 999px;
  background: var(--theme-color);
}
.main-section .block-editor h3 {
  margin: 26px 0 10px;
  font-size: 19px;
  line-height: 1.3;
  color: var(--heading-color);
}
.main-section .block-editor p {
  margin: 0 0 15px;
}
.main-section .block-editor p:last-child {
  margin-bottom: 0;
}
.main-section .block-editor ul,
.main-section .block-editor ol {
  display: grid;
  gap: 10px;
  padding: 0;
  margin: 18px 0 22px;
  list-style: none;
}
.main-section .block-editor li {
  position: relative;
  min-height: 34px;
  padding: 8px 14px 8px 42px;
  border: 1px solid color-mix(in srgb, var(--theme-color) 18%, var(--color-gray-light));
  border-radius: 8px;
  background: color-mix(in srgb, var(--surface-soft) 64%, #fff);
  color: var(--body-color);
}
.main-section .block-editor li::before {
  content: "";
  position: absolute;
  top: 17px;
  left: 17px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--theme-color);
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--theme-color) 12%, transparent);
}
.main-section .block-editor strong {
  font-weight: var(--font-weight-header);
  color: var(--heading-color);
}
.main-section .block-editor a {
  color: var(--color-institution);
  font-weight: var(--font-weight-subtitle);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.main-section .block-editor a:hover,
.main-section .block-editor a:focus {
  color: var(--theme-color);
}
/* =========================================================
/* =========================================================
   11. Footer
   ========================================================= */
footer.main-footer {
  background: var(--blue-dark);
  color: #fff;
  position: relative;
  margin-top: 40px;
  padding: 76px 0 0;
  overflow: hidden;
}
.footer-wave {
  position: absolute;
  top: -42px;
  left: -5%;
  width: 110%;
  height: 84px;
  background: #fff;
  border-radius: 0 0 50% 50%;
  z-index: 1;
}
.footer-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.45fr 1fr 1fr 1fr;
  gap: 42px;
  align-items: start;
  padding-bottom: 34px;
}
.footer-brand,
.footer-column {
  min-width: 0;
}
.footer-logo-img {
  width: 245px;
  max-width: 100%;
  height: auto;
  margin-bottom: 18px;
}
footer.main-footer p,
footer.main-footer li,
footer.main-footer a {
  font-size: 14px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.82);
  font-weight: 700;
}
footer.main-footer a {
  transition: color .2s ease, background .2s ease;
}
footer.main-footer a:hover,
footer.main-footer a:focus {
  color: #fff;
}
footer.main-footer h3 {
  font-size: 16px;
  font-weight: 900;
  color: #fff;
  margin-bottom: 14px;
}
footer.main-footer ul {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}
footer.main-footer ul li {
  margin-bottom: 8px;
}
.footer-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}
.footer-socials a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 13px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  font-size: 13px;
  font-weight: 900;
}
.footer-socials a:hover,
.footer-socials a:focus {
  background: var(--orange);
  color: #fff;
}
.footer-subtitle {
  margin-top: 18px;
}
.footer-global {
  position: relative;
  z-index: 2;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}
.footer-global .container {
  width: min(1180px, 92%);
  max-width: 1180px;
}
.footer-global .row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0;
  padding: 18px 0;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.72);
}
.footer-global [class*="col-"] {
  width: auto;
  max-width: none;
  padding: 0;
}
.footer-global .block-copyright,
.footer-global .block-legal-obligations,
.footer-global .block-copyright a,
.footer-global .block-legal-obligations a,
.footer-global .block-copyright span,
.footer-global .block-legal-obligations span {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.72);
  font-weight: 700;
}
.footer-global .block-copyright {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 8px;
}
.footer-global .block-legal-obligations {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  text-align: right;
}
.footer-global .block-copyright br,
.footer-global .block-legal-obligations br {
  display: none;
}
.footer-global a {
  transition: color .2s ease, opacity .2s ease;
}
.footer-global a:hover,
.footer-global a:focus {
  color: #fff;
}
.footer-global .logo-cms,
.footer-global .icon-user-cookie-control-permission img,
.footer-global .icon-admin-login img {
  width: 22px;
  height: 22px;
  object-fit: contain;
  opacity: .78;
  transition: opacity .2s ease, transform .2s ease;
}
.footer-global .icon-user-cookie-control-permission,
.footer-global .icon-admin-login {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  cursor: pointer;
}
.footer-global .icon-user-cookie-control-permission:hover img,
.footer-global .icon-user-cookie-control-permission:focus img,
.footer-global .icon-admin-login:hover img,
.footer-global .icon-admin-login:focus img {
  opacity: 1;
  transform: scale(1.05);
}
.back-to-top {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1040;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border: 0;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  box-shadow: 0 14px 32px rgba(16, 58, 120, 0.22);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(14px) scale(0.92);
  transition: opacity 0.24s ease, visibility 0.24s ease, transform 0.24s ease, background 0.24s ease, box-shadow 0.24s ease;
}
.back-to-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}
.back-to-top i {
  font-size: 32px;
  line-height: 1;
}
.back-to-top:hover,
.back-to-top:focus {
  background: var(--blue);
  color: #fff;
  box-shadow: 0 18px 38px rgba(16, 58, 120, 0.28);
}
.back-to-top:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--orange) 42%, #fff);
  outline-offset: 4px;
}
/* =========================================================
   12. Animations globales
   ========================================================= */
.reveal {
  opacity: 0;
  transform: translateY(34px);
  transition: opacity .75s ease, transform .75s ease;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}
.reveal-delay-1 {
  transition-delay: .08s;
}
.reveal-delay-2 {
  transition-delay: .16s;
}
.reveal-delay-3 {
  transition-delay: .24s;
}
@keyframes floatShapeOne {
  0%,
  100% {
    transform: rotate(-22deg) translateY(0);
  }
  50% {
    transform: rotate(-14deg) translateY(16px);
  }
}
@keyframes floatShapeTwo {
  0%,
  100% {
    transform: rotate(-20deg) translateX(0);
  }
  50% {
    transform: rotate(-12deg) translateX(20px);
  }
}
/* =========================================================
   Responsive framework
   ========================================================= */
@media (max-width: 1199px) {
  .header-section .navbar {
    min-height: 82px;
  }
  .header-section .navbar-collapse {
    padding: 18px 0 24px;
  }
  .header-section .navbar-nav {
    gap: 4px;
    padding-top: 8px;
  }
  .header-section .navbar-nav .nav-link {
    display: inline-flex;
    padding: 11px 8px;
    font-size: 16px;
  }
  .header-section .navbar-nav .nav-link:before {
    left: 8px;
    right: 8px;
  }
  .header-section .navbar-nav .dropdown-toggle {
    justify-content: flex-start;
  }
  .header-section .navbar-nav .dropdown-menu {
    position: static;
    width: 100%;
    min-width: 0;
    padding: 6px 0 6px 12px;
    margin: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  .header-section .navbar-nav .dropdown-menu:before {
    display: none;
  }
  .header-section .navbar-nav .dropdown-menu .dropdown-menu {
    margin-left: 0;
    padding-left: 14px;
  }
  .header-section .navbar-nav .dropdown-item {
    display: inline-flex;
    width: auto;
    padding: 9px 8px;
    background: transparent;
  }
  .header-section .header-actions {
    align-items: flex-start;
    margin-left: 0;
    margin-top: 14px;
  }
  .header-section .header-socials {
    justify-content: flex-start;
  }
  .header-section .header-register-btn {
    width: fit-content;
    margin-top: 2px;
  }
  .footer-grid {
    grid-template-columns: 1.4fr 1fr;
  }
}
@media (max-width: 680px) {
  .logo-img {
    width: 205px;
  }
  .main-section .block-editor {
    padding: 22px 18px;
    border-radius: 16px;
    font-size: 15px;
    line-height: 1.68;
  }
  .main-section .block-editor > section,
  .main-section .block-editor .content-section {
    padding: 0 0 26px 18px;
    margin-bottom: 28px;
    border-left-width: 2px;
  }
  .main-section .block-editor > section::before,
  .main-section .block-editor .content-section::before {
    top: 6px;
    left: -7px;
    width: 12px;
    height: 12px;
  }
  .main-section .block-editor h2 {
    font-size: 22px;
    line-height: 1.25;
    margin-bottom: 14px;
  }
  .main-section .block-editor h2::after {
    width: 46px;
    margin-top: 10px;
  }
  .main-section .block-editor h3 {
    font-size: 17px;
    margin-top: 22px;
  }
  .main-section .block-editor li {
    padding: 8px 12px 8px 34px;
  }
  .main-section .block-editor li::before {
    left: 14px;
  }
  .footer-logo-img {
    width: 220px;
  }
  .footer-global .row {
    flex-direction: column;
    text-align: center;
    align-items: center;
  }
  .footer-global [class*="col-"] {
    width: 100%;
  }
  .footer-global .block-copyright,
  .footer-global .block-legal-obligations {
    justify-content: center;
    text-align: center;
  }
  .footer-grid {
    grid-template-columns: 1fr;
  }
  .back-to-top {
    right: 16px;
    bottom: 16px;
    width: 46px;
    height: 46px;
  }
  .back-to-top i {
    font-size: 28px;
  }
}
.title-with-leaf {
  gap: 8px;
}
.title-leaf {
  width: 27px;
  height: 27px;
}
/*
Pour créer un effet de trois petits points clignotants en CSS, vous pouvez utiliser des animations CSS. Voici un exemple de classe CSS qui crée cet effet :
*/
@keyframes blink {
  0% {
    opacity: 0%;
  }
  50% {
    opacity: 100%;
  }
  100% {
    opacity: 0%;
  }
}
.blinking-dot-white {
  display: inline-block;
  margin-right: 1px;
  width: 3px;
  height: 3px;
  background-color: #fff;
  border-radius: 50%;
  animation: blink 1s infinite;
}
.blinking-dot-black {
  display: inline-block;
  margin-right: 1px;
  width: 3px;
  height: 3px;
  background-color: #000;
  border-radius: 50%;
  animation: blink 1s infinite;
}
b,
strong {
  font-weight: 600;
}
select option[disabled] {
  color: #aaa;
  font-style: italic;
  font-weight: 100;
}
a,
.open-dialog,
.open-dialog-alert,
.close-dialog-alert {
  cursor: pointer;
}
.text-justify {
  text-align: justify;
}
.text-right {
  text-align: right;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.float-left {
  float: left;
}
.float-right {
  float: right;
}
.block-html img.fr-fil:not(.fr-tni),
.block-html img.fr-tag.fr-fil:not(.fr-tni) {
  float: left;
}
.block-html img.fr-fil,
.block-html img.fr-tag.fr-fil {
  z-index: 1;
  position: relative;
  vertical-align: top;
  display: block;
  margin: auto;
  overflow: auto;
  padding: 10px 10px 10px 3px;
}
.block-html img.fr-fir,
.block-html img.fr-tag.fr-fir {
  z-index: 1;
  position: relative;
  vertical-align: top;
  display: block;
  margin: auto;
  overflow: auto;
  padding: 10px 3px 10px 10px;
}
.block-html img.fr-fir:not(.fr-tni),
.block-html img.fr-tag.fr-fir:not(.fr-tni) {
  float: right;
}
@media (min-width: 0px) AND (max-width: 576px) {
  .col-xs-0 {
    display: none !important;
  }
}
@media (min-width: 576px) AND (max-width: 768px) {
  .col-sm-0 {
    display: none !important;
  }
}
@media (min-width: 768px) AND (max-width: 992px) {
  .col-md-0 {
    display: none !important;
  }
}
@media (min-width: 992px) AND (max-width: 1200px) {
  .col-lg-0 {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .col-xl-0 {
    display: none !important;
  }
}
html,
body {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
}
body,
p,
blockquote,
a {
  font-family: 'Montserrat', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
a {
  text-decoration: none;
}
a:focus,
a:hover {
  text-decoration: none;
}
.hide {
  display: none;
}
.computer-hide {
  display: none;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
}
.truncate-text {
  white-space: nowrap;
  /* Empêche le retour à la ligne */
  overflow: hidden;
  /* Masque le contenu débordant */
  text-overflow: ellipsis;
  /* Ajoute les trois petits points (...) à la fin du contenu */
}
.block-editor > .contents {
  border: 1px dashed rgba(145, 145, 145, 0);
  margin: -1px;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.block-editor > .contents-button {
  height: 30px;
}
.block-editor > .contents-button > .button-save {
  float: right;
  margin-top: -35px;
  margin-right: -1px;
  opacity: 0;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.block-editor > .contents-button > .button-save:hover,
.block-editor > .contents-button > .button-save:focus,
.block-editor > .contents-button > .button-save:active {
  margin-top: 0px;
  opacity: 1;
}
.block-editor:hover > .contents,
.block-editor:focus > .contents,
.block-editor.active > .contents {
  border: 1px dashed rgba(145, 145, 145, 0.5);
  margin: -1px;
}
.block-editor:hover > .contents-button > .button-save,
.block-editor:focus > .contents-button > .button-save,
.block-editor.active > .contents-button > .button-save {
  margin-top: 0px;
  opacity: 1;
}
.block-html > .froala_box > .froala_element {
  min-height: initial !important;
}
.main {
  opacity: 0%;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .dialog-alert {
  position: fixed;
  z-index: 1001;
  top: 0;
  left: -260px;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.8);
  opacity: 0;
  width: 0;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .dialog-alert > .dialog-alert-content {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
  min-height: 150px;
  min-width: 250px;
  max-width: 500px;
  margin: auto;
  box-shadow: 0px 10px 10px 0px #000, inset 0px 0px 5px 4px #fff;
  padding: 25px;
}
.main > .dialog-alert > .dialog-alert-content > header {
  font-size: 20px;
  font-weight: bold;
  margin: 0 0 20px 0;
  padding: 0 0 10px 0;
  border-bottom: 2px solid #fff;
  text-align: center;
}
.main > .dialog-alert > .dialog-alert-content > section {
  font-size: 16px;
  margin: 0 0 20px 0;
  text-align: center;
}
.main > .dialog-alert > .dialog-alert-content > footer .btn {
  border-radius: 0;
  font-weight: bold;
}
.main > .dialog-alert.dialog-alert-danger > .dialog-alert-content {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}
.main > .dialog-alert.dialog-alert-success > .dialog-alert-content {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}
.main > .dialog-alert.dialog-alert-warning > .dialog-alert-content {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}
.main > .dialog-alert.dialog-alert-info > .dialog-alert-content {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}
.main > .dialog-alert.open {
  left: 0;
  opacity: 1;
  width: 100%;
}
.main > .main-section .block-page > .page-header.is-editable > h1 > span {
  font-size: .7rem;
  position: absolute;
  color: #069;
  background-color: #fff;
  border-radius: 25px;
  padding: .25rem;
  border: solid 1px #ccc;
  margin: 0 0 0 .25rem;
  opacity: 0;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-section .block-page > .page-header.is-editable:hover {
  cursor: pointer;
  text-decoration: underline;
}
.main > .main-section .block-page > .page-header.is-editable:hover > h1 > span {
  opacity: 1;
}
.main > .main-section .block-page > .page-wrapper {
  display: table;
}
.main > .main-section .block-page > .page-wrapper > .wrapper-content {
  float: left;
  width: 62%;
  padding-right: 30px;
}
.main > .main-section .block-page > .page-wrapper > .wrapper-sidebar {
  position: -webkit-sticky;
  position: sticky;
  top: 30px;
  float: left;
  width: 38%;
}
.main > .main-section section.section-card:nth-child(even) {
  background-color: #efefef;
}
.main > .main-section section.section-card > .container {
  position: relative;
}
.main > .main-section section.section-card .item-title {
  color: #202b3c;
  line-height: 1.2;
}
.main > .main-section section.section-card .item-subtitle {
  line-height: 1.45;
}
.main > .main-section section.section-card .item-description {
  color: #4f5968;
  line-height: 1.65;
}
.main > .main-section section.section-card:not(.section-card-linelink):not(.section-card-carousel):not(.section-card-carouselx3):not(.section-card-accordion) .card {
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-section section.section-card:not(.section-card-linelink):not(.section-card-carousel):not(.section-card-carouselx3):not(.section-card-accordion) .card:not(.bg-transparent) {
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: .75rem;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
  overflow: hidden;
}
.main > .main-section section.section-card:not(.section-card-linelink):not(.section-card-carousel):not(.section-card-carouselx3):not(.section-card-accordion) .card > .card-body {
  padding: 1.5rem;
}
.main > .main-section section.section-card:not(.section-card-linelink):not(.section-card-carousel):not(.section-card-carouselx3):not(.section-card-accordion) .card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.12);
}
.main > .main-section section.section-card .card-image,
.main > .main-section section.section-card .item-image,
.main > .main-section section.section-card .article-image {
  background-color: rgba(0, 0, 0, 0.04);
}
.main > .main-section section.section-card .editable-content-richtext {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: .75rem;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
  overflow: hidden;
  padding: 0;
  text-align: left;
}
.main > .main-section section.section-card .editable-content-richtext > .toolbar {
  align-items: center;
  background-color: #f7f8fa;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  justify-content: flex-start;
  margin: 0;
  padding: .55rem;
  text-align: left;
}
.main > .main-section section.section-card .editable-content-richtext > .toolbar > .toolbar-group {
  align-items: center;
  display: inline-flex;
  gap: .25rem;
  padding-right: .4rem;
}
.main > .main-section section.section-card .editable-content-richtext > .toolbar > .toolbar-group:not(:last-child) {
  border-right: 1px solid rgba(0, 0, 0, 0.1);
}
.main > .main-section section.section-card .editable-content-richtext > .toolbar button.toolbar-btn {
  align-items: center;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: .45rem;
  color: #202b3c;
  display: inline-flex;
  font-size: .9rem;
  font-weight: 700;
  height: 34px;
  justify-content: center;
  line-height: 1;
  margin: 0;
  min-width: 34px;
  padding: 0 .55rem;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-section section.section-card .editable-content-richtext > .toolbar button.toolbar-btn:hover,
.main > .main-section section.section-card .editable-content-richtext > .toolbar button.toolbar-btn:focus {
  background-color: rgba(0, 0, 0, 0.04);
  border-color: rgba(0, 0, 0, 0.18);
  outline: none;
}
.main > .main-section section.section-card .editable-content-richtext > .toolbar button.toolbar-btn.is-active {
  background-color: #182C60;
  border-color: #182C60;
  color: #fff;
}
.main > .main-section section.section-card .editable-content-richtext > .content {
  min-height: 150px;
  padding: 1rem;
}
.main > .main-section section.section-card .editable-content-richtext > .content:focus {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(24, 44, 96, 0.2);
}
.main > .main-section section.section-card .editable-content-richtext > .content p:last-child {
  margin-bottom: 0;
}
.main > .main-section section.section-card .editable-content-richtext > textarea.source {
  border: 0;
  border-radius: 0;
  display: none;
  font-family: Consolas, Monaco, monospace;
  font-size: .85rem;
  min-height: 220px;
  padding: 1rem;
  resize: vertical;
  width: 100%;
}
.main > .main-section section.section-card .editable-content-richtext.is-source-mode > .content {
  display: none;
}
.main > .main-section section.section-card .editable-content-richtext.is-source-mode > textarea.source {
  display: block !important;
}
.main > .main-section section.section-card.section-card-carouselx3,
.main > .main-section section.section-card.section-card-formcontact {
  padding: 4rem 0;
}
.main > .main-section section.section-card.section-card-carouselx3 .editable,
.main > .main-section section.section-card.section-card-formcontact .editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-carouselx3 .not-editable,
.main > .main-section section.section-card.section-card-formcontact .not-editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-carouselx3 .item-title,
.main > .main-section section.section-card.section-card-formcontact .item-title {
  font-size: 2rem;
  width: 100%;
  display: block;
  text-align: center;
  border: none;
  margin: 0;
  font-weight: bold;
}
.main > .main-section section.section-card.section-card-carouselx3 .item-subtitle,
.main > .main-section section.section-card.section-card-formcontact .item-subtitle {
  display: block;
  width: 80%;
  text-align: center;
  margin: 0 auto;
  border: none;
  color: #676767;
}
.main > .main-section section.section-card.section-card-carouselx3.is-editable .editable,
.main > .main-section section.section-card.section-card-formcontact.is-editable .editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-carouselx3.is-editable .not-editable,
.main > .main-section section.section-card.section-card-formcontact.is-editable .not-editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 {
  position: relative;
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  padding: 24px 54px;
  /* place pour les flèches #c41b1b */
  user-select: none;
  touch-action: pan-y;
  /* autorise le scroll vertical, swipe horizontal géré en JS */
  /* Flèches */
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 > .viewport {
  overflow: hidden;
  position: relative;
  height: clamp(180px, 28vw, 360px);
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 > .viewport > .track {
  position: relative;
  width: 100%;
  height: 100%;
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 > .viewport > .track > .slide {
  position: absolute;
  top: 50%;
  width: 50%;
  height: 70%;
  transform: translateY(-50%);
  transition: transform 350ms ease, left 350ms ease, opacity 350ms ease, z-index 350ms ease, filter 350ms ease;
  border-radius: 16px;
  overflow: hidden;
  background: #111;
  /* Positionnement "coverflow" */
  /* Les autres, on les cache */
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 > .viewport > .track > .slide > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 > .viewport > .track > .slide.is-left {
  left: 4%;
  z-index: 1;
  opacity: .85;
  filter: saturate(0.9) contrast(0.95);
  transform: translateY(-50%) scale(1);
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 > .viewport > .track > .slide.is-center {
  left: 25%;
  /* base */
  z-index: 3;
  /* au-dessus */
  opacity: 1;
  filter: none;
  transform: translateY(-50%) scale(1.3);
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 > .viewport > .track > .slide.is-right {
  left: 48%;
  z-index: 1;
  opacity: .85;
  filter: saturate(0.9) contrast(0.95);
  transform: translateY(-50%) scale(1);
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 > .viewport > .track > .slide.is-hidden {
  opacity: 0;
  pointer-events: none;
  z-index: 0;
  transform: translateY(-50%) scale(0.9);
  left: 31%;
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 .nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 0;
  background: rgba(0, 0, 0, 0.55);
  color: white;
  font-size: 1.2rem;
  line-height: 42px;
  display: grid;
  place-items: center;
  cursor: pointer;
  z-index: 10;
  text-align: center;
  padding: 0;
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 .nav.prev {
  left: 10px;
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 .nav.next {
  right: 10px;
}
.main > .main-section section.section-card.section-card-carouselx3 .carouselx3 .nav:active {
  transform: translateY(-50%) scale(0.98);
}
.main > .main-section section.section-card.section-card-richtexthtml {
  padding: 4rem 0;
}
.main > .main-section section.section-card.section-card-richtexthtml .editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-richtexthtml .not-editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-richtexthtml .item-description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 8;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.5;
  border: none;
  margin: 0;
  background-color: transparent;
  padding: 0;
  font-weight: normal;
}
.main > .main-section section.section-card.section-card-richtexthtml.is-editable .editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-richtexthtml.is-editable .not-editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-presentation {
  padding: 4rem 0;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-title {
  font-size: 1.4rem;
  text-transform: uppercase;
  padding: 0.5rem 0;
  font-weight: bold;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-title.item-title-editable {
  display: none;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-subtitle {
  background-color: #000;
  color: #fff;
  max-width: max-content;
  padding: 0rem 1rem;
  font-size: .8rem;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-subtitle.item-subtitle-editable {
  display: none;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 8;
  /* Limite à 8 lignes */
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.5;
  /* Ajuste l'espacement des lignes selon tes besoins */
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-description.item-description-editable {
  display: none;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image {
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 275px;
  border-radius: 1.5rem;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > .image-title {
  position: absolute;
  top: 2rem;
  left: 2rem;
  color: #fff;
  font-size: 2rem;
  max-width: 250px;
  text-transform: uppercase;
  text-shadow: 1px 1px 1px black;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > .image-title.image-title-editable {
  background-color: transparent;
  border: none;
  border-radius: 0;
  font-weight: 600;
  height: 120px;
  overflow: hidden;
  margin-bottom: .5rem;
  line-height: 1.2;
  display: none;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > ul.image-link {
  position: absolute;
  left: 2rem;
  bottom: 2rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > ul.image-link > li.link-button {
  float: left;
  margin: 0 5px 5px 5px;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > ul.image-link > li.link-button > a.btn {
  width: 200px;
  border: none;
  border-radius: 1rem;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > ul.image-link.image-link-editable {
  right: 2rem;
  bottom: 1rem;
  width: fit-content;
  display: none;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > ul.image-link.image-link-editable > li.link-button {
  margin: 0;
  float: inline-end;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > ul.image-link.image-link-editable > li.link-button > .input-group {
  margin: 0 0.5rem 0.5rem 0;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > ul.image-link.image-link-editable > li.link-button > .input-group > span.input-group-text {
  font-size: 0.8rem;
  padding: 0.25rem;
  background-color: #000;
  color: #fff;
  border: none;
  border-radius: 0;
  width: 60px;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-image > ul.image-link.image-link-editable > li.link-button > .input-group > .form-control {
  font-size: 0.8rem;
  padding: 0.25rem;
  background-color: #fff;
  color: #000;
  border: none;
  border-radius: 0;
}
.main > .main-section section.section-card.section-card-presentation .card-item .item-upload-file,
.main > .main-section section.section-card.section-card-presentation .card-item .item-button-save {
  display: none;
}
.main > .main-section section.section-card.section-card-presentation:nth-child(even) .item-image > .image-title {
  right: 2rem;
  left: initial;
  text-align: right;
}
.main > .main-section section.section-card.section-card-presentation:nth-child(even) .item-image > ul.image-link {
  right: 2rem;
  left: initial;
}
.main > .main-section section.section-card.section-card-presentation:nth-child(even) .item-image > ul.image-link > li.link-button {
  float: right;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-title:not(.item-title-editable) {
  display: none;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-title-editable {
  display: block;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-subtitle:not(.item-subtitle-editable) {
  display: none;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-subtitle-editable {
  display: block;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-description:not(.item-description-editable) {
  display: none;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-description-editable {
  display: block;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-image > .image-title:not(.image-title-editable) {
  display: none;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-image > .image-title-editable {
  display: block;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-image > ul.image-link:not(.image-link-editable) {
  display: none;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-image > ul.image-link-editable {
  display: block;
}
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-upload-file,
.main > .main-section section.section-card.section-card-presentation.is-editable .card-item .item-button-save {
  display: block;
}
.main > .main-section section.section-card.section-card-reassurance,
.main > .main-section section.section-card.section-card-argument {
  padding: 4rem 0;
}
.main > .main-section section.section-card.section-card-reassurance .editable,
.main > .main-section section.section-card.section-card-argument .editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-reassurance .item-subtitle,
.main > .main-section section.section-card.section-card-argument .item-subtitle {
  text-align: center;
  margin: 0;
  color: #444444;
  font-size: 1.2rem;
}
.main > .main-section section.section-card.section-card-reassurance h2.item-title,
.main > .main-section section.section-card.section-card-argument h2.item-title {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  margin: 0 0 .5rem 0;
}
.main > .main-section section.section-card.section-card-reassurance .card,
.main > .main-section section.section-card.section-card-argument .card {
  height: 100%;
  margin: 2rem 0 0 0;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: .85rem;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.08);
  overflow: hidden;
}
.main > .main-section section.section-card.section-card-reassurance .card > .card-body,
.main > .main-section section.section-card.section-card-argument .card > .card-body {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  min-height: 100%;
  padding: 1.35rem;
}
.main > .main-section section.section-card.section-card-reassurance .card > .card-body > .card-image,
.main > .main-section section.section-card.section-card-argument .card > .card-body > .card-image {
  flex: 0 0 auto;
  float: none;
  margin-right: 0;
}
.main > .main-section section.section-card.section-card-reassurance .card > .card-body > .card-image > img,
.main > .main-section section.section-card.section-card-argument .card > .card-body > .card-image > img {
  display: block;
  object-fit: cover;
}
.main > .main-section section.section-card.section-card-reassurance .card > .card-body > .card-text,
.main > .main-section section.section-card.section-card-argument .card > .card-body > .card-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  line-height: 1.5;
  margin: 0;
}
.main > .main-section section.section-card.section-card-reassurance .card:hover,
.main > .main-section section.section-card.section-card-argument .card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.12);
}
.main > .main-section section.section-card.section-card-reassurance.is-editable .editable,
.main > .main-section section.section-card.section-card-argument.is-editable .editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-reassurance.is-editable .item-subtitle:not(.editable),
.main > .main-section section.section-card.section-card-argument.is-editable .item-subtitle:not(.editable),
.main > .main-section section.section-card.section-card-reassurance.is-editable h2.item-title:not(.editable),
.main > .main-section section.section-card.section-card-argument.is-editable h2.item-title:not(.editable),
.main > .main-section section.section-card.section-card-reassurance.is-editable .card > .card-body > .card-text:not(.editable),
.main > .main-section section.section-card.section-card-argument.is-editable .card > .card-body > .card-text:not(.editable) {
  display: none !important;
}
.main > .main-section section.section-card.section-card-reassurance.is-editable h2.item-title.editable,
.main > .main-section section.section-card.section-card-argument.is-editable h2.item-title.editable {
  display: block;
}
.main > .main-section section.section-card.section-card-reassurance.is-editable h2.item-title.editable > input,
.main > .main-section section.section-card.section-card-argument.is-editable h2.item-title.editable > input {
  border: none;
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
  padding: 0;
  margin: 0;
  border-radius: 0;
  background-color: transparent;
  line-height: inherit;
  height: inherit;
}
.main > .main-section section.section-card.section-card-reassurance.is-editable .item-subtitle.editable > input,
.main > .main-section section.section-card.section-card-argument.is-editable .item-subtitle.editable > input {
  border: none;
  text-align: center;
  color: #444444;
  font-size: 1.2rem;
  padding: 0;
  margin: 0;
  border-radius: 0;
  background-color: transparent;
  line-height: inherit;
  height: inherit;
}
.main > .main-section section.section-card.section-card-reassurance.is-editable .card > .card-body > .card-text.editable,
.main > .main-section section.section-card.section-card-argument.is-editable .card > .card-body > .card-text.editable {
  max-height: inherit;
}
.main > .main-section section.section-card.section-card-reassurance .card {
  margin-bottom: 2rem;
}
.main > .main-section section.section-card.section-card-reassurance .card > .card-body > .card-image > img {
  width: 75px;
  height: 75px;
  border-radius: 50%;
}
.main > .main-section section.section-card.section-card-argument .card {
  margin-bottom: 2rem;
  padding: 0;
}
.main > .main-section section.section-card.section-card-argument .card > .card-body > .card-image > img {
  width: 125px;
  height: 125px;
  border-radius: .75rem;
}
.main > .main-section section.section-card.section-card-zoom,
.main > .main-section section.section-card.section-card-zoomrichtexthtml,
.main > .main-section section.section-card.section-card-video {
  padding: 4rem 0;
}
.main > .main-section section.section-card.section-card-zoom .editable,
.main > .main-section section.section-card.section-card-zoomrichtexthtml .editable,
.main > .main-section section.section-card.section-card-video .editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-zoom .not-editable,
.main > .main-section section.section-card.section-card-zoomrichtexthtml .not-editable,
.main > .main-section section.section-card.section-card-video .not-editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-zoom .item-title,
.main > .main-section section.section-card.section-card-zoomrichtexthtml .item-title,
.main > .main-section section.section-card.section-card-video .item-title {
  font-size: 1.4rem;
  text-transform: uppercase;
  padding: .5rem 0;
  font-weight: bold;
  border: none;
  margin: 0;
  background-color: transparent;
}
.main > .main-section section.section-card.section-card-zoom .item-description,
.main > .main-section section.section-card.section-card-zoomrichtexthtml .item-description,
.main > .main-section section.section-card.section-card-video .item-description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 8;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.5;
  border: none;
  margin: 0;
  background-color: transparent;
  padding: 0;
  font-weight: normal;
}
.main > .main-section section.section-card.section-card-zoom.is-editable .editable,
.main > .main-section section.section-card.section-card-zoomrichtexthtml.is-editable .editable,
.main > .main-section section.section-card.section-card-video.is-editable .editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-zoom.is-editable .not-editable,
.main > .main-section section.section-card.section-card-zoomrichtexthtml.is-editable .not-editable,
.main > .main-section section.section-card.section-card-video.is-editable .not-editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-zoom .item-image,
.main > .main-section section.section-card.section-card-zoomrichtexthtml .item-image {
  height: 315px;
  background-size: cover;
  background-position: center center;
  border-radius: 1rem;
}
.main > .main-section section.section-card.section-card-zoom .item-link,
.main > .main-section section.section-card.section-card-zoomrichtexthtml .item-link {
  max-width: 100px;
  margin: 0 0 0 auto;
}
.main > .main-section section.section-card.section-card-zoom.is-editable .item-link,
.main > .main-section section.section-card.section-card-zoomrichtexthtml.is-editable .item-link {
  max-width: initial;
  margin: 0;
}
.main > .main-section section.section-card.section-card-video .video-youtube > iframe {
  border-radius: 1rem;
}
.main > .main-section section.section-card.section-card-catalog {
  padding: 4rem 0;
}
.main > .main-section section.section-card.section-card-catalog .editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-catalog .not-editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-catalog .item-title {
  font-size: 2rem;
  width: 100%;
  display: block;
  text-align: center;
  border: none;
  margin: 0;
  font-weight: bold;
}
.main > .main-section section.section-card.section-card-catalog .item-subtitle {
  text-align: center;
  margin: 0;
  color: #444444;
  font-size: 1.2rem;
}
.main > .main-section section.section-card.section-card-catalog .item-description {
  max-width: 80%;
  margin: 1rem auto;
}
.main > .main-section section.section-card.section-card-catalog .card-group {
  margin-top: 2rem;
}
.main > .main-section section.section-card.section-card-catalog .card-article > .article-image {
  height: 250px;
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: bottom center;
  -webkit-transition: 1s ease-out;
  -moz-transition: 1s ease-out;
  -o-transition: 1s ease-out;
  transition: 1s ease-out;
}
.main > .main-section section.section-card.section-card-catalog .card-article > .card-body > .article-review {
  font-size: 1.2rem;
}
.main > .main-section section.section-card.section-card-catalog .card-article > .card-body > .article-review > i.is-not {
  color: #e1e1e1;
}
.main > .main-section section.section-card.section-card-catalog .card-article > .card-body > .article-review > i.is-yes {
  color: #f9d100;
}
.main > .main-section section.section-card.section-card-catalog .card-article > .card-body > .article-name {
  color: #000;
  font-size: 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  height: 40px;
}
.main > .main-section section.section-card.section-card-catalog .card-article > .card-body > .article-description {
  color: #000;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  height: 72px;
}
.main > .main-section section.section-card.section-card-catalog .card-article > .card-body > .card-price {
  text-align: right;
}
.main > .main-section section.section-card.section-card-catalog .card-article > .card-body > .card-price > span.article-price {
  font-size: 1.4rem;
  font-weight: bold;
  display: inline-block;
  line-height: 40px;
  margin-right: 1rem;
}
.main > .main-section section.section-card.section-card-catalog .card-article > .card-body > .card-price > button.article-btn-cart {
  border-radius: 100%;
  width: 35px;
  height: 35px;
  font-size: 1.2rem;
  text-align: center;
  padding: 0;
  margin-top: -10px;
}
.main > .main-section section.section-card.section-card-catalog .card-article:hover > .article-image {
  background-size: auto 110%;
}
.main > .main-section section.section-card.section-card-catalog.is-editable .editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-catalog.is-editable .not-editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-carousel {
  padding: 4rem 0;
}
.main > .main-section section.section-card.section-card-carousel .editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-carousel .not-editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-carousel .item-title {
  font-size: 2rem;
  width: 100%;
  display: block;
  text-align: center;
  border: none;
  margin: 0;
  font-weight: bold;
}
.main > .main-section section.section-card.section-card-carousel .item-subtitle {
  display: block;
  width: 80%;
  text-align: center;
  margin: 0 auto;
  border: none;
  color: #676767;
}
.main > .main-section section.section-card.section-card-carousel .item-description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 8;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.5;
  background-color: rgba(0, 0, 0, 0.05);
  padding: 1rem;
  border-radius: .5rem;
  max-width: 80%;
  margin: 1rem auto;
}
.main > .main-section section.section-card.section-card-carousel .carousel-gallery-container {
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
  height: 200px;
}
.main > .main-section section.section-card.section-card-carousel .carousel-gallery-container .gallery-content {
  width: 100%;
  overflow: hidden;
}
.main > .main-section section.section-card.section-card-carousel .carousel-gallery-container .gallery-content .content-image {
  display: inline-block;
  width: 200px;
  height: 100%;
  margin-right: 10px;
  text-align: center;
  line-height: 200px;
  font-size: 20px;
  border: none;
}
.main > .main-section section.section-card.section-card-carousel .carousel-gallery-container .gallery-content .content-image > .card {
  border-radius: 1rem;
  background-color: transparent;
}
.main > .main-section section.section-card.section-card-carousel .carousel-gallery-container .gallery-content .content-image > .card > img {
  width: 100%;
  border-radius: 1rem;
}
.main > .main-section section.section-card.section-card-carousel .carousel-gallery-container .gallery-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  cursor: pointer;
  padding: 10px;
}
.main > .main-section section.section-card.section-card-carousel .carousel-gallery-container .gallery-button.left {
  left: 10px;
}
.main > .main-section section.section-card.section-card-carousel .carousel-gallery-container .gallery-button.right {
  right: 10px;
}
.main > .main-section section.section-card.section-card-carousel.is-editable .editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-carousel.is-editable .not-editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-tutorial,
.main > .main-section section.section-card.section-card-linelink {
  padding: 4rem 0;
}
.main > .main-section section.section-card.section-card-tutorial .editable,
.main > .main-section section.section-card.section-card-linelink .editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-tutorial.is-editable .editable,
.main > .main-section section.section-card.section-card-linelink.is-editable .editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-tutorial.is-editable .not-editable,
.main > .main-section section.section-card.section-card-linelink.is-editable .not-editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-tutorial .item-title,
.main > .main-section section.section-card.section-card-linelink .item-title {
  font-size: 2rem;
  width: 100%;
  display: block;
  text-align: center;
  border: none;
  margin: 0;
  font-weight: bold;
  background-color: transparent;
}
.main > .main-section section.section-card.section-card-tutorial .item-subtitle,
.main > .main-section section.section-card.section-card-linelink .item-subtitle {
  display: block;
  width: 80%;
  text-align: center;
  margin: 0 auto;
  border: none;
  color: #676767;
  background-color: transparent;
}
.main > .main-section section.section-card.section-card-tutorial .item-description,
.main > .main-section section.section-card.section-card-linelink .item-description {
  padding: 1rem;
  text-align: center;
}
.main > .main-section section.section-card.section-card-tutorial .item-description.editable-content-richtext,
.main > .main-section section.section-card.section-card-linelink .item-description.editable-content-richtext {
  border: 1px solid rgba(0, 0, 0, 0.12);
}
.main > .main-section section.section-card.section-card-tutorial ul.nav-tabs {
  border: 0;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 2rem 0 0 0;
  padding-left: 0;
}
.main > .main-section section.section-card.section-card-tutorial ul.nav-tabs > li.nav-item > button.nav-link {
  background-color: rgba(0, 0, 0, 0.04);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 2rem;
  color: #202b3c;
  font-weight: 700;
  padding: .65rem 1rem;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-section section.section-card.section-card-tutorial ul.nav-tabs > li.nav-item > button.nav-link:hover,
.main > .main-section section.section-card.section-card-tutorial ul.nav-tabs > li.nav-item > button.nav-link:focus {
  background-color: rgba(0, 0, 0, 0.07);
  border-color: rgba(0, 0, 0, 0.14);
  outline: none;
}
.main > .main-section section.section-card.section-card-tutorial ul.nav-tabs > li.nav-item > button.nav-link.active {
  background-color: #182C60;
  border-color: #182C60;
  color: #fff;
  box-shadow: 0 8px 18px rgba(24, 44, 96, 0.22);
}
.main > .main-section section.section-card.section-card-tutorial .tab-content {
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 1rem;
  background-color: #fff;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.06);
  margin-top: 1rem;
  padding: 1.5rem;
}
.main > .main-section section.section-card.section-card-tutorial .tab-content > .tab-pane .item-description {
  text-align: left;
}
.main > .main-section section.section-card.section-card-tutorial .tab-content > .tab-pane .item-description.editable-content-richtext {
  border: 1px solid rgba(0, 0, 0, 0.12);
}
.main > .main-section section.section-card.section-card-linelink .card {
  background-color: transparent;
  border: none;
  border-radius: 0;
}
.main > .main-section section.section-card.section-card-linelink .card a.btn-primary {
  color: #fff;
  background-color: #182C60;
  border: 1px solid #fff;
  border-radius: 2rem;
  padding: .5rem;
  text-transform: uppercase;
  font-size: .8rem;
  font-weight: 600;
}
.main > .main-section section.section-card.section-card-bannersepare {
  background-size: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: 3s ease-out;
  -moz-transition: 3s ease-out;
  -o-transition: 3s ease-out;
  transition: 3s ease-out;
}
.main > .main-section section.section-card.section-card-bannersepare .editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-bannersepare.is-editable .editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-bannersepare.is-editable .not-editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-bannersepare .mask {
  height: 200px;
  background-color: rgba(0, 0, 0, 0.3);
}
.main > .main-section section.section-card.section-card-bannersepare .mask .item-title {
  text-align: center;
  font-size: 2rem;
  color: #fff;
  line-height: 180px;
  margin: 0;
  line-height: 200px;
}
.main > .main-section section.section-card.section-card-bannersepare .mask .item-title > a {
  color: #fff;
}
.main > .main-section section.section-card.section-card-bannersepare .mask input.item-title {
  width: 100%;
  background-color: transparent;
  font-weight: bold;
  line-height: normal !important;
}
.main > .main-section section.section-card.section-card-bannersepare:hover {
  background-size: 110%;
}
.main > .main-section section.section-card.section-card-accordion .accordion > .card {
  border: none;
  background-color: transparent;
  box-shadow: none;
}
.main > .main-section section.section-card.section-card-accordion .accordion > .card > .card-header {
  border: none;
  background-color: transparent;
  padding: 1rem;
  margin: 0;
}
.main > .main-section section.section-card.section-card-accordion .accordion > .card > .card-header button {
  color: #000;
  text-decoration: none;
  font-size: 1.2rem;
  text-transform: uppercase;
  padding: .5rem;
  font-weight: bold;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-section section.section-card.section-card-accordion .accordion > .card > .card-header button > i {
  float: right;
  rotate: 180deg;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-section section.section-card.section-card-accordion .accordion > .card > .card-header button.collapsed > i {
  float: right;
  rotate: 0deg;
}
.main > .main-section section.section-card.section-card-accordion .accordion > .card > .card-header button:hover {
  color: #182C60;
}
.main > .main-section section.section-card.section-card-accordion .accordion > .card .card-body {
  padding: 1rem 0;
}
.main > .main-section section.section-card.section-card-accordion .accordion > .card .card-body .item-description {
  padding: 0 8rem 0 3rem;
  border-left: 1px solid #818181;
  margin: 0 1rem 0 3rem;
  text-align: justify;
}
.main > .main-section section.section-card.section-card-accordion .accordion > .card .card-body .item-description.editable-content-richtext {
  border: 1px solid rgba(0, 0, 0, 0.12);
  margin-left: 3rem;
}
.main > .main-section section.section-card.section-card-accordion .editable {
  display: none !important;
}
.main > .main-section section.section-card.section-card-accordion .not-editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-accordion.is-editable .editable {
  display: block !important;
}
.main > .main-section section.section-card.section-card-accordion.is-editable .not-editable {
  display: none !important;
}
.main > .main-section form.form-content-section-add ul.section-type-list-group {
  list-style: none;
  padding: 0;
  margin: 0 0 1rem 0;
  display: block;
}
.main > .main-section form.form-content-section-add ul.section-type-list-group > li.type-list-item {
  display: inline-block;
  border: 1px solid #f0f0f0;
  padding: .25rem;
  border-radius: .5rem;
  width: 24%;
  min-width: 40px;
  cursor: pointer;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-section form.form-content-section-add ul.section-type-list-group > li.type-list-item:hover {
  border: 1px solid #182C60;
}
.main > .main-section form.form-content-section-add ul.section-type-list-group > li.type-list-item.active {
  pointer-events: none;
  border: 1px solid #182C60;
}
.main > .main-footer > .footer-section > .section-footer .block-copyright {
  font-size: x-small;
  font-weight: 600;
  color: #000;
  padding: 5px 0;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.main > .main-footer > .footer-section > .section-footer .block-copyright a {
  font-size: x-small;
  font-weight: 600;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-footer > .footer-section > .section-footer .block-copyright a > img.logo-cms {
  width: 40px;
  float: left;
  margin-right: 10px;
  padding-right: 10px;
  border-right: 1px solid #000;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-footer > .footer-section > .section-footer .block-copyright a > img.logo-cms:hover {
  filter: invert(1);
}
.main > .main-footer > .footer-section > .section-footer .block-legal-obligations {
  font-size: x-small;
  font-weight: 600;
  color: #000;
  padding: 5px 0;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  text-align: right;
}
.main > .main-footer > .footer-section > .section-footer .block-legal-obligations > span {
  width: 30px;
  float: right;
  padding: 5px 5px 5px 5px;
  background-color: #006395;
  margin: 0 0 0 15px;
  cursor: pointer;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-footer > .footer-section > .section-footer .block-legal-obligations > span > img {
  width: 100%;
  filter: invert(1);
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main > .main-footer > .footer-section > .section-footer .block-legal-obligations > span:hover {
  filter: invert(1);
}
.main > .main-footer > .footer-section > .section-footer .block-legal-obligations a {
  font-size: x-small;
  font-weight: 600;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
.main.is-loaded {
  opacity: 100%;
}
form.form-content-section-add {
  margin-bottom: 2rem;
}
form.form-content-section-add .section-add-type-description {
  margin: -0.35rem 0 1.25rem 2.4rem;
  padding: .85rem 1rem;
  border-left: 3px solid #182C60;
  border-radius: .65rem;
  background: rgba(24, 44, 96, 0.07);
  font-size: .86rem;
  font-weight: 500;
  line-height: 1.45;
  color: #4b5563;
}
form.form-content-section-add .section-add-card {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 1.25rem;
  box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.08);
  overflow: hidden;
}
form.form-content-section-add .section-add-header {
  padding: 1.5rem 1.75rem;
  background: linear-gradient(135deg, rgba(24, 44, 96, 0.12), #fff);
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
form.form-content-section-add .section-add-header .section-add-eyebrow {
  display: inline-flex;
  margin-bottom: .35rem;
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #182C60;
}
form.form-content-section-add .section-add-header h2 {
  margin: 0;
  font-size: 1.35rem;
  font-weight: 800;
  color: #1f2937;
}
form.form-content-section-add .section-add-header p {
  margin: .35rem 0 0 0;
  font-size: .9rem;
  color: #6b7280;
}
form.form-content-section-add .section-add-grid {
  display: grid;
  grid-template-columns: minmax(260px, 34%) 1fr;
  gap: 0;
}
form.form-content-section-add .section-add-type-panel,
form.form-content-section-add .section-add-fields-panel {
  padding: 1.5rem;
}
form.form-content-section-add .section-add-type-panel {
  background: #f8fafc;
  border-right: 1px solid rgba(0, 0, 0, 0.06);
}
form.form-content-section-add .section-add-panel-title {
  display: flex;
  align-items: center;
  gap: .65rem;
  margin-bottom: 1rem;
  color: #111827;
}
form.form-content-section-add .section-add-panel-title > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 999px;
  background: #182C60;
  color: #fff;
  font-size: .78rem;
  font-weight: 800;
}
form.form-content-section-add .section-add-panel-title > strong {
  font-size: .95rem;
  font-weight: 800;
}
form.form-content-section-add ul.section-type-list-group {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
}
form.form-content-section-add ul.section-type-list-group > li.type-list-item {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: .5rem;
  padding: .6rem;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: .85rem;
  background: #fff;
  cursor: pointer;
  overflow: hidden;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
form.form-content-section-add ul.section-type-list-group > li.type-list-item .type-content {
  display: flex;
  flex-direction: column;
  gap: .25rem;
}
form.form-content-section-add ul.section-type-list-group > li.type-list-item .type-image {
  display: block;
  font-size: .76rem;
  font-weight: 800;
  line-height: 1.2;
  color: #374151;
  text-align: center;
}
form.form-content-section-add ul.section-type-list-group > li.type-list-item .type-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
form.form-content-section-add ul.section-type-list-group > li.type-list-item .type-name {
  display: block;
  font-size: .6rem;
  font-weight: 700;
  line-height: 1.2;
  color: #374151;
  text-align: center;
}
form.form-content-section-add ul.section-type-list-group > li.type-list-item:hover {
  transform: translateY(-2px);
  border-color: rgba(24, 44, 96, 0.45);
  box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.08);
}
form.form-content-section-add ul.section-type-list-group > li.type-list-item.active {
  pointer-events: none;
  border-color: #182C60;
  box-shadow: 0 0 0 3px rgba(24, 44, 96, 0.18);
}
form.form-content-section-add ul.section-type-list-group > li.type-list-item.active:after {
  content: "✓";
  position: absolute;
  top: .45rem;
  right: .45rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.45rem;
  height: 1.45rem;
  border-radius: 999px;
  background: #182C60;
  color: #fff;
  font-size: .8rem;
  font-weight: 900;
}
form.form-content-section-add ul.section-type-list-group > li.type-list-item.active .type-name {
  color: #182C60;
}
form.form-content-section-add .section-add-field-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
form.form-content-section-add .section-add-field-grid .form-group {
  margin: 0;
}
form.form-content-section-add .section-add-field-grid .form-group.form-group-full {
  grid-column: auto;
}
form.form-content-section-add .section-add-field-grid .form-group label {
  display: block;
  margin-bottom: .35rem;
  font-size: .78rem;
  font-weight: 800;
  color: #374151;
}
form.form-content-section-add .section-add-field-grid .form-group .form-control {
  width: 100%;
  min-height: 44px;
  border: 1px solid #d1d5db;
  border-radius: .75rem;
  background: #fff;
  font-size: .9rem;
  -webkit-transition: all 333ms ease-out;
  -moz-transition: all 333ms ease-out;
  -o-transition: all 333ms ease-out;
  transition: all 333ms ease-out;
}
form.form-content-section-add .section-add-field-grid .form-group .form-control:focus {
  border-color: #182C60;
  box-shadow: 0 0 0 0.2rem rgba(24, 44, 96, 0.15);
}
form.form-content-section-add .section-add-field-grid .form-group textarea.form-control {
  min-height: 160px;
  resize: vertical;
}
form.form-content-section-add .section-add-field-grid .form-group small.form-text {
  margin-top: .35rem;
  font-size: .76rem;
}
form.form-content-section-add .section-add-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.25rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}
form.form-content-section-add .section-add-footer .section-add-help {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .8rem;
  color: #6b7280;
}
form.form-content-section-add .section-add-footer .section-add-help i {
  color: #182C60;
}
form.form-content-section-add .section-add-footer #formContentSectionAddSubmit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  min-height: 44px;
  padding: .65rem 1.15rem;
  border-radius: .75rem;
  font-weight: 800;
  white-space: nowrap;
}
form.form-content-section-add .section-add-footer #formContentSectionAddSubmit.disabled,
form.form-content-section-add .section-add-footer #formContentSectionAddSubmit:disabled {
  cursor: not-allowed;
  opacity: .65;
}
@media (max-width: 1199px) {
  form.form-content-section-add .section-add-grid {
    grid-template-columns: 1fr;
  }
  form.form-content-section-add .section-add-type-panel {
    border-right: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  }
  form.form-content-section-add ul.section-type-list-group {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow-x: visible;
    padding-bottom: 0;
  }
}
@media (max-width: 767px) {
  form.form-content-section-add .section-add-header {
    padding: 1.15rem;
  }
  form.form-content-section-add .section-add-header h2 {
    font-size: 1.15rem;
  }
  form.form-content-section-add .section-add-header p {
    font-size: .82rem;
  }
  form.form-content-section-add .section-add-type-panel,
  form.form-content-section-add .section-add-fields-panel {
    padding: 1rem;
  }
  form.form-content-section-add ul.section-type-list-group {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow-x: visible;
  }
  form.form-content-section-add ul.section-type-list-group > li.type-list-item {
    padding: .45rem;
  }
  form.form-content-section-add ul.section-type-list-group > li.type-list-item .type-name {
    font-size: .7rem;
  }
  form.form-content-section-add .section-add-field-grid {
    grid-template-columns: 1fr;
    gap: .85rem;
  }
  form.form-content-section-add .section-add-footer {
    align-items: stretch;
    flex-direction: column;
  }
  form.form-content-section-add .section-add-footer #formContentSectionAddSubmit {
    width: 100%;
  }
}
@media (max-width: 420px) {
  form.form-content-section-add ul.section-type-list-group {
    grid-template-columns: 1fr;
  }
}
/* 
For Mobile 
Lorsque l'écran (fenêtre du navigateur) devient plus petit que 768 pixels :
*/
@media screen and (max-width: 768px) {
  .main .main-section .section-center .block-page > .page-wrapper > .wrapper-content {
    float: inherit !important;
    width: 100% !important;
    padding: 0 !important;
  }
  .main .main-section .section-center .block-page > .page-wrapper > .wrapper-sidebar {
    float: inherit !important;
    width: 100% !important;
    padding: 0 !important;
    position: inherit !important;
    top: 0 !important;
    margin-top: 1rem !important;
  }
  .main .main-section .section-center section.section-card {
    padding-left: 0;
    padding-right: 0;
  }
  .main .main-section .section-center section.section-card .item-title {
    font-size: 1.65rem;
  }
  .main .main-section .section-center section.section-card .editable-content-richtext > .toolbar {
    align-items: stretch;
  }
  .main .main-section .section-center section.section-card .editable-content-richtext > .toolbar > .toolbar-group {
    border-right: 0;
    flex-wrap: wrap;
  }
  .main .main-section .section-center section.section-card.section-card-tutorial ul.nav-tabs {
    gap: .35rem;
  }
  .main .main-section .section-center section.section-card.section-card-tutorial ul.nav-tabs > li.nav-item > button.nav-link {
    font-size: .85rem;
    padding: .5rem .75rem;
  }
  .main .main-section .section-center section.section-card.section-card-tutorial .tab-content {
    padding: 1rem;
  }
  .main .main-section .section-center section.section-card.section-card-reassurance .card,
  .main .main-section .section-center section.section-card.section-card-argument .card {
    margin-top: 1.25rem;
  }
  .main .main-section .section-center section.section-card.section-card-reassurance .card > .card-body,
  .main .main-section .section-center section.section-card.section-card-argument .card > .card-body {
    align-items: center;
    flex-direction: column;
    padding: 1.25rem;
    text-align: center;
  }
  .main .main-section .section-center section.section-card.section-card-argument .card > .card-body > .card-image > img {
    width: 100%;
    max-width: 220px;
  }
  .chat-online {
    bottom: 10px;
    right: 10px;
  }
  .chat-online > .co-btn-open {
    width: 40px;
    height: 40px;
    line-height: 50px;
  }
  .chat-online > .co-btn-open > i {
    font-size: 2rem;
  }
  .chat-online > form {
    margin-left: 10px;
  }
  .chat-online > form > .card {
    width: 100%;
  }
  .mobile-hide {
    display: none;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
  }
}
body .back-to-top {
  position: fixed !important;
  top: auto !important;
  right: 24px !important;
  bottom: 24px !important;
  left: auto !important;
  z-index: 1080;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin: 0 !important;
  padding: 0 !important;
  border: 0;
  border-radius: 50%;
  appearance: none;
  background: var(--orange);
  color: #fff;
  box-shadow: 0 14px 32px rgba(16, 58, 120, 0.22);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(14px) scale(0.92);
  transition: opacity 0.24s ease, visibility 0.24s ease, transform 0.24s ease, background 0.24s ease, box-shadow 0.24s ease;
}
body .back-to-top.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}
body .back-to-top i {
  font-size: 32px;
  line-height: 1;
}
body .back-to-top:hover,
body .back-to-top:focus {
  background: var(--blue);
  color: #fff;
  box-shadow: 0 18px 38px rgba(16, 58, 120, 0.28);
}
body .back-to-top:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--orange) 42%, #fff);
  outline-offset: 4px;
}
@media (max-width: 680px) {
  body .back-to-top {
    right: 16px !important;
    bottom: 16px !important;
    width: 46px;
    height: 46px;
  }
  body .back-to-top i {
    font-size: 28px;
  }
}

/*# sourceMappingURL=index.min.css.map */
body .back-to-home {
	position: fixed !important;
	top: auto !important;
	right: 24px !important;
	bottom: 24px !important;
	left: auto !important;
	z-index: 1080;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin: 0 !important;
	padding: 0 !important;
	border: 0;
	border-radius: 50%;
	appearance: none;
	text-decoration: none;
	background: var(--blue);
	color: #fff;
	box-shadow: 0 14px 32px rgba(16, 58, 120, .22);
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(14px) scale(.92);
	transition: opacity .24s ease, visibility .24s ease, transform .24s ease, background .24s ease, box-shadow .24s ease;
}

body .back-to-home.visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0) scale(1);
}

body .back-to-home i {
	font-size: 24px;
	line-height: 1;
}

body .back-to-home:hover,
body .back-to-home:focus {
	background: var(--blue);
	color: #fff;
	box-shadow: 0 18px 38px rgba(16, 58, 120, .28);
}

body .back-to-home:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--orange) 42%, #fff);
	outline-offset: 4px;
}

@media (max-width: 680px) {
	body .back-to-home {
		right: 16px !important;
		bottom: 16px !important;
		width: 46px;
		height: 46px;
	}

	body .back-to-home i {
		font-size: 22px;
	}
}

body .back-to-top { bottom: 88px !important; }
@media (max-width: 680px) {
	body .back-to-top { bottom: 74px !important; }
}

/* Footer social icons and phone link. */
footer.main-footer .footer-socials a {
	width: 44px;
	height: 44px;
	padding: 0;
	font-size: 22px;
	line-height: 1;
}
footer.main-footer .footer-phone {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 8px 16px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .1);
	color: #fff;
	font-weight: 900;
	text-decoration: none;
	white-space: nowrap;
}
footer.main-footer .footer-phone:hover,
footer.main-footer .footer-phone:focus {
	background: var(--orange);
	color: #fff;
}
footer.main-footer .footer-socials a:focus-visible,
footer.main-footer .footer-phone:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 4px;
}