/***** gallery *****/

.ba-gallery > div.ba-gallery-row-wrapper div.ba-caption,
.ba-gallery > div.ba-gallery-row-wrapper > div.ba-gallery-content-wrapper > div > div:nth-child(1) > div div > div {
  background: linear-gradient(to bottom, transparent 10%, rgba(0,0,0,0.8) 80%)!important;
}

.ba-caption-content h3 {
  font-size: 1.3rem !important;
}

.ba-gallery .ba-pagination a.ba-btn {
  border-radius: 999px !important;
  font-weight: bold !important;
}

.ba-gallery .ba-goback h2,
.ba-gallery .ba-goback .categories-description,
.ba-gallery .ba-goback .categories-description a {
  color: var(--sppb-secondaire) !important;
}

.gallery-modal .ba-modal-header .zmdi-zoom-in {
  background-color: var(--sppb-secondaire) !important;
  color: #fff !important;
  border-radius: 50% !important;
  width: 2.7rem !important;
}

/***** réglage bug *****/

/* pas de scroll horizontal sur le body */
html, body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

/* réglages des images background */
section::before {
    content: "";
    position: absolute;   /* ou relative selon ton template */
    top: 0;
    left: 0;
    width: 100vw;         /* jamais plus large que le viewport */
    height: 100%;         /* adapter selon la section */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;          /* derrière le contenu */
}

/* Sécurité : empêcher que des enfants dépassent */
* {
    box-sizing: border-box;
    max-width: 100vw;
}

/* débug */

p {
  margin-bottom: 0px !important;
}

.footer {
  margin-top: 0px !important;
}

/* svg vague bas de section */

.sppb-shape-container.sppb-top-shape {
  transform: scaleX(-1) !important;
  transform-origin: center !important;
}

/* import de la police*/

@import url('https://fonts.googleapis.com/css2?family=Assistant:wght@400;600;700&display=swap');

/* bouton back to top*/

.back-to-top-link {
    color: var(--sppb-primaire) !important;
    background-color: var(--sppb-blanc) !important;
    border: 1px solid var(--sppb-secondaire) !important;
}

/***** fusée qui décolle footer *****/
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
  40% { transform: translateY(-15px); }
  60% { transform: translateY(-7px); }
}

@keyframes shake {
  0%, 100% { transform: translateX(0); }
  10%, 30%, 50%, 70%, 90% { transform: translateX(-3px); }
  20%, 40%, 60%, 80% { transform: translateX(3px); }
}

.fusee-footer {
  animation: bounce 2s infinite !important;
  display: inline-block !important;
}

.btn-fusee:hover ~ .fusee-footer,
.btn-fusee:hover + .fusee-footer,
.btn-fusee:hover .fusee-footer {
  animation: shake 0.5s infinite !important;
}

/***** cercle fond icone *****/
.cercle-rose .fas {
  width: 40px !important;
  height: 40px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-radius: 50% !important;

  background: linear-gradient(
    135deg,
    var(--sppb-secondaire),
    var(--sppb-secondaire-hover)
  ) !important;

  font-size: 25px !important; /* ta taille icône */
  line-height: 1 !important;

  padding: 0 !important;
}

/***** bouton *****/

/* Bouton principal inversé */
.btn-prim-inv,
#btn-GficVR95c0RJPkNKiteEV0,
#btn-6A4bwWzJYX9whxZT8VnC71 {
  display: inline-flex !important;
  align-items: center !important;
  padding: 10px 15px !important;
  background-color: var(--sppb-secondaire) !important;
  color: var(--sppb-blanc) !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 6px rgba(0,0,0,0.3);
  white-space: nowrap;
  line-height: 1;
}

.btn-prim-inv:hover,
#btn-GficVR95c0RJPkNKiteEV0:hover,
#btn-6A4bwWzJYX9whxZT8VnC71:hover {
  background-color: var(--sppb-secondaire-hover) !important;
}

