/* PRATINIUM v526 — « Écosystème de confiance » : bloc premium avec photographie de contexte.
   - vraie couche <picture> (l'ancien ::before était annulé par des styles d'orbe hérités :
     280×280 px, flou 8 px, mix-blend-mode: screen → invisible sur fond blanc) ;
   - panneau sombre cinématographique, texte clair, logos sur une barre de verre ;
   - photo vivante (lent travelling), respect de prefers-reduced-motion. */

html body#index section.pf-partners.pf-partners--v526 {
  padding-top: 28px !important;
  padding-bottom: 28px !important;
  background: transparent !important;
}

html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel.pf-partners__panel--v526 {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: 1fr auto !important;
  align-items: end !important;
  gap: 34px !important;
  min-height: 500px !important;
  padding: 56px 56px 40px !important;
  border-radius: 30px !important;
  border: 1px solid rgba(255, 255, 255, .10) !important;
  background: #071327 !important;
  background-image: none !important;
  box-shadow: 0 34px 80px -34px rgba(6, 17, 38, .55), 0 2px 0 rgba(255, 255, 255, .04) inset !important;
  color: #fff !important;
}

/* neutralise les anciennes couches décoratives (orbes, voile blanc v525) */
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel.pf-partners__panel--v526::before,
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel.pf-partners__panel--v526::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* ---------- photo ---------- */
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  display: block !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: inherit !important;
  /* filet de sécurité : la même photo en fond (chemin relatif à ce fichier, toujours juste) */
  background: #071327 url("../img/home-premium/partners-ecosystem-photo-v526.webp") 72% 42% / cover no-repeat !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: 72% 42% !important;
  filter: saturate(1.06) contrast(1.04) !important;
  transform-origin: 70% 45% !important;
  animation: pfPartnersDrift526 26s ease-in-out infinite alternate !important;
  will-change: transform;
}
@keyframes pfPartnersDrift526 {
  from { transform: scale(1.02) translate3d(0, 0, 0); }
  to   { transform: scale(1.09) translate3d(-1.2%, -0.8%, 0); }
}

/* voile : lisibilité du texte à gauche, personnes visibles à droite, base sombre pour les logos */
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__shade {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(5, 14, 32, .95) 0%, rgba(5, 14, 32, .88) 26%, rgba(5, 14, 32, .52) 46%, rgba(5, 14, 32, .10) 66%, rgba(5, 14, 32, 0) 80%),
    linear-gradient(0deg, rgba(5, 14, 32, .86) 0%, rgba(5, 14, 32, .38) 26%, rgba(5, 14, 32, 0) 48%),
    radial-gradient(120% 90% at 100% 0%, rgba(214, 170, 82, .16), rgba(214, 170, 82, 0) 55%) !important;
}
/* filet doré en haut du panneau */
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__shade::after {
  content: "" !important;
  position: absolute !important;
  left: 56px; right: 56px; top: 0;
  height: 2px;
  background: linear-gradient(90deg, rgba(232, 190, 104, 0), rgba(232, 190, 104, .85) 30%, rgba(232, 190, 104, .85) 70%, rgba(232, 190, 104, 0)) !important;
  opacity: .9;
}

