@media (max-width: 992px) {
  .avantages {
    top: 225px !important;
    margin-bottom: -225px !important;
  }
  .titre {
    position: relative;
    top: 3rem;
  }
  /* .card_slider {
    height: 400px !important;
  } */
  .title {
    font-size: 13px !important;
  }
  .card_slider {
    margin-left: 3px !important;
  }
  .image {
    width: 11rem !important;
    font-size: 13px !important;
  }
  .card_slider:hover .details {
    transform: perspective(2000px) translateX(180px) !important;
  }
  .content .content-overlay {
    height: 88% !important;
  }
  .content {
    width: 100% !important;
  }
  .equipe_img,
  .contact_img {
    width: 100% !important;
  }
  .cards {
    height: auto !important;
  }
  .card_slider .details {
    height: 60% !important;
  }

  .card_slider {
    height: 15rem !important;
  }
}
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap");

@media (min-width: 576px) and (max-width: 992px) {
  .card_test:hover {
    width: 24rem !important ;
  }

  .cards_initial {
    border-right: none !important;
  }
  .cards_wrapper:hover {
    width: 30rem !important;
  }
}

@media (max-width: 576px) {
  /* #progressbar {
    right: 27px !important;
  } */
  #msform fieldset {
    width: 100% !important;
  }

  .inner_footer {
    border-top: none !important;
  }
}

@keyframes myOrbit1 {
  from {
    transform: rotate(0deg) translateY(-10rem) rotate(0deg);
  }
  to {
    transform: rotate(360deg) translateY(-10rem) rotate(-360deg);
  }
}
@keyframes myOrbit2 {
  from {
    transform: rotate(0deg) translateX(-10rem) rotate(0deg);
  }
  to {
    transform: rotate(360deg) translateX(-10rem) rotate(-360deg);
  }
}
@keyframes myOrbit3 {
  from {
    transform: rotate(0deg) translatey(10rem) rotate(0deg);
  }
  to {
    transform: rotate(360deg) translatey(10rem) rotate(-360deg);
  }
}
@keyframes myOrbit4 {
  from {
    transform: rotate(0deg) translateX(15rem) rotate(0deg);
  }
  to {
    transform: rotate(360deg) translateX(15rem) rotate(-360deg);
  }
}
@media (min-width: 992px) {
  .el1 {
    position: relative;
    top: 15rem;
    animation: myOrbit1 16s 0s infinite linear;
  }
  .el2 {
    position: relative;
    top: 6rem;
    animation: myOrbit2 16s 0s infinite linear;
  }
  .el3 {
    position: relative;
    top: -6rem;
    animation: myOrbit3 16s 0s infinite linear;
  }
  .el4 {
    position: relative;
    top: -15rem;
    animation: myOrbit4 16s 0s infinite linear;
  }
  .card_slider {
    height: 500px !important;
  }
  .col-card-lg {
    width: 15%;
    /* flex: 0 0 auto; */
  }
  .contact_form {
    width: 75% !important;
  }
}
body {
  font-family: lato;
}
.green_text {
  color: #1f79e0;
}
.fw_300 {
  font-weight: 300;
}
.fw_400 {
  font-weight: 400;
}
.fw_500 {
  font-weight: 500;
}
.fw_600 {
  font-weight: 600;
}
.fw_700 {
  font-weight: 700;
}
.title {
  font-weight: 800;
  font-size: 24px;
}
.paragraphe {
  font-weight: 600;
  font-size: 16px;
}
.descrip_p {
  font-weight: 700;
  font-size: 22px;
}

.nav-link {
  color: var(
    --www-oterson-partners-com-cod-gray,
    var(--color-grey-11, #1c1c1c)
  );

  /* www.oterson-partners.com/Semantic/Link upper */
  font-family: var(--font-family-Font-2, Lato);
  font-size: 14.4px;
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-21_6, 21.6px); /* 150% */
  text-transform: uppercase;
  font-weight: 300;
  font-size: 15px;
  transition: all 0.3s ease-in-out;
  color: #1b1b1b;
}
.nav-link:hover {
  color: #1f79e0 !important;
  transform: scale(1.2);
}
.nav-link-active {
  color: #1f79e0 !important;
}
.little_fint {
  font-weight: 300;
  font-size: 13px;
}

/*FIXED ANIMATED HEADER ON SCROLL*/
.page-header {
  right: 0;
  left: 0;
  top: 0px;
  z-index: 99999999999;
  background: var(--color-grey-8531, rgba(217, 217, 217, 0.31));
}

.page-header.is-sticky {
  position: fixed !important;
  backdrop-filter: blur(100px);
  animation: slideDown 0.7s ease-out;
  background-color: #d9d9d94f;
  /* border-bottom: solid 1px #f0d904; */
}
@keyframes slideDown {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}

.btn-contact {
  background: linear-gradient(
    0deg,
    rgba(31, 121, 224, 0.8) 0%,
    rgba(31, 121, 224, 0.8) 100%
  );
  border-radius: 25px;
  transform: none !important;
  color: white !important;
  color: var(--www-obriy-design-white, var(--color-white-solid, #fff));
  text-align: center;

  /* www.oterson-partners.com/Semantic/Link upper */
  font-family: var(--font-family-Font-2, Lato);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-24, 24px); /* 150% */
  text-transform: uppercase;
}
.btn-contact:hover {
  transform: scale(1.1) !important;
  color: white !important;
}
.banner {
  background-image: url(../images/acceuil/bg-simule.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  height: 76vh;
}
.nous-choisir {
  width: 80%;
  margin: auto;
  margin-bottom: 100px !important;
}
.boutton {
  border-radius: 68px;
  background: #00e093;
  padding: 10px 25px;

  color: white;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}
.boutton:hover {
  border-radius: 68px;
  background: #00e093;
  padding: 10px 25px;

  color: white;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
  /* text-decoration: none; */
}
.avantages {
  background: linear-gradient(
    180deg,
    var(--color-white-solid, #fff) 0%,
    var(--color-azure-89, #dee2e6) 102.48%
  );
  border: none !important;
  /* margin-bottom: -200px; */
}

.icon-container {
  width: 120px;
  height: 120px;
  background-color: #fff;
  border-radius: 100%;
  transition: all 0.3s ease-in-out !important ;
  display: grid;
  align-items: center;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px,
    rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
  cursor: pointer;
}
.icon-container:hover {
  background: linear-gradient(90deg, #7ebaff 0%, #448cde 100%);
}

.icon-container img {
  width: 65%;
  height: auto;
}

.icon-container img:nth-child(2),
.tab_icon img:nth-child(2) {
  display: none;
}

.icon-container:hover img:nth-child(1),
.tab_icon:hover img:nth-child(1) {
  display: none;
}

.icon-container:hover img:nth-child(2),
.tab_icon:hover img:nth-child(2) {
  display: block;
}
.nav-pills .nav-link.active .tab_icon:hover img:nth-child(2) {
  display: block;
}

.footer {
  background-image: url(../images/acceuil/footer.png);
  background-size: cover;
  position: relative;
  z-index: 1;
}
.client-testimonial-carousel .owl-dots button {
  height: 5px;
  background: #000000 !important;
  width: 20px;
  display: inline-block;
  margin: 5px;
  transition: 0.2s;
  border-radius: 2px;
}

.client-testimonial-carousel button.owl-dot.active {
  background: #fff !important;
  width: 30px;
}

.client-testimonial-carousel .owl-dots {
  text-align: center;
  margin-top: 25px;
}
.item {
  /* background-color: white; */
  border-radius: 25px;
  padding: 30px;
}
.user-content p {
  margin-top: 5px;
  font-size: 12px;
}
.ratings i {
  color: #1cb4b5;
}
.rounded-circle {
  width: 30% !important;
}
#carousel {
  border-bottom: solid 2px #dde4e7;
}
#thunb_carousel {
  border-bottom: none !important;
}
.bi-list {
  color: #1cb4b5;
}

/* ================================================slider */
#card {
  border: 1px solid #334455;
  border-radius: 25px;
  width: calc(10em - 30px);
  padding: 0;
  display: flex;
  justify-content: space-around;
  overflow: hidden;
}
#card:hover {
  width: 100%;
}
#card:hover #face {
  margin-left: -10px;
}
#card :not(#face) {
  opacity: 0;
}
#card:hover :not(#face) {
  transition: all 500ms;
  transition-delay: 80ms;
  opacity: 1;
}
#card #face {
  width: calc(10em - 30px);
  background-image: url(https://i.ibb.co/p2GyHgv/67211140-451643715656839-5097311815897972736-n.jpg);
  background-size: 100%;
  background-position: 0%, 20%;
  transition: all 500ms;
  transition-delay: 80ms;
  border-radius: 25px;
}
#card #content {
  height: calc(10em - 30px);
  width: calc(100% - (10em - 30px) - 30px);
}
#content * {
  margin: 5px;
}
/* ================================================slider end */