/* Icône (cercle + fusée) */
.btn-prim-inv i,
#btn-GficVR95c0RJPkNKiteEV0 i,
#btn-6A4bwWzJYX9whxZT8VnC71 i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  background-color: #fff;
  border-radius: 50%;
  background-image: url('/files/2026/02/16/favicon-bleu.svg');
  background-size: 65%;
  background-repeat: no-repeat;
  background-position: calc(50% - 1px) center;

  flex-shrink: 0;
  font-size: 0;
  line-height: 0;
  transform: rotate(-25deg) scale(1);
  transition: transform 0.7s cubic-bezier(.22,1,.36,1);
}

.btn-prim-inv:hover i,
#btn-GficVR95c0RJPkNKiteEV0:hover i,
#btn-6A4bwWzJYX9whxZT8VnC71:hover i {
  transform: rotate(365deg) scale(1.15);
}

/* Bouton principal */

.btn-prim,
#btn-17719227053640,
#btn-NgfPzjXy_9OrTZ_T5ZYFy0,
#btn-HAdFnLji1njtYBX6XpyqJ0 {
  display: inline-flex !important;
  align-items: center !important;
  padding: 10px 15px !important;
  background-color: var(--sppb-primaire) !important;
  color: var(--sppb-blanc) !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 6px rgba(0,0,0,0.3);
  white-space: nowrap;
  line-height: 1;
}

.btn-prim:hover,
#btn-17719227053640:hover,
#btn-NgfPzjXy_9OrTZ_T5ZYFy0:hover,
#btn-HAdFnLji1njtYBX6XpyqJ0:hover {
  background-color: var(--sppb-primaire-hover) !important;
}

/* Icône (cercle + fusée) */
.btn-prim i,
#btn-17719227053640 i,
#btn-HAdFnLji1njtYBX6XpyqJ0 i,
#btn-NgfPzjXy_9OrTZ_T5ZYFy0 i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  background-color: #fff;
  border-radius: 50%;
  background-image: url('/files/2026/02/12/favicon-fastnet.svg');
  background-size: 65%;
  background-repeat: no-repeat;
  background-position: calc(50% - 1px) center;

  flex-shrink: 0;
  font-size: 0;
  line-height: 0;
  transform: rotate(-25deg) scale(1);
  transition: transform 0.7s cubic-bezier(.22,1,.36,1);
}

.btn-prim:hover i,
#btn-17719227053640:hover i,
#btn-NgfPzjXy_9OrTZ_T5ZYFy0:hover i,
#btn-HAdFnLji1njtYBX6XpyqJ0:hover i {
  transform: rotate(365deg) scale(1.15);
}

/* Bouton secondaire */
.btn-sec,
#btn-17719227053641,
#btn-HAdFnLji1njtYBX6XpyqJ1{
  display: inline-flex !important;
  align-items: center !important;
  padding: auto 15px !important;
  height: 52px !important;
  background-color: var(--sppb-secondaire) !important;
  color: var(--sppb-blanc) !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 6px rgba(0,0,0,0.3);
  white-space: nowrap;
  line-height: 1;
}

.btn-sec:hover,
#btn-17719227053641:hover,
#btn-HAdFnLji1njtYBX6XpyqJ1:hover {
  background-color: var(--sppb-secondaire-hover) !important;
}

/* Bouton blanc */
.btn-blanc,
#btn-NgfPzjXy_9OrTZ_T5ZYFy1,
#btn-GficVR95c0RJPkNKiteEV1,
#btn-6A4bwWzJYX9whxZT8VnC70 {
  display: inline-flex !important;
  align-items: center !important;
  padding: auto 15px !important;
  height: 52px !important;
  background-color: var(--sppb-blanc) !important;
  color: var(--sppb-primaire) !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 6px rgba(0,0,0,0.3);
  white-space: nowrap;
  line-height: 1;
}

.btn-blanc:hover,
#btn-NgfPzjXy_9OrTZ_T5ZYFy1:hover,
#btn-GficVR95c0RJPkNKiteEV1:hover,
#btn-6A4bwWzJYX9whxZT8VnC70:hover {
  background-color: var(--sppb-gris-clair) !important;
  color: var(--sppb-primaire-hover) !important;
}

/* bouton full width */

.btn-fw {
  display: inline-flex !important;
  align-items: center !important; /* centrage vertical */
  justify-content: center !important; /* centrage horizontal */
  text-align: center !important;

  padding: 0 15px !important; /* padding vertical 0, horizontal 15px */
  width: 100% !important;
  height: 52px !important;

  border-radius: 999px !important;
  white-space: nowrap;
  line-height: 1;
}

