/* M-000247-J12-F27-B — page Partenaires */
.partners-page-main{
  background:#fff;
}

.partners-page-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  background:#071f48;
}

.partners-page-hero__media{
  position:absolute;
  inset:0;
}

.partners-page-hero__media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(4,24,58,.96) 0%,rgba(4,24,58,.85) 54%,rgba(4,24,58,.48) 100%);
}

.partners-page-hero__media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.partners-page-hero__content{
  position:relative;
  z-index:1;
  min-height:500px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  max-width:820px;
  padding-block:96px;
}

.partners-page-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0 0 28px;
  color:rgba(255,255,255,.78);
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.partners-page-breadcrumb a{
  color:#fff;
  text-decoration:none;
}

.partners-page-kicker{
  margin:0 0 14px;
  color:#86c95c;
  font-size:14px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.partners-page-hero h1{
  max-width:790px;
  margin:0;
  font-size:clamp(42px,6vw,72px);
  line-height:.98;
  letter-spacing:-.045em;
}

.partners-page-hero__lead{
  max-width:730px;
  margin:24px 0 0;
  color:rgba(255,255,255,.9);
  font-size:clamp(17px,2vw,21px);
  line-height:1.65;
}

.partners-page-section{
  padding-block:clamp(64px,8vw,108px);
}

.partners-page-section--soft{
  background:#f5f7fa;
}

.partners-page-intro{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:clamp(36px,7vw,108px);
  align-items:start;
}

.partners-page-intro__copy{
  color:#4e5c70;
  font-size:19px;
  line-height:1.75;
}

.partners-group + .partners-group{
  margin-top:72px;
}

.partners-group__head{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:clamp(24px,6vw,80px);
  align-items:end;
  margin-bottom:34px;
}

.partners-group__head h2{
  margin:0;
  color:#0c2b5b;
  font-size:clamp(28px,4vw,42px);
  line-height:1.08;
  letter-spacing:-.025em;
}

.partners-group__head p{
  margin:0;
  color:#66748a;
  line-height:1.7;
}

.partners-directory{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}

.partners-directory__card{
  display:flex;
  min-height:178px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
  padding:24px;
  border:1px solid #dfe5eb;
  border-radius:16px;
  background:#fff;
  box-shadow:0 13px 32px rgba(5,30,65,.055);
}

.partners-directory__logo{
  display:flex;
  width:100%;
  height:82px;
  align-items:center;
  justify-content:center;
}

.partners-directory__logo img{
  display:block;
  max-width:100%;
  max-height:72px;
  object-fit:contain;
}

.partners-directory__name{
  margin:0;
  color:#203b62;
  font-size:14px;
  font-weight:800;
  text-align:center;
}

.partners-page-note{
  margin:40px 0 0;
  color:#6d798a;
  font-size:14px;
  line-height:1.7;
}

.partners-page-cta{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);
  gap:30px;
  align-items:center;
  padding:38px;
  border-radius:18px;
  color:#fff;
  background:#0b2b5c;
}

.partners-page-cta h2{
  margin:0;
  font-size:clamp(28px,4vw,42px);
  line-height:1.08;
}

.partners-page-cta p{
  margin:16px 0 0;
  color:rgba(255,255,255,.78);
  line-height:1.7;
}

.partners-page-cta__action{
  display:flex;
  justify-content:flex-end;
}

@media (max-width:1024px){
  .partners-directory{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .partners-page-hero__content{
    min-height:430px;
    padding-block:72px;
  }

  .partners-page-hero__media::after{
    background:linear-gradient(90deg,rgba(4,24,58,.96),rgba(4,24,58,.76));
  }

  .partners-page-intro,
  .partners-group__head,
  .partners-page-cta{
    grid-template-columns:1fr;
  }

  .partners-directory{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .partners-page-cta__action{
    justify-content:flex-start;
  }
}

@media (max-width:440px){
  .partners-page-hero h1{
    font-size:39px;
  }

  .partners-directory{
    grid-template-columns:1fr;
  }

  .partners-directory__card{
    min-height:158px;
  }

  .partners-page-cta{
    padding:24px;
  }
}