/* ================================================step form */
#msform fieldset {
  background: white;
  border: 0 none;
  border-radius: 3px;
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.4);
  padding: 20px 30px;
  box-sizing: border-box;
  width: 36rem;
  min-height: 16rem;
  /* margin: 0 10%; */
  border-radius: 44px;
  background: var(--color-white-solid, #fff);
  box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.4);
  position: relative;
}
#msform fieldset:not(:first-of-type) {
  display: none;
}
#msform input,
#msform textarea,
.inputStyle {
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 3px;
  margin-bottom: 10px;
  width: 100%;
  box-sizing: border-box;
  font-family: montserrat;
  color: #2c3e50;
  font-size: 13px;
}
#msform .action-button {
  width: 100px;
  background: linear-gradient(
    0deg,
    rgba(31, 121, 224, 0.8) 0%,
    rgba(31, 121, 224, 0.8) 100%
  );
  border-radius: 63px;
  background: linear-gradient(0deg, #2e85e6 0%, #2e85e6 100%);

  font-weight: bold;
  color: white;
  border: 0 none;

  cursor: pointer;
  padding: 10px;
  margin: 10px 5px;
  text-decoration: none;
  font-size: 14px;
  color: var(--autotrading-sa-white, var(--color-white-solid, #fff));
  text-align: center;

  /* oterson-partners.com/Semantic/Button */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-14, 14px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-21, 21px); /* 150% */
}
/* ================================================step form end */

/* ================================================testimonoal carousel  */
.owl-nav button {
  position: absolute;
  top: 50%;
  background-color: #000;
  color: #fff;
  margin: 0;
  transition: all 0.3s ease-in-out;
}
.owl-nav button.owl-prev {
  display: none;
  left: 0;
}
.owl-nav button.owl-next {
  right: 0;
  display: none;
}

.owl-dots {
  text-align: center;
  padding-top: 15px;
}
.owl-dots button.owl-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: inline-block;
  background: #ccc !important;
  margin: 0 3px;
}
.owl-dots button.owl-dot.active {
  background-color: #1cb4b5 !important;
}
.owl-dots button.owl-dot:focus {
  outline: none;
}
.owl-nav button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.38) !important;
}

.owl-nav button:focus {
  outline: none;
}
/* ================================================testimonoal carousel end */
.card_test {
  transition: 0.5s;
  border-radius: 14px;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.16);
  width: 18rem;
  height: 20rem;
  border: none;
}

.card_test_body2 {
  display: none;
  background: linear-gradient(103.63deg, #0e88c2 13.78%, #4bb8a6 99.31%);
  border-radius: 14px;
}

/* overlay ========================================================================= */
/* carousel slider ========================================================================= */
.card_slider {
  position: relative;
  width: 250px;
  height: 400px;
  background: #ffffff;
  transition: 1s;
}
.img {
  border-radius: 25px;
}

.card_slider .details {
  position: absolute;
  top: 0;
  width: 100%;
  height: 54%;
  transition: 1s;
}
.card_slider:hover .details {
  transform: perspective(2000px) translateX(250px);
}
.card_slider:hover ~ .card_slider {
  transform: perspective(2000px) translateX(250px);
}
.card_slider:hover.exclude-transform {
  transform: none;
}
.card_slider_end:hover {
  transform: translateX(-250px);
}

.card_slider .details .center {
  padding: 0px;
  text-align: center;
  background: #fff;
  position: absolute;
  top: 75%;
  transform: translateY(-50%);
}
/* carousel slider ========================================================================= */

.carousel-slide-btn {
  background-color: #ffffff;
  color: #1cb4b5 !important;
  border-radius: 50px;
  padding: 40px 15px;
}
.carousel-slide-link {
  color: #1cb4b5;
  text-decoration: none;
}
.carousel-slide-link:hover {
  color: #1cb4b5;
  text-decoration: underline;
}

.user-image img {
  position: relative;
  bottom: 3rem;
  box-shadow: #1cb4b5 0px 5px 15px;
}
.owl-item {
  padding-top: 3rem;
  height: 100%;
}

.content {
  position: relative;
  width: 90%;
  max-width: 400px;
  margin: auto;
  overflow: hidden;
}

.content .content-overlay {
  background: linear-gradient(
    0deg,
    rgba(31, 121, 224, 0.8) 0%,
    rgba(31, 121, 224, 0.8) 100%
  );

  position: absolute;
  height: 90%;
  width: 100%;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
  -webkit-transition: all 0.4s ease-in-out 0s;
  -moz-transition: all 0.4s ease-in-out 0s;
  transition: all 0.4s ease-in-out 0s;
  border-radius: 15px;
}

.card_slider:hover .content-overlay {
  opacity: 1;
}

.content-image {
  width: 100%;
}

.content-details {
  position: absolute;
  text-align: center;
  padding-left: 1em;
  padding-right: 1em;
  top: 50%;
  left: 50%;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}

.card_slider:hover .content-details {
  top: 50%;
  left: 50%;
  opacity: 1;
}

.card_title {
  position: relative;
  bottom: 45px;
}
.owl-stage-outer {
  height: 100% !important;
}
.avantage {
  justify-items: center;
}

/* ====================================================================test card  */

/* body .options {
/*------------------------------------------- about page ----------------------- */
.about_banner {
  background: no-repeat url(../images/about/about-banner.png);
  background-size: cover;
}
.about_footer {
  background: linear-gradient(134deg, #4c92e2 25.57%, #7bb8fe 83.63%);
  background-size: cover;

  display: flex;
  align-items: end;
}

.partner img {
  background-color: #ffffff;
  padding: 10px 15px;
  height: 5rem;
}
.partners_carousel {
  height: 10rem;
}
.inner_footer {
  border-top: solid 2px #fff;
}
.form-control:focus {
  border: 1px solid rgba(0, 0, 0, 0.34) !important;
  box-shadow: 0px 4px 4px rgba(75, 184, 166, 0.18) !important;
  border-radius: 4px !important;
}
input:focus::placeholder {
  color: #323232 !important;
}

::placeholder {
  color: #e6e6e6 !important;
}
.download {
  color: #e6e6e6;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* cards ====================== */

.cards {
  background: no-repeat url(../images/about/cards_background.png);
  background-size: cover;
  height: 16rem;
  overflow: hidden;
}
.cards_wrapper {
  transition: 0.7s;
  border-radius: 0px;
  border: none;
  background-color: transparent !important;
}
.cards_initial:last-child {
  border-right: none !important;
}
.cards_wrapper:hover {
  width: 23rem;
  background-color: #4bb8a6 !important;
}
.cards_initial {
  background-color: transparent;
  border-right: solid 2px #fff;
}
.cards_hover {
  display: none;
}
.cards_wrapper:hover .cards_initial {
  display: none;
}
.cards_wrapper:hover .cards_hover {
  display: block;
}
.last_cards_wrapper {
  border-right: none !important;
}
.slide_card_img {
  position: relative;
  bottom: 20px;
  height: 25rem;
  width: 15rem;
  right: 20px;
}
*/
/* PAGE PORTAGE */
.portage_first {
  background: url("/assets/images/portage/d13c5bf1481b2c0d76e2e765d91df3e0.jpg");
}
.banner_portage {
  background: no-repeat url(../images/portage/banner-posrtage-salarial.png);
  background-size: cover;
}
.banner_portage_2 {
  background-image: url(../images/portage/banner-1.png);
  background-size: contain;
  height: 13rem;
}
.title_portage {
  font-size: 40px !important;
  font-weight: 1000 !important;
}
/* Accordion css */
.accordion-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
accordion .accordion-item {
  border-bottom: 1px solid #e5e5e5;
}
.accordion .accordion-item button[aria-expanded="true"] {
  box-shadow: 0px 1px 4px 0px rgba(129, 129, 129, 0.25);
}
.accordion .accordion-item button[aria-expanded="false"] {
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.accordion button {
  position: relative;
  display: block;
  text-align: left;
  width: 100%;
  /* padding: 1em 0; */
  color: #1a1632;
  font-size: 1.15rem;
  font-weight: 400;
  border: none;
  background: none;
  outline: none;
}
.accordion button:hover,
.accordion button:focus {
  cursor: pointer;
  color: #1cb4b5;
}
.accordion button:hover::after,
.accordion button:focus::after {
  cursor: pointer;
  color: #1cb4b5;
  border: 1px solid #03b5d2;
}

.accordion button .icon {
  display: inline-block;
  position: absolute;
  top: 10px;
  right: -32px;
  width: 22px;
  height: 22px;
  border: 1px solid #fff;
  border-radius: 22px;
  background-color: #4bb8a6;
}
.accordion button .icon::before {
  display: block;
  position: absolute;
  content: "";
  top: 9px;
  left: 5px;
  width: 10px;
  height: 2px;
  background: white;
}
.accordion button .icon::after {
  display: block;
  position: absolute;
  content: "";
  top: 5px;
  left: 9px;
  width: 2px;
  height: 10px;
  background: white;
}
.accordion button[aria-expanded="true"] {
  color: #1cb4b5;
}
.accordion button[aria-expanded="true"] .icon::after {
  width: 0;
}
.accordion button[aria-expanded="true"] + .accordion-content {
  opacity: 1;
  max-height: 30rem;
  transition: all 500ms linear;
  will-change: opacity, max-height;
}
.accordion .accordion-content {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: opacity 500ms linear, max-height 1ms linear;
  will-change: opacity, max-height;
}
.accordion .accordion-content p {
  font-size: 1rem;
  font-weight: 300;
  margin: 2em 0;
}
/* carousel-portage */
.portage_height {
  height: 50px !important;
}
.item_portage {
  border-radius: 25px;
  padding: 30px;
}
.carouesel_nbr_position {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
}
.bigger-title {
  font-weight: 900;
  font-size: 30px;
}
.paragraphe2 {
  font-weight: 600;
  font-size: 15px;
}

.bouttoninv {
  background-color: #ffffff;
  padding: 10px 25px;
  border-radius: 5px;
  color: #1cb4b5;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

@keyframes slideIn {
  0% {
    transform: translateY(1rem);
    opacity: 0;
  }
  100% {
    transform: translateY(0rem);
    opacity: 1;
  }
  0% {
    transform: translateY(1rem);
    opacity: 0;
  }
}
.slideIn {
  animation-name: slideIn;
}
.dropdown-menu {
  animation: slideIn 0.7s ease-in-out;
}
.navbar-nav .dropdown-menu {
  position: absolute;
}
.dropdown-menu {
  border: 1px solid #1f79e0 !important;
}
.dropdown-item {
  transition: all 0.3s ease-in-out;
}
.dropdown-item:focus,
.dropdown-item:hover,
.dropdown-item-active {
  background-color: #1f79e0;
}
/* design graphique page ========================================================== */
.design_banner {
  background: no-repeat url(../images/services/design/design_banner.png);
  background-size: cover;
}
.list {
  list-style: none;
}

.list li::before {
  content: "\2022";
  color: #1f79e0;
  font-weight: bold;
  display: inline-block;
  width: 2em;
  margin-left: 0em;
  font-size: 20px;
}
@media (max-width: 1191px) {
  .design_graphique_cards {
    height: 170px;
  }
  .logo_card_title {
    padding: 1rem 1rem 0rem 1rem;
  }
}
.design_graphique_cards {
  border-radius: 12px !important;
}
.logo_card_title {
  background-color: #f2f2f2;
  border-radius: 0px 0px 12px 12px;
}
/* image slider start  */
.carousel {
  position: relative;
}
.carousel-item img {
  object-fit: cover;
}

#carousel-thumbs {
  background: #ffffff;
  padding: 0 50px;
}
#carousel-thumbs img:hover {
  opacity: 100%;
}

#carousel-thumbs img {
  border: 3px solid transparent;
  cursor: pointer;
}
#carousel-thumbs .selected img {
  opacity: 100%;
  border-bottom: solid 10px #1cb4b5;
}

/* image slider end */
/* ===================================================page communication digital  */
.communication_banner {
  background: no-repeat url(../images/communication/comminication_banner.png);
  background-size: cover;
}
.what_we_do {
  background: no-repeat url(../images/communication/what_we_do.png);
  background-size: cover;
  height: 170px;
}

/* card slide translate y start  */
:root {
  --d: 700ms;
  --e: cubic-bezier(0.19, 1, 0.22, 1);
}
.card_com {
  position: relative;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  padding: 1rem;
  width: 100%;
  text-align: center;
  color: whitesmoke;
  background-color: transparent;
}

.card_com:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 110%;
  background-size: cover;
  background-position: 0 0;
  transition: transform calc(var(--d) * 1.5) var(--e);
  pointer-events: none;
}
.card_com:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 200%;
  pointer-events: none;
  transform: translateY(-50%);
  transition: transform calc(var(--d) * 2) var(--e);
}