/***** elements decoratifs *****/

/* image icone 70px */
.iconimg img{
  height: 70px !important;
  width: auto !important;
}

/* card fond blanc */
.card {
  background-color: var(--sppb-blanc) !important;
  border-radius: 20px !important;
  padding: 15px !important;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3) !important;
  transition: transform 0.3s ease !important;
  width: 100% !important;
  height: 80px !important; /* optionnel, pour que la carte ait une hauteur minimale */

  display: flex !important;
  flex-direction: column !important; /* empile verticalement */
  justify-content: center !important; /* centrage vertical */
  align-items: center !important; /* centrage horizontal */
  text-align: center !important; /* texte centré */
}

.card img {
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
}

.card p {
  margin-top: 8px !important; /* petit espace entre image et texte */
}

.card:hover {
  transform: scale(1.05) !important;
}

/* card taille libre */
.card-lib {
  position: relative !important;
  
  background-color: var(--sppb-blanc) !important;
  border-radius: 20px !important;
  padding: 15px !important;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3) !important;
  transition: transform 0.3s ease !important;
  width: 100% !important;
}

.card-lib:hover {
  transform: scale(1.05) !important;
}

.card-lib img {
  margin-top: 5px !important;
}

/* Classe pour soulignement avec courbe fluide - 100% responsive */
.underline-wave {
  position: relative;
  display: inline-block;
}

/* Défaut Rose */

.underline-wave::after {
  content: '';
  position: absolute;
  bottom: 3px;
  left: 0;
  width: 100%;
  height: 6px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 10' preserveAspectRatio='none'%3E%3Cpath d='M0 5 Q25 0, 50 5 T100 5' stroke='%23EF476F' stroke-width='5' fill='none' opacity='0.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  opacity: 0.6;
  pointer-events: none;
}

/* Variante bleu */

.underline-wave-blue {
  position: relative;
  display: inline-block;
}

.underline-wave-blue::after {
  content: "" !important; /* indispensable */
  position: absolute;
  left: 0;
  bottom: 0; /* place l’underline sous le texte */
  width: 100%;
  height: 5px; /* hauteur de l’underline */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 10' preserveAspectRatio='none'%3E%3Cpath d='M0 5 Q25 0, 50 5 T100 5' stroke='%231446A0' stroke-width='5' fill='none' opacity='0.5'/%3E%3C/svg%3E");
  background-size: cover;
  background-repeat: no-repeat;
}

/* Variante blanc */

.underline-wave-white {
  position: relative;
  display: inline-block;
}

.underline-wave-white::after {
  content: '';
  position: absolute;
  bottom: 3px;
  left: 0;
  width: 100%;
  height: 8px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 10' preserveAspectRatio='none'%3E%3Cpath d='M0 5 Q25 0, 50 5 T100 5' stroke='white' stroke-width='5' fill='none' opacity='0.6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  opacity: 0.6;
  pointer-events: none;
}

/* Variante triple vague */
.underline-wave-triple {
  position: relative;
  display: inline-block;
}

.underline-wave-triple::after {
  content: '';
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 8px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 10' preserveAspectRatio='none'%3E%3Cpath d='M0 5 Q16.5 0, 33 5 Q50 10, 66 5 Q83 0, 100 5 Q116.5 10, 133 5 Q141.5 0, 150 5' stroke='%23EF476F' stroke-width='5' fill='none' opacity='1'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  opacity: 0.6;
  pointer-events: none;
}

/* fusée animée hero */

/* Conteneur global : c'est lui qu'on anime */
.rocket-flow {
  position: relative;
  display: block;       /* block pour que margin auto fonctionne */
  width: 120px;         /* largeur fusée + boucle */
  height: 180px;        /* hauteur totale */
  margin: 0 auto;       /* centre horizontalement */
  animation: rocketFloat 4s ease-in-out infinite;
}

/* Fusée */
.rocket-flow svg {
  width: 100%;
  height: auto;
  display: block;
}

/* Boucle sous la fusée */
.rocket-boucle {
  position: absolute;
  width: 55px; /* ajuste ici */
  bottom: -25px; /* ajuste verticalement */
  left: 67%;
  transform: translateX(-50%);
  pointer-events: none;
  opacity: 0.9;
}

