/* ============================================================
   PALMSQUARE - Blocs offres LinkedIn (v57)
   Bloc "Choisis ton point de depart" (3 niveaux) + le
   configurateur (garde en modele pour le questionnaire).

   ECHELLE : calee sur la section "Ce que contiennent
   concretement mes offres" de la meme page.
     titre de section ... Livvic 46px / 700
     titre de carte ..... Satoshi 24px / 700
     texte courant ...... Satoshi 15px / 500 / 20px
     etiquette .......... Satoshi 14px / 500, #E90199 sur #FFC7EC
     carte .............. padding 20px, gap 20px, radius 10px,
                          fond blanc 52%
   La largeur vient du controle Elementor (defaut du kit, 1300px),
   pas d'ici.

   PIEGE A CONNAITRE : Elementor ne met PAS de <p> dans un widget
   "Editeur de texte" quand le contenu est du texte brut. On cible
   donc le widget lui-meme (.ps-xxx), pas .ps-xxx p.
   ============================================================ */

.ps-sec{
  --m-ink:#171120; --m-ink-2:#6A5C70; --m-line:#E7DEE8;
  --m-rose:#FA2FAB; --m-rose-t:#A8117A;
  --m-card:rgba(255,255,255,.52); --m-card-on:rgba(255,255,255,.94);
  --m-card-line:rgba(255,255,255,.92); --cta-border:#FF76D1;
  --m-rose-soft:#FFC7EC; /* Rose 200 : bordures d'etat, plus douces */
  --ps-display:"Livvic","Trebuchet MS",sans-serif;
  --ps-body:"Satoshi",-apple-system,BlinkMacSystemFont,sans-serif;
}
.ps-sec .elementor-widget-text-editor p{margin:0}

