/* futur-voyance.com — ossature du gabarit 04-plateforme (plateforme multi-cabinets).

   Ce qui la separe des trois autres annuaires du reseau tient a la STRUCTURE autant
   qu'a la palette : fond sombre continu, barre haute non fixee, ouverture CENTREE
   posee sur une photo de fond assombrie par un voile, rangee de pastilles de filtre,
   grille de cartes a jeton rond + badge + etiquettes + bouton pleine largeur, et un
   bandeau de cadrage avant le pied. Aucune vignette dans les grilles : les captures
   d'ecran apparaissent sur les notices seulement.

   Nommage : prefixe pf- en kebab, deux niveaux maximum. */

:root{
  --nuit:#2d1b4e; --nuit-clair:#3d2766; --nuit-fonce:#1f1236;
  --or:#d4af6a; --or-clair:#e2c288; --bord:#4a3573;
  --texte:#efe9f5; --texte-doux:#c3b6d8; --texte-faible:#a695c4;
}
body{font-family:'Nunito Sans',system-ui,sans-serif;background:var(--nuit);color:var(--texte);
  font-size:16px;line-height:1.7}
h1,h2,h3,h4{font-family:'Poppins',system-ui,sans-serif}
a{color:var(--or);text-decoration:none}
a:hover{color:var(--or-clair);text-decoration:underline;text-underline-offset:3px}