/* Animation plus naturelle */
@keyframes rocketFloat {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}

/*** surligne ***/
/* BLEU */
.surligne-bleu {
  color: var(--sppb-primaire) !important;
  font-weight: 700 !important;
  position: relative;
  display: inline-block;
  padding: 2px 5px;
  border-radius: 10px;
  overflow: hidden;
  line-height: 1;
  vertical-align: -0.3em;
}

.surligne-bleu::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--sppb-primaire);
  opacity: 0.1;
  border-radius: 10px;
  transform: scaleX(0);
  transform-origin: left;
  animation: surligneReveal 0.8s ease forwards;
  z-index: 0;
}

/* ROSE */
.surligne-rose {
  color: var(--sppb-secondaire);
  font-weight: 700 !important;
  position: relative;
  display: inline-block;
  padding: 2px 5px;
  border-radius: 10px;
  overflow: hidden;
  line-height: 1;
  vertical-align: -0.3em;
}

.surligne-rose::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--sppb-secondaire);
  opacity: 0.1;
  border-radius: 10px;
  transform: scaleX(0);
  transform-origin: left;
  animation: surligneReveal 0.8s ease forwards;
  z-index: 0;
}

/* BLANC */
.surligne-blanc {
  color: var(--sppb-gris-clair);
  font-weight: 700 !important;
  position: relative;
  display: inline-block;
  padding: 2px 5px;
  border-radius: 10px;
  overflow: hidden;
  line-height: 1;
  vertical-align: -0.3em;
}

.surligne-blanc::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--sppb-gris-clair);
  opacity: 0.1;
  border-radius: 10px;
  transform: scaleX(0);
  transform-origin: left;
  animation: surligneReveal 0.8s ease forwards;
  z-index: 0;
}

/* Animation commune */
@keyframes surligneReveal {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}

/***** images *****/

img[src*="etoiles.svg"] {
  transform: translateX(-20px);
}

/***** ajustements de la structure native du template cassiopeia *****/

body {
    overflow-x: hidden !important;
}

a {
  text-decoration: none !important;
}

.site-grid {
  margin-bottom: 0 !important;
}

.container-component>*+* {
  margin-top: 0em !important;
}

body.wrapper-fluid .site-grid {
  grid-gap: 0em !important;
}

#system-message-container joomla-alert {
    width: 50% !important;
    margin: 0 auto !important;
}

.site.error_site .container-component>:first-child {
  margin-top: 0 !important;
}

div.users-mfa-captive.card.card-body {
  height: auto !important;
}

/***** ajustements de structure pour les pages, composants et liens de menus qui ne sont PAS de type PAGE BUILDER *****/

main div#jmap_sitemap,
div.com-content-category-blog.blog,
div.com-content-article.item-page,
div.com-content-category.category-list,
div.item-page.page-blog-submit,
.page-blog-submit div.edit.item-page {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 50px 15px 50px 15px;
}

@media (min-width: 1400px) {
  main div#jmap_sitemap,
  div.com-content-category-blog.blog,
  div.com-content-article.item-page,
  div.com-content-category.category-list,
  div.item-page.page-blog-submit,
  .page-blog-submit div.edit.item-page {
    max-width: 1320px;
  }
  
}

@media (max-width: 1200px) {
  main div#jmap_sitemap,
  div.com-content-category-blog.blog,
  div.com-content-article.item-page,
  div.com-content-category.category-list,
  div.item-page.page-blog-submit,
  .page-blog-submit div.edit.item-page {
    max-width: 1140px;
  }
}

@media (max-width: 992px) {
  main div#jmap_sitemap,
  div.com-content-category-blog.blog,
  div.com-content-article.item-page,
  div.com-content-category.category-list,
  div.item-page.page-blog-submit,
  .page-blog-submit div.edit.item-page {
    max-width: 960px;
  }
}

@media (max-width: 768px) {
  main div#jmap_sitemap,
  div.com-content-category-blog.blog,
  div.com-content-article.item-page,
  div.com-content-category.category-list,
  div.item-page.page-blog-submit,
  .page-blog-submit div.edit.item-page {
    max-width: 720px;
  }
}