.content_com {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 1rem;
  transition: transform var(--d) var(--e);
  z-index: 1;
  border-right: solid 2px #fff;
}
.content_com > * + * {
  margin-top: 1rem;
}
@media (hover: hover) and (min-width: 600px) {
  .card_com:after {
    transform: translateY(0);
  }

  .content_com {
    transform: translateY(calc(100% - 4.5rem));
  }
  .content_com > *:not(.title) {
    opacity: 0;
    transform: translateY(1rem);
    transition: transform var(--d) var(--e), opacity var(--d) var(--e);
  }

  .card_com:hover,
  .card_com:focus-within {
    align-items: center;
  }
  .card_com:hover:before,
  .card_com:focus-within:before {
    transform: translateY(-4%);
  }
  .card_com:hover:after,
  .card_com:focus-within:after {
    transform: translateY(-50%);
  }
  .card_com:hover .content_com,
  .card_com:focus-within .content_com {
    transform: translateY(0);
  }
  .card_com:hover .content_com > *:not(.title),
  .card_com:focus-within .content_com > *:not(.title) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: calc(var(--d) / 8);
  }

  .card_com:focus-within:before,
  .card_com:focus-within:after,
  .card_com:focus-within .content_com,
  .card_com:focus-within .content_com > *:not(.title) {
    transition-duration: 0s;
  }
}
.content_com:nth-child(4) {
  border-right: none !important;
}
/* card slide translate y end  */

/* tab start ======== */
.tab__list {
  display: flex;
}
.tab__item {
  overflow: hidden;
  cursor: pointer;
  padding: 0px 8px;
  margin-right: 24px;
  text-shadow: 0 0 0.5px currentColor;
  letter-spacing: 1px;
  transition: 1s;
  font-size: 16px;
  font-weight: 800;
  position: relative;
  color: #d8d8d8;
}
.tab__item:before {
  content: "";
  position: absolute;
  top: 95%;
  left: 0;
  height: 2px;
  width: 100%;
  background: #1cb4b5;
  transition: 0.2s;
  visibility: hidden;
  opacity: 0;
  transition: 0.5s;
}
.tab__item.is--active {
  color: #1b1b1b;
  position: relative;
}
.tab__item.is--active:before {
  visibility: visible;
  opacity: 1;
}
.tab__content {
  padding: 32px;
  background: #ffffff;
  border-radius: 0 10px 10px;
}
.tab__content-item {
  display: none;
}
.tab__content-item.is--active {
  display: block;
}
.divider {
  background: linear-gradient(90deg, #4bb8a6 0%, #0a85c3 100%);
  height: 5px !important;
  opacity: 1;
  border-radius: 10px;
  width: 75%;
}
/* tab end ======== */

/* developpement pages ============================================== */
.dev_banner {
  background: no-repeat url(../images/dev/dev_banner.png);
  background-size: cover;
}
/* consulting pages ============================================== */
.consulting_banner {
  background: no-repeat url(../images/consulting/consulting_banner.png);
  background-size: cover;
}
.consultant_background {
  background: no-repeat url(../images/consulting/consultant_background.png);
  background-size: cover;
}
.consultant_card {
  background-color: transparent;
  border: solid 2px white;
  border-radius: 9px;
}
.consultant_card {
  background-color: transparent;
  border: solid 2px white;
  border-radius: 9px;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
.consultant_card:hover {
  background-color: #4bb8a6;
  border: none;
}
.consultant_card_title {
  border-bottom: solid 2px #fff;
}
.green_card {
  border-radius: 22px;
  background: linear-gradient(
    180deg,
    rgba(28, 180, 181, 0.8) 0%,
    rgba(14, 136, 194, 0.8) 100%
  );
}
.form_controle_contact:focus {
  border-bottom: solid 5px #4bb8a6 !important;
}
.navbar-nav {
  display: flex;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  flex-direction: row;
}
@media (max-width: 500px) {
  .navResp {
    width: 100% !important;
  }
  .navbar-collapse {
    overflow-x: scroll;
    /* padding-left: 60%; */
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: fixed;
    left: 45%;
    top: 100px;
    z-index: 1000;
    max-height: calc(100vh - 56px);
    overflow-x: scroll;
  }
  .dropdown-menu.show {
    display: block;
  }
  .nav-link {
    font-weight: 700 !important;
    font-size: 11px;
  }
  .btn-contact {
    border-radius: 25px;
    background: linear-gradient(
      0deg,
      rgba(31, 121, 224, 0.8) 0%,
      rgba(31, 121, 224, 0.8) 100%
    );
    border-radius: 25px;
    transform: none !important;
    height: 86%;
  }
  .accordion button .icon {
    right: -20px;
    width: 19px;
    height: 19px;
  }
  .accordion button .icon::before {
    top: 9px;
    left: 4px;
    width: 9px;
    height: 2px;
  }
  .accordion button .icon::before {
    top: 9px;
    left: 4px;
    width: 9px;
    height: 2px;
  }
  .imgConsultantOterson {
    width: 100%;
  }
}
@media (min-width: 501px) and (max-width: 767px) {
  .navbar-collapse {
    overflow-x: scroll;
    padding-left: 60%;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: fixed;
    left: 45%;
    top: 100px;
    z-index: 1000;
    max-height: calc(100vh - 56px);
    overflow-x: scroll;
  }
}
.titleSlider {
  font-weight: 600;
  font-size: 22px;
}

.nav-pills .nav-link .active .active-image {
  background: linear-gradient(
    103.63deg,
    #0e88c2 13.78%,
    #4bb8a6 99.31%
  ) !important;
}
/* .inactive-image {
  display: none;
}

.nav-link:focus .active-image {
  display: none;
}

.nav-link:focus .inactive-image {
  display: inline-block;
} */

/* resultat page ============================================== */
.bg-oterson {
  background: linear-gradient(0deg, #2e85e6 0%, #2e85e6 100%);
}
.textarea-modal {
  resize: none;
}
.btn-modal-send {
  width: 100px;
  background: linear-gradient(0deg, #2e85e6 0%, #2e85e6 100%);
  font-weight: bold;
  color: white;
  border: 0 none;
  border-radius: 5px;
  cursor: pointer;
  padding: 8px;
  text-decoration: none;
  font-size: 14px;
}
.btn-modal-cancel {
  width: 100px;
  font-weight: bold;
  border: 0 none;
  border-radius: 5px;
  cursor: pointer;
  padding: 8px;
  text-decoration: none;
  font-size: 14px;
}
.modal-label {
  font-weight: bold;
  text-decoration: none;
  font-size: 14px;
}
/* page home ============================================== */
/* fieldset  */
#progress li {
  list-style-type: none;
  color: white;
  text-transform: uppercase;
  font-size: 9px;
  width: 33.33%;
}
#progress li:before {
  content: counter(step);
  counter-increment: step;
  width: 43px;
  line-height: 40px;
  display: block;
  font-size: 10px;
  color: #333;
  background: white;
  border-radius: 25px;
  margin: 0 auto 20px auto;
  box-shadow: -2px 2px 4px rgba(28, 180, 181, 0.3);
}
#progress li.active:before,
#progress li.active:after {
  border: 2px solid white;
  background: #1f79e0;
  border-radius: 25px;
  color: white;
}
#progress {
  counter-reset: step;
  text-align: center;
}