.ps-mk{
  background:linear-gradient(155deg,#F3F1F6 0%,#F7F3F8 48%,#FCF1F9 100%);
  border-radius:16px; padding:28px 24px 30px!important; gap:0!important;
  color:var(--m-ink); font-family:var(--ps-body);
}
/* section des 3 niveaux : fond transparent, largeur geree par Elementor */
.ps-sec-1 .ps-mk{background:none;border-radius:0;padding:0!important}

.ps-mk-head{text-align:center;align-items:center;margin-bottom:34px;gap:12px!important}
.ps-sec .ps-mk-title .elementor-heading-title{
  font-family:var(--ps-display);font-weight:700;font-size:46px;
  letter-spacing:-.01em;line-height:1.2;color:var(--m-ink);
}
.ps-sec .ps-mk-sub,.ps-sec .ps-mk-sub p{
  color:var(--m-ink-2);font-size:17px;font-weight:500;line-height:1.5;max-width:62ch;
}

/* ===== boutons ===== */
.ps-sec .ps-pill .elementor-button,.ps-cases .ps-pill .elementor-button{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:var(--m-rose);color:#fff;border:2px solid var(--cta-border);
  border-radius:999px;padding:14px 28px;font-size:16px;font-weight:600;
  letter-spacing:-.005em;font-family:var(--ps-body);
  box-shadow:0 6px 18px -10px rgba(250,47,171,.95);
  transition:background .18s,box-shadow .18s,transform .12s;
}
.ps-sec .ps-pill .elementor-button:hover,.ps-cases .ps-pill .elementor-button:hover{background:#E81C9A;color:#fff;box-shadow:0 9px 22px -10px rgba(250,47,171,1)}
.ps-sec .ps-pill .elementor-button:active,.ps-cases .ps-pill .elementor-button:active{transform:translateY(1px)}
.ps-sec .ps-pill .elementor-button-content-wrapper,.ps-cases .ps-pill .elementor-button-content-wrapper{gap:10px}
.ps-sec .ps-pill .elementor-button-icon,.ps-cases .ps-pill .elementor-button-icon{display:inline-flex;align-items:center}
/* la fleche pointe en haut a droite */
.ps-sec .ps-pill .elementor-button-icon i,.ps-cases .ps-pill .elementor-button-icon i,
.ps-sec .ps-pill .elementor-button-icon svg,.ps-cases .ps-pill .elementor-button-icon svg{transform:rotate(-45deg);font-size:15px;width:15px;height:15px}

/* ===== IDEE 1 : cards-onglets ===== */
.ps-o1.e-con{display:grid!important;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch;padding:0!important}
.ps-o1>.ps-o1-card{width:100%!important;max-width:none!important;justify-self:stretch}
.ps-o1>.ps-o1-card[data-tab="a"]{grid-column:1;grid-row:1}
.ps-o1>.ps-o1-card[data-tab="b"]{grid-column:2;grid-row:1}
.ps-o1>.ps-o1-card[data-tab="c"]{grid-column:3;grid-row:1}
.ps-o1>.ps-o1-panel{grid-row:2;grid-column:1/-1;display:none!important}
.ps-o1>.ps-o1-panel.is-on{display:flex!important}

.ps-o1-card{
  cursor:pointer;background:var(--m-card);
  border:1.5px solid var(--m-card-line);border-radius:10px;
  padding:20px!important;gap:6px!important;transition:all .2s;
  opacity:.55;filter:saturate(.35);align-items:flex-start!important;
}
.ps-o1-card:hover{opacity:.8}
.ps-o1-card.is-active{
  opacity:1;filter:none;border-color:var(--m-rose-soft);background:#fff;
  box-shadow:0 6px 16px -14px rgba(250,47,171,.45);
}
.ps-o1-card .ps-lvl-img{margin-bottom:16px!important}
.ps-o1-card .ps-lvl-img img{width:96px;height:96px;object-fit:contain;object-position:center bottom;transition:transform .25s}
.ps-o1-card .ps-n{margin-bottom:2px!important}
.ps-o1-card .ps-prs{margin-top:2px}
.ps-o1-card.is-active .ps-lvl-img img{transform:scale(1.07) rotate(-3deg)}

/* l'exergue "NIVEAU 1" : petit, rose fonce, majuscules */
.ps-sec .ps-o1-card .ps-n,
.ps-sec .ps-o1-card .ps-n p{
  font-family:var(--ps-body);font-size:12px;font-weight:700;
  letter-spacing:.12em;color:var(--m-rose-t);text-transform:uppercase;line-height:1.4;
}
.ps-sec .ps-o1-card .ps-t .elementor-heading-title{font-size:24px;font-weight:700;line-height:1.2;letter-spacing:-.015em;color:var(--m-ink)}
.ps-o1-card .ps-pr{margin-top:auto;padding-top:18px}
.ps-sec .ps-o1-card .ps-pr,
.ps-sec .ps-o1-card .ps-pr p{font-size:22px;font-weight:800;color:var(--m-ink);line-height:1.2;letter-spacing:-.02em}
.ps-sec .ps-o1-card .ps-prs,
.ps-sec .ps-o1-card .ps-prs p{font-weight:500;font-size:14px;color:var(--m-ink-2);line-height:1.4}

.ps-o1-panel{padding-top:28px!important;margin-top:12px;gap:20px!important}
.ps-sec .ps-pt .elementor-heading-title{font-size:24px;font-weight:700;letter-spacing:-.015em;line-height:1.25;color:var(--m-ink)}
.ps-feat .elementor-icon-list-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 32px}
.ps-feat .elementor-icon-list-item{font-size:15px;font-weight:500;line-height:20px;align-items:flex-start;color:var(--m-ink)}
.ps-feat .elementor-icon-list-text{color:var(--m-ink)}
.ps-feat .elementor-icon-list-icon{color:var(--m-rose);margin-top:3px}
.ps-feat .elementor-icon-list-icon svg,.ps-feat .elementor-icon-list-icon i{width:15px;height:15px;font-size:14px;fill:var(--m-rose)}

/* pied du panneau : bouton a gauche, mention a sa droite */
.ps-o1-foot{gap:18px!important;margin-top:8px;padding:0!important;justify-content:flex-start!important;align-items:center!important}
.ps-o1-foot>.elementor-widget{width:auto!important}
.ps-o1-foot .ps-pill{text-align:left}
.ps-sec .ps-o1-note,
.ps-sec .ps-o1-note p{font-size:15px;font-weight:500;line-height:20px;color:var(--m-ink-2)}

/* ===== BLOC DEPLIANT : le detail des livrables ===== */
.ps-detail-fold{margin-top:12px!important;padding-top:0!important;gap:0!important;background:var(--m-card);border:2px solid var(--m-card-line);border-radius:10px;transition:border-color .18s,background .18s}
.ps-detail-fold.is-empty{display:none!important}
.ps-fold-head{position:relative;cursor:pointer;background:none;border:0;border-radius:10px;padding:20px 80px 20px 20px!important;gap:4px!important}
.ps-detail-fold:hover,.ps-detail-fold.is-open{border-color:var(--m-rose-soft)}
.ps-fold-head:focus-visible{outline:2px solid var(--m-rose-t);outline-offset:3px}
.ps-sec .ps-fold-t .elementor-heading-title{font-family:var(--ps-body);font-weight:700;font-size:24px;letter-spacing:-.015em;line-height:1.25;color:var(--m-ink)}
.ps-sec .ps-fold-s,.ps-sec .ps-fold-s p{font-size:15px;font-weight:500;line-height:20px;color:var(--m-ink-2)}
/* le rond rose est en ::before, la croix en ::after : ::after est peint
   au-dessus, sinon le rond recouvre le "+".
   left:auto + specificite renforcee : .e-con::before d'Elementor impose
   sinon un left:0 qui colle le rond a gauche. */
.ps-sec .ps-fold-head::before{content:"";position:absolute;left:auto;bottom:auto;right:20px;top:50%;width:42px;height:42px;margin-top:-21px;box-sizing:border-box;border-radius:50%;background:var(--m-rose);border:2px solid var(--cta-border)}
.ps-sec .ps-fold-head::after{content:"";position:absolute;left:auto;bottom:auto;right:20px;top:50%;margin-top:-21px;width:42px;height:42px;box-sizing:border-box;background:linear-gradient(#fff,#fff) center/18px 3px no-repeat,linear-gradient(#fff,#fff) center/3px 18px no-repeat;transition:transform .25s}
.ps-sec .ps-detail-fold.is-open .ps-fold-head::after{transform:rotate(135deg)}
.ps-fold-body{padding:4px 20px 20px!important;display:none!important}
.ps-detail-fold.is-open .ps-fold-body{display:flex!important}
.ps-fold-tpl,.ps-fold-tpl>.elementor-widget-container{width:100%}

/* grille des cartes : identique a "Ce que contiennent mes offres" */
.ps-cards6.e-con{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ps-dcard{background:var(--m-card);border:1.5px solid var(--m-card-line);border-radius:10px;padding:20px!important;gap:20px!important}
.ps-fold-body .ps-dcard:not(.ps-drecap){background:linear-gradient(155deg,#F6F3F8 0%,#FCF2F9 100%);border-color:#EFE6F0}
.ps-dcard.is-off{display:none!important}
.ps-sec .ps-dt .elementor-heading-title{font-family:var(--ps-body);font-size:24px;font-weight:700;letter-spacing:-.01em;line-height:1.2;color:#0E0E0E}
.ps-sec .ps-dd,.ps-sec .ps-dd p{font-size:15px;font-weight:500;line-height:20px;color:#0E0E0E}
.ps-dshot{margin-top:auto}
.ps-dshot img{width:100%;height:auto;display:block;border-radius:10px}
.ps-dshot.is-vide img{opacity:.4}
.ps-drecap{background:var(--m-ink);border:2px solid #333333}
.ps-sec .ps-drecap .ps-dt .elementor-heading-title{color:#fff}
.ps-sec .ps-drecap .ps-dd,.ps-sec .ps-drecap .ps-dd p{color:rgba(255,255,255,.74)}

/* etiquettes, generees par le script depuis data-lv.
   Meme style que les pastilles Oeuf / Poussin / Flamingo. */
.ps-tags{display:flex;flex-wrap:wrap;gap:10px}
.ps-tag{
  font-family:var(--ps-body);font-size:14px;font-weight:500;
  /* hauteur 29px comme les pastilles Oeuf/Poussin/Flamingo (interligne 27 + 2),
     mais padding symetrique pour que le texte soit vraiment centre */
  line-height:27px;padding:1px 12px;
  border-radius:50px;white-space:nowrap;display:inline-block;
}
/* memes couleurs que les pastilles Oeuf / Poussin / Flamingo */
.ps-tag-1{background:#FFC7EC;color:#E90199}   /* Oeuf */
.ps-tag-2{background:#FF00A7;color:#fff}      /* Poussin */
.ps-tag-3{background:#7C0051;color:#fff}      /* Flamingo */
.ps-tag-0{background:#fff;color:var(--m-ink)} /* Deja inclus, sur carte sombre */
.ps-sec-1 .ps-dt-alt{display:none}
.ps-sec-2 .ps-dt-std{display:none}

/* ===== IDEE 2 : configurateur (modele reutilisable) ===== */
.ps-o2.e-con{display:grid!important;grid-template-columns:1.02fr .98fr;gap:26px;align-items:start}
.ps-o2-visual{background:linear-gradient(168deg,#FFF2FA 0%,#FBE0EF 100%);border-radius:10px;padding:22px!important;min-height:330px;justify-content:center;gap:12px!important}
.ps-o2-panel{gap:14px!important}
.ps-presets-wrap{gap:0!important}
.ps-sec .ps-ph,.ps-sec .ps-ph p{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--m-ink-2);margin-bottom:10px}
.ps-presets{gap:8px!important}
.ps-sec .ps-preset .elementor-button{border:2px solid var(--m-card-line);background:var(--m-card);color:var(--m-ink);border-radius:999px;padding:9px 16px;font-size:14px;font-weight:600;font-family:var(--ps-body);box-shadow:none;transition:.18s}
.ps-sec .ps-preset .elementor-button:hover{border-color:var(--cta-border);background:var(--m-card);color:var(--m-ink)}
.ps-sec .ps-preset.is-on .elementor-button{background:var(--m-rose);border-color:var(--cta-border);color:#fff}
.ps-opt{position:relative;cursor:pointer;border:1.5px solid var(--m-card-line);border-radius:10px;padding:16px 16px 16px 50px!important;gap:4px!important;background:var(--m-card);transition:.18s}
.ps-sec .ps-opt::before{content:"";position:absolute;right:auto;bottom:auto;left:16px;top:18px;width:20px;height:20px;border-radius:6px;border:2px solid var(--m-line);background:rgba(255,255,255,.85);transition:.18s}
.ps-sec .ps-opt::after{content:"";position:absolute;right:auto;bottom:auto;left:22px;top:23px;width:9px;height:5px;border-left:2.5px solid #fff;border-bottom:2.5px solid #fff;transform:rotate(-45deg);opacity:0;transition:opacity .15s}
.ps-opt:hover{border-color:#F0B9E0}
.ps-opt.is-checked{border-color:var(--m-rose);background:var(--m-card-on)}
.ps-sec .ps-opt.is-checked::before{background:var(--m-rose);border-color:var(--m-rose)}
.ps-sec .ps-opt.is-checked::after{opacity:1}
.ps-opt-name{padding-right:90px}
.ps-sec .ps-opt-name .elementor-heading-title{font-size:16px;font-weight:700;color:var(--m-ink)}
.ps-opt-price{position:absolute;right:16px;top:16px}
.ps-sec .ps-opt-price,.ps-sec .ps-opt-price p{font-size:14px;font-weight:700;color:var(--m-rose-t);white-space:nowrap}
.ps-sec .ps-opt-desc,.ps-sec .ps-opt-desc p{font-size:15px;font-weight:500;color:var(--m-ink-2);line-height:20px}
.ps-total{border-top:1.5px dashed var(--m-line);padding-top:16px!important;gap:0!important}
.ps-sec .ps-tl,.ps-sec .ps-tl p{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--m-ink-2)}
.ps-sec .ps-tv,.ps-sec .ps-tv p{font-size:38px;font-weight:800;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--m-ink);margin-top:6px}
.ps-sec .ps-tv small{font-size:15px;font-weight:600;color:var(--m-ink-2);letter-spacing:0}
.ps-sec .ps-tnote,.ps-sec .ps-tnote p{font-size:13px;color:var(--m-ink-2);margin-top:6px}
.ps-sec .ps-cta2 .elementor-button{width:100%}
.ps-layer{background:rgba(255,255,255,.82);border-radius:10px;padding:12px 13px;box-shadow:0 8px 22px -16px rgba(184,0,114,.45);border:1.5px solid rgba(255,255,255,.95);display:flex;gap:11px;align-items:center;animation:ps-pop .34s cubic-bezier(.2,.9,.3,1.3) both}
@keyframes ps-pop{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ps-layer{animation:none}}
.ps-lbl{font-size:13px;font-weight:700;color:var(--m-ink)}
.ps-lbl em{display:block;font-style:normal;font-weight:500;font-size:12px;color:var(--m-ink-2);margin-top:2px}
.ps-thumb{width:62px;height:44px;border-radius:6px;flex:none;overflow:hidden;position:relative;background:#FBE0EF}
.ps-th-profil{background:linear-gradient(#B80072 0 46%,#fff 46% 100%)}
.ps-th-profil::after{content:"";position:absolute;left:8px;top:14px;width:15px;height:15px;border-radius:50%;background:#FFC7EC;border:2px solid #fff}
.ps-th-strat{background:#fff;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr);gap:2px;padding:4px}
.ps-th-strat i{background:#F6D3E6;border-radius:1.5px;display:block}
.ps-th-strat i.on{background:var(--m-rose)}
.ps-th-lp{background:linear-gradient(#FA2FAB 0 34%,#fff 34% 100%)}
.ps-th-lp::after{content:"";position:absolute;left:10px;right:10px;top:26px;height:4px;border-radius:2px;background:#F6D3E6;box-shadow:0 7px 0 #F6D3E6}
.ps-th-site{background:#fff;border:1px solid #EADFEA}
.ps-th-site::before{content:"";position:absolute;inset:0 0 auto 0;height:8px;background:#B80072}
.ps-th-site::after{content:"";position:absolute;left:6px;right:6px;top:14px;height:5px;border-radius:2px;background:#F6D3E6;box-shadow:0 8px 0 #F6D3E6,0 16px 0 #F6D3E6}
.ps-stack-empty{font-size:15px;color:var(--m-ink-2);text-align:center;font-weight:600;max-width:24ch;margin:0 auto;line-height:1.5}
.ps-stack-cap{font-size:12px;color:var(--m-ink-2);text-align:center;font-weight:600;margin-top:4px}
.ps-stickybar{display:none!important}

/* ===== responsive ===== */
@media (max-width:1024px){
 .ps-cards6.e-con{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ps-sec .ps-mk-title .elementor-heading-title{font-size:36px}
}
@media (max-width:767px){
 .ps-mk{padding:22px 16px 24px!important}
 .ps-sec-1 .ps-mk{padding:0!important}
 .ps-mk-head{margin-bottom:24px}
 .ps-sec .ps-mk-title .elementor-heading-title{font-size:28px}
 .ps-sec .ps-mk-sub,.ps-sec .ps-mk-sub p{font-size:15px}

 .ps-o1.e-con{grid-template-columns:1fr;gap:12px}
 .ps-o1>.ps-o1-card[data-tab]{grid-column:auto;grid-row:auto}
 .ps-o1>.ps-o1-card[data-tab="a"]{order:1}
 .ps-o1>.ps-o1-panel[data-panel="a"]{order:2}
 .ps-o1>.ps-o1-card[data-tab="b"]{order:3}
 .ps-o1>.ps-o1-panel[data-panel="b"]{order:4}
 .ps-o1>.ps-o1-card[data-tab="c"]{order:5}
 .ps-o1>.ps-o1-panel[data-panel="c"]{order:6}
 .ps-o1-card{position:relative;opacity:1;filter:none;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:4px 14px!important;padding:16px 60px 16px 16px!important}
 .ps-o1-card .ps-n{display:none}
 .ps-o1-card .ps-lvl-img{margin-bottom:0!important}
 .ps-o1-card .ps-lvl-img img{width:52px;height:52px}
 .ps-o1-card.is-active .ps-lvl-img img{transform:none}
 .ps-o1-card .ps-t{flex:0 0 calc(100% - 66px)}
 .ps-sec .ps-o1-card .ps-t .elementor-heading-title{font-size:17px}
 .ps-o1-card .ps-pr{flex:0 0 calc(100% - 66px);margin-left:66px;margin-top:0;padding-top:0;text-align:left}
 .ps-sec .ps-o1-card .ps-pr,.ps-sec .ps-o1-card .ps-pr p{font-size:16px}
 .ps-o1-card .ps-prs{display:none}
 /* affordance "+" sur les cards en mobile */
 .ps-sec .ps-o1-card::before{content:"";position:absolute;left:auto;bottom:auto;right:16px;top:50%;width:32px;height:32px;margin-top:-16px;box-sizing:border-box;border-radius:50%;background:rgba(255,255,255,.45);border:2px solid var(--m-line);transition:background .2s,border-color .2s}
 .ps-sec .ps-o1-card::after{content:"";position:absolute;left:auto;bottom:auto;right:16px;top:50%;margin-top:-16px;width:32px;height:32px;box-sizing:border-box;background:linear-gradient(var(--m-ink-2),var(--m-ink-2)) center/14px 2px no-repeat,linear-gradient(var(--m-ink-2),var(--m-ink-2)) center/2px 14px no-repeat;transition:transform .25s}
 .ps-sec .ps-o1-card.is-active::before{background:var(--m-rose);border-color:var(--cta-border)}
 .ps-sec .ps-o1-card.is-active::after{transform:rotate(135deg);background:linear-gradient(#fff,#fff) center/14px 2px no-repeat,linear-gradient(#fff,#fff) center/2px 14px no-repeat}

 .ps-o1>.ps-o1-panel{grid-row:auto;grid-column:auto;padding:24px 2px 10px!important;gap:16px!important}
 .ps-sec .ps-pt .elementor-heading-title{font-size:19px}
 .ps-feat .elementor-icon-list-items{grid-template-columns:1fr;gap:12px}
 .ps-o1-foot{gap:12px!important}

 .ps-cards6.e-con{grid-template-columns:1fr;gap:14px}
 .ps-detail-fold{margin-top:10px!important;padding-top:0!important}
 .ps-fold-head{padding:16px 62px 16px 16px!important}
 .ps-fold-body{padding:4px 16px 16px!important}
 .ps-sec .ps-fold-t .elementor-heading-title{font-size:18px}
 .ps-sec .ps-fold-head::before{right:16px;width:34px;height:34px;margin-top:-17px}
 .ps-sec .ps-fold-head::after{right:16px;margin-top:-17px;width:34px;height:34px;background:linear-gradient(#fff,#fff) center/14px 2.5px no-repeat,linear-gradient(#fff,#fff) center/2.5px 14px no-repeat}
 .ps-sec .ps-dt .elementor-heading-title{font-size:20px}

 .ps-o2.e-con{grid-template-columns:1fr;gap:16px}
 .ps-o2-visual{min-height:0;padding:14px!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:9px!important;overflow-x:auto;justify-content:flex-start;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#F2A6D5 transparent}
 .ps-o2-visual .ps-layer{scroll-snap-align:start;flex:none;width:160px;padding:9px 10px}
 .ps-o2-visual::-webkit-scrollbar{height:6px}
 .ps-o2-visual::-webkit-scrollbar-track{background:transparent}
 .ps-o2-visual::-webkit-scrollbar-thumb{background:#F2A6D5;border-radius:99px}
 .ps-thumb{width:40px;height:30px}
 .ps-o2-visual .ps-stack-cap{display:none}
 .ps-total{display:none!important}
 .ps-cta2{display:none!important}
 .ps-stickybar{display:flex!important;position:sticky;bottom:0;z-index:5;margin:14px -16px -24px!important;padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px))!important;background:rgba(248,245,249,.94);backdrop-filter:blur(10px);border-top:1.5px solid var(--m-line);gap:12px!important;flex-wrap:nowrap!important}
 .ps-sticky-l{gap:0!important;flex:1}
 .ps-sec .ps-sl,.ps-sec .ps-sl p{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--m-ink-2)}
 .ps-sec .ps-sv,.ps-sec .ps-sv p{font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1.05;font-variant-numeric:tabular-nums;color:var(--m-ink)}
 .ps-ctam{flex:none}
 .ps-sec .ps-ctam .elementor-button{width:auto;padding:12px 20px}
}

/* ============================================================
   SECTION "QUI SOMMES-NOUS"
   ============================================================ */
.ps-team{
  --t-ink:#0E0E0E; --t-ink-2:#6B7280; --t-rose:#FF00A7; --t-rose-soft:#FFC7EC;
  --t-body:"Satoshi",-apple-system,sans-serif;
}

/* chapeau d'agence, a droite du titre en desktop */
.ps-team .ps-team-intro,
.ps-team .ps-team-intro p{
  font-family:var(--t-body);font-size:17px;font-weight:500;line-height:1.5;
  color:var(--t-ink-2);max-width:56ch;
}

/* photos : meme cadrage des deux cotes */
.ps-team .ps-team-photo img{
  width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top;
  border-radius:12px;display:block;
}

/* lien vers le profil LinkedIn : un lien texte, pas un bouton */
.ps-team .ps-team-link .elementor-button{
  background:none;border:0;box-shadow:none;padding:0;
  font-family:var(--t-body);font-size:15px;font-weight:600;color:var(--t-rose);
  text-decoration:underline;text-underline-offset:3px;
  display:inline-flex;align-items:center;gap:7px;
}
.ps-team .ps-team-link .elementor-button:hover{color:#B80072;background:none}
.ps-team .ps-team-link .elementor-button-icon i,
.ps-team .ps-team-link .elementor-button-icon svg{
  transform:rotate(-45deg);width:13px;height:13px;font-size:13px;fill:currentColor;
}

/* barre de stats communes aux deux */
.ps-team .ps-team-bar{
  margin-top:34px;padding:22px 20px!important;
  border-top:1px solid #EFE6EF;
  gap:14px 44px!important;
}
.ps-team .ps-team-stat{
  width:auto!important;padding:0!important;gap:10px!important;
  align-items:baseline!important;flex-wrap:nowrap!important;
}
.ps-team .ps-team-num .elementor-heading-title{
  font-family:var(--t-body);font-size:28px;font-weight:800;line-height:1;
  letter-spacing:-.02em;color:var(--t-rose);white-space:nowrap;
}
.ps-team .ps-team-lbl,
.ps-team .ps-team-lbl p{
  font-family:var(--t-body);font-size:15px;font-weight:500;line-height:1.35;
  color:var(--t-ink-2);
}

@media (max-width:1024px){
  .ps-team .ps-team-bar{gap:14px 28px!important}
}
@media (max-width:767px){
  .ps-team .ps-team-intro,.ps-team .ps-team-intro p{font-size:15px}
  .ps-team .ps-team-photo img{aspect-ratio:1/1}
  .ps-team .ps-team-bar{
    margin-top:24px;padding:18px 0!important;
    flex-direction:column!important;align-items:flex-start!important;gap:12px!important;
  }
  .ps-team .ps-team-num .elementor-heading-title{font-size:24px}
  .ps-team .ps-team-bar{flex-wrap:nowrap!important}
  .ps-team .ps-team-bar>.e-con{align-self:flex-start!important;margin-left:0!important;margin-right:0!important}
}
/* ===== ETUDES DE CAS : en-tete et onglets ===== */
.ps-cases{--c-ink:#0E0E0E;--c-ink-2:#6B7280;--c-line:#EFE6EF;--c-rose:#FF00A7;--c-rose-soft:#FFC7EC;--c-rose-t:#B80072;--c-body:'Satoshi',-apple-system,sans-serif;--c-display:'Livvic','Trebuchet MS',sans-serif;--m-rose:#FA2FAB;--m-rose-t:#A8117A;--cta-border:#FF76D1;--ps-body:'Satoshi',-apple-system,sans-serif}
.ps-cases-head{align-items:flex-start;gap:12px!important;margin-bottom:30px}
.ps-cases .ps-cases-eyebrow .elementor-heading-title{display:inline-block;font-family:var(--c-body);font-size:14px;font-weight:600;line-height:27px;color:var(--c-rose);background:var(--c-rose-soft);border-radius:50px;padding:1px 14px}
.ps-cases .ps-cases-title .elementor-heading-title{font-family:var(--c-display);font-size:46px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--c-ink)}
.ps-cases .ps-cases-intro,.ps-cases .ps-cases-intro p{font-family:var(--c-body);font-size:17px;font-weight:500;line-height:1.5;color:var(--c-ink-2);max-width:60ch}
.ps-cases-tabs.e-con{display:grid!important;grid-template-columns:repeat(3,1fr);gap:20px}
.ps-case-tab{cursor:pointer;background:rgba(255,255,255,.52);border:2px solid rgba(255,255,255,.92);border-radius:12px;padding:14px!important;gap:8px!important;transition:all .2s;opacity:.6;filter:saturate(.4);align-items:flex-start!important}
.ps-case-tab:hover{opacity:.85}
.ps-case-tab.is-active{opacity:1;filter:none;background:#fff;border-color:var(--c-rose-soft);box-shadow:0 6px 18px -16px rgba(255,0,167,.5)}
.ps-case-tab .ps-case-thumb img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px;display:block;margin-bottom:6px}
.ps-cases .ps-case-lvl,.ps-cases .ps-case-lvl p{font-family:var(--c-body);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-rose-t);line-height:1.4}
.ps-cases .ps-case-nom .elementor-heading-title{font-family:var(--c-body);font-size:22px;font-weight:700;line-height:1.2;letter-spacing:-.015em;color:var(--c-ink)}
.ps-cases .ps-case-meta,.ps-cases .ps-case-meta p{font-family:var(--c-body);font-size:14px;font-weight:500;line-height:1.4;color:var(--c-ink-2)}

/* ===== ETUDES DE CAS : panneaux ===== */
.ps-case-panel{display:none!important;margin-top:24px;gap:22px!important}
.ps-case-panel.is-on{display:flex!important}
.ps-case-grid.e-con{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ps-case-bloc{background:rgba(255,255,255,.52);border:1.5px solid rgba(255,255,255,.92);border-radius:12px;padding:20px!important;gap:14px!important}
.ps-cases .ps-case-bloc-t .elementor-heading-title{font-family:var(--c-body);font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-ink-2)}
.ps-case-list .elementor-icon-list-items{display:flex;flex-direction:column;gap:11px}
.ps-case-list .elementor-icon-list-item{font-family:var(--c-body);font-size:15px;font-weight:500;line-height:20px;color:var(--c-ink);align-items:flex-start}
.ps-case-list .elementor-icon-list-text{color:var(--c-ink)}
.ps-case-list .elementor-icon-list-icon{margin-top:3px;color:var(--c-rose)}
.ps-case-list .elementor-icon-list-icon svg,.ps-case-list .elementor-icon-list-icon i{width:14px;height:14px;font-size:13px;fill:var(--c-rose)}
.ps-list-bloc .elementor-icon-list-icon{color:#B0A6B6}
.ps-list-bloc .elementor-icon-list-icon svg,.ps-list-bloc .elementor-icon-list-icon i{fill:#B0A6B6}
.ps-case-res{grid-column:1/-1;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:14px 40px!important}
.ps-case-res .ps-case-bloc-t{width:100%}
.ps-case-stat{width:auto!important;padding:0!important;gap:10px!important;align-items:baseline!important;flex-wrap:nowrap!important}
.ps-cases .ps-case-num .elementor-heading-title{font-family:var(--c-body);font-size:28px;font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--c-rose);white-space:nowrap}
.ps-cases .ps-case-slbl,.ps-cases .ps-case-slbl p{font-family:var(--c-body);font-size:15px;font-weight:500;line-height:1.35;color:var(--c-ink-2)}
.ps-case-res.is-todo{background:none;border:1.5px dashed #D6C4D6}
.ps-case-res.is-todo .ps-case-num .elementor-heading-title{color:#B0A6B6}
.ps-case-res.is-todo .ps-case-slbl,.ps-case-res.is-todo .ps-case-slbl p{color:#B0A6B6;font-style:italic}
.ps-cases .ps-case-cta{align-self:flex-start}
@media (max-width:1024px){.ps-cases-tabs.e-con{grid-template-columns:1fr 1fr}.ps-case-grid.e-con{grid-template-columns:1fr 1fr}.ps-cases .ps-cases-title .elementor-heading-title{font-size:36px}}
@media (max-width:767px){.ps-cases-tabs.e-con{grid-template-columns:1fr;gap:12px}.ps-case-grid.e-con{grid-template-columns:1fr;gap:14px}.ps-cases .ps-cases-title .elementor-heading-title{font-size:28px}.ps-cases .ps-cases-intro,.ps-cases .ps-cases-intro p{font-size:15px}.ps-case-tab{flex-direction:row!important;align-items:center!important;gap:14px!important}.ps-case-tab .ps-case-thumb{width:96px;flex:none}.ps-case-tab .ps-case-thumb img{margin-bottom:0}.ps-case-res{flex-direction:column!important;align-items:flex-start!important;gap:12px!important}.ps-case-stat{flex-wrap:wrap!important;row-gap:2px!important}.ps-case-stat>.elementor-widget-heading{flex:0 0 auto;width:auto!important}.ps-case-stat>.elementor-widget-text-editor{flex:1 1 130px;min-width:0}.ps-cases .ps-case-num .elementor-heading-title{font-size:24px}.ps-cases .ps-case-nom .elementor-heading-title{font-size:18px}}

/* ===== ETUDES DE CAS : largeurs et galerie ===== */
.ps-cases-tabs,.ps-cases-panels,.ps-case-panel,.ps-case-grid,.ps-case-gallery{padding:0!important}
.ps-cases-panels{gap:0!important}
.ps-case-gallery.e-con{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab}
.ps-case-gallery::-webkit-scrollbar{display:none}
.ps-case-gallery.is-grabbing{cursor:grabbing;scroll-behavior:auto;scroll-snap-type:none}
.ps-cases .ps-case-shot{padding:0!important;gap:12px!important;flex:0 0 calc((100% - 40px)/3)!important;width:auto!important;max-width:none!important;min-width:0;scroll-snap-align:start}
.ps-case-shot .ps-case-img img{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:12px;display:block;border:1px solid var(--c-line);pointer-events:none;-webkit-user-drag:none}
.ps-cases .ps-case-cap,.ps-cases .ps-case-cap p{font-family:var(--c-body);font-size:14px;font-weight:500;line-height:1.4;color:var(--c-ink-2)}
@media (max-width:1024px){.ps-cases .ps-case-shot{flex:0 0 calc((100% - 20px)/2)!important}}
@media (max-width:767px){.ps-case-gallery.e-con{gap:14px}.ps-cases .ps-case-shot{flex:0 0 88%!important}}

/* carrousel : puces de navigation, generees par le script */
.ps-case-dots{display:flex;justify-content:center;gap:9px;margin-top:4px}
.ps-case-dot{width:9px;height:9px;border-radius:50%;border:0;padding:0;cursor:pointer;background:#E3D6E3;transition:background .2s,transform .2s}
.ps-case-dot:hover{background:#F0B9E0}
.ps-case-dot.is-on{background:var(--c-rose);transform:scale(1.25)}
.ps-case-dot:focus-visible{outline:2px solid var(--c-rose-t);outline-offset:3px}

/* ============================================================
   MODE EDITION ELEMENTOR
   Sur le site, les onglets et le depliant masquent ce qui n'est
   pas selectionne. Dans l'editeur il faut au contraire TOUT voir
   pour pouvoir tout modifier : panneaux des 3 niveaux, panneaux
   des etudes de cas, cartes du detail, et les visuels du
   carrousel qui repassent en grille.
   ============================================================ */
body.elementor-editor-active .ps-o1>.ps-o1-panel,
body.elementor-editor-active .ps-detail-fold .ps-fold-body,
body.elementor-editor-active .ps-case-panel{display:flex!important}
body.elementor-editor-active .ps-o1>.ps-o1-panel{grid-row:auto!important;grid-column:1/-1!important}
body.elementor-editor-active .ps-dcard.is-off{display:flex!important}
body.elementor-editor-active .ps-detail-fold.is-empty{display:flex!important}
body.elementor-editor-active .ps-case-gallery.e-con{overflow:visible!important;flex-wrap:wrap!important;scroll-snap-type:none!important;cursor:default}
body.elementor-editor-active .ps-stickybar{position:static!important}
body.elementor-editor-active .ps-case-panel:not(.is-on),
body.elementor-editor-active .ps-o1>.ps-o1-panel:not(.is-on),
body.elementor-editor-active .ps-dcard.is-off{outline:1px dashed #C9B8CC;outline-offset:6px}

/* lien secondaire dans un panneau d'etude de cas (ex. Mia : profil + landing) */
.ps-cases .ps-case-link2{align-self:flex-start;margin-top:-8px}
.ps-cases .ps-case-link2 .elementor-button{background:none;border:0;box-shadow:none;padding:0;font-family:var(--c-body);font-size:15px;font-weight:600;color:var(--c-rose);text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;gap:7px}
.ps-cases .ps-case-link2 .elementor-button:hover{color:var(--c-rose-t);background:none}
.ps-cases .ps-case-link2 .elementor-button-icon i,.ps-cases .ps-case-link2 .elementor-button-icon svg{transform:rotate(-45deg);width:13px;height:13px;font-size:13px;fill:currentColor}

/* ancres internes : ne pas passer sous le header sticky */
#Offre,#Formules,#formules,#audit{scroll-margin-top:96px}

/* ============================================================
   METHODE FLAMINGO : phrases au rythme du scroll
   Sans JS, en reduced-motion et dans l'editeur Elementor, les
   phrases sont simplement empilees et toutes visibles. Le JS
   (ps-offres-linkedin-v7) ajoute .is-live sur .ps-flam pour
   passer en mode epingle : la section fait ~3 ecrans de haut,
   le texte reste colle au centre, et chaque phrase occupe une
   tranche du scroll (opacite + glissement pilotes par la
   position, donc reversibles en remontant).
   ============================================================ */
.ps-flam{--f-rose:#FF00A7;--f-ink:#171120;padding:70px 20px!important;gap:30px!important}
.ps-flam .ps-flam-pin{gap:30px!important;padding:0!important;width:100%}
.ps-flam .ps-flam-stage{position:relative;width:100%;max-width:940px;gap:40px!important;padding:0!important}
.ps-flam .ps-flam-p,.ps-flam .ps-flam-p p{font-family:"Livvic","Trebuchet MS",sans-serif;font-weight:500;font-size:clamp(30px,4.6vw,54px);line-height:1.18;letter-spacing:-.01em;color:var(--f-ink);text-align:center}
.ps-flam .ps-flam-p em{font-style:italic;font-weight:700;color:var(--f-ink)}
.ps-flam .ps-flam-last{gap:26px!important;padding:0!important;width:100%}
.ps-flam .ps-flam-proof{width:auto!important}
.ps-flam .ps-flam-proof img{width:min(520px,92vw);height:auto;border-radius:16px;transform:rotate(-2deg);box-shadow:0 24px 48px -28px rgba(184,0,114,.5)}

.ps-flam.is-live{height:340vh;padding:0 20px!important}
.ps-flam.is-live .ps-flam-pin{position:sticky;top:0;height:100vh;height:100svh;justify-content:center}
.ps-flam.is-live .ps-flam-stage{height:min(64vh,600px)}
.ps-flam.is-live .ps-flam-stage>.elementor-element{position:absolute;inset:0;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;visibility:hidden;will-change:opacity,transform}

@media (max-width:767px){
 .ps-flam{padding:48px 16px!important}
 .ps-flam .ps-flam-stage{gap:28px!important}
 .ps-flam.is-live{height:300vh;padding:0 16px!important}
 .ps-flam.is-live .ps-flam-stage{height:min(62vh,520px)}
}
/* Le theme enfant met overflow-x:hidden sur html et body pour couper le
   debordement horizontal ; hidden fait de body un conteneur de scroll,
   ce qui neutralise position:sticky (la section Methode Flamingo).
   clip coupe pareil sans creer de conteneur. On ne touche pas au body
   quand le menu mobile est ouvert (.psmb-open doit garder son lock). */
html{overflow-x:clip!important}
body:not(.psmb-open){overflow-x:clip!important;overflow-y:visible!important}
/* Machine a ecrire (Methode Flamingo) : chaque caractere est un span
   revele en sequence par le JS. Les lettres occupent leur place des le
   depart (visibility, pas d'insertion), donc la mise en page ne bouge
   pas pendant la frappe. Le curseur est un ::after absolu : zero reflow. */
.ps-flam.is-live .ps-flam-ch{visibility:hidden}
.ps-flam.is-live .ps-flam-ch.on{visibility:visible}
.ps-flam .ps-flam-ch{position:relative}
.ps-flam .ps-flam-ch.caret::after,
.ps-flam .ps-flam-ch.caret-end::after{content:"";position:absolute;right:-6px;top:8%;bottom:2%;width:3px;border-radius:2px;background:var(--f-rose)}
.ps-flam .ps-flam-ch.caret-end::after{animation:ps-flam-caret .75s steps(1) 3 forwards}
@keyframes ps-flam-caret{0%{opacity:1}50%{opacity:0}100%{opacity:0}}
/* ============================================================
   CARDS FORMULES compactes en desktop : elements en ligne
   (flamant | niveau + titre | prix a droite) au lieu de la
   colonne haute. La version mobile (max-767) garde sa propre
   mise en page definie plus haut.
   ============================================================ */
@media (min-width:1025px){
 .ps-o1-card{display:grid!important;grid-template-columns:56px minmax(0,1fr) auto;grid-template-areas:"img n pr" "img t pr";align-items:center;gap:2px 16px!important;padding:14px 20px!important}
 .ps-o1-card .ps-lvl-img{grid-area:img;margin:0!important;width:auto!important}
 .ps-o1-card .ps-lvl-img img{width:56px;height:56px;object-fit:contain;object-position:center bottom}
 .ps-o1-card .ps-n{grid-area:n;margin:0!important;align-self:end;width:auto!important}
 .ps-o1-card .ps-t{grid-area:t;align-self:start;width:auto!important}
 .ps-sec .ps-o1-card .ps-t .elementor-heading-title{font-size:19px}
 .ps-o1-card .ps-pr{grid-area:pr;margin:0!important;padding:0!important;text-align:right;width:auto!important}
 .ps-sec .ps-o1-card .ps-pr,.ps-sec .ps-o1-card .ps-pr p{font-size:18px}
 .ps-o1-card .ps-prs{display:none}
 .ps-o1-card.is-active .ps-lvl-img img{transform:scale(1.06) rotate(-3deg)}
}
/* ============================================================
   ETUDES DE CAS : panneaux en damier
   2 colonnes qui alternent cellules texte et cellules slider.
   Les sliders reutilisent le carrousel .ps-case-gallery
   (puces, autoplay, glisser) de ps-cases-carousel-v4.js ;
   les puces s'inserent dans la cellule, sous la piste.
   ============================================================ */
.ps-case-dmr.e-con{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0!important}
.ps-cases .ps-dmr-txt{background:rgba(255,255,255,.52);border:1.5px solid rgba(255,255,255,.92);border-radius:12px;padding:22px!important;gap:10px!important;justify-content:center;min-height:0}
.ps-cases .ps-dmr-t .elementor-heading-title{font-family:var(--c-body);font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-ink-2)}
.ps-cases .ps-dmr-d,.ps-cases .ps-dmr-d p{font-family:var(--c-body);font-size:15px;font-weight:500;line-height:1.55;color:var(--c-ink)}
.ps-cases .ps-dmr-d p{margin:0 0 6px!important}
.ps-cases .ps-dmr-d p:last-child{margin-bottom:0!important}

/* la cellule resultats : la seule accentuee du damier */
.ps-cases .ps-dmr-res{background:#B80072;border:1.5px solid #D33C96;border-radius:12px;padding:22px!important;gap:10px!important;justify-content:center;min-height:0}
.ps-cases .ps-dmr-res .ps-dmr-t .elementor-heading-title{color:#FFC7EC}
.ps-cases .ps-dmr-res .ps-dmr-d,.ps-cases .ps-dmr-res .ps-dmr-d p{color:#fff}
.ps-cases .ps-dmr-res .ps-dmr-d strong{color:#FFC7EC;font-weight:800;font-size:18px}

/* cellules slider */
.ps-cases .ps-dmr-img{background:rgba(255,255,255,.52);border:1.5px solid rgba(255,255,255,.92);border-radius:12px;padding:12px!important;gap:0!important;justify-content:center;min-height:0}
.ps-cases .ps-dmr-img .ps-case-gallery{width:100%}
.ps-cases .ps-dmr-img .ps-case-shot{flex:0 0 100%!important}
.ps-cases .ps-dmr-img .ps-case-img img{aspect-ratio:16/9}
.ps-cases .ps-dmr-img .ps-case-dots{margin-top:10px}

@media (max-width:767px){
 .ps-case-dmr.e-con{grid-template-columns:1fr;gap:12px}
}
/* damier : listes a puces retablies (croix / cibles / coches) en plus
   grand pour habiter les cellules ; chiffres resultats mis en scene.
   Les titres de cellules restent petits, ils ne portent pas la hierarchie. */
.ps-cases .ps-dmr-txt{gap:12px!important;padding:24px!important}
.ps-cases .ps-dmr-txt .ps-case-list .elementor-icon-list-item{font-size:16px;line-height:1.5}
.ps-cases .ps-dmr-txt .ps-case-list .elementor-icon-list-icon{margin-top:4px}
.ps-cases .ps-dmr-txt .ps-case-list .elementor-icon-list-items{gap:12px}
.ps-cases .ps-dmr-res{padding:24px!important}
.ps-cases .ps-dmr-res .ps-dmr-d p{margin:0 0 12px!important}
.ps-cases .ps-dmr-res .ps-dmr-d p:last-child{margin-bottom:0!important}
.ps-cases .ps-dmr-res .ps-dmr-d strong{font-size:27px;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin-right:4px}
/* damier : tous les petits textes a 16px (libelles des resultats,
   legendes sous les sliders, paragraphes des cellules) */
.ps-cases .ps-dmr-d,.ps-cases .ps-dmr-d p{font-size:16px}
.ps-cases .ps-dmr-res .ps-dmr-d,.ps-cases .ps-dmr-res .ps-dmr-d p{font-size:16px}
.ps-cases .ps-dmr-img .ps-case-cap,.ps-cases .ps-dmr-img .ps-case-cap p{font-size:16px}
/* damier : filet entre la liste des blocages et celle des objectifs */
.ps-cases .ps-dmr-txt .ps-case-list + .ps-case-list{border-top:1.5px solid var(--c-line);padding-top:16px;margin-top:4px}

/* damier : resultats encore plus presents */
.ps-cases .ps-dmr-res .ps-dmr-d,.ps-cases .ps-dmr-res .ps-dmr-d p{font-size:17px}
.ps-cases .ps-dmr-res .ps-dmr-d p{margin:0 0 16px!important}
.ps-cases .ps-dmr-res .ps-dmr-d strong{font-size:32px;margin-right:6px}
/* ============================================================
   FAQ : accordeon dans le langage du depliant livrables
   (cartes translucides, rond rose +/x). Sans JS ou dans
   l'editeur, toutes les reponses sont visibles ; le JS ajoute
   .is-live sur .ps-faq et masque les reponses fermees.
   ============================================================ */
.ps-faq{gap:26px!important;padding-top:40px!important;padding-bottom:60px!important}
.ps-faq-list{gap:14px!important;padding:0!important;width:100%;max-width:900px}
.ps-faq-item{background:rgba(255,255,255,.52);border:2px solid rgba(255,255,255,.92);border-radius:12px;padding:0!important;gap:0!important;transition:border-color .18s,background .18s}
.ps-faq-item:hover,.ps-faq-item.is-open{background:rgba(255,255,255,.66)}
.ps-faq-q{position:relative;cursor:pointer;padding:18px 76px 18px 22px!important;gap:0!important}
.ps-faq-q:focus-visible{outline:2px solid #B80072;outline-offset:3px;border-radius:12px}
.ps-faq .ps-faq-q .elementor-heading-title{font-family:"Satoshi",-apple-system,sans-serif;font-size:18px;font-weight:700;line-height:1.35;letter-spacing:-.01em;color:#0E0E0E}
/* rond rose + croix, meme mecanique que le depliant */
.ps-faq .ps-faq-q::before{content:"";position:absolute;left:auto;bottom:auto;right:20px;top:50%;width:36px;height:36px;margin-top:-18px;box-sizing:border-box;border-radius:50%;background:#FA2FAB;border:2px solid #FF76D1}
.ps-faq .ps-faq-q::after{content:"";position:absolute;left:auto;bottom:auto;right:20px;top:50%;margin-top:-18px;width:36px;height:36px;box-sizing:border-box;background:linear-gradient(#fff,#fff) center/15px 2.5px no-repeat,linear-gradient(#fff,#fff) center/2.5px 15px no-repeat;transition:transform .25s}
.ps-faq-item.is-open .ps-faq-q::after{transform:rotate(135deg)}
.ps-faq-a{padding:0 76px 20px 22px!important;gap:0!important}
.ps-faq .ps-faq-a,.ps-faq .ps-faq-a p{font-family:"Satoshi",-apple-system,sans-serif;font-size:16px;font-weight:500;line-height:1.55;color:#6B7280}
.ps-faq.is-live .ps-faq-item:not(.is-open) .ps-faq-a{display:none!important}
body.elementor-editor-active .ps-faq-item .ps-faq-a{display:flex!important}

@media (max-width:767px){
 .ps-faq{padding-top:24px!important;padding-bottom:40px!important}
 .ps-faq-q{padding:15px 64px 15px 16px!important}
 .ps-faq .ps-faq-q .elementor-heading-title{font-size:17px}
 .ps-faq .ps-faq-q::before{right:14px;width:32px;height:32px;margin-top:-16px}
 .ps-faq .ps-faq-q::after{right:14px;width:32px;height:32px;margin-top:-16px;background:linear-gradient(#fff,#fff) center/14px 2.5px no-repeat,linear-gradient(#fff,#fff) center/2.5px 14px no-repeat}
 .ps-faq-a{padding:0 16px 16px 16px!important}
}
/* FAQ : de l'air entre le titre et les questions */
.ps-faq .ps-faq-list{margin-top:18px}

/* ============================================================
   AJUSTEMENTS MOBILE (23/09 soir)
   ============================================================ */
/* puces des sliders : un style bouton mobile du kit leur mettait
   18px de padding -> pastilles geantes. On verrouille 9px partout. */
.ps-cases .ps-case-dot{width:9px;height:9px;padding:0!important;min-width:0!important;min-height:0!important;line-height:0}

@media (max-width:767px){
 /* section audit : memes marges laterales que le reste de la page */
 .elementor-element-psq-audit-section{padding-left:20px!important;padding-right:20px!important}

 /* la pastille « Je veux rassurer et exploiter le SEO/SEO-IA »
    (3e carte des offres) tenait sur 2 lignes : largeur auto + typo
    reduite pour tenir sur une seule. */
 .elementor-element-db4b2a0,.elementor-element-441b235,.elementor-element-b7b910a{width:auto!important;max-width:100%}
 .elementor-element-fa992d2 .elementor-heading-title{font-size:13px;letter-spacing:0;white-space:nowrap}

 /* Methode Flamingo : version statique compacte (le JS ne l'anime
    plus sous 768px) — texte plus petit, tout visible d'un coup. */
 .ps-flam{gap:20px!important}
 .ps-flam .ps-flam-pin{gap:20px!important}
 .ps-flam .ps-flam-stage{gap:18px!important}
 .ps-flam .ps-flam-p,.ps-flam .ps-flam-p p{font-size:24px;line-height:1.25}
 .ps-flam .ps-flam-last{gap:18px!important}
 .ps-flam .ps-flam-proof img{width:100%;transform:rotate(-1.5deg)}

 /* espaces en trop entre gros titre et contenu */
 .ps-cases-head{margin-bottom:8px}
 .ps-faq .ps-faq-list{margin-top:0}
 .ps-faq{gap:18px!important}
}
/* puces des sliders : palette adoucie sur toute la page —
   gris pour les inactives, gris rose pour l'active */
.ps-cases .ps-case-dot{background:#D9D2DA}
.ps-cases .ps-case-dot:hover{background:#C4BAC6}
.ps-cases .ps-case-dot.is-on{background:#BC8FA9}
/* le panneau Niveau 1-2-3 (titre + puces + CTA) devient une carte
   blanche comme les autres, et plus aucun contour rose dans la
   section formules : ni sur le panneau, ni sur le depliant des
   livrables, ni sur la carte de formule active. */
.ps-o1>.ps-o1-panel{background:var(--m-card);border:1.5px solid var(--m-card-line);border-radius:12px;padding:28px!important}
.ps-detail-fold:hover,.ps-detail-fold.is-open{border-color:var(--m-card-line)}
.ps-o1-card.is-active{border-color:var(--m-card-line)}
@media (max-width:767px){
 .ps-o1>.ps-o1-panel{padding:20px 16px!important}
}
/* etiquettes Niveau 1-2-3 des cartes livrables : palette adoucie
   (gris roses gradues) pour ne plus concurrencer les boutons
   d'action. Meme famille que les puces de sliders. */
.ps-tag-1{background:#fff;color:#E90199}
.ps-tag-2{background:#fff;color:#B80072}
.ps-tag-3{background:#fff;color:#7C0051}
/* Methode Flamingo : chaque phrase solo devient un groupe
   phrase + illustration (flamant), texte remonte comme sur
   l'etape finale avec le commentaire de Cindy. Les images sont
   des placeholders (flamant en rollers) a remplacer dans
   Elementor, widget par widget. */
.ps-flam .ps-flam-solo{gap:56px!important;padding:0!important;width:100%}
.ps-flam .ps-flam-pimg{width:auto!important}
.ps-flam .ps-flam-pimg img{width:min(280px,60vw);height:auto}
@media (max-width:767px){
 .ps-flam .ps-flam-solo{gap:34px!important}
 .ps-flam .ps-flam-pimg img{width:min(180px,50vw)}
}
/* Methode Flamingo : le bloc phrase + image descend un peu pour
   etre mieux centre dans l'ecran (mode anime uniquement) */
.ps-flam.is-live .ps-flam-stage{transform:translateY(4vh)}
/* ============================================================
   METHODE FLAMINGO MOBILE : slider a balayage
   Le JS ajoute .is-swipe sur le stage (mobile uniquement) :
   chaque etape devient une slide pleine largeur a snap, avec
   les memes puces gris-rosé que les autres sliders. Pas
   d'autoplay : on lit les phrases a son rythme. Sans JS,
   les etapes restent simplement empilees.
   ============================================================ */
.ps-flam .ps-case-dot{background:#D9D2DA;width:9px;height:9px;padding:0!important;min-width:0!important;min-height:0!important;line-height:0}
.ps-flam .ps-case-dot:hover{background:#C4BAC6}
.ps-flam .ps-case-dot.is-on{background:#BC8FA9}
@media (max-width:767px){
 .ps-flam .ps-flam-stage.is-swipe{flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px!important;align-items:flex-start;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .ps-flam .ps-flam-stage.is-swipe::-webkit-scrollbar{display:none}
 .ps-flam .ps-flam-stage.is-swipe>.elementor-element{flex:0 0 100%;min-width:0;scroll-snap-align:center}
 .ps-flam .ps-case-dots{margin-top:14px;justify-content:center}
}
/* mini-chip « option stratégie » dans les puces du panneau Niveau 1 :
   meme langage que les chips Niveau des livrables (fond blanc, texte rose) */
.ps-feat .ps-chip-opt{display:inline-block;background:#fff;border:1px solid #F3D9EA;color:#B80072;font-size:12px;font-weight:600;line-height:1;padding:4px 10px;border-radius:50px;margin-left:6px;vertical-align:1px;white-space:nowrap}
/* ============================================================
   DUO Marie-Rose / Keziah : la section « Moi c'est Marie-Rose »
   porte un bouton-pilule (avatar + libelle) qui bascule toute
   la presentation vers celle de Keziah, et inversement. Les
   elements .ps-duo-only-mr / .ps-duo-only-kz s'affichent selon
   l'etat .is-kz de la section. Sans JS : Marie-Rose seule.
   Dans l'editeur Elementor, tout est visible.
   ============================================================ */
.ps-duo .ps-duo-only-kz{display:none}
.ps-duo.is-kz .ps-duo-only-mr{display:none}
.ps-duo.is-kz .ps-duo-only-kz{display:block}
.ps-duo .ps-duo-kz img{width:100%;border-radius:24px;display:block;aspect-ratio:5/4;object-fit:cover;object-position:center top}
.ps-duo .ps-duo-anim{animation:ps-duo-in .28s cubic-bezier(.22,.9,.3,1)}
@keyframes ps-duo-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ps-duo .ps-duo-anim{animation:none}}
body.elementor-editor-active .ps-duo .ps-duo-only-kz{display:block!important;outline:1px dashed #C9B8CC;outline-offset:4px}

.ps-duo-switch{cursor:pointer;width:auto!important;max-width:100%;align-self:flex-start;background:rgba(255,255,255,.6);border:1.5px solid #F3D9EA;border-radius:999px;padding:7px 16px 7px 8px!important;transition:border-color .18s,background .18s;margin-top:6px}
.ps-duo-switch:hover{border-color:#FF76D1;background:#fff}
.ps-duo-switch:focus-visible{outline:2px solid #B80072;outline-offset:3px}
.ps-duo-switch .ps-duo-sw-av{width:auto!important}
.ps-duo-switch .ps-duo-sw-av img{width:32px;height:32px;border-radius:50%;object-fit:cover;object-position:center top;display:block}
.ps-duo .ps-duo-sw-t .elementor-heading-title{font-family:"Satoshi",-apple-system,sans-serif;font-size:15px;font-weight:600;color:#0E0E0E;white-space:nowrap}

/* mobile : photos de la section Qui sommes-nous moins hautes */
@media (max-width:767px){
 .ps-team .ps-team-photo img{aspect-ratio:16/10;height:auto!important;object-position:center 22%!important}
}
/* la pilule du switch epouse son texte */
.ps-duo-switch>.elementor-widget{width:auto!important}