/* ---- barre haute (non fixee : le gabarit 02 l'est deja) ---- */
.pf-topbar{background:rgba(0,0,0,.22);padding:14px 0}
.pf-marque{font-family:'Poppins',sans-serif;font-weight:700;font-size:1.25rem;color:#fff}
.pf-marque:hover{color:#fff;text-decoration:none}
.pf-marque em{color:var(--or);font-style:normal}
.pf-topbar nav a{color:#c9bede;font-size:.9rem;margin-left:22px}
.pf-topbar nav a:hover{color:var(--or);text-decoration:none}

/* ---- ouverture centree sur photo assombrie ---- */
.pf-intro{padding:56px 0 44px;text-align:center;position:relative;overflow:hidden}
.pf-intro-fond{position:absolute;inset:0;z-index:0}
.pf-intro-fond img{width:100%;height:100%;object-fit:cover;opacity:.30}
.pf-intro-fond:after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(45,27,78,.55),rgba(45,27,78,.94))}
.pf-intro .container{position:relative;z-index:2}
.pf-intro h1{font-size:clamp(1.7rem,3.4vw,2.25rem);font-weight:600;margin-bottom:14px;
  line-height:1.22}
.pf-intro h1 em{color:var(--or);font-style:normal}
.pf-intro p{color:#bfb2d4;max-width:42rem;margin:0 auto;font-size:1.05rem}
.pf-filtres{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:26px}
.pf-filtres a{background:transparent;border:1px solid #56427a;color:#c9bede;border-radius:20px;
  padding:6px 17px;font-size:.87rem;display:inline-block}
.pf-filtres a:hover{background:var(--or);border-color:var(--or);color:var(--nuit);
  font-weight:600;text-decoration:none}
.pf-filtres a.pf-actif{background:var(--or);border-color:var(--or);color:var(--nuit);font-weight:600}

/* ---- corps de texte ---- */
.pf-corps{padding:44px 0 10px}
.pf-corps h2{font-size:1.5rem;font-weight:600;margin:40px 0 14px;color:#fff}
.pf-corps h2:first-child{margin-top:0}
.pf-corps h3{font-size:1.08rem;margin:24px 0 8px;color:var(--or);font-weight:600}
.pf-corps p{margin-bottom:1.1rem;color:var(--texte-doux)}
.pf-corps ul,.pf-corps ol{margin-bottom:1.2rem;color:var(--texte-doux)}
.pf-corps li{margin-bottom:.42rem}
.pf-corps strong{color:#fff;font-weight:600}

.pf-encart{background:var(--nuit-clair);border-left:3px solid var(--or);border-radius:0 8px 8px 0;
  padding:18px 22px;margin:26px 0;font-size:.97rem;color:var(--texte-doux)}
.pf-alerte{background:rgba(212,175,106,.08);border:1px solid rgba(212,175,106,.35);
  border-radius:8px;padding:16px 20px;margin:24px 0;font-size:.95rem;color:#ddd0ef}
.pf-tableau{width:100%;font-size:.92rem;margin:24px 0;border-collapse:collapse;color:var(--texte-doux)}
.pf-tableau th{background:var(--nuit-fonce);color:var(--or);text-align:left;padding:11px 13px;
  font-family:'Poppins';font-weight:600;font-size:.82rem;border-bottom:1px solid var(--bord)}
.pf-tableau td{padding:11px 13px;border-bottom:1px solid var(--bord);vertical-align:top}
.pf-tableau tr:nth-child(even) td{background:rgba(255,255,255,.025)}
.pf-liste-reperes{border:1px solid var(--bord);border-radius:10px;background:var(--nuit-clair);
  margin:26px 0}
.pf-liste-reperes dl{margin:0;padding:6px 0}
.pf-liste-reperes dt{font-family:'Poppins';font-size:.72rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--or);font-weight:600;padding:14px 20px 0}
.pf-liste-reperes dd{margin:0;padding:4px 20px 14px;font-size:.94rem;color:var(--texte-doux);
  border-bottom:1px solid rgba(255,255,255,.05)}
.pf-liste-reperes dd:last-child{border-bottom:none}

/* ---- grille de cartes ---- */
.pf-roster{padding:14px 0 50px}
.pf-tete-roster{text-align:center;max-width:44rem;margin:0 auto 26px}
.pf-tete-roster h2{font-size:1.45rem;font-weight:600;margin-bottom:8px;color:#fff}
.pf-tete-roster p{color:var(--texte-faible);font-size:.95rem;margin:0}
.pf-slot{background:var(--nuit-clair);border:1px solid var(--bord);border-radius:12px;padding:22px;
  height:100%;display:flex;flex-direction:column;transition:transform .16s,border-color .16s}
.pf-slot:hover{transform:translateY(-3px);border-color:var(--or)}
.pf-slot-tete{display:flex;align-items:center;gap:13px;margin-bottom:14px}
.pf-jeton{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#4a3573,#6b4f9e);
  display:flex;align-items:center;justify-content:center;font-family:'Poppins';font-size:1.15rem;
  color:var(--or);flex:0 0 52px}
.pf-slot-nom{font-family:'Poppins';font-weight:600;font-size:1rem;margin:0;line-height:1.3}
.pf-slot-nom a{color:#fff}
.pf-slot-nom a:hover{color:var(--or);text-decoration:none}
.pf-slot-app{font-size:.79rem;color:var(--texte-faible);margin:0}
.pf-badge{display:inline-block;background:rgba(212,175,106,.14);color:var(--or);font-size:.72rem;
  font-weight:600;letter-spacing:.6px;text-transform:uppercase;padding:3px 10px;border-radius:4px;
  margin-bottom:12px;align-self:flex-start}
.pf-slot-texte{font-size:.92rem;color:var(--texte-doux);line-height:1.65;flex:1;margin-bottom:16px}
.pf-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.pf-tags span{background:rgba(255,255,255,.06);color:#b3a4cc;font-size:.75rem;padding:3px 9px;
  border-radius:3px}
.pf-cta-block{display:block;text-align:center;background:var(--or);color:var(--nuit);font-weight:700;
  font-family:'Poppins';font-size:.9rem;padding:11px;border-radius:7px}
.pf-cta-block:hover{background:var(--or-clair);color:var(--nuit);text-decoration:none}

/* ---- vignette de notice (les grilles n'en portent pas) ---- */
.pf-capture{display:block;border:1px solid var(--bord);border-radius:10px;overflow:hidden;
  background:var(--nuit-fonce);max-width:560px;margin:0 auto}
.pf-capture img{width:100%;height:auto;display:block;opacity:.92;transition:opacity .2s}
.pf-capture:hover img{opacity:1}

/* ---- sortie vers le service decrit ---- */
.pf-sortie{background:var(--nuit-clair);border:1px solid var(--bord);border-radius:12px;
  padding:24px;margin:32px 0 6px;text-align:center}
.pf-sortie p{color:var(--texte-doux);margin:0 0 16px;font-size:.97rem}
.pf-sortie small{display:block;margin-top:12px;font-size:.78rem;color:var(--texte-faible)}

/* ---- bandeau de cadrage et pied ---- */
.pf-bandeau-bas{background:var(--nuit-clair);border-top:1px solid var(--bord);padding:38px 0;
  text-align:center;margin-top:20px}
.pf-bandeau-bas h2{font-size:1.35rem;font-weight:600;margin-bottom:10px;color:#fff}
.pf-bandeau-bas p{color:#bfb2d4;margin:0 auto;max-width:44rem}
.pf-pied{background:var(--nuit-fonce);color:#8f81ab;font-size:.86rem;padding:30px 0}
.pf-pied a{color:#c9bede}

/* ---- apercu en tete de carte (ajoute le 12/09/2026) ---- */
.pf-slot{padding-top:0;overflow:hidden}
.pf-vue{display:block;margin:0 -22px 16px;line-height:0;position:relative;
  border-bottom:1px solid var(--bord)}
.pf-vue img{width:100%;height:auto;display:block;filter:saturate(.86) brightness(.82);
  transition:filter .16s}
.pf-slot:hover .pf-vue img{filter:saturate(1) brightness(.95)}
.pf-slot-tete{margin-top:0}
.pf-slot > .pf-slot-tete{padding-top:0}
