
body{
    background-color: transparent !important;
	font-family: 'Alexandria', sans-serif;
	color: #000000;
	font-weight: 200 !important;
	padding-top: 80px;
}
/* ============================   Font  ============================ */


h1,
.heading-1 {
  font-size: 1.875rem; /* 30px */
  line-height: 1.1;
}

@media (min-width: 576px) {
  h1,
  .heading-1 {
    font-size: 2.5rem;
  }
}

@media (min-width: 768px) {
  h1,
  .heading-1 {
    font-size: 2.5rem;
  }
}

@media (min-width: 992px) {
  h1,
  .heading-1 {
    font-size: 2.75rem;
  }
}

@media (min-width: 1200px) {
  h1,
  .heading-1 {
    font-size: 3rem;
  }
}
@media (min-width: 1400px) {
  h1,
  .heading-1 {
    font-size: 3.5rem;
  }
}

/* H2 */
h2,
.heading-2 {
  font-size: 1.625rem; /* 26px */
  line-height: 1.25;
}

@media (min-width: 768px) {
  h2,
  .heading-2 {
    font-size: 1.875rem; /* 30px */
  }
}

@media (min-width: 992px) {
  h2,
  .heading-2 {
    font-size: 2.375rem; /* 38px */
  }
}

@media (min-width: 1200px) {
  h2,
  .heading-2 {
    font-size: 2.5rem; /* 48px */
  }
}

/* H3 */
h3,
.heading-3 {
  font-size: 1.5rem; /* 24px */
  line-height: 1.27778;
}

@media (min-width: 768px) {
  h3,
  .heading-3 {
    font-size: 1.75rem; /* 28px */
  }
}

@media (min-width: 992px) {
  h3,
  .heading-3 {
    font-size: 2rem; /* 32px */
  }
}

@media (min-width: 1200px) {
  h3,
  .heading-3 {
    font-size: 2.25rem; /* 36px */
  }
}

/* H4 */
h4,
.heading-4 {
  font-size: 1.125rem; /* 18px */
  line-height: 1.25;
}

@media (min-width: 768px) {
  h4,
  .heading-4 {
    font-size: 1.25rem; /* 20px */
  }
}

@media (min-width: 992px) {
  h4,
  .heading-4 {
    font-size: 1.375rem; /* 22px */
  }
}

@media (min-width: 1200px) {
  h4,
  .heading-4 {
    font-size: 1.5rem; /* 24px */
  }
}

/* H5 */
h5,
.heading-5 {
  font-size: 1rem; /* 16px */
  line-height: 1.5;
}

@media (min-width: 768px) {
  h5,
  .heading-5 {
    font-size: 1.125rem; /* 18px */
  }
}

/* H6 */
h6,
.heading-6 {
  font-size: 1.125rem; /* 18px */
  line-height: 1.5;
}

@media (min-width: 1200px) {
  h6,
  .heading-6 {
    font-size: 1rem; /* 16px */
  }
}

p {
  font-size: 1rem;
}

@media (min-width: 1200px) {
  p {
    font-size: 1.125rem;
  }
}

/* Small */
small,
.small {
  display: block;
  font-size: 0.75rem; /* 12px */
  line-height: 1.5;
}

.title-center{
	font-family: 'Alexandria', sans-serif;
	text-align: center !important;
}
.title-left{
	font-family: 'Alexandria', sans-serif;
	text-align: left !important;
}
.home-text{
	font-weight: 700 !important;
}
.home-text-color{
	font-weight: 700 !important;
	color: #008D93;
}



/* ============================   container-fluid  ============================ */
.container-fluid {
  width: 100%;
  max-width: 100%;
  padding-left: 15px;
  padding-right: 15px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 1400px) {
  .container-fluid {
  padding-left: 60px;
  padding-right: 60px;
}
}
@media (min-width: 992px) {
  .section {
  padding-left: 60px;
  padding-right: 60px;
}
}
.bg-1{
  background-color: #f9981c;
  }
.bg-2 {
  background-color: rgb(249 152 28 / 10%);
}

.bg-3{
  background-color: #f9f9f9;
  }
.fullscreen {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
	z-index:-1;
}
.page-header {
    background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../img/panoramique.png) center center no-repeat;
    background-size: cover;
}
.page-header h1 {
    font-size: 2rem;
	font-weight: 700 !important;
}
/* ============================   Header  ============================ */
.menu-toggle {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 30px;
    height: 30px;
    cursor: pointer;
    z-index: 1000;
    background: transparent;
    border: none;
    padding: 0;
}
.menu-toggle span {
    display: block;
    width: 100%;
    height: 3px;
    background-color: #000000;
    border-radius: 2px;
    transition: all 0.3s ease;
}

.logox-img{
    width: auto;
    height: 55px;
}


.navbar{
  padding: 1rem 1rem;
  border-bottom: 1px solid #e5e5e5 !important;
}