/* page services ============================================== */
.carousel-img {
  height: 18.25rem !important;
  border-top-left-radius: 2rem !important;
  border-top-right-radius: 2rem !important;
}
.fs-14 {
  font-size: 14px;
}
.widthPhone {
  width: 24rem;
}
/* page blog ============================================== */
.blog_banner {
  background: no-repeat url(../images/blog/Section.png);
  background-size: cover;
}
.blog-title {
  position: relative;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0,
    rgba(0, 0, 0, 0.8) 75%
  );
  bottom: 60px;
  border-bottom-right-radius: 25px;
  border-bottom-left-radius: 25px;
}
a {
  color: none !important;
  text-decoration: none !important;
}
.border-25 {
  border-radius: 25px;
}

.widget {
  border: none;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.07);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  margin-bottom: 20px;
  position: relative;
  background: #fff;
  padding: 20px;
  display: block;
}
.widget-image .widget-image-cover img {
  transition: all 0.1s ease-in-out;
}
.widget-image-cover {
  margin: -20px;
  padding: 64% 20px 20px;
  border-radius: 25px;
  overflow: hidden;
  background: #3c454d;
  position: relative;
}

.widget-image:hover .widget-image-cover img {
  max-width: 110%;
  min-height: 110%;
  margin-left: -5%;
  margin-top: -5%;
}

.widget-image .widget-image-cover img {
  transition: all 0.1s ease-in-out;
}

.widget-image-cover img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  min-height: 100%;
  max-width: 100%;
}
.widget-image-info {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0,
    rgba(0, 0, 0, 0.8) 75%
  );
  padding: 20px;
  color: #fff;
  border-radius: 25px;
}

.fw-700 {
  font-weight: 700;
}
.fs-1-5 {
  font-size: 1.5rem;
}
.blog-image {
  /* height: 250px; */
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}
.blog-image:hover {
  transform: scale3d(1.1, 1.1, 1.1);
}
.blog-title-h2 {
  color: #0e2b3d;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  line-height: 1.3;
  border-bottom: 1px solid #eee;
}
.blog-description {
  font-weight: 600;
  font-size: 14px;
  line-height: 1.7;
  color: #000000b3;
}
/* page details blog */
.social_icon {
  height: 30px;
  width: 50px;
}
.color-black {
  color: #000000;
}

/* share blog */
.shareSocial {
  .socialList {
    list-style: none;
    flex-flow: row wrap;
    li {
      margin: 5px;
      &:first-child {
        padding-left: 0;
      }
      a {
        position: relative;
        width: 38px;
        height: 38px;
        border-radius: 100%;
        text-decoration: none;
        background-color: #999;
        color: #fff;
        transition: 0.35s;
        i {
          position: absolute;
          top: 50%;
          left: 50%;
          transform-origin: top left;
          transform: scale(1) translate(-50%, -50%);
          transition: 0.35s;
        }
        &:hover {
          i {
            transform: scale(1.5) translate(-50%, -50%);
          }
        }
      }
      &:nth-child(1) a {
        background-color: #135cb6;
      }
      &:nth-child(2) a {
        background-color: #00aced;
      }
      &:nth-child(3) a {
        background-color: #2a7fe6;
      }
    }
  }
}
.post_populair {
  min-height: 19vh;
}
.single_post .img-post {
  position: relative;

  overflow: hidden;

  max-height: 500px;

  margin-bottom: 10px;
}

.single_post .img-post > img {
  -webkit-transform: scale(1);

  -ms-transform: scale(1);

  transform: scale(1);

  opacity: 1;

  -webkit-transition: -webkit-transform 0.4s ease, opacity 0.4s ease;

  transition: transform 0.4s ease, opacity 0.4s ease;

  max-width: 100%;

  filter: none;

  -webkit-filter: grayscale(0);

  -webkit-transform: scale(1.01);
}

.single_post .img-post:hover img {
  -webkit-transform: scale(1.02);

  -ms-transform: scale(1.02);

  transform: scale(1.02);

  opacity: 0.7;

  filter: gray;

  -webkit-filter: grayscale(1);

  -webkit-transition: all 0.8s ease-in-out;
}

.single_post .img-post:hover .social_share {
  display: block;
}
.fs-26 {
  font-size: 26px;
}
/* ==== HEADER ==== */
.page-header {
  background: var(--color-grey-8531, rgba(217, 217, 217, 0.31));
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  position: sticky;
  top: 0;
  z-index: 1000;
}

.nav-link {
  color: #1c1c1c;

  transition: all 0.3s ease;
}
.nav-link:hover,
.nav-link.active {
  color: #1f79e0;
}

