/** CSS site **/
.bgNav {background-color: #fff;padding:0;}
.cheminDeFer {display: none !important;}
.largeur_site_2, .largeur_site { width: 100%; padding: 0; max-width: none;}
.navList{display:none!important;}
.bandeau-infos{display: none;}

.landingMC-banner {
  background-color: #032C60;
  padding: 50px 0;
}
.landingMC-banner img {
  display: block;
  margin: 0 auto;
}
.landingMC-head {
  position: relative;
  overflow: hidden;
}
.landingMC-head img {
  display: block;
  width: 100%;
  position: relative;
}
.crossfade{
  position: relative;
  width:100%;
  aspect-ratio: 12/5;                 /* ou retirez si vous avez des images à ratio fixe */
  overflow: hidden;
  --d: 10s;                            /* durée d’un cycle (ajustez) */
  --easing: ease-in-out;   
  background-color: #032037;           /* courbe d’animation */
}

.crossfade > img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;                   /* recadre proprement */
  opacity: 0;
  animation: fade var(--d) var(--easing) infinite;
  will-change: opacity;
}

/* La deuxième image démarre à mi-parcours pour alterner */
.crossfade > img:nth-child(2){
  animation-delay: calc(var(--d) / 2);
}

@keyframes fade{
  0%   { opacity: 0; }
  10%  { opacity: 1; }  /* fondu entrant */
  50%  { opacity: 1; }  /* reste visible */
  60%  { opacity: 0; }  /* fondu sortant */
  100% { opacity: 0; }
}

/* Respecte les préférences d’accessibilité
@media (prefers-reduced-motion: reduce){
  .crossfade > img{ animation: none; }
} */
.landingMC-head--title {
  position: absolute;
  bottom: 130px;
  left: 18%;
  z-index: 1;
}
.landingMC-head--title span {
  display: block;
  color: white;
}
.landingMC-head--title span:first-child {
  text-transform: uppercase;
  font-size: 15px;
  letter-spacing: 2.5pt;
}
.landingMC-head--title span:last-child {
  font-weight: 900;
  font-size: 110px;
  line-height: 92px;
}
.landingMC-travel {
  width: calc(100% - 40px);
  max-width: 1530px;
  margin: 0 auto;
  padding: 100px 20px;
}
.landingMC-travel--intro {
  max-width: 1024px;
  margin: 0 auto;
  padding: 0 25px;
  color: #032C60;
  text-align: center;
}
.landingMC-travel--intro span{
  display: block;
  font-weight: 900;
  font-size: 60px;
  line-height: 72px;
  margin-bottom: 50px;
}
.landingMC-travel--intro p {
  font-size: 18px;
  line-height: 30px;
}
.landingMC-travel--content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 100px 80px;
  margin-top: 100px;
}
.landingMC-travel--content img {
  display: block;
  width: 100%;
  border-radius: 50px;
}
.landingMC-travel--content p {
  font-size: 18px;
  line-height: 30px;
  color: #032C60;
  text-align: center;
  margin-top: 40px;
  padding: 0 20px;
}
.landingMC-travel--content p span {
  font-weight: 700!important;
  font-size: 1.6em;
}
.landingMC-travel--content p span sup {
  vertical-align: super;
  font-size:60%;
  line-height: normal;
}
.landingMC-video {
  background-color: #E2EEF3;
  padding: 125px 0;
}
.landingMC-video--content {
  width: calc(100% - 40px);
  max-width: 1310px;
  margin: 0 auto;
  text-align: center;
  color: #032C60;
}
.landingMC-video--content span {
  font-weight: 900;
  font-size: 60px;
  line-height: 72px;
  margin-bottom: 50px;
}
.landingMC-video--content p {
  font-size: 26px;
  line-height: 36px;
  margin-top:20px;
  margin-bottom: 70px;
}
.landingMC-video--content video {
  border-radius: 50px;
}
.landingMC-products {
  width: 100%;
  padding: 150px 0;
  margin: 0 auto;
  background-color: #E2EEF3;
}
.landingMC-products--title {
  background-color: #0B4EDC;
  border-radius: 10px;
  color: white;
  display: table;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: .6px;
  line-height: 30px;
  margin: 0 auto 40px;
  padding: 16px 22px 18px;
  transform: rotate(-2deg);
}
.landingMC-solution {
  position: relative;
  background-color: #9AF9FF;
  display: flex;
  align-items: center;
  justify-content: end;
  height: 740px;
}
@media screen and (min-width: 2200px) {
  .landingMC-solution--img {
    left: 15%!important;
  }
}
.landingMC-solution--img {
  position: absolute;
  left: 10%;
  top: -80px;
}
.landingMC-solution--img img {
  display: block;
  width: 35vw;
  max-width: 600px;
  border-radius: 50px
}
.landingMC-solution--content {
  width: 40%;
  margin-right: 10%;
  color: #032C60;
}
.landingMC-solution--content span {
  font-weight: 900;
  font-size: 60px;
  line-height: 72px;
  padding-bottom: 5%;
  display: block;
}
.landingMC-solution--content p {
  font-size: 26px;
  line-height: 36px;
}
.landingMC-solution--content sup {
  vertical-align: super;
  font-size:60%;
  line-height: normal;
}
.landingMC-end {
  background-color: #061b67;
  padding: 50px 0;
}
.landingMC-mentions {
  max-width: 1570px;
  width: calc(100% - 40px);
  padding: 0 20px 5%;
  text-align: center;
  margin: 0 auto;
}
.landingMC-mentions p {
  color: #fff;
  font-size: 12px;
  line-height: 1.8em;
}
.landingMC-mentions p.landingMC-mentions--title {
  font-size: 18px;
  line-height: 24px;
  font-weight: 700;
  padding-bottom:20px;
}
.landingMC-link {
  text-align: center;
  /*padding : 1% 0 2%;*/
}
.landingMC-link a {
  margin: 25px 0;
  background-color: transparent;
  border-color: #032C60;
  color: #032C60;
  font-size: 18px;
  font-weight: 700;
  line-height: 18px;
  padding: 24px 40px 25px;
  border: 2px solid #032C60;
  border-radius: 48px;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  width: auto;
  transition: all 0.3s;
}
.landingMC-link a:hover {
  opacity:0.75;
}