@media (max-width: 576px) {
  main div#jmap_sitemap,
  div.com-content-category-blog.blog,
  div.com-content-article.item-page,
  div.com-content-category.category-list,
  div.item-page.page-blog-submit,
  .page-blog-submit div.edit.item-page {
    max-width: 540px;
  }
}

/***** mon espace : ne rien modifier dans les classes ci-dessous *****/

div.com-users-login,
.page-monespace-login .mod-login,
.page-monespace-login-reset form,
.page-monespace-password-reset form {
  margin: 0 auto !important;
  padding: 50px 15px 50px 15px;
}

@media (max-width: 767px){
  div.com-users-login,
  .page-monespace-login .mod-login,
  .page-monespace-login-reset form,
  .page-monespace-password-reset form {
    width: 90%;
  }
}

@media (min-width: 768px){
  div.com-users-login,
  .page-monespace-login .mod-login,
  .page-monespace-login-reset form,
  .page-monespace-password-reset form {
    width: 60%;
  }
}

@media (min-width: 991px){
  div.com-users-login,
  .page-monespace-login .mod-login,
  .page-monespace-login-reset form,
  .page-monespace-password-reset form {
    width: 50%;
  }
}

@media (min-width: 1199px){
  div.com-users-login,
  .page-monespace-login .mod-login,
  .page-monespace-login-reset form,
  .page-monespace-password-reset form {
    width: 40%;
  }
}

.page-monespace-login .btn-primary {
  background-color: var(--btn-bg);
  color: var(--btncolor);
}

.page-monespace-login .btn-primary:hover {
  background-color: var(--btn-hover-bg);
  color: var(--btn-hover-color);
}

.page-monespace-login-reset legend,
.page-monespace-password-reset legend {
  margin-bottom: 1rem !important;
}

/***** bouton d'édition des pages du page builder *****/

#sp-page-builder .sp-pagebuilder-page-edit {
  left: 20px !important;
  right: auto !important;
  z-index: 10 !important;
  background-color: #760b0b !important;
  border: 1px solid #760b0b !important;
  color: #ffffff !important;
  padding: 10px 12px !important;
}

#sp-page-builder .sp-pagebuilder-page-edit:hover {
  background-color: #ffffff !important;
  border: 1px solid #760b0b !important;
  color: #760b0b !important;
}

/***** configuration du menu PC *****/

/*#column-wrap-id-1770885600264 {
    width: 1019px !important;
    flex-basis: auto !important;
    margin: 0px auto !important;
}*/

.dj-megamenu-modern {
  justify-content: center !important;
}

/* mise en forme des liens du niveau 0 */

/* bouton header */

#dj-megamenu123 .bouton-header,
#dj-megamenu123offcanvas .bouton-header:hover {
  background-color: transparent !important;
}

#dj-megamenu123 .bouton-header,
#dj-megamenu123offcanvas .bouton-header{
  background-color: var(--sppb-secondaire) !important;
    color: white !important;
    padding: 5px 15px !important;
    height: 40px !important;
    display: inline-flex;
    align-items: center;
    border-radius: 999px !important;
  transition: all 0.3s ease-in-out;
}

#dj-megamenu123offcanvas .bouton-header{
  margin-left: 20px !important;
}

#dj-megamenu123 .bouton-header:hover,
#dj-megamenu123offcanvas .bouton-header:hover {
  background-color: var(--sppb-secondaire-hover) !important;
  color: var(--sppb-blanc) !important;
}

/* liens */

.dj-megamenu-modern li a.dj-up_a {
  font-family: Assistant !important; /* ajuster ce paramètre en fonction de la famille de police souhaitée */
  font-weight: 700 !important;
  font-size: 18px !important;
  text-transform: uppercase !important;
  padding: 0 30px !important; /* ajuster ce paramètre en fonction de l'espacement souhaité entre les liens du menu */
}

/***** configuration du menu mobile *****/

/** ajustements pour surcharger les paramètres par défaut du module qui gère le menu ***/

#dj-megamenu123offcanvas .dj-offcanvas-top {
  background: transparent !important;
  margin-bottom: -53px !important;
}