/* ---------- texte ---------- */
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__copy {
  position: relative !important;
  z-index: 2 !important;
  align-self: center !important;
  max-width: 560px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  box-shadow: none !important;
  text-align: left !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 0 22px !important;
  padding: 9px 18px 9px 14px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(232, 190, 104, .45) !important;
  background: rgba(255, 255, 255, .08) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: none !important;
  color: #f2d48f !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-eyebrow::before {
  content: "" !important;
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #e8be68 !important;
  box-shadow: 0 0 0 0 rgba(232, 190, 104, .6) !important;
  animation: pfPartnersPulse526 2.6s ease-out infinite !important;
  position: static !important;
  margin: 0 !important;
}
@keyframes pfPartnersPulse526 {
  0%   { box-shadow: 0 0 0 0 rgba(232, 190, 104, .55); }
  70%  { box-shadow: 0 0 0 9px rgba(232, 190, 104, 0); }
  100% { box-shadow: 0 0 0 0 rgba(232, 190, 104, 0); }
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__title {
  margin: 0 0 16px !important;
  max-width: 540px !important;
  color: #fff !important;
  font-size: clamp(28px, 2.6vw, 40px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em !important;
  text-shadow: 0 2px 24px rgba(0, 0, 0, .35) !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__text {
  margin: 0 0 22px !important;
  max-width: 470px !important;
  color: rgba(234, 241, 250, .84) !important;
  font-size: 17px !important;
  line-height: 1.6 !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__pillars {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__pillars li {
  margin: 0 !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
  background: rgba(255, 255, 255, .06) !important;
  color: rgba(255, 255, 255, .88) !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  letter-spacing: .01em !important;
  list-style: none !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__pillars li::before {
  content: none !important;
}

/* ---------- barre de logos en verre ---------- */
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__casino {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  grid-template-rows: auto !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 12px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(255, 255, 255, .18) !important;
  background: rgba(255, 255, 255, .10) !important;
  backdrop-filter: blur(14px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.2) !important;
  box-shadow: 0 18px 40px -22px rgba(0, 0, 0, .6) !important;
  transform: none !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-slot {
  position: relative !important;
  width: auto !important;
  height: 92px !important;
  min-height: 0 !important;
  margin: 0 !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255, 255, 255, .7) !important;
  background: rgba(255, 255, 255, .96) !important;
  box-shadow: 0 8px 22px -14px rgba(6, 17, 38, .55) !important;
  overflow: hidden !important;
  transform: none !important;
  transition: transform .35s ease, box-shadow .35s ease !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-slot:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 30px -16px rgba(6, 17, 38, .7) !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  padding: 12px 14px !important;
}
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo svg,
html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo img {
  max-width: 100% !important;
  max-height: 64px !important;
  width: auto !important;
  height: auto !important;
}

/* ---------- tablette ---------- */
@media (max-width: 1199px) {
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel.pf-partners__panel--v526 {
    padding: 44px 36px 32px !important;
    min-height: 460px !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__casino {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-slot { height: 80px !important; }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo svg,
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo img { max-height: 52px !important; }
}

/* ---------- mobile : photo en tête, texte dessous, logos 2 colonnes ---------- */
@media (max-width: 899px) {
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel.pf-partners__panel--v526 {
    min-height: 0 !important;
    padding: 210px 20px 20px !important;
    gap: 24px !important;
    border-radius: 24px !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo {
    bottom: auto !important;
    height: 300px !important;
    background-image: url("../img/home-premium/partners-ecosystem-photo-v526-mobile.webp") !important;
    background-position: 50% 30% !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo img {
    object-position: 50% 30% !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__shade {
    background:
      linear-gradient(180deg, rgba(5, 14, 32, .10) 0px, rgba(5, 14, 32, .55) 160px, rgba(5, 14, 32, .96) 290px, #071327 300px) !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__shade::after { left: 20px; right: 20px; }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__title { font-size: 26px !important; }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__text { font-size: 15.5px !important; }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__casino {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    padding: 10px !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-slot { height: 76px !important; }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo { padding: 10px !important; }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo svg,
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo img { max-height: 46px !important; }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__pillars { justify-content: center !important; }
}

@media (prefers-reduced-motion: reduce) {
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo img,
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-eyebrow::before {
    animation: none !important;
  }
}

/* ================= v528 — bloc compact + texte aligné sur la ligne de puces ================= */
@media (min-width: 900px) {
  html body#index section.pf-partners.pf-partners--v526 {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel.pf-partners__panel--v526 {
    min-height: 0 !important;
    padding: 30px 40px 26px !important;
    gap: 20px !important;
    border-radius: 26px !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__shade::after { left: 40px; right: 40px; }
  /* la largeur du bloc texte = largeur de la ligne de puces ; titre et texte s'y alignent à droite */
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__copy {
    width: fit-content !important;
    max-width: 100% !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__pillars {
    flex-wrap: nowrap !important;
    width: max-content !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__title,
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__text {
    width: 0 !important;
    min-width: 100% !important;
    max-width: none !important;
  }
  /* titre : 2 lignes fixes ; la 1re ligne est ajustée par script à la largeur des puces */
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__title .pf-partners__tl {
    display: block !important;
    width: max-content !important;
    white-space: nowrap !important;
  }
  /* texte : justifié sur la même largeur, dernière ligne alignée à gauche */
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__text {
    text-align: justify !important;
    text-align-last: left !important;
    hyphens: manual !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-eyebrow {
    margin-bottom: 14px !important;
    padding: 7px 15px 7px 12px !important;
    font-size: 11px !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__title {
    margin-bottom: 10px !important;
    font-size: 29px !important;
    line-height: 1.16 !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__text {
    margin-bottom: 14px !important;
    font-size: 15.5px !important;
    line-height: 1.5 !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partners__pillars li {
    padding: 5px 12px !important;
    font-size: 12px !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__casino {
    gap: 10px !important;
    padding: 9px !important;
    border-radius: 18px !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-slot {
    height: 66px !important;
    border-radius: 13px !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo { padding: 8px 12px !important; }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo svg,
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 .pf-partner-logo img { max-height: 46px !important; }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo img { object-position: 72% 38% !important; }
}

/* ================= v529 — photo recadrée vers le bas : l'ordinateur sur la table reste visible ================= */
@media (min-width: 900px) {
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo {
    background-position: 72% 68% !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo img {
    object-position: 72% 68% !important;
    transform-origin: 70% 62% !important;
  }
}

/* v536 — la tête de la personne de droite ne doit plus être coupée par le haut du panneau,
   ni au repos ni pendant le lent travelling : cadrage légèrement remonté (le PC reste visible)
   et zoom ancré en haut de l'image (il s'étend vers le bas, jamais au-dessus des têtes). */
@media (min-width: 900px) {
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo {
    background-position: 72% 56% !important;
  }
  html body#index section.pf-partners.pf-partners--v526 .pf-partners__panel--v526 > .pf-partners__photo img {
    object-position: 72% 56% !important;
    transform-origin: 70% 0% !important;
    animation-name: pfPartnersDrift536 !important;
  }
}
@keyframes pfPartnersDrift536 {
  from { transform: scale(1.02) translate3d(0, 0, 0); }
  to   { transform: scale(1.08) translate3d(-1.2%, 0.5%, 0); }
}