.besion-title {
  color: var(--www-portage-360-fr-woodsmoke, var(--color-grey-8, #141617));
  text-align: center;

  /* www.portage360.fr/Semantic/Strong upper */
  font-family: var(--font-family-Font-1, Inter);
  font-size: var(--font-size-26, 26px);
  font-style: normal;
  font-weight: var(--font-weight-900, 900);
  line-height: var(--line-height-36_4, 36.4px); /* 140% */
  letter-spacing: var(--letter-spacing--0_42, -0.416px);
  text-transform: uppercase;
}
/* ==== HERO SECTION ==== */
.hero-section {
  position: relative;
  height: 90vh;
  overflow: hidden;
}
.hero-section .hero-image img {
  width: 100%;
  height: 90vh;
  object-fit: cover;
}

/* ==== FORM CARD ==== */
.card-form {
  position: absolute;
  bottom: -20%;
  left: 8%;
  transform: translateY(-50%);
  width: 500px;
  background: #fff;
  padding: 1.5rem;

  width: 468.34px;
  height: 514px;
  min-height: var(--height-1, 1px);
  padding: 24px 25px 25px 25px;
  border-radius: 12px;
  border-right: var(--height-1, 1px) solid
    var(--color-grey-88, rgba(19, 21, 22, 0.08));
  border-bottom: var(--height-1, 1px) solid
    var(--color-grey-88, rgba(19, 21, 22, 0.08));
  border-left: var(--height-1, 1px) solid
    var(--color-grey-88, rgba(19, 21, 22, 0.08));
  background: var(--color-white-solid, #fff);
  box-shadow: 0 24px 32px -6px rgba(19, 21, 22, 0.1);
  flex-shrink: 0;
}
.besion-text {
  color: var(--www-portage-360-fr-east-bay, var(--color-blue-38, #424282));
  text-align: center;

  /* www.portage360.fr/Inter/Semi Bold */
  font-family: var(--font-family-Font-1, Inter);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-600, 600);
  line-height: var(--line-height-22_4, 22.4px); /* 140% */
  letter-spacing: var(--letter-spacing--0_26, -0.256px);
}
/* ==== SALAIRE CARD ==== */
.card-salaire {
  position: fixed;
  bottom: 10%;
  right: 0%;
  transform: translateY(-50%);

  padding: 0;
  border-radius: 12px;
  text-align: center;
  display: inline-flex;

  justify-content: center;
  gap: 10px;
  flex-shrink: 0;
  border-radius: 9px;

  z-index: 9999999999;
}
.btn-rond {
  display: flex;
  width: 285px;
  height: 80px;
  padding: 10.514px 25.409px 11.39px 25.409px;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  border-radius: 82px 0 0 82px;
  background: linear-gradient(0deg, #00e093 0%, #00e093 100%);
  color: #fff;
  text-align: center;
  font-family: var(--font-family-Font-2, Lato);
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 21.028px; /* 87.616% */
  border: none;
  color: #fff;
  text-align: center;
  font-family: var(--font-family-Font-2, Lato);
  font-size: 24px !important;
  font-style: normal;
  font-weight: 700;
  line-height: 21.028px; /* 87.616% */
}
.btn-rond {
  color: #fff !important;
}
.title-salaire {
  color: #1f79e0;
  text-align: center;
  font-family: var(--font-family-Font-1, Lato);
  font-size: 32px;
  font-style: normal;
  font-weight: 900;
  line-height: var(--line-height-28_8, 28.8px); /* 90% */
}
.text-slaire {
  color: var(--oterson-partners-com-shark, var(--color-azure-15, #212529));
  text-align: center;
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-28_8, 28.8px); /* 180% */
}
.margin {
  margin-top: 16px;
  margin-bottom: 32px !important;
}
/* ==== FORM STYLING ==== */
.form-control {
  border-radius: 8px;
  padding: 0.6rem 0.9rem;
  display: flex;
  height: 60px;
  padding: 20px 17px;
  justify-content: center;
  align-items: flex-start;
  align-self: stretch;
  border-radius: 10px;
  border: var(--height-1, 1px) solid var(--color-grey-95, #f2f3f5);
  background: var(--color-white-solid, #fff);
}
.form-control::placeholder {
  color: var(--color-grey-27, #434549) !important;

  /* www.portage360.fr/Semantic/Input */
  font-family: var(--font-family-Font-1, Inter);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: normal;
}
.btn-primary {
  border-radius: 8px;
  display: flex;
  padding: 12px 29px 13px 29px;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  border: none;
  border-radius: 10px;
  background: #1f79e0;
}
.icons {
  display: flex;
  width: 81px;
  height: 80px;
  padding: 6px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 79px;
  background: #cde4ff;
}
.text-besion {
  color: var(--www-portage-360-fr-abbey, var(--color-grey-27, #434549));
  text-align: center;
  font-family: Inter;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px; /* 184.615% */
  letter-spacing: 0.24px;
  margin-top: 16px !important;
}
.services-text {
  color: var(--oterson-partners-com-shark, var(--color-azure-15, #212529));

  /* oterson-partners.com/Semantic/Heading 3 */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-24, 24px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-28_8, 28.8px); /* 120% */
}
.services-text span {
  color: #1f79e0;

  /* oterson-partners.com/Semantic/Heading 3 upper */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-24, 24px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-28_8, 28.8px);
  text-transform: uppercase;
}
.title-service {
  color: var(--oterson-partners-com-shark, var(--color-azure-15, #212529));

  /* oterson-partners.com/Semantic/Heading 3 */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-24, 24px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-28_8, 28.8px); /* 120% */
  width: 80%;
}
.mt-top {
  margin-top: 100px;
}
.title-service span {
  color: #1f79e0;

  /* oterson-partners.com/Semantic/Heading 3 upper */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-24, 24px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-28_8, 28.8px);
  text-transform: uppercase;
}
.container-width {
  width: 80%;
  margin: auto;
}
/* ==== RESPONSIVE ==== */
@media (max-width: 992px) {
  .card-form,
  .card-salaire {
    position: static;
    transform: none;
    width: 100%;
    margin: 1rem auto;
  }
  .hero-section {
    height: auto;
  }
}
.carousel-item {
  height: 90vh;
  min-height: 600px;
  position: relative;
}

.carousel-item img {
  object-fit: cover;
  height: 100%;
  filter: brightness(0.5);
}

.carousel-caption {
  position: absolute;
  top: 72%;
  left: 10%;
  transform: translateY(-50%);
  text-align: left;
  max-width: 900px;
}

.carousel-caption h2 {
  color: #fff;

  font-family: Lato;
  font-size: 64px;
  font-style: normal;
  font-weight: 900;
  line-height: var(--line-height-33_6, 33.6px); /* 52.5% */
  text-transform: uppercase;
  color: #fff;
}

.carousel-caption p {
  color: #fff;
  font-family: Lato;
  font-size: 22px;
  font-style: normal;
  font-weight: 400;
  line-height: 33px; /* 150% */
  color: #f0f0f0;
  margin-top: 25px;
  width: 70%;
}

.carousel-caption .btn {
  margin-top: 20px;
  padding: 10px 25px;
  font-weight: 500;
  border-radius: 30px;
  display: flex;
  width: 157px;
  padding: 7.5px 25px;
  justify-content: center;
  align-items: flex-start;
  border-radius: 63px;
  background: #1f79e0;
  color: var(--color-white-solid, #fff);
  text-align: center;

  /* oterson-partners.com/Semantic/Link */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--font-size-24, 24px); /* 150% */
}
@media (max-width: 768px) {
  .span-green {
    font-size: 27px !important;
    line-height: 32px !important;
  }
  .title-simulator {
    font-size: 27px !important;
    line-height: 32px !important;
  }
  .small-premium {
    font-size: 14px !important;
    line-height: 18px !important;
  }
  .paragraphe-simulator {
    width: 100% !important;
  }
  .title-premium {
    font-size: 20px !important;
    line-height: 24px !important;
  }
  .premium-section .bg-dark {
    padding: 0px !important;
  }
  .container-width {
    width: 100% !important;
  }
  .mt-top {
    margin-top: 50px;
  }
  .services-text {
    font-size: 20px !important;
  }
  .services-text span {
    font-size: 20px !important;
  }
  .title-service {
    font-size: 16px;
    width: 100% !important;
  }
  .title-service span {
    font-size: 16px;
  }
  .avantages {
    margin-bottom: 0 !important;
  }
  .carousel-caption h2 {
    font-size: 27px;
  }
  .carousel-caption p {
    font-size: 16px;
    width: 100%;
    line-height: 20px;
  }
  .hero-image img {
    height: 50vh !important;
    object-position: 63% 50%;
  }
  .stiky-btn {
    position: fixed !important;
    bottom: 5% !important;
    right: 10px !important;
    z-index: 100000 !important;
    animation: float 3s ease-in-out infinite, bounce 4s ease-in-out infinite;
    transform-origin: center;
  }

  /* Floating animation for mobile sticky button */
  @keyframes float {
    0%,
    100% {
      transform: translateY(0px) scale(1);
    }
    25% {
      transform: translateY(-8px) scale(1.05);
    }
    50% {
      transform: translateY(-12px) scale(1.1);
    }
    75% {
      transform: translateY(-8px) scale(1.05);
    }
  }

  /* Pulse animation for extra attention */
  .stiky-btn::before {
    content: "";
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    background: rgba(31, 121, 224, 0.3);
    border-radius: 50%;
    animation: pulse 2s infinite;
    z-index: -1;
  }

  @keyframes pulse {
    0% {
      transform: scale(0.8);
      opacity: 1;
    }
    100% {
      transform: scale(1.4);
      opacity: 0;
    }
  }

  /* Bounce animation for extra attention */
  @keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
      transform: translateY(0) scale(1);
    }
    10% {
      transform: translateY(-15px) scale(1.1);
    }
    30% {
      transform: translateY(-10px) scale(1.05);
    }
    40% {
      transform: translateY(-5px) scale(1.02);
    }
  }

  /* Enhanced button styling for mobile */
  .stiky-btn .btn-rond {
    background: linear-gradient(135deg, #1f79e0, #0d47a1);
    color: white;
    border: none;
    padding: 15px 25px;
    border-radius: 50px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 6px 20px rgba(31, 121, 224, 0.3);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    font-size: 14px !important;
    width: 100% !important;
    height: 100% !important;
  }
  .title-a {
    font-size: 32px !important;
    line-height: 100% !important;
  }
  .green_text-a {
    font-size: 32px !important;
    line-height: 100% !important;
  }
  /* Shimmer effect */
  .stiky-btn .btn-rond::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
      90deg,
      transparent,
      rgba(255, 255, 255, 0.3),
      transparent
    );
    transition: left 0.5s;
  }

  .stiky-btn .btn-rond:hover::before {
    left: 100%;
  }

  /* Hover effect for mobile */
  .stiky-btn:hover {
    animation-play-state: paused;
    transform: translateY(-5px) scale(1.1);
  }

  .stiky-btn:hover .btn-rond {
    background: linear-gradient(135deg, #0d47a1, #1f79e0);
    box-shadow: 0 8px 25px rgba(31, 121, 224, 0.5);
    transform: translateY(-2px);
  }
}

/* ==== PROFESSIONAL MOBILE SIDEBAR ==== */
/* Hide sidebar by default */
.mobile-sidebar,
.mobile-sidebar-overlay {
  display: none;
}

/* Hide sidebar on desktop devices */
@media (min-width: 1200px) {
  .mobile-sidebar,
  .mobile-sidebar-overlay {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  /* Ensure desktop navbar is visible */
  .navbar-collapse {
    display: flex !important;
  }

  .navbar-toggler {
    display: none !important;
  }
}

@media (max-width: 1199.98px) {
  /* Show mobile sidebar only on mobile/tablet */
  .mobile-sidebar,
  .mobile-sidebar-overlay {
    display: block;
  }

  .page-header {
    background: rgba(255, 255, 255, 0%);
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
  }

  .navbar-toggler {
    border: none;
    padding: 8px 12px;
    background: transparent;
  }

  .navbar-toggler:focus {
    box-shadow: none;
  }

  .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    width: 1.5em;
    height: 1.5em;
  }

  /* Mobile Sidebar Overlay */
  .mobile-sidebar-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(5px);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
  }

  .mobile-sidebar-overlay.active {
    opacity: 1;
    visibility: visible;
  }

  /* Mobile Sidebar */
  .mobile-sidebar {
    position: fixed;
    top: 0;
    left: -320px;
    width: 320px;
    height: 100vh;
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    box-shadow: 2px 0 20px rgba(0, 0, 0, 0.1);
    z-index: 9999;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    overflow-y: auto;
    border-right: 1px solid rgba(0, 0, 0, 0.1);
  }

  .mobile-sidebar.active {
    left: 0;
  }

  /* Sidebar Header */
  .sidebar-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(10px);
  }

  .sidebar-logo img {
    max-height: 40px;
    width: auto;
  }

  .sidebar-close {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: #666;
    cursor: pointer;
    padding: 8px;
    border-radius: 50%;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
  }

  .sidebar-close:hover {
    background: rgba(31, 121, 224, 0.1);
    color: #1f79e0;
    transform: rotate(90deg);
  }

  /* Sidebar Navigation */
  .sidebar-nav {
    padding: 20px 0;
  }

  .sidebar-menu {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .sidebar-item {
    margin: 0;
  }

  .sidebar-link {
    display: flex;
    align-items: center;
    padding: 15px 20px;
    color: #333;
    text-decoration: none;
    font-weight: 500;
    font-size: 1rem;
    transition: all 0.3s ease;
    border-left: 3px solid transparent;
    position: relative;
  }

  .sidebar-link i {
    margin-right: 12px;
    font-size: 1.1rem;
    width: 20px;
    text-align: center;
  }

  .sidebar-link.active {
    background: rgba(31, 121, 224, 0.15);
    color: #1f79e0;
    border-left-color: #1f79e0;
    font-weight: 600;
  }

  .sidebar-link.contact-link {
    background: linear-gradient(135deg, #1f79e0, #0d47a1);
    color: white;
    margin: 10px 20px;
    border-radius: 8px;
    font-weight: 600;
  }

  .sidebar-link.contact-link:hover {
    background: linear-gradient(135deg, #0d47a1, #1f79e0);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(31, 121, 224, 0.3);
  }

  /* Submenu */
  .sidebar-submenu {
    list-style: none;
    padding: 0;
    margin: 0;
    background: rgba(248, 249, 250, 0.8);
    border-radius: 8px;
    margin: 5px 20px;
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.3s ease;
  }

  .sidebar-submenu.show {
    max-height: 300px;
  }

  .sidebar-sublink {
    display: block;
    padding: 12px 20px 12px 50px;
    color: #666;
    text-decoration: none;
    font-size: 0.9rem;
    transition: all 0.3s ease;
  }

  .sidebar-sublink:hover {
    background: rgba(31, 121, 224, 0.1);
    color: #1f79e0;
    transform: translateX(5px);
  }

  .submenu-arrow {
    margin-left: auto;
    transition: transform 0.3s ease;
  }

  /* Scrollbar Styling */
  .mobile-sidebar::-webkit-scrollbar {
    width: 4px;
  }

  .mobile-sidebar::-webkit-scrollbar-track {
    background: transparent;
  }

  .mobile-sidebar::-webkit-scrollbar-thumb {
    background: rgba(31, 121, 224, 0.3);
    border-radius: 2px;
  }

  .mobile-sidebar::-webkit-scrollbar-thumb:hover {
    background: rgba(31, 121, 224, 0.5);
  }
}

/* Extra small devices (phones, 576px and down) */
@media (max-width: 575.98px) {
  .mobile-sidebar {
    width: 280px;
    left: -280px;
  }

  .sidebar-header {
    padding: 15px;
  }

  .sidebar-logo img {
    max-height: 35px;
  }

  .sidebar-link {
    padding: 12px 15px;
    font-size: 0.95rem;
  }

  .sidebar-sublink {
    padding: 10px 15px 10px 40px;
    font-size: 0.85rem;
  }
}
@media (min-width: 992px) and (max-width: 1400px) {
  .portage-salarial-section img {
    max-width: 100% !important;
  }
  .padding-about {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }

  .title-premium {
    font-size: 30px !important;
    line-height: 100% !important;
  }
  .card-form {
    position: absolute;

    left: 8%;
    transform: translateY(-50%);
    width: 500px;
    background: #fff;
    padding: 1.5rem;

    width: 468.34px;
    height: 480px;
    min-height: var(--height-1, 1px);
    padding: 24px 25px 25px 25px;
    border-radius: 12px;
    border-right: var(--height-1, 1px) solid
      var(--color-grey-88, rgba(19, 21, 22, 0.08));
    border-bottom: var(--height-1, 1px) solid
      var(--color-grey-88, rgba(19, 21, 22, 0.08));
    border-left: var(--height-1, 1px) solid
      var(--color-grey-88, rgba(19, 21, 22, 0.08));
    background: var(--color-white-solid, #fff);
    box-shadow: 0 24px 32px -6px rgba(19, 21, 22, 0.1);
    flex-shrink: 0;
  }
  .hero-section .hero-image img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
  }
  .hero-section {
    position: relative;
    height: 100vh;
    overflow: hidden;
  }
  .card-salaire {
    position: fixed;
    bottom: -20%;
    right: 0%;
    transform: translateY(-50%);

    border-radius: 12px;
    text-align: center;
    display: inline-flex;
    height: 211px;
    padding: 0px;
    justify-content: center;
    gap: 10px;
    flex-shrink: 0;
    border-radius: 9px;

    z-index: 9999999999;
  }
  .premium-section .img-wrapper img {
    width: 437px !important;
    height: 420.139px !important;
  }
}
.span-green {
  color: #00e093;
  text-align: center;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px; /* 118.75% */
}
.title-simulator {
  color: #000;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px;
}
.paragraphe-simulator {
  color: #000;
  text-align: center;

  /* oterson-partners.com/Semantic/Link */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--font-size-24, 24px); /* 150% */
  width: 25%;
  margin: auto;
}
.title-p {
  color: var(--www-oterson-partners-com-shark, #212529);

  /* www.oterson-partners.com/Semantic/Heading 3 */
  font-family: var(--font-family-Font-2, Lato);
  font-size: var(--line-height-24, 24px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-28_8, 28.8px); /* 120% */
}
.paragraphe-p {
  color: var(--www-oterson-partners-com-shark, #212529);

  /* www.oterson-partners.com/Semantic/Button */
  font-family: var(--font-family-Font-2, Lato);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-24, 24px); /* 150% */
}
.title-pp {
  color: var(
    --www-oterson-partners-com-mariner,
    var(--color-azure-50, #1f79e0)
  );
  text-align: center;

  /* www.oterson-partners.com/Semantic/Heading 6 */
  font-family: var(--font-family-Font-2, Lato);
  font-size: var(--line-height-24, 24px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-28_8, 28.8px); /* 120% */
}
.premium-section {
  font-family: "Inter", sans-serif;
  width: 80%;
  margin: auto;
}
.title-premium {
  color: #fcfefd;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px; /* 118.75% */
}
.premium-section .bg-dark {
  background-color: #111 !important;
  position: relative;
  display: inline-flex;
  padding: 47px;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  border-radius: 25px;
  background: #1d1d1d;
}

.premium-section .text-primary {
  color: linear-gradient(0deg, #3388e7 0%, #3388e7 100%);
}
.small-premium {
  color: #fff;

  /* oterson-partners.com/Semantic/Link */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--font-size-24, 24px); /* 150% */
}
.premium-section .btn-light {
  border-radius: 63px;
  background: linear-gradient(0deg, #fff 0%, #fff 100%);
  background-color: #fff;
  border: none;
  color: #000;
  transition: all 0.3s ease;
  color: var(--color-grey-10, #1a1a1a);
  text-align: center;

  /* oterson-partners.com/Semantic/Button */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-14, 14px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-21, 21px); /* 150% */
}

.premium-section .img-wrapper {
}

.premium-section .img-wrapper img {
  position: absolute;
  z-index: 2;
  object-fit: cover;
  width: 100%;
  height: 100%;
  width: 526px;
  height: 500px;
  flex-shrink: 0;
  top: -45%;
  right: 0%;
  border-radius: 25px;
}

.premium-section .shape-bg {
  position: absolute;
  top: 10%;
  right: 10%;
  width: 80%;
  height: 80%;
  background: linear-gradient(135deg, #00ff88, #007bff);
  clip-path: polygon(100% 0, 0 40%, 80% 100%);
  z-index: 1;
  border-radius: 20px;
  opacity: 0.9;
}
.title-a {
  color: #000;
  text-align: center;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px; /* 118.75% */
}
.green_text-a {
  color: #3388e7;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px;
}
.video-section {
  position: relative;
  width: 80%;
  margin: auto;
  height: 450px;
  border-radius: 20px;
  overflow: hidden;
  font-family: "Inter", sans-serif;

  .background-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
  }

  .overlay-content {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    padding: 2rem;

    border-radius: 20px;
  }

  .text-box {
    max-width: 550px;

    h2 {
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.3;
      color: #fcfefd;
      font-family: Lato;
      font-size: 48px;
      font-style: normal;
      font-weight: 900;
      line-height: 57px; /* 118.75% */
    }

    p {
      font-size: 0.95rem;

      color: #fff;
      font-family: Lato;
      font-size: var(--font-size-16, 16px);
      font-style: normal;
      font-weight: var(--font-weight-400, 400);
      line-height: var(--font-size-24, 24px); /* 150% */
    }

    .btn-light {
      background-color: #fff;
      color: #000;
      border: none;
      transition: 0.3s ease;

      &:hover {
        background-color: #2b75ff;
        color: #fff;
      }
    }
  }
}

/* ✅ Responsive */
@media (max-width: 768px) {
  .hero-section-about h1 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: #000;
    font-family: Lato;
    font-size: 23px !important;
    font-style: normal;
    font-weight: 900;
    line-height: 35px !important;
    text-transform: uppercase;
  }
  .hero-section-about p {
    font-size: 14px !important;
    line-height: 20px !important;
  }
  .video-section {
    height: 250px;
    width: 95%;
    .text-box {
      max-width: 100%;

      h2 {
        font-size: 1.5rem;
        line-height: 100%;
      }
      p {
        color: #fff;
        font-family: Lato;
        font-size: 14px;
        font-style: normal;
        font-weight: var(--font-weight-400, 400);
        line-height: 18px; /* 175% */
      }
    }
  }
  .small-premium1 {
    width: 100% !important;
  }
}

.footer-menu {
  a {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    display: block;
    margin-bottom: 0.5rem;
    font-size: 1.1rem;
    letter-spacing: 0.5px;
    transition: 0.3s ease;

    &:hover {
      opacity: 0.8;
    }
  }
}

.footer-title {
  font-weight: 600;
  letter-spacing: 1px;
  color: #cbdada;
  font-family: Inter;
  font-size: 28px;
  font-style: normal;
  font-weight: 500;
  line-height: 100%; /* 28px */
  letter-spacing: -1.12px;
  text-transform: uppercase;
}

.footer-line {
  height: 1px;
  background: rgba(255, 255, 255, 0.3);
  width: 100%;
}
.about_footer {
  p,
  a {
    color: #cbdada;
    font-family: Inter;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%; /* 19.6px */
  }
}

.footer-menu {
  p,
  a {
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.9rem;
    margin: 0;
    transition: 0.3s ease;
    color: #cbdada;
    font-family: Lato;
    font-size: 28px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 28px */
    letter-spacing: -1.12px;

    &:hover {
      opacity: 0.8;
    }
  }
}

.footer-social {
  p {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
  }

  .dot {
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 50%;
    display: inline-block;
  }
}

.footer-logo {
  width: 60px;
}

.footer-bottom {
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.8);
}

/* Responsive */
@media (max-width: 768px) {
  .footer-logo {
    margin-top: 1rem;
  }

  .footer-bottom {
    flex-direction: column;
    gap: 0.5rem;
  }
}
.hero-section-about {
  position: relative;
  width: 100%;
  height: 100vh;
  background: url("../images/about/bg-about.png") center/cover no-repeat;
}

.hero-section-about .overlay-about {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.3); /* léger voile pour contraste */
  display: flex;
  align-items: center;
  padding: 0 8%;
}

.hero-section-about .content-about {
  max-width: 660px;
  color: #000;
}

.hero-section-about h1 {
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 20px;
  color: #000;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 76px; /* 158.333% */
  text-transform: uppercase;
}

.hero-section-about p {
  font-size: 0.95rem;
  line-height: 1.5;
  margin-bottom: 30px;
  color: #000;
  font-family: Lato;
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: 34px; /* 212.5% */
  width: 80%;
  strong {
    color: #000;
    font-family: Lato;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 34px;
  }
}

.hero-section-about .btn {
  display: inline-block;
  padding: 12px 25px;
  background: black;
  color: white;
  text-decoration: none;
  border-radius: 50px;
  font-size: 0.9rem;
  transition: background 0.3s;
}

.hero-section-about .btn:hover {
  background: #00c6a3; /* couleur hover optionnelle */
}
.valeurs-section .section-title {
  font-size: 2rem;
  font-weight: 700;
}

.valeurs-section .section-title span {
  color: #00c89c; /* Vert comme sur ton exemple */
}

.valeur-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.valeur-card:hover {
  transform: translateY(-5px);
  box-shadow: 0px 6px 18px rgba(0, 0, 0, 0.12);
}

.valeur-icon {
  width: 60px;
  height: 60px;
  object-fit: contain;
  filter: brightness(0) saturate(100%) invert(55%) sepia(68%) saturate(445%)
    hue-rotate(171deg) brightness(92%) contrast(88%);
  /* Ceci applique un bleu comme sur l'image — tu peux remplacer par une image déjà colorée */
}

.valeur-card h4 {
  font-size: 1.2rem;
  color: #3a7bd5;
  font-weight: 600;
  color: var(
    --www-oterson-partners-com-mariner,
    var(--color-azure-50, #1f79e0)
  );
  text-align: center;

  /* www.oterson-partners.com/Semantic/Heading 6 */
  font-family: var(--font-family-Font-2, Lato);
  font-size: var(--line-height-24, 24px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-28_8, 28.8px); /* 120% */
}

.valeur-card p {
  font-size: 0.9rem;
  margin-top: 5px;
  color: var(--www-oterson-partners-com-shark, #212529);
  text-align: center;

  /* www.oterson-partners.com/Semantic/Button */
  font-family: var(--font-family-Font-2, Lato);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-24, 24px); /* 150% */
}
.metier-section .section-title {
  font-size: 2rem;
  font-weight: 700;
  color: #000;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px;
}

.metier-section .section-title span {
  color: #00e093; /* Vert comme sur ton modèle */
}

.metier-text {
  max-width: 750px;
  font-size: 0.95rem;
  line-height: 1.6;
  color: #444;
  color: #212529;
  font-family: Lato;
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: 300;
  line-height: var(--line-height-24, 24px);
  span {
    color: #60a6f6;
    font-family: Lato;
    font-size: var(--font-size-16, 16px);
    font-style: normal;
    font-weight: 300;
    line-height: var(--line-height-24, 24px);
  }
  strong {
    color: #64a9f8;
    text-align: center;
    font-family: Lato;
    font-size: var(--font-size-16, 16px);
    font-style: normal;
    font-weight: 800;
    line-height: var(--line-height-24, 24px); /* 150% */
  }
}

.metier-text a {
  color: #00a6ff;
  text-decoration: none;
  font-weight: 600;
}

.globe-wrapper {
  position: relative;
  display: inline-block;
}

.globe-img {
  width: 100%;
}
.equipe-title {
  color: #00e093;
  text-align: center;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px; /* 118.75% */
  span {
    color: #000;
    font-family: Lato;
    font-size: 48px;
    font-style: normal;
    font-weight: 900;
    line-height: 57px;
  }
}
.text-equipe {
  color: #212529;
  text-align: center;
  font-family: Lato;
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: 300;
  line-height: var(--line-height-24, 24px); /* 150% */
}
.paragraphe-equipe {
  color: var(--www-oterson-partners-com-mariner, var(--color-azure-50, #000));

  /* www.oterson-partners.com/Semantic/Button */
  font-family: var(--font-family-Font-2, Lato);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-24, 24px);
}
.color-btn {
  border-radius: 68px;
  background: linear-gradient(90deg, #63a8f8 0%, #78adea 100%) !important;
}
.prem {
  color: #00e093;
}
.padding-about {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.small-premium1 {
  width: 70%;
}

@media (min-width: 992px) and (max-width: 1400px) {
  .small-premium1 {
    width: 100%;
  }

  .padding-about {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
}
.hero-section-portage {
  position: relative;
  width: 100%;
  height: 100vh;
  background: url("../images/portage/bg-protage.png") center/cover no-repeat;
}

.hero-section-portage .content-portage {
  display: flex;
  justify-content: center;

  color: #000;
}

.hero-section-portage h1 {
  margin-top: 150px;
  color: #000;
  text-align: center;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 76px; /* 158.333% */
  text-transform: uppercase;
  span {
    color: #00e093;
    font-family: Lato;
    font-size: 48px;
    font-style: normal;
    font-weight: 900;
    line-height: 76px;
    text-transform: uppercase;
  }
}
@media (max-width: 768px) {
  .hero-section-portage h1 {
    font-size: 26px;
    line-height: 32px;
    span {
      font-size: 26px;
      line-height: 32px;
    }
  }
}
.faq-section {
  background-color: transparent;
}

.faq-section .image-wrapper img {
  width: 100%;
  max-width: 420px;
  border-radius: 20px;
  transition: transform 0.4s ease;
}

.faq-section .image-wrapper img:hover {
  transform: scale(1.03);
}

.faq-section .faq-card {
  border-radius: 20px;
}

.faq-section .faq-question {
  cursor: pointer;
  color: #1a1a1a;
  transition: color 0.2s ease;
}

.faq-section .faq-question i {
  font-size: 1.2rem;
  color: #000;
  transition: transform 0.2s ease;
}

.faq-section .faq-item.open i.bi-x-lg {
  transform: rotate(180deg);
}

.faq-section .faq-answer p {
  font-size: 0.95rem;
  color: #6c757d; /* gris clair */
  line-height: 1.6;
  margin: 0;
}

.faq-section hr {
  margin: 1rem 0;
  opacity: 0.1;
}

/* Bloc FAQ */
.faq-card {
  background: var(--card-bg);
  border-radius: var(--radius);
  padding: 24px;
  background: #f6f6f6;
  border-radius: 20px;
}

/* Question */
.faq-question {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  padding: 12px 4px;
  transition: color 0.2s ease;
}
.faq-question h6 {
  margin: 0;
  font-weight: 600;
  color: var(--title);
  font-size: 1rem;
}
.faq-question:hover h6 {
  color: var(--accent);
}

/* Icône */
.faq-question i {
  font-size: 1.2rem;
  color: var(--accent);
  transition: transform 0.2s ease;
}
.faq-item.open .faq-question i {
  transform: rotate(180deg);
}

/* Réponse */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  padding: 0 8px;
}
.faq-item.open .faq-answer {
  max-height: 400px;
  padding: 10px 8px 16px;
}
.faq-answer p {
  color: var(--text);
  font-size: 0.95rem;
  line-height: 1.6;
  margin: 0;
}

/* Séparateur */
hr.faq-sep {
  margin: 10px 0;
  opacity: 0.1;
}
.video-wrapper {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius);
  box-shadow: 0 6px 30px rgba(0, 0, 0, 0.1);
  max-width: 420px;
  border-radius: 16px;
  margin: 0 auto;
}
.video-wrapper video {
  width: 100%;
  height: auto;
  border-radius: var(--radius);
  transition: transform 0.3s ease;
  border-radius: 16px;
}
.video-wrapper:hover video {
  transform: scale(1.04);
}

/* Responsive */
@media (max-width: 767px) {
  .video-wrapper {
    max-width: 320px;
  }
  .faq-card {
    margin-top: 20px;
  }
}
.fonctionnement-section h2 {
  color: #000;
  text-align: center;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px; /* 118.75% */
}

.fonctionnement-section .text-green {
  color: #00e093;
}

.step-number {
  border-radius: 5px;
  background: #628ecb;
  color: #fff;
  font-weight: 600;
  font-size: 1rem;
  width: 36px;
  height: 36px;

  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.step-text {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #4b4b4b;
  margin-bottom: 0;
  color: var(--Text-txt-secondary, rgba(60, 60, 67, 0.85));
  font-family: Lato;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 140%; /* 22.4px */
}

@media (max-width: 768px) {
  .step-text {
    font-size: 0.9rem;
  }

  .fonctionnement-section h2 {
    font-size: 1.6rem;
    line-height: 1.7rem;
  }

  .step-number {
    width: 32px;
    height: 32px;
    font-size: 0.9rem;
  }
}
.schema-section {
  background: #f5f9ff;
}
.schema-content {
  width: 80%;
  margin: auto;
}
/* Lignes du schéma */
.schema-line {
  gap: 15px;
  text-align: center;
}

/* Bloc icône + texte */
.schema-item {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1;
  gap: 10px;
}

.schema-item h6 {
  margin-top: 10px;
  font-size: 0.95rem;
  color: var(--text-dark);
  font-weight: 600;
}

/* Icônes */
.icon-box {
  background: var(--icon-bg);
  border-radius: 14px;
  box-shadow: 0 4px 16px var(--icon-shadow);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  color: var(--blue);
}

/* Flèches entre les blocs */
.schema-arrow {
  position: relative;
}

.schema-arrow .arrow {
  display: block;
  position: absolute;
  top: 50%;
  width: 100%;
  height: 2px;
  background: var(--blue);
  opacity: 0.3;
}

.schema-arrow .arrow::after {
  content: "";
  position: absolute;
  top: -3px;
  border: 5px solid transparent;
}

.schema-arrow .arrow.right::after {
  right: 0;
  border-left-color: var(--blue);
  opacity: 0.6;
}

.schema-arrow .arrow.left {
  transform: translateY(4px);
}

.schema-arrow .arrow.left::after {
  left: 0;
  border-right-color: var(--blue);
  opacity: 0.6;
}

/* Responsive */
@media (max-width: 768px) {
  .schema-item {
    justify-content: start !important;
  }
}
.hero-section-consultants {
  position: relative;

  height: 80vh;
  background: url("../images/portage/cons.png") center/cover no-repeat;
  margin: 60px;
  margin-top: 130px;
  border-radius: 30px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.hero-section-consultants .content-consultants {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  color: #000;
}

.hero-section-consultants h1 {
  color: #fff;

  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 63px; /* 131.25% */
  span {
    color: #00e093;
  }
}
.hero-section-consultants p {
  color: rgba(255, 255, 255, 0.85);
  text-align: center;
  font-family: Lato;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 140%; /* 22.4px */ /* 131.25% */
  width: 90%;
}
@media (max-width: 768px) {
  .hero-section-consultants {
    margin: 30px;
    margin-top: 100px;
    height: 60vh;
  }
  .hero-section-consultants h1 {
    font-size: 26px;
    line-height: 32px;
    span {
      font-size: 26px;
      line-height: 32px;
    }
  }
}
.hero-section-entreprises {
  position: relative;

  height: 80vh;
  background: url("../images/portage/entr.png") center/cover no-repeat;
  margin: 60px;
  margin-top: 130px;
  border-radius: 30px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.hero-section-entreprises .content-entreprises {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  color: #000;
}

.hero-section-entreprises h1 {
  color: #fff;

  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 63px; /* 131.25% */
  span {
    color: #00e093;
  }
}
.hero-section-entreprises p {
  color: rgba(255, 255, 255, 0.85);
  text-align: center;
  font-family: Lato;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 140%; /* 22.4px */ /* 131.25% */
  width: 80%;
}
@media (max-width: 768px) {
  .hero-section-entreprises {
    margin: 30px;
    margin-top: 100px;
    height: 60vh;
  }
  .hero-section-entreprises h1 {
    font-size: 26px;
    line-height: 32px;
    span {
      font-size: 26px;
      line-height: 32px;
    }
  }
}
.prem1 {
  color: #628ecb;
}
.portage-salarial-section {
  background: #628ecb;
  border-radius: 25px;
  color: #fff;
  overflow: hidden;
  width: 80%;
  margin: auto;
}

.portage-salarial-section .title {
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  color: #fcfefd;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px; /* 118.75% */
}

.portage-salarial-section .subtitle {
  font-size: 0.9rem;
  color: #f5f5f5;
  max-width: 90%;
  color: #fff;

  /* oterson-partners.com/Semantic/Link */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-16, 16px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--font-size-24, 24px); /* 150% */
}

.portage-salarial-section .btn-custom {
  background-color: #fff;
  color: #3d5ca8;
  border: none;
  border-radius: 25px;
  padding: 6px 18px;
  font-size: 0.9rem;
  transition: all 0.3s ease;
  border-radius: 63px;
  background: linear-gradient(0deg, #fff 0%, #fff 100%);

  width: 160px;
  padding: 10px;

  color: var(--color-grey-10, #1a1a1a);
  text-align: center;

  /* oterson-partners.com/Semantic/Button */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-14, 14px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-21, 21px); /* 150% */
}

.portage-salarial-section .btn-custom:hover {
  background-color: #fff;
  color: #3d5ca8;
  border: none;
  border-radius: 25px;
  padding: 6px 18px;
  font-size: 0.9rem;
  transition: all 0.3s ease;
  border-radius: 63px;
  background: linear-gradient(0deg, #fff 0%, #fff 100%);

  padding: 10px;

  color: var(--color-grey-10, #1a1a1a);
  text-align: center;

  /* oterson-partners.com/Semantic/Button */
  font-family: var(--font-family-Font-1, Lato);
  font-size: var(--font-size-14, 14px);
  font-style: normal;
  font-weight: var(--font-weight-400, 400);
  line-height: var(--line-height-21, 21px); /* 150% */
}

.portage-salarial-section img {
  max-width: 80%;
  border-radius: 10px;
}
.avantages-section {
  background-color: #fff;
}

.avantages-section .title {
  font-size: 2rem;
  font-weight: 700;
  color: #000;
  color: #000;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px; /* 118.75% */
}

.avantages-section .highlight {
  color: #00e093;
  /* vert menthe lumineux */
}

.avantages-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.avantages-list li {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  font-size: 1rem;
  color: #333;
  color: var(--Text-txt-secondary, rgba(60, 60, 67, 0.85));
  font-family: Lato;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 140%; /* 22.4px */
  width: 60%;
}

.avantages-list .icon {
  background-color: #00e6a0;
  color: #fff;
  font-weight: bold;
  border-radius: 6px;
  width: 34px;
  height: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 15px;
  font-size: 1.2rem;
}

.avantages-section img {
  max-width: 85%;
  border-radius: 20px;
}
.comment-section .title {
  font-size: 2rem;
  font-weight: 700;
  color: #000;
  color: #000;
  font-family: Lato;
  font-size: 48px;
  font-style: normal;
  font-weight: 900;
  line-height: 57px;
}

.comment-section .highlight {
  color: #00e093;
}

/* --- Ligne du processus --- */
.timeline {
  position: relative;
  gap: 0;
}

.step {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

.circle {
  width: 60px;
  height: 60px;
  background-color: #6c8ecf;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 1.8rem;
  z-index: 2;
}

.circle.last {
  background-color: #fff;
  border: 3px solid #6c8ecf;
}

.circle.last .dot {
  width: 14px;
  height: 14px;
  background-color: #6c8ecf;
  border-radius: 50%;
}

/* Lignes continues entre les cercles */
.line {
  height: 4px;
  width: 140px;
  background-color: #6c8ecf;
  margin: 0 -2px;
  z-index: 1;
  position: relative;
  top: -30px; /* aligne la ligne avec le centre des cercles */
}

.text {
  max-width: 230px;
  font-size: 0.9rem;
  color: #333;
  margin-top: 20px;
}

/* Responsive */
@media (max-width: 768px) {
  .portage-salarial-section .title {
    font-size: 26px !important;
    line-height: 30px;
    margin-top: 20px;
  }
  .portage-salarial-section .btn-custom {
    width: 100%;
    margin-top: 10px;
  }
  .avantages-section .title {
    font-size: 34px !important;
  }
  .timeline {
    flex-direction: column;
    align-items: center;
  }

  .line {
    width: 4px;
    height: 70px;
    top: 0;
    margin: -5px 0;
  }

  .comment-section .title {
    font-size: 34px !important;
  }
  .footer-menu {
    p,
    a {
      font-size: 25px;
    }
  }
  .footer-title {
    font-size: 25px;
  }
  .avantages-list li {
    width: 100%;
  }
}
.contact-container {
  margin-top: 80px !important;
}
.contact-bg {
  height: 70vh;
}
.vide {
  height: 50vh;
}