.landingMC-part {
  height: 30vw;
  overflow: hidden;
  view-timeline-name: --bloc;
  view-timeline-axis: block;
}
.landingMC-part img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  animation: move linear;
  animation-timeline: --bloc;
  will-change: transform;
}

@keyframes move {
  from {
    transform: translateY(-10%);
  }
  to {
    transform: translateY(25%) scale(1.6);
  }
}

/** RESPONSIVE **/
@media screen and (max-width: 1024px) {
  .landingMC-banner {
    padding: 30px 0;
  }
  .landingMC-banner img {
    max-width: 350px;
  }
  .landingMC-part {
    display: none;
  }
  .landingMC-head--title {
    bottom: 50px;
    left: 8%;
  }
  .landingMC-head--title span:first-child {
    font-size: 14px;
    line-height: 16px;
  }
  .landingMC-head--title span:last-child {
    font-size: 80px;
    line-height: 80px;
  }
  .landingMC-travel--content {
    margin-top: 85px;
  }
  .landingMC-travel--content p {
    font-size: 16px;
    line-height: 26px;
  }
  .landingMC-video {
    padding: 100px 0 0 0;
  }
  .landingMC-video--content span {
    font-size: 42px;
    line-height: 50px;
    margin-bottom: 50px;
  }
  .landingMC-video--content p {
    font-size: 25px;
    line-height: 36px;
    margin-bottom: 40px;
  }
  .landingMC-video--content video {
    display: block;
    border-radius: 0;
    position: relative;
    width: calc(100% + 40px);
    left: -20px;
  }
  .landingMC-solution--img{
    top: 50%;
    transform: translateY(-50%);
  }
  .landingMC-solution--content span {
    font-size: 42px;
    line-height: 50px;
    padding-bottom: 8%;
    display: block;
  }
  .landingMC-travel--content img {
   border-radius: 40px;
  }
  .landingMC-link a {
    padding: 17px 30px 18px;
  }
}
@media screen and (max-width: 768px) {
  .landingMC-banner {
    padding: 25px 0;
  }
  .landingMC-banner img {
    max-width: 300px;
  }
  .landingMC-part img {
    width: 150%
  }
  .crossfade {
    aspect-ratio: 7 / 5;
  }
  .landingMC-head--title {
    bottom: 60px;
    left: 6%;
  }
  .landingMC-head--title span:first-child {
    font-size: 13px;
    line-height: 15px;
  }
  .landingMC-head--title span:last-child {
    font-size: 70px;
    line-height: 70px;
  }
  .landingMC-travel--intro {
    padding:0;
  }
  .landingMC-travel--content {
    margin-top: 70px;
  }
  .landingMC-travel--content p {
    font-size: 15px;
  }
  .landingMC-video {
    padding: 80px 0 0 0;
  }
  .landingMC-video--content span {
    font-size: 36px;
    line-height: 42px;
    margin-bottom: 50px;
  }
  .landingMC-video--content p {
    font-size: 22px;
    line-height: 30px;
    margin-bottom: 50px;
  }
  .landingMC-solution {
    flex-flow: column;
    height: auto;
  }
  .landingMC-solution--img {
    position: relative;
    top: -50px;
    left: auto;
    transform: none;
  }
  .landingMC-solution--img img {
    width: 90%;
    margin: 0 5%;
    border-radius: 30px;
    max-width: 450px;
  }
  .landingMC-solution--content {
    width: 90%;
    margin: 20px 5% 50px;
  }
  .landingMC-solution--content span {
    font-size: 36px;
    line-height: 42px;
    text-align: center;
    display: block;
    padding-bottom: 5%;
  }
  .landingMC-solution--content p {
    font-size: 22px;
    line-height: 30px;
    text-align: center;
  }
  .landingMC-travel--content img {
   border-radius: 30px;
  }
}
@media screen and (max-width: 560px) {
  .landingMC-banner {
    padding: 20px 0;
  }
  .landingMC-banner img {
    max-width: 250px;
  }
  .landingMC-part img {
    width: 200%
  }
  .crossfade {
    aspect-ratio: 6 / 5;
  }
  .landingMC-head--title {
    bottom: 25px;
    left: 5%;
  }
  .landingMC-head--title span:first-child {
    font-size: 9px;
    line-height: 14px;
  }
  .landingMC-head--title span:last-child {
    font-size: 50px;
    line-height: 60px;
  }
  .landingMC-travel {
    width: calc(100% - 50px);
    padding: 60px 25px;
  }
  .landingMC-travel--intro span {
    font-size: 24px;
    line-height: 34px;
    margin-bottom: 40px;
  }
  .landingMC-travel--intro p {
    font-size: 15px;
    line-height: 24px;
  }
  .landingMC-travel--content {
    grid-template-columns: repeat(1, 1fr);
    margin-top: 60px;
  }
  .landingMC-travel--content p {
    font-size: 15px;
    line-height: 24px;
  }
  .landingMC-video {
    padding: 60px 0 0 0;
  }
  .landingMC-video--content span {
    font-size: 24px;
    line-height: 30px;
    margin-bottom: 40px;
  }
  .landingMC-video--content p {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 60px;
  }
  .landingMC-solution--content span {
    font-size: 24px;
    line-height: 36px;
  }
  .landingMC-solution--content p {
    font-size: 18px;
    line-height: 26px;
}
.landingMC-products--title{
  font-size :18px;
  padding: 10px 16px 12px;
}
.landingMC-products {
    padding: 100px 0;
  }
  .landingMC-travel--content img {
   border-radius: 20px;
  }
}