#dj-megamenu123mobile .dj-mobile-open-btn:hover,
#dj-megamenu123mobile .dj-mobile-open-btn:focus {
  background-color: rgba(0, 0, 0, 0) !important;
}

.dj-offcanvas-logo {
  padding: 20px !important;
}

.dj-offcanvas-logo img {
  max-width: 60% !important; /* ajuster ce paramètre en fonction de la taille du logo souhaitée */
}

/*** bouton pour ouvrir le menu mobile ***/

/* désactivation de l'icone d'origine */
.dj-mobile-open-btn.dj-fa-0 .dj-mobile-open-icon:before {
  content: "" !important;
}

/* création de la structure du bouton */
.dj-mobile-open-icon {
  width: 30px !important;
  height: 22px !important;
  position: relative !important;
  display: inline-block !important; 
}

/* mise en forme des 3 barres du burger menu */
.dj-mobile-open-icon {
  width: 30px !important;
  height: 22px !important;
  background:
    linear-gradient(var(--body-color),var(--body-color)) 0 0 / 100% 2px no-repeat,
    linear-gradient(var(--body-color),var(--body-color)) 0 9px / 70% 2px no-repeat,
    linear-gradient(var(--body-color),var(--body-color)) 0 18px / 85% 2px no-repeat !important;
}

/* animation légère lors du clic sur le bouton */
.dj-mobile-open-btn:hover .dj-mobile-open-icon {
  background-position:
    2px 0,
    0 9px,
    4px 18px !important;
}

/*** bouton pour fermer le menu mobile ***/

/* désactivation de l'icone d'origine */
.dj-fa-0 .dj-offcanvas-close-btn .dj-offcanvas-close-icon:before {
  content: "" !important;
}

/* création de la structure du bouton */
.dj-offcanvas-close-icon {
  width: 30px !important;
  height: 30px !important;
  position: relative !important;
  display: inline-block !important;
  cursor: pointer !important;
}

/* mise en forme des 2 barres du bouton */
.dj-offcanvas-close-icon::before,
.dj-offcanvas-close-icon::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 30px !important;
  height: 1.5px !important;
  border-radius: 2px !important;
  background: var(--body-color) !important; /* ajuster ce paramètre en fonction des couleurs choisies */
  transform-origin: center !important;
  transition: transform 0.3s ease, background 0.3s ease !important;
}