header.navbar{
  position: sticky;
  top: 0;
  z-index: 999;
  background: #fff; /* important */
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

header.navbar{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background: #fff;
}


.nav-left {
  display: flex;
  align-items: center;
  gap: 20px;
}

.nav-right {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media (max-width: 992px) {
.nav-right {
  display: none;
}
}
.nav-links {
  display: flex;
  gap: 30px;
}

.nav-links a {
  color: #000000;
  text-decoration: none;
  font-size: 1rem;
}
.nav-links a:hover {
	color: #008D93;
}

  .nav-btn {
	display: flex;
    gap: 10px;
}
/* ============================   Boutons  ============================ */
.btn-primary {
    --bs-btn-active-bg: #008D93;
}

.btn-secondary {
    --bs-btn-active-bg: #f9981c;
	--bs-btn-active-color: #ffffff;
}
.btn-google {
    --bs-btn-active-bg: #f8f8f8;
	--bs-btn-active-color: #f9981c;
}
.btn-primary {
    background: #008D93;
    color: #fff;
    padding: 8px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 1rem;
}
.btn-primary:hover {
    background: #006f73;
	color: #fff;
}

.btn-secondary {
    background: #f9981c;
    color: #ffffff;
    padding: 8px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 1rem;
}
.btn-secondary:hover {
    background: #d47d0a;
	color: #ffffff;
}
.btn-grey {
    background: #ececec;
    color: #000;
    padding: 8px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 1rem;
}
.btn-grey:hover {
    background: #dbdbdb;
	color: #000;
}

.btn-yellow {
    background: #000000;
    color: #fff;
    padding: 8px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 1rem;
}
.btn-yellow:hover {
    background: #182133;
	color: #fff;
}
.btn.btn-white.hover-outline {
    background-color: #fff !important;
    color: #f9981c !important;
    border: 1px solid #fff !important;
}
.btn.btn-white.hover-outline:hover {
  color: var(--bs-white) !important;
  background-color: transparent !important;
  border: 1px solid var(--bs-white) !important;
}
.btn-rdv {
    background: #f9981c;
    color: #fff;
    padding: 8px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 1rem;
    width: 100%;
}
.btn-rdv:hover {
    background: #000000;
	color: #fff;
}
.btn-popout {
  position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 999;
    padding: 14px 28px;
    font-weight: 600;
    box-shadow: 0 8px 25px rgba(0,0,0,0.2);
}
@media (max-width: 576px) {
  .btn-popout {
    left: 30px;
    padding: 8px 20px;
}
}
.btn-google {
    background: #e8e7ea;
    color: #f9981c;
    padding: 8px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 1rem;
}

/* Survol */
.btn-google:hover {
    background: #d1d1d1;
	color: #000000;
}

/* Icône Google */
.btn-google img {
    height: 20px;
    width: 20px;
    margin-right: 10px;
}

.contact-popout {
  position: fixed;
  bottom: 70px; /* juste au-dessus du bouton */
  right: 20px;
  width: 300px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  padding: 1.5rem;
  z-index: 1050;
}

.form-control {
    border: 1px solid #dddddd;
    background-color: #fff;
	border-radius: 10px;
}
.form-control:hover {
    background-color: #f9f9f9;
}
.form-control:focus {
    border-color: #f9981c;
    box-shadow: none;
}

.col-form-label {
    padding-top: calc(0.4375rem + 1px);
    padding-bottom: calc(0.4375rem + 1px);
    margin-bottom: 0;
    font-size: inherit;
    font-weight: 500;
    line-height: 1.53;
}

.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
}
.input-group-text {
    display: flex;
    align-items: center;
    color: #9b9b9b;
    text-align: center;
    white-space: nowrap;
    background-color: #f9f9f9;
    border: 1px solid #dddddd;
    border-radius: 10px;
	width: 45px;
}

.forgotpass {
    margin-top: 1rem;
}
.forgotpass a {
    color: #696cff;
}
.search-bar {
    display: flex;
	gap: 1rem;
}
.icon-button {
    display: flex;
    align-items: center;
    justify-content: center;
    left: 16px;
    width: 50px;
    height: 50px;
    border: 1px solid #dddddd;
    background: #F8F8F8 0% 0% no-repeat padding-box;
    border: 1px solid #DDDDDD;
    border-radius: 15px;
    opacity: 1;
}
.icon-button i {
    font-size: 20px;
	color: #000000;
}

.icon-button-mag {
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: none;
    opacity: 1;
}
.icon-button-mag i {
    font-size: 20px;
	color: #000000;
}
.special-link .icons {
  display: inline-block;
  width: 38px;
  height: 38px;
  line-height: 38px;
  border-radius: 50%;
  text-align: center;
  position: relative;
  border: 1px solid rgba(var(--inverse-color-rgb), 0.2);
}

.special-link .icons i {
  font-size: 25px;
  position: relative;
  display: inline-block;
  position: absolute;
  -webkit-transition: 0.3s all ease-in-out;
  transition: 0.3s all ease-in-out;
}
.special-link .icons i.icon-1 {
  opacity: 1;
  visibility: visible;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.special-link .icons i.icon-2 {
  opacity: 0;
  visibility: hidden;
  top: 80%;
  left: 20%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.special-link:hover .icons .icon-1 {
  opacity: 0;
  visibility: hidden;
  top: 20%;
  left: 80%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.special-link:hover .icons .icon-2 {
  opacity: 1;
  visibility: visible;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
/* ============================   Home Card  ============================ */

.bg-home{
	background-image: url(../img/slider3.webp);
	background-repeat: no-repeat;
	background-size: 100% auto;
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}


@media (min-width: 1400px) {
  .vh-xxl-100 {
    height: 100vh !important;
  }
}

@media (min-width: 1200px) {
  .vh-xl-100 {
    height: 100vh !important;
  }
}
.card-home{
	border-radius: 20px;
}
.card-home-text{
	color: #000000;
	padding: 10px 0 10px 10px;
}

.card-home,
.card-colors {
  display: flex !important;
  flex-direction: column;
  height: 100% !important;
  gap: 1rem !important;
  margin: 0 1.5rem;
}
.card-home-1{
	background-color: #f9981c;
	background-image: url('../img/');
    background-repeat: no-repeat;
	background-position: right bottom;
	background-size: auto 100%;
	padding: 1.5rem;
	border-radius: 2rem;
	border: 1px solid #e5e5e5 !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.15);
	
}
.card-home-1 h2{
	font-family: 'Alexandria', sans-serif;
	color: #000000;
}

.card-home-2{
	background-color: #ffffffa6;
	background-image: url('../img/');
    background-repeat: no-repeat;
	background-position: right bottom;
	background-size: auto 100%;
	padding: 1.5rem;
	border-radius: 2rem;
	border: 1px solid #e5e5e5 !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
.card-home-2 h2{
	font-family: 'Alexandria', sans-serif;
	color: #000000;
}
.card-home-3{
	background-color: #FFF;
	border-radius: 2rem;
	border: 1px solid #e5e5e5 !important;
}
.img-web-card {
    width: 100%;
    height: auto;
}
.service-card {
  border: 1px solid #e5e5e5;
  background-color: #FFF;
}
.service-card-fast {
  border: 1px solid #e5e5e5;
  background-color: #f8f8f8;
}
.service-badge {
  color: #f9981c;
}
.special-link {
        text-decoration: none ;
		gap: .5rem ;
		align-items: center ;
		display: inline-flex ;
    }
@media (max-width: 991.98px) {
    .service-card p {
        display: none;
    }
	.service-card .special-link {
        display: none;
    }
}
.icon {
    display: inline-block;
    position: relative;
    color: #f9981c !important;
}

.icon img {
    width: 50px;
}
.icon svg {
    width: 50px;
}

.mission-statement {
    background-color: #f9981c;
    position: relative;
    width: 100%;
	align-items: center;
}
.mission-statement img{
    width: 100%;
	height: auto;
}
.mission-icon {
    font-size: 2rem;
}
.home-img-doctor {
  margin-right: -8px;
  max-width: 50px;
}
.home-img-doctor img {
  border: 1px solid #DDDDDD;
  border-radius: 15px;
  width: 100%;
  height: auto;
  object-fit: cover;
}
.img-web {
  width: 100%;
  height: auto;
}
.img-web-card {
  width: 100%;
  height: auto;
}
.img-avocat {
    width: 50px;
    height: auto;
    border-radius: 50px;
	margin-left: -5px;
	border: 3px solid #fff;
}
.step-card .step-number {
    width: 60px;
    height: 60px;
    line-height: 60px;
    display: inline-block;
    color: #fff;
    background-color: #f9981c;
    font-size: 18px;
}
.arch-line {
    position: absolute;
    top: 15px;
    width: 120px;
    right: 0;
    left: calc(100% + 24px);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
@media (max-width: 991.98px) {
    .arch-line {
        display: none;
    }
}
.subtitle {
    color: #008D93;
    display: inline-block;
    padding: 5px 12px;
    border-radius: 7px;
    font-weight: 400;
    font-size: 0.9rem;
	letter-spacing: 7px;
}
.person {
    border: 1px solid #e5e5e5;
	background-color: #fff;
}
.person-box .person-img {
	border: 2px solid #f9981c;
    border-radius: 50% !important;
    flex: 0 0 80px;	
}
.person-border {
    border: 3px solid #fff;
}
.name-box {
    line-height: 1 !important;
	font-size: 1.25rem;
	font-weight: 700 !important;
	margin-bottom: .5rem;
}
.tags-special {
    background-color: #e8e7ea;
    color: #f9981c;
    display: inline-block;
    padding: 5px 12px;
    border-radius: 7px;
    font-weight: 600;
    font-size: 0.9rem;
	margin: 5px 5px 0 0;
}
a {
    color: #000000;
    text-decoration: none;
}
/* ============================   accordion  ============================ */
.custom-accordion {
  --bs-accordion-bg: var(--bs-body-bg);
  --bs-accordion-btn-icon: url("");
  --bs-accordion-btn-active-icon: url("");
}

.custom-accordion .accordion-button {
  position: relative;
  padding-right: 50px;
}
.custom-accordion .accordion-button::after {
  content: "\e9b1";
  font-family: "feather" !important;
  font-style: normal;
  font-variant: normal;
  text-transform: none;
  right: 20px;
  width: 18px;
  height: 14px;
  font-size: 1rem;
  color: var(--inverse-color);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  line-height: 1;
  position: absolute;
  -webkit-font-smoothing: antialiased;
}

.custom-accordion .accordion-button:not(.collapsed)::after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  content: "\e996";
}
.custom-accordion .accordion-item {
  border: 1px solid #e5e5e5;
  margin-bottom: 10px;
  border-radius: 10px;
  overflow: hidden;
  -webkit-transition: 0.3s all ease-in-out;
  transition: 0.3s all ease-in-out;
}
.custom-accordion .accordion-item .accordion-header .accordion-button {
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-size: 18px;
  font-weight: 500;
  color: var(--bs-heading-color);
  padding-top: 20px;
  padding-bottom: 20px;
  border: none;
}
.custom-accordion .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  background-color: transparent;
  color: var(--inverse-color);
  -webkit-box-shadow: 0 1px 1px rgba(var(--inverse-color-rgb), 0.05);
          box-shadow: 0 1px 1px rgba(var(--inverse-color-rgb), 0.05);
}
.custom-accordion .accordion-item .accordion-body {
  border-top: none;
}


/* ============================  00  ============================ */

.badge {
	display: flex;
    height: 80px;
	align-items: center;
	background: #FFFFFF;
	border-radius: 10px;
	gap: 1rem;
	font-size: 1rem; 
    }
.soin-tunisie {
  background-color: #FFFFFF;
  border-radius: 20px;
}

/* ============================  Cards  ============================ */
.card-header {
  color: #000000;
}
.card-footer {
	align-self: flex-end;
	background-color: transparent;
	padding: 0;
}

.bloc-quest {
  background-color: #FFFFFF;
  border-radius: 20px;
}
.accordion-button {
    background-color: #f8f8f8;
	padding: 8px 20px;
	border: 1px solid #DDDDDD;
    border-radius: 10px;
}
.accordion-item {
	background-color: #fff;
    margin-bottom: 10px;
}
.accordion-button:not(.collapsed) {
    color: #000000;
    background-color: #f8f8f8;
    box-shadow: none;
}

.bloc-magazine {
  background-color: #FFFFFF;
  border-radius: 20px;
}
.card {
  background-color: #FFFFFF;
  border-radius: 10px;
  border: 1px solid #DDDDDD;
  overflow: hidden;
}

.card-img {
  height: 100%;
  overflow: hidden;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

.card-img img {
  width: 100%;
  height: auto;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  display: block;
}
.card p {
    font-size: 1rem;
    line-height: 1.5rem;
}
.card-body p.fw-bold {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.blog-titre {
    padding-bottom: 10px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.5rem;
    display: block;
    height: calc(1.5rem * 2); /* 2 lignes */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal; /* pour permettre le retour à la ligne */
}

.card-text {
    display: flex;
    align-items: center;
	justify-content: space-between;
    gap: 10px;
}
.card-text p {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.magazine-scroll-container {
  overflow-x: auto;
  scroll-behavior: smooth;
}

.magazine-card-track {
  display: flex;
  flex-wrap: nowrap;
}

.magazine-card-track .card {
  flex: 0 0 100%; /* ✅ mobile : 1 carte prend 100% de la largeur */
}

/* Responsive pour 2, 3, 4 cartes */
@media (min-width: 576px) {
  .magazine-card-track .card {
    flex: 0 0 50%; /* petit écran/tablette portrait : 2 cartes visibles */
  }
}

@media (min-width: 768px) {
  .magazine-card-track .card {
    flex: 0 0 33.3333%; /* tablette : 3 cartes visibles */
  }
}

@media (min-width: 992px) {
  .magazine-card-track .card {
    flex: 0 0 25%; /* ✅ desktop : 4 cartes visibles */
  }
}
.magazine-scroll-container::-webkit-scrollbar {
  display: none;
}

/* ============================  Footer  ============================ */
.footer{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 30px;
	border-top: 1px solid #e5e5e5 !important;
}
.footer-right {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: flex-end;
}
.footer-left {
    display: flex;
    gap: 20px;
    margin-right: 20px;
}
.footer p {
	font-size: 1rem;
}
.footer-links {
    margin-left: 50px;
}
.footer-links a {
    margin: 0 12px;
    color: #000000;
    text-decoration: none;
    font-size: 1rem;
}
.footer .logo {
    margin-left: 0px;
}
.footer .logox-img{
    width: auto;
    height: 40px;
}
.footer ul li{
	    padding: 0;
    margin: 0 0 10px 0;
}
.footer-title{
	font-size: 1rem;
	font-weight: 700 !important;
	margin-bottom: 20px;
}

/* ============================  Menu offcanvas  ============================ */
.offcanvas.offcanvas-start {
    width: 350px;
	border-right: 1px solid #e5e5e5;
}


/* ============================  Responsive ============================ */
@media (min-width: 1400px) {

}

@media (max-width: 992px) {
  .nav-btn {
    display: none;
}
  .nav-links {
    display: none;
}
.home-text {
    font-size: 2rem;
}

.home-text-color {
    font-size: 2rem;
}
.bg-2 {
    background-image: none;
    background-color: #f9f9f9;
}
	.img-web-card {
    display: none;
}
.card-home-text {
    padding: 20px;
}
.card-home,
.card-colors {
  flex-direction: unset;
  margin: none;
}

.align-items-stretch {
    gap: 1rem;
}

.parcours-logo {
    display: none;
}

.footer-right {
    display: none;
}
.footer {
    padding: 0px 15px;
}
}
@media (max-width: 768px) {
.bloc-parcours{
	font-size:0.9rem;
	padding: 10px;
	margin: 10px;
}

}


@media (max-width: 576px) {
	.card-home,
.card-colors {
        flex-direction: column;
		margin: unset;
        padding: 1rem 0;
}
.card-polycliniques::before {
    background-size: auto 100%;
}
.card-pharmacies::before {
    background-size: auto 100%;
}
.card-centres::before {
    background-size: auto 100%;
}
.card-labo::before {
    background-size: auto 100%;
}

} 

/* ============================  Animation affichage ============================ */
/** @section Animate */
.animated {
	-webkit-animation-duration: .7s;
	animation-duration: .7s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	opacity: 1;
}

.animated.infinite {
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

.animated.hinge {
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
}

html:not(.lt-ie10) .not-animated {
	opacity: 0;
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.fadeIn {
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
}

@-webkit-keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 40px, 0);
		transform: translate3d(0, 40px, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 40px, 0);
		transform: translate3d(0, 40px, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

.fadeInUp {
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
}

@-webkit-keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, -40px, 0);
		transform: translate3d(0, -40px, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

@keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, -40px, 0);
		transform: translate3d(0, -40px, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

.fadeInDown {
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
}

@-webkit-keyframes fadeInLeft {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-20%, 0, 0);
		transform: translate3d(-20%, 0, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

@keyframes fadeInLeft {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(-20%, 0, 0);
		transform: translate3d(-20%, 0, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

.fadeInLeft {
	-webkit-animation-name: fadeInLeft;
	animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInRight {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(20%, 0, 0);
		transform: translate3d(20%, 0, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

@keyframes fadeInRight {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(20%, 0, 0);
		transform: translate3d(20%, 0, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

.fadeInRight {
	-webkit-animation-name: fadeInRight;
	animation-name: fadeInRight;
}

@-webkit-keyframes fadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@keyframes fadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

.fadeOut {
	-webkit-animation-name: fadeOut;
	animation-name: fadeOut;
}

@-webkit-keyframes slideInUp {
	0% {
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
		visibility: visible;
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes slideInUp {
	0% {
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
		visibility: visible;
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.slideInUp {
	-webkit-animation-name: slideInUp;
	animation-name: slideInUp;
}

@-webkit-keyframes slideInDown {
	0% {
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
		visibility: visible;
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes slideInDown {
	0% {
		-webkit-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
		visibility: visible;
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.slideInDown {
	-webkit-animation-name: slideInDown;
	animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
		visibility: visible;
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes slideInLeft {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
		visibility: visible;
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.slideInLeft {
	-webkit-animation-name: slideInLeft;
	animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
	0% {
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
		visibility: visible;
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes slideInRight {
	0% {
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
		visibility: visible;
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.slideInRight {
	-webkit-animation-name: slideInRight;
	animation-name: slideInRight;
}

@-webkit-keyframes slideOutDown {
	0% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	100% {
		visibility: hidden;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
	}
}

@keyframes slideOutDown {
	0% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	100% {
		visibility: hidden;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0);
	}
}

.slideOutDown {
	-webkit-animation-name: slideOutDown;
	animation-name: slideOutDown;
}

@-webkit-keyframes blurIn {
	0% {
		opacity: 0;
		filter: blur(7px);
		transform: scale3d(1.1, 1.1, 1.1);
	}
	100% {
		opacity: 1;
		filter: blur(0);
		transform: scale3d(1, 1, 1);
	}
}

@keyframes blurIn {
	0% {
		opacity: 0;
		filter: blur(7px);
		transform: scale3d(1.1, 1.1, 1.1);
	}
	100% {
		opacity: 1;
		filter: blur(0);
		transform: scale3d(1, 1, 1);
	}
}

.blurIn {
	-webkit-animation-name: blurIn;
	animation-name: blurIn;
	animation-duration: 1.1s;
}


.offcanvas-nav .current {
    border-bottom: 1px solid #363636;
    transition: all 0.3s ease-in-out;
    text-decoration: none;
    display: inline-block;
    font-size: 18px;
    padding: 10px 0;
    color: #ddd;
    width: 100%;
}

.offcanvas-nav-links {
    border-bottom: 1px solid #e5e5e5;
    transition: all 0.3s ease-in-out;
    text-decoration: none;
    display: inline-block;
    font-size: 18px;
    padding: 10px 0;
    color: #000000;
    width: 100%;
}
.offcanvas-nav-links:hover {
	transition: all 0.3s ease-in-out;
	font-weight: bold;
    
}
/* ============================   Spécialité  ============================ */
.select-tags-container {
  position: relative;
  width: 100%;
}

.select-input {
  width: 100%;
  border: 1px solid #dddddd;
  border-radius: 8px;
  padding: 8px 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  cursor: text;
  background: #fff;
}

.select-input input {
  border: none;
  outline: none;
  flex: 1;
  min-width: 120px;
}

.tag {
  background-color: #f9981c;
    color: #fff;
    padding: 5px 10px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
}

.tag span {
  cursor: pointer;
  font-weight: bold;
}

.options-list {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 8px;
  max-height: 160px;
  overflow-y: auto;
  z-index: 99;
  display: none;
}

.options-list div {
  padding: 8px 12px;
  cursor: pointer;
  transition: background 0.2s;
}

.options-list div:hover {
  background-color: #f1f1f1;
}

/* ============================  Fin Spécialité  ============================ */

/*--------------------------------------------------------------
# Blog Posts Section
--------------------------------------------------------------*/
.blog-posts article {
  border: 1px solid #DDDDDD;
  border-radius: 10px;
  padding: 30px;
  height: 100%;
  overflow: hidden;
}

.blog-posts .post-img {
  max-height: 240px;
  margin: -30px -30px 15px -30px;
  overflow: hidden;
}

.blog-posts .post-category {
  font-size: 16px;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  margin-bottom: 10px;
}

.blog-posts .title {
  font-size: 20px;
  font-weight: 700;
  padding: 0;
  margin: 0 0 20px 0;
}

.blog-posts .title a {
  color: var(--heading-color);
  transition: 0.3s;
}

.blog-posts .title a:hover {
  color: var(--accent-color);
}

.blog-posts .post-author-img {
  width: 50px;
  border-radius: 50%;
  margin-right: 15px;
}

.blog-posts .post-author {
  font-weight: 600;
  margin-bottom: 5px;
}

.blog-posts .post-date {
  font-size: 14px;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  margin-bottom: 0;
}

/*--------------------------------------------------------------
# Blog Pagination Section
--------------------------------------------------------------*/
.blog-pagination {
  padding-top: 0;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
}

.blog-pagination ul {
  display: flex;
  padding: 0;
  margin: 0;
  list-style: none;
}

.blog-pagination li {
  margin: 0 5px;
  transition: 0.3s;
}

.blog-pagination li a {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  padding: 7px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.blog-pagination li a.active,
.blog-pagination li a:hover {
  background: var(--accent-color);
  color: var(--contrast-color);
}

.blog-pagination li a.active a,
.blog-pagination li a:hover a {
  color: var(--contrast-color);
}

/*--------------------------------------------------------------
# Blog Details Section
--------------------------------------------------------------*/
.blog-details {
  padding-bottom: 30px;
  margin-bottom: 2rem;
}

.blog-details .article {
  padding: 30px;
  background: #fff;
}

.blog-details .post-img {
  margin: 0px -30px 0px -30px;
  overflow: hidden;
}

.blog-details .title {
  font-weight: 700;
}

.blog-details .content {
  margin-top: 20px;
}

.blog-details .content h3 {
  font-size: 22px;
  margin-top: 30px;
  font-weight: bold;
}

.blog-details .content blockquote {
  overflow: hidden;
  background-color: #dad8dc;
  padding: 60px;
  position: relative;
  text-align: center;
  margin: 20px 0;
}

.blog-details .content blockquote p {
  color: var(--default-color);
  line-height: 1.6;
  margin-bottom: 0;
  font-style: italic;
  font-weight: 500;
  font-size: 22px;
}

.blog-details .content blockquote:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background-color: var(--accent-color);
  margin-top: 20px;
  margin-bottom: 20px;
}

.blog-details .meta-top {
  margin: 20px 0;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
}

.blog-details .meta-top ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  align-items: center;
  padding: 0;
  margin: 0;
}

.blog-details .meta-top ul li+li {
   padding: 0 20px;
}

.blog-details .meta-top i {
  font-size: 16px;
  margin-right: 8px;
  line-height: 0;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
}

.blog-details .meta-top a {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  font-size: 14px;
  display: inline-block;
  line-height: 1;
}

.blog-details .meta-bottom {
  padding-top: 10px;
  border-top: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
}

.blog-details .meta-bottom i {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  display: inline;
}

.blog-details .meta-bottom a {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  transition: 0.3s;
}

.blog-details .meta-bottom a:hover {
  color: var(--accent-color);
}

.blog-details .meta-bottom .cats {
  list-style: none;
  display: inline;
  padding: 0 20px 0 0;
  font-size: 14px;
}

.blog-details .meta-bottom .cats li {
  display: inline-block;
}

.blog-details .meta-bottom .tags {
  list-style: none;
  display: inline;
  padding: 0;
  font-size: 14px;
}

.blog-details .meta-bottom .tags li {
  display: inline-block;
}


.blog-details .meta-bottom .share {
  font-size: 16px;
}

.blog-details .meta-bottom .share i {
  padding-left: 5px;
}

/*--------------------------------------------------------------
# Blog Author Section
--------------------------------------------------------------*/
.blog-author {
  padding: 10px 0 40px 0;
}

.blog-author .author-container {
  background-color: var(--surface-color);
  padding: 20px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.blog-author img {
  max-width: 120px;
  margin-right: 20px;
}

.blog-author h4 {
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 0px;
  padding: 0;
  color: color-mix(in srgb, var(--default-color), transparent 20%);
}

.blog-author .social-links {
  margin: 0 10px 10px 0;
}

.blog-author .social-links a {
  color: color-mix(in srgb, var(--default-color), transparent 60%);
  margin-right: 5px;
}

.blog-author p {
  font-style: italic;
  color: color-mix(in srgb, var(--default-color), transparent 30%);
  margin-bottom: 0;
}

/*--------------------------------------------------------------
# Blog Comments Section
--------------------------------------------------------------*/
.blog-comments {
  padding: 10px 0;
}

.blog-comments .comments-count {
  font-weight: bold;
}

.blog-comments .comment {
  margin-top: 30px;
  position: relative;
}

.blog-comments .comment .comment-img {
  margin-right: 14px;
}

.blog-comments .comment .comment-img img {
  width: 60px;
}

.blog-comments .comment h5 {
  font-size: 16px;
  margin-bottom: 2px;
}

.blog-comments .comment h5 a {
  font-weight: bold;
  color: var(--default-color);
  transition: 0.3s;
}

.blog-comments .comment h5 a:hover {
  color: var(--accent-color);
}

.blog-comments .comment h5 .reply {
  padding-left: 10px;
  color: color-mix(in srgb, var(--default-color), transparent 20%);
}

.blog-comments .comment h5 .reply i {
  font-size: 20px;
}

.blog-comments .comment time {
  display: block;
  font-size: 14px;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  margin-bottom: 5px;
}

.blog-comments .comment.comment-reply {
  padding-left: 40px;
}

@media (max-width: 576px) {
 .blog-details .article {
  padding: 20px;
}
.blog-details .post-img {
    margin: 0px -10px 0px -10px;
}
}
@media (max-width: 400px) {
.blog-details .meta-top ul li+li {
    padding: 10px 0;
}
}
.breadcrumb {
  padding: 10px 0;
  font-size: 14px;
  --bs-breadcrumb-divider-color: rgb(255 255 255 / 75% 75%);
}
.border-gris {
    border-bottom: 1px solid #e5e5e5 !important;
}
.tag{
    background-color: #e8e7ea;
    color: #f9981c;
    display: inline-block;
    padding: 5px 12px;
    border-radius: 7px;
    font-weight: 600;
    font-size: 0.9rem;
	margin: 5px 5px 0 0;
}
.sidebar {
   margin-top: none;
}
@media (max-width: 992px) {
.sidebar {
   margin-top: 1.875rem;
}
}
.sidebar .titre {
   font-weight: 700;
   font-size: 2rem;
}
.magazine .card-img {
    height: 100%;
    overflow: hidden;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.magazine .blog-titre-2 {
    padding-bottom: 10px;
    font-size: 2rem;
    font-weight: 700;
    line-height: 2rem;
    display: block;
    height: calc(2rem * 2);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
}
.magazine .blog-titre {
    padding-bottom: 10px;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.5rem;
    display: block;
    height: auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
}

.magazine .card p {
    font-size: 1rem;
    line-height: 1.25rem;
}

/* --- Style sticky + animation du filtre --- */
.filter-card {
  position: sticky;
  transition: all 0.3s ease;
  border: 1px solid #e5e5e5;
  background-color: #fff;
  padding: 20px;
  border-radius: 1rem;
}

.filter-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}

.filter-collapse {
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.3s ease;
}

.filter-collapsed .filter-collapse {
  max-height: 0;
  opacity: 0;
  pointer-events: none;
}

.filter-expanded .filter-collapse {
  max-height: 500px; /* assez grand pour le contenu */
  opacity: 1;
}


.profiles {
    padding: 30px;
    background: #fff;
}
.profiles .person-box h1 {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.1;
}

@media (min-width: 576px) {
.profiles .person-box h1 {
  font-size: 1.5rem;
}
}

@media (min-width: 768px) {
  .profiles .person-box h1 {
    font-size: 1.8rem;
  }
}

@media (min-width: 992px) {
.profiles .person-box h1 {
  font-size: 2rem;
}
}

@media (min-width: 1200px) {
.profiles .person-box h1 {
  font-size: 2.25rem;
}
}
@media (min-width: 1400px) {
.profiles .person-box h1 {
  font-size: 2.875rem;
}
}
.profiles .person-box span {
  font-size: 1.25rem;
}   
.profiles h3 {
    font-size: 1.5rem;
    margin-top: 30px;
    font-weight: bold;
}
.sidebar .card-home-1 {
      box-shadow: none;
}
.rdv h1 {
    font-size: 1.5rem;
    font-weight: bold;
}
.form-check-input {
    width: 1em;
    height: 1em;
    margin-top: .25em;
    vertical-align: top;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid rgba(0, 0, 0, .25);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
}
.form-check-inline {
    display: inline-block;
    margin-right: 1rem;
}
.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: .125rem;
}

.form-check-input:checked {
    background-color: #f9981c;
    border-color: #dad8dc;
}

.content-box {
    padding-top: 40px;
    padding-bottom: 40px;
    background-color: #008D93;
    color: #fff;
    overflow: hidden;
    position: relative;
}


.stepper [data-kt-stepper-element=content],
.stepper [data-kt-stepper-element=info] {
    display: none;
}

.stepper [data-kt-stepper-element=content].current,
.stepper [data-kt-stepper-element=info].current {
    display: flex;
}

.stepper .stepper-item[data-kt-stepper-action=step] {
    cursor: pointer;
}

.stepper [data-kt-stepper-action=previous] {
    display: none;
}

.stepper [data-kt-stepper-action=next] {
    display: inline-block;
}

.stepper [data-kt-stepper-action=submit] {
    display: none;
}

.stepper.first [data-kt-stepper-action=previous] {
    display: none;
}

.stepper.first [data-kt-stepper-action=next] {
    display: inline-block;
}

.stepper.first [data-kt-stepper-action=submit] {
    display: none;
}

.stepper.between [data-kt-stepper-action=previous] {
    display: inline-block;
}

.stepper.between [data-kt-stepper-action=next] {
    display: inline-block;
}

.stepper.between [data-kt-stepper-action=submit] {
    display: none;
}

.stepper.last [data-kt-stepper-action=previous] {
    display: inline-block;
}

.stepper.last [data-kt-stepper-action=next] {
    display: none;
}

.stepper.last [data-kt-stepper-action=submit] {
    display: inline-block;
}

.stepper.last [data-kt-stepper-action=submit].btn-flex {
    display: flex;
}

.stepper.stepper-pills .stepper-nav {
    display: flex;
	padding: 2rem;
    background: #f9f9f9;
	border-radius: 1rem 1rem 0 0;
	border-bottom: 1px solid #e5e5e5;
}

.stepper.stepper-pills .stepper-item {
    display: flex;
    align-items: center;
    transition: color .2s ease,background-color .2s ease;
}

.stepper.stepper-pills .stepper-item .stepper-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin-right: 1.5rem;
    border-radius: .475rem;
    background-color: #feeee8;
    transition: color .2s ease,background-color .2s ease;
}

.stepper.stepper-pills .stepper-item .stepper-icon .stepper-check {
    display: none;
    font-size: 1rem;
}

.stepper.stepper-pills .stepper-item .stepper-icon .stepper-number {
    font-size: 1.25rem;
    font-weight: 600;
    color: #f9981c!important;
}

.stepper.stepper-pills .stepper-item .stepper-label {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.stepper.stepper-pills .stepper-item .stepper-label .stepper-title {
    margin-bottom: .3rem;
    color: #3f4254;
}

.stepper.stepper-pills .stepper-item .stepper-label .stepper-desc {
    color: #a1a5b7;
	font-size: 0.8rem;
}

.stepper.stepper-pills .stepper-item.current {
    transition: color .2s ease,background-color .2s ease;
}

.stepper.stepper-pills .stepper-item.current .stepper-icon {
    background-color: #f9981c;
    transition: color .2s ease,background-color .2s ease;
}

.stepper.stepper-pills .stepper-item.current .stepper-icon .stepper-check {
    display: none;
    color: #f9981c;
}

.stepper.stepper-pills .stepper-item.current .stepper-icon .stepper-number {
    font-size: 1.35rem;
    color: #fff!important;
}

.stepper.stepper-pills .stepper-item.current .stepper-label .stepper-title {
    color: #7e8299;
}

.stepper.stepper-pills .stepper-item.current .stepper-label .stepper-desc {
    color: #b5b5c3;
}

.stepper.stepper-pills .stepper-item.completed .stepper-icon,
.stepper.stepper-pills .stepper-item.current:last-child .stepper-icon {
    background-color: #feeee8;
    transition: color .2s ease,background-color .2s ease;
}

.stepper.stepper-pills .stepper-item.completed .stepper-icon .stepper-check,
.stepper.stepper-pills .stepper-item.current:last-child .stepper-icon .stepper-check {
    display: inline-block;
    color: #f9981c!important;
}

.stepper.stepper-pills .stepper-item.completed .stepper-icon .stepper-number,
.stepper.stepper-pills .stepper-item.current:last-child .stepper-icon .stepper-number {
    display: none;
}

.stepper.stepper-pills .stepper-item.completed .stepper-label .stepper-title,
.stepper.stepper-pills .stepper-item.current:last-child .stepper-label .stepper-title {
    color: #a1a5b7;
}

.stepper.stepper-pills .stepper-item.completed .stepper-label .stepper-desc,
.stepper.stepper-pills .stepper-item.current:last-child .stepper-label .stepper-desc {
    color: #b5b5c3;
}

.stepper.stepper-pills.stepper-column .stepper-nav {
    flex-direction: column;
}

.stepper.stepper-pills.stepper-column .stepper-item {
    position: relative;
    margin: 0;
    padding: 0;
    padding-bottom: 2.5rem;
}

.stepper.stepper-pills.stepper-column .stepper-icon {
    z-index: 1;
}

.stepper.stepper-pills.stepper-column .stepper-line {
    content: " ";
    display: block;
    z-index: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    justify-content: center;
    width: 40px;
    border-left-color: #e4e6ef;
    border-left-style: dashed;
    border-left-width: 1px;
    transform: translate(50%);
}

.stepper.stepper-pills.stepper-column .stepper-item:first-child .stepper-line {
    top: 50%;
}

.stepper.stepper-pills.stepper-column .stepper-item:last-child .stepper-line {
    bottom: 50%;
}

.stepper.stepper-links .stepper-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

.stepper.stepper-links .stepper-nav .stepper-item {
    position: relative;
    flex-shrink: 0;
    margin: 1rem 1.5rem;
}

.stepper.stepper-links .stepper-nav .stepper-item:after {
    content: " ";
    position: absolute;
    top: 2.3rem;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: transparent;
    transition: color .2s ease,background-color .2s ease;
}

.stepper.stepper-links .stepper-nav .stepper-item .stepper-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: #181c32;
}

.stepper.stepper-links .stepper-nav .stepper-item.current {
    transition: color .2s ease,background-color .2s ease;
}

.stepper.stepper-links .stepper-nav .stepper-item.current .stepper-title {
    color: #f9981c;
}

.stepper.stepper-links .stepper-nav .stepper-item.current:after {
    background-color: #f9981c;
}

.stepper.stepper-links .stepper-nav .stepper-item.completed .stepper-title {
    color: #b5b5c3;
}

.select-check {
	display: flex;
	gap: 10px;
    background-color: #f9f9f9;
	border: 1px solid #dddddd;
	border-radius: 8px;
    padding: 8px 10px;
}


/* Slider style */
.cd-slider {
	position: relative;
	width: 100%;
	height: 580px;
	overflow: hidden;
}
.cd-slider.ie9 nav div span {
	display: none;
}
.cd-slider ul li {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	visibility: hidden;
	transition: visibility 0s .6s;
}
.cd-slider ul li::before {
	content: '';
	position: absolute;
	top: 30%;
	left: 90%;
	border-radius: 100%;
	width: 150vh;
	height: 150vh;
	border: solid rgb(249 152 28 / 100%);
	border-width: 0;
	transform: translate(-50%, -50%);
	pointer-events: none;
	transition: border-width .4s .6s;
}
@media (max-width: 576px) {
    .cd-slider ul li::before {
	border: solid rgb(253, 253, 253);
}
}
.content {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: 100% 50%;
	background-size: auto 100%;
	background-repeat: no-repeat;
	mix-blend-mode: multiply;
	opacity: 0;
	transform: scale(1.2);
	transition: opacity .4s .6s, transform .4s .6s;
}
.content blockquote {
	position: absolute;
	bottom: 25%;
	left: 10%;
	z-index: 2;
	max-width: 45%;
}
blockquote p {
	font-size: 1.2rem;
	margin-bottom: 1rem;
}

/* current slide
---------------------------------*/
.cd-slider li.current_slide {
	visibility: visible;
}
.cd-slider li.current_slide::before {
	border-width: 16rem;
}
.cd-slider li.current_slide .content {
	opacity: 1;
	transform: scale(1);
}
/* nav
---------------------------------*/
nav div {
	position: absolute;
	top: 50%;
	left: 4%;
	width: 3rem;
	height: 3rem;
	margin-top: -2.5rem;
	list-style: none;
}
nav div:last-of-type {
	left: auto;
	right: 4%;
}
.prev, .next {
	position: relative;
	z-index: 100;
	width: 100%;
	height: 100%;
	display: block;
	border-radius: 100%;
	transition: box-shadow .3s;
}
.prev::before, .prev::after, .next::before, .next::after {
	content: '';
	position: absolute;
	left: 43%;
	background: #7c7c7c;
	width: .2rem;
	min-width: 3px;
	border-radius: 3px;
	height: 34%;
}
.prev::before {
	transform: rotate(45deg);
	top: 24%;
}
.prev::after {
	transform: rotate(-45deg);
	bottom: 24%;
}
.next::before, .next::after {
	left: auto;
	right: 43%;
}
.next::before {
	transform: rotate(-45deg);
	top: 24%;
}
.next::after {
	transform: rotate(45deg);
	bottom: 24%;
}
.prev:hover, .next:hover {
	box-shadow: 0 0 0 1rem rgba(0, 0, 0, 0.15);
}
nav > div > span {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 100%;
	z-index: 5;
	pointer-events: none;
	will-change: width, height;
	transform: translate(-50%, -50%);
	transition: width .6s, height .6s;
}



@media (max-width: 576px) {
    .content {
    background-position: 70% 50%;
    }
	.content blockquote {
    bottom: 0%;
    left: 2%;
    right: 2%;
     max-width: 100%;
     background: #ffffffd1;
     padding: 1rem;
    }
}

.testimonial-author .author-img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50px;
    flex: 0 0 50px;
}

.expertise {
    padding-top: 6rem;
	padding-bottom: 6rem;
    position: relative;
}
.Qui-sommes-nous {
    padding-top: 6rem;
	padding-bottom: 6rem;
    position: relative;
}
.CCM {
    padding-top: 6rem;
	padding-bottom: 6rem;
    position: relative;
}
.FAQ {
    padding-top: 6rem;
	padding-bottom: 6rem;
    position: relative;
}
.contact {
    padding-top: 6rem;
	padding-bottom: 6rem;
    position: relative;
}