/* animations */
.dj-offcanvas-close-icon::before {
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

.dj-offcanvas-close-icon::after {
  transform: translate(-50%, -50%) rotate(-45deg) !important;
}

.dj-offcanvas-close-btn:hover .dj-offcanvas-close-icon::before,
.dj-offcanvas-close-btn:hover .dj-offcanvas-close-icon::after {
  transform: translate(-50%, -50%) rotate(135deg) !important;
}

/*** mise en forme des liens ***/

ul li.dj-mobileitem>a {
  border-top: none !important;
  font-size: 16px !important; /* ajuster ce paramètre en fonction de la taille de police souhaitée */
  font-family: Roboto !important; /* ajuster ce paramètre en fonction de la famille de police souhaitée */
  padding: 20px 25px !important;
}

/* icône pour les liens de menus qui ont des sous menus */
ul.dj-mobile-light li.dj-mobileitem.parent >a span.toggler {
  padding: 10px 25px !important;
}

.dj-fa-0 ul.dj-mobile-light li.dj-mobileitem.parent >a span.toggler:before {
  content: "\f054" !important;
  transition: transform 0.3s ease !important;
}

.dj-fa-0 ul.dj-mobile-light li.dj-mobileitem.parent.active > a span.toggler:before {
  transform: rotate(90deg) !important;
}

/***** menu client front-end : ne rien modifier dans les classes ci-dessous *****/

/* structure globale */

.box-frontend-menu-client {
  z-index: 100000 !important;
  background-color: #760b0b !important;
}

.box-frontend-menu-client li.metismenu-item::before {
  content: "\f192";
  font-family: "Font Awesome 6 Free";
  font-weight: 500;
  display: inline-block;
  margin-right: 0.5rem;
}

.box-frontend-menu-client .metismenu.mod-menu .metismenu-item {
  font-size: 1rem !important;
  color: #fff !important;
}

.box-frontend-menu-client .metismenu.mod-menu .metismenu-item>a:focus,
.box-frontend-menu-client .metismenu.mod-menu .metismenu-item>button:focus {
  outline-offset: 0px !important;
  outline: 0px solid !important;
}

.box-frontend-menu-client nav {
  margin-top: 0em !important;
  margin-bottom: 0em !important;
}

/* structure mobile */

.box-frontend-menu-client .navbar-toggler::after {
  content: "ADMIN" !important;
  padding-left: 5px !important;
  color: #ffffff !important;
}

.box-frontend-menu-client .navbar-toggler:focus {
  box-shadow: 0 0 0 0 !important;
}

/* ajustements pour les sous menus de niveau 1 */

.box-frontend-menu-client .metismenu.mod-menu .mm-collapse {
  background-color: #760b0b !important;
}

.box-frontend-menu-client .metismenu>li.level-1>ul {
  min-width: 15rem !important;
  color: #ffffff !important;
}

/***** blog natif joomla *****/

/* page qui affiche la liste de tous les articles */

.com-content-category-blog__item.blog-item .item-content .icons .float-end {
  float: none !important;
  margin: 15px 0 15px 0 !important;
}

@media (max-width: 767px) {
  .com-content-category-blog__navigation .com-content-category-blog__counter {
    text-align: center !important;
  }
  .com-content-category-blog__navigation .pagination {
    display: flex !important;
    justify-content: center !important;
  }
}

/* page détaillée d'un article */

.com-content-article.item-page .icons .float-end {
  float: none !important;
  margin: 15px 0 15px 0 !important;
}

/* formulaire qui permet d'ajouter un article depuis le front-end : ne rien modifier dans les classes ci-dessous */

.page-blog-submit div.control-group label#jform_images_image_intro_caption-lbl,
.page-blog-submit input#jform_images_image_intro_caption,
.page-blog-submit div.control-group label#jform_images_image_fulltext_caption-lbl,
.page-blog-submit input#jform_images_image_fulltext_caption,
.page-blog-submit label#jform_images_float_intro-lbl,
.page-blog-submit input#jform_images_float_intro,
.page-blog-submit label#jform_images_float_fulltext-lbl,
.page-blog-submit input#jform_images_float_fulltext,
.page-blog-submit div.control-label label#jform_images_image_intro_alt_empty-lbl,
.page-blog-submit div.control-label label#jform_images_image_fulltext_alt_empty-lbl,
.page-blog-submit div.form-check.form-check-inline input#jform_images_image_intro_alt_empty,
.page-blog-submit div.form-check.form-check-inline input#jform_images_image_fulltext_alt_empty,
.page-blog-submit div.control-group #jform_images_image_intro_alt_empty-desc,
.page-blog-submit div.control-group #jform_images_image_fulltext_alt_empty-desc,
.page-blog-submit label#jform_urls_urla-lbl,
.page-blog-submit input#jform_urls_urla,
.page-blog-submit label#jform_urls_urlb-lbl,
.page-blog-submit input#jform_urls_urlb,
.page-blog-submit label#jform_urls_urlc-lbl,
.page-blog-submit input#jform_urls_urlc,
.page-blog-submit label#jform_urls_urlatext-lbl,
.page-blog-submit input#jform_urls_urlatext,
.page-blog-submit label#jform_urls_urlbtext-lbl,
.page-blog-submit input#jform_urls_urlbtext,
.page-blog-submit label#jform_urls_urlctext-lbl,
.page-blog-submit input#jform_urls_urlctext,
.page-blog-submit label#jform_featured-lbl,
.page-blog-submit select#jform_featured,
.page-blog-submit label#jform_created_by_alias-lbl,
.page-blog-submit input#jform_created_by_alias,
.page-blog-submit label#jform_access-lbl,
.page-blog-submit select#jform_access,
.page-blog-submit label#jform_note-lbl,
.page-blog-submit input#jform_note,
.page-blog-submit label#jform_version_note-lbl,
.page-blog-submit input#jform_version_note {
    display: none !important;
}

/***** pied de page : ne rien modifier dans les classes ci-dessous *****/

.container-footer .grid-child {
  max-width: 100% !important;
  display: block !important;
  padding: 0 !important;
}

.back-to-top-link {
  border-radius: 100px !important;
}
