.pro-hero-main-cta{display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;margin-top:10px;padding:15px 18px;border-radius:14px;background:linear-gradient(100deg,#17117a,#2168d0);color:#fff;text-align:left;box-shadow:0 9px 22px rgba(23,17,122,.25);transition:transform .2s ease,box-shadow .2s ease}.pro-hero-main-cta:hover{transform:translateY(-2px);box-shadow:0 13px 28px rgba(23,17,122,.32)}.pro-hero-main-cta span{display:flex;min-width:0;flex-direction:column}.pro-hero-main-cta strong{font-size:14px;letter-spacing:.015em}.pro-hero-main-cta small{margin-top:3px;color:rgba(255,255,255,.75);font-size:10px;font-weight:500}
.pro-access-modal[hidden]{display:none}.pro-access-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:18px}.pro-access-backdrop{position:absolute;inset:0;width:100%;height:100%;background:rgba(15,23,42,.68);backdrop-filter:blur(4px)}
.pro-access-dialog{position:relative;width:100%;max-width:580px;max-height:92vh;overflow:auto;padding:28px;border:1px solid #d6ecfc;border-radius:22px;background:#fff;box-shadow:0 28px 70px rgba(15,23,42,.3)}.pro-access-close{position:absolute;top:13px;right:15px;width:34px;height:34px;border-radius:999px;background:#f1f5f9;color:#6b7280;font-size:25px;line-height:1}.pro-access-close:hover{background:#eaf5fe;color:#17117a}
.pro-access-eyebrow{display:inline-flex;padding:6px 11px;border-radius:999px;background:#eaf5fe;color:#2168d0;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.pro-access-dialog h2{margin:14px 34px 9px 0;color:#17117a;font:700 25px/1.2 Poppins,sans-serif}.pro-access-intro{color:#6b7280;font-size:14px;line-height:1.5}
.pro-access-teaser{margin:17px 0;padding:14px 16px;border-radius:13px;background:linear-gradient(135deg,#f8fbff,#f4fcf7);border:1px solid #d6ecfc}.pro-access-teaser>span{color:#17117a;font-size:11px;font-weight:800;text-transform:uppercase}.pro-access-teaser ul{display:grid;gap:6px;margin-top:9px}.pro-access-teaser li{position:relative;padding-left:20px;color:#475569;font-size:12px}.pro-access-teaser li:before{content:"✓";position:absolute;left:0;color:#16a36a;font-weight:900}
.pro-patient-slider-card{margin-top:16px;padding:15px 16px;border:1px solid #d6ecfc;border-radius:13px;background:#f8fbff}.pro-slider-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#475569;font-size:11px}.pro-slider-heading strong{color:#17117a;font-size:13px}.pro-patient-slider-card input[type=range]{--range-progress:32%;width:100%;height:7px;margin:14px 0 3px;border-radius:999px;appearance:none;background:linear-gradient(to right,#2d8ee7 var(--range-progress),#dbeafe var(--range-progress));outline:none}.pro-patient-slider-card input[type=range]::-webkit-slider-thumb{width:22px;height:22px;border:3px solid #fff;border-radius:999px;appearance:none;background:#17117a;box-shadow:0 3px 9px rgba(23,17,122,.28);cursor:pointer}.pro-patient-slider-card input[type=range]::-moz-range-thumb{width:18px;height:18px;border:3px solid #fff;border-radius:999px;background:#17117a;box-shadow:0 3px 9px rgba(23,17,122,.28);cursor:pointer}.pro-slider-scale{display:flex;justify-content:space-between;color:#9ca3af;font-size:9px}.pro-patient-slider-card p{margin-top:6px;color:#9ca3af;font-size:9px;line-height:1.35}
.pro-email-intro{margin:3px 0 8px;color:#64748b;font-size:9px;line-height:1.4}
.pro-mail-confirmation{position:fixed;z-index:100000;right:22px;bottom:22px;max-width:390px;padding:14px 18px;border:1px solid #bfe8d2;border-radius:12px;background:#f2fcf7;color:#16845a;font-size:13px;font-weight:700;line-height:1.4;box-shadow:0 14px 35px rgba(15,23,42,.18);opacity:0;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease}.pro-mail-confirmation.is-visible{opacity:1;transform:translateY(0)}
.pro-locked-analysis{position:relative;margin-top:13px;overflow:hidden;border:1px solid #bfe8d2;border-radius:14px;background:linear-gradient(135deg,#f4fcf7,#f8fbff)}.pro-locked-header{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;border-bottom:1px solid #d8eee2;color:#17117a;font-size:11px;font-weight:800}.pro-locked-header b{padding:4px 7px;border-radius:999px;background:#e8f8f0;color:#16845a;font-size:8px;letter-spacing:.06em}.pro-locked-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.pro-locked-grid>div{display:flex;min-width:0;flex-direction:column;padding:9px;border:1px solid rgba(214,236,252,.85);border-radius:9px;background:rgba(255,255,255,.72)}.pro-locked-grid span{color:#6b7280;font-size:9px}.pro-locked-grid strong{margin-top:4px;color:#17117a;font-size:10px}.pro-blur-result{user-select:none;filter:blur(4px);opacity:.55}.pro-locked-overlay{position:absolute;inset:37px 0 0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:12px;background:rgba(255,255,255,.40);text-align:center;backdrop-filter:blur(1px)}.pro-locked-overlay>span{font-size:20px}.pro-locked-overlay strong{margin-top:4px;color:#17117a;font-size:12px}.pro-locked-overlay small{max-width:320px;margin-top:3px;color:#6b7280;font-size:8px}
.pro-live-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:9px 12px 0}.pro-live-summary span{padding:7px 5px;border:1px solid #d8eee2;border-radius:8px;background:rgba(255,255,255,.9);color:#475569;font-size:8px;font-weight:650;text-align:center}.pro-live-summary strong{display:inline;margin-right:3px;color:#16845a;font-size:11px}.pro-blur-result{filter:blur(7px)!important;opacity:.72!important}.pro-locked-overlay{background:rgba(239,246,255,.52)!important;backdrop-filter:blur(2px)!important}.pro-recalculating[hidden]{display:none}.pro-recalculating{position:absolute;inset:37px 0 0;z-index:3;display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(248,251,255,.9);color:#17117a;font-size:11px;backdrop-filter:blur(3px)}.pro-recalculating i{width:16px;height:16px;border:2px solid #bfdbfe;border-top-color:#2168d0;border-radius:50%;animation:pro-spin .55s linear infinite}.pro-locked-analysis.is-recalculating .pro-locked-overlay{opacity:0}@keyframes pro-spin{to{transform:rotate(360deg)}}
.pro-access-form{padding:19px;border-radius:16px;background:#f8fbff;border:1px solid #d6ecfc}.pro-access-form>label[for="pro-presentation-email"]{display:block;margin-bottom:6px;color:#17117a;font-size:12px;font-weight:750}.pro-access-form input[type=email]{width:100%;padding:12px 13px;border:1px solid #d1d5db;border-radius:10px;background:#fff;font-size:14px}
.pro-status-field{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:14px}.pro-status-field legend{grid-column:1/-1;margin-bottom:7px;color:#17117a;font-size:12px;font-weight:750}.pro-status-field label{cursor:pointer}.pro-status-field input{position:absolute;opacity:0;pointer-events:none}.pro-status-field span{display:flex;height:100%;align-items:center;justify-content:center;padding:9px 7px;border:1px solid #d6ecfc;border-radius:9px;background:#fff;color:#475569;font-size:10px;font-weight:700;text-align:center}.pro-status-field input:checked+span{border-color:#2d8ee7;background:#eaf5fe;color:#17117a;box-shadow:0 0 0 2px rgba(45,142,231,.12)}
.pro-access-privacy{margin-top:12px;color:#9ca3af;font-size:9px}.pro-access-privacy a{text-decoration:underline}.pro-access-form button[type=submit]{width:100%;margin-top:12px;padding:13px;border-radius:10px;background:linear-gradient(90deg,#2d8ee7,#2168d0);color:#fff;font-size:13px;font-weight:800;box-shadow:0 7px 16px rgba(45,142,231,.24)}.pro-access-form button[type=submit]:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(45,142,231,.29)}.pro-access-form button:disabled{opacity:.6}.pro-access-form>small{display:block;margin-top:8px;text-align:center;color:#64748b;font-size:9px;font-weight:600}.pro-access-message{margin-top:9px;padding:8px 10px;border-radius:8px;font-size:10px}.pro-access-error{background:#fff1f1;color:#b84242}.pro-access-success{background:#e8f8f0;color:#16845a}
@media(min-width:801px){.pro-access-dialog{max-width:1040px;max-height:96vh;overflow:hidden;padding:22px 26px}.pro-access-dialog h2{margin-top:9px;margin-bottom:5px;font-size:23px}.pro-access-intro{max-width:850px;font-size:12px;line-height:1.4}.pro-access-columns{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:18px;margin-top:12px;align-items:start}.pro-access-column{min-width:0}.pro-patient-slider-card{margin-top:0;padding:12px 14px}.pro-locked-analysis{margin-top:10px}.pro-access-teaser{margin:0 0 10px;padding:11px 13px}.pro-access-teaser ul{gap:4px;margin-top:7px}.pro-access-teaser li{font-size:10px;line-height:1.25}.pro-access-form{padding:14px}.pro-status-field{margin-top:11px}.pro-access-privacy{margin-top:9px}.pro-access-form button[type=submit]{margin-top:9px}}
@media(max-width:800px){.pro-access-dialog{max-width:580px;max-height:94vh;overflow:auto;padding:22px 17px}.pro-access-columns{display:block}.pro-access-dialog h2{font-size:21px}.pro-access-teaser{padding:12px}.pro-access-modal{padding:10px}.pro-locked-grid{grid-template-columns:1fr 1fr}.pro-slider-heading{align-items:flex-start;flex-direction:column;gap:4px}.pro-hero-main-cta strong{font-size:12px}}@media(max-width:600px){.pro-status-field{grid-template-columns:1fr}}
.pro-vertical-flow{margin-top:12px}.pro-status-primary{margin:0 0 9px;padding:10px 12px;border:1px solid #d6ecfc;border-radius:13px;background:#f8fbff}.pro-status-primary legend{padding:0 4px}.pro-vertical-flow>.pro-patient-slider-card{margin-top:0}.pro-vertical-flow>.pro-access-form{margin-top:10px}.pro-vertical-flow+.pro-access-teaser{margin-top:10px;margin-bottom:0}
.pro-status-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.pro-access-form button[type=submit]:disabled{background:#cbd5e1;color:#64748b;box-shadow:none;cursor:not-allowed;transform:none}.pro-status-primary:has(input:checked){border-color:#93c5fd;box-shadow:0 0 0 2px rgba(45,142,231,.08)}
.pro-profile-path[hidden]{display:none}.pro-audience-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.pro-audience-choice legend{grid-column:1/-1;margin-bottom:2px;color:#17117a;font-size:12px;font-weight:800}.pro-audience-choice label{cursor:pointer}.pro-audience-choice input{position:absolute;opacity:0;pointer-events:none}.pro-audience-choice span{display:flex;min-height:58px;flex-direction:column;justify-content:center;padding:10px 13px;border:1.5px solid #d6ecfc;border-radius:12px;background:#f8fbff;color:#17117a;transition:.2s}.pro-audience-choice b{font-size:12px}.pro-audience-choice small{margin-top:3px;color:#64748b;font-size:9px}.pro-audience-choice input:checked+span{border-color:#2d8ee7;background:#eaf5fe;box-shadow:0 0 0 3px rgba(45,142,231,.1)}.pro-patient-path{margin-top:12px}.pro-patient-how{padding:16px;border:1px solid #d6ecfc;border-radius:15px;background:linear-gradient(145deg,#f8fbff,#f4fcf7)}.pro-patient-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8f8f0;color:#16845a;font-size:9px;font-weight:800;text-transform:uppercase}.pro-patient-how h3{margin-top:9px;color:#17117a;font:700 18px/1.25 Poppins,sans-serif}.pro-patient-how>p{margin-top:5px;color:#64748b;font-size:11px;line-height:1.45}.pro-patient-steps{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.pro-patient-steps article{display:flex;gap:9px;padding:10px;border:1px solid #dcecf8;border-radius:10px;background:#fff}.pro-patient-steps article>b{display:flex;width:24px;height:24px;flex:0 0 24px;align-items:center;justify-content:center;border-radius:50%;background:#2d8ee7;color:#fff;font-size:10px}.pro-patient-steps article span{display:flex;min-width:0;flex-direction:column}.pro-patient-steps strong{color:#17117a;font-size:10px}.pro-patient-steps small{margin-top:2px;color:#64748b;font-size:8px;line-height:1.35}.pro-patient-reassurance{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 15px;margin:11px 0;color:#16845a;font-size:9px;font-weight:700}.pro-patient-cta{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-radius:11px;background:linear-gradient(90deg,#2d8ee7,#2168d0);color:#fff;font-size:12px;font-weight:800;box-shadow:0 7px 16px rgba(45,142,231,.24)}
@media(max-width:600px){.pro-audience-choice,.pro-patient-steps{grid-template-columns:1fr}}
.pro-audience-choice[hidden],.pro-change-profile[hidden]{display:none!important}.pro-change-profile{display:inline-flex;margin-top:7px;padding:0;background:transparent;color:#2168d0;font-size:9px;font-weight:700;text-decoration:underline;cursor:pointer}
@media(min-width:801px){.pro-access-dialog{max-width:650px;max-height:96vh;overflow:auto;padding:20px 25px}.pro-access-dialog h2{margin-top:8px;margin-bottom:4px;font-size:21px}.pro-access-intro{font-size:11px;line-height:1.35}.pro-status-primary{padding:8px 10px}.pro-status-primary legend{margin-bottom:4px}.pro-status-field span{padding:7px 5px}.pro-patient-slider-card{padding:10px 13px}.pro-patient-slider-card input[type=range]{margin:9px 0 2px}.pro-locked-analysis{margin-top:8px}.pro-live-summary{padding-top:7px}.pro-locked-grid{gap:6px;padding:9px}.pro-locked-grid>div{padding:7px}.pro-vertical-flow>.pro-access-form{margin-top:8px;padding:11px 13px}.pro-access-form input[type=email]{padding:10px 12px}.pro-access-privacy{margin-top:7px}.pro-access-form button[type=submit]{margin-top:7px;padding:11px}.pro-vertical-flow+.pro-access-teaser{margin-top:8px;padding:9px 12px}.pro-access-teaser ul{grid-template-columns:1fr 1fr;gap:3px 14px;margin-top:6px}.pro-access-teaser li{font-size:9px;line-height:1.2}}

/* Présentation professionnelle : priorité au rendu mobile des cartes FAMI et offre. */
.pro-fami-card,.pro-fami-card *,.pro-final-offer,.pro-final-offer *{box-sizing:border-box}.pro-fami-card{overflow:hidden}.pro-fami-title,.pro-fami-equivalent-title{overflow-wrap:anywhere}.pro-fami-button,.pro-final-offer-button{transition:transform .2s ease,box-shadow .2s ease}.pro-fami-button:hover,.pro-final-offer-button:hover{transform:translateY(-1px)}
@media(max-width:640px){
  .pro-fami-card{padding:13px!important;border-radius:20px!important;margin-bottom:18px!important}
  .pro-fami-grid{display:block!important}
  .pro-fami-amount{min-height:190px;padding:22px 20px!important;border-radius:15px!important;text-align:left}
  .pro-fami-badge{font-size:10px!important;padding:6px 10px!important}
  .pro-fami-title{margin-top:17px!important;margin-bottom:7px!important;font-size:31px!important;line-height:1.08!important;letter-spacing:-.025em}
  .pro-fami-amount>p{font-size:14px!important;line-height:1.4!important}
  .pro-fami-equivalent{margin-top:11px;padding:22px 17px!important;border-radius:15px!important}
  .pro-fami-equivalent>span{font-size:10px!important}
  .pro-fami-equivalent-title{font-size:25px!important;line-height:1.15!important}
  .pro-fami-equivalent>p{max-width:290px;font-size:13px!important;line-height:1.45!important}
  .pro-fami-button{width:100%;min-height:48px;padding:13px 16px!important;font-size:14px!important}
  .pro-fami-details{margin-top:14px!important;padding:14px 5px 3px!important}
  .pro-fami-details p:first-child{font-size:13px!important;line-height:1.5!important}
  .pro-fami-details p:last-child{margin-top:7px!important;font-size:10px!important;line-height:1.45!important}
  .pro-final-offer{padding:26px 17px!important;border-radius:20px!important}
  .pro-final-offer h2{font-size:22px!important;line-height:1.2!important}
  .pro-final-offer p{margin-bottom:20px!important;font-size:14px!important;line-height:1.45!important}
  .pro-final-offer-button{width:100%!important;min-height:52px;padding:14px 16px!important;font-size:14px!important;line-height:1.3!important}
}

/* Vérification professionnelle (RPPS) — carte de garde avant accès pro. */
.pa-preview{margin-top:14px;padding:14px 16px;border-radius:13px;background:linear-gradient(135deg,#f8fbff,#f4fcf7);border:1px solid #d6ecfc}.pa-preview h3{color:#17117a;font:700 15px/1.3 Poppins,sans-serif}.pa-preview p{margin-top:6px;color:#6b7280;font-size:11px;line-height:1.45}.pa-preview-lock{margin-top:8px!important;color:#2168d0!important;font-weight:700;font-size:10px!important}

/* Teaser libre (avant vérification) : même curseur, même DA que la carte résultat vérifiée — seul le montant reste flouté. */
.pa-teaser-slider{margin-top:14px;padding:13px 14px;border:1px solid #d6ecfc;border-radius:11px;background:#fff}
.pa-teaser-slider input[type=range]{--range-progress:19%;width:100%;height:6px;margin:12px 0 3px;border-radius:999px;appearance:none;background:linear-gradient(to right,#2d8ee7 var(--range-progress),#dbeafe var(--range-progress));outline:none}
.pa-teaser-slider input[type=range]::-webkit-slider-thumb{width:20px;height:20px;border:3px solid #fff;border-radius:999px;appearance:none;background:#17117a;box-shadow:0 3px 9px rgba(23,17,122,.28);cursor:pointer}
.pa-teaser-slider input[type=range]::-moz-range-thumb{width:16px;height:16px;border:3px solid #fff;border-radius:999px;background:#17117a;box-shadow:0 3px 9px rgba(23,17,122,.28);cursor:pointer}
.pa-teaser-result{position:relative;margin-top:12px;padding:16px;border-radius:12px;background:linear-gradient(135deg,#17117a,#2168d0);text-align:center;overflow:hidden}
.pa-teaser-result-label{display:block;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.pa-teaser-amount{margin-top:8px;font:800 40px/1.15 Poppins,sans-serif;letter-spacing:.03em;font-variant-numeric:tabular-nums;color:#fff;filter:blur(10px);user-select:none;transition:filter .15s ease}
.pa-teaser-amount small{display:block;margin-top:2px;font-size:10px;font-weight:600;color:rgba(255,255,255,.75);filter:none}
.pa-teaser-result .pa-preview-lock{position:relative;margin-top:10px!important;color:#fff!important;font-size:10px!important;opacity:.92}
.pa-card{margin-top:12px;padding:18px;border:1px solid #d6ecfc;border-radius:14px;background:#f8fbff}.pa-eyebrow{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eaf5fe;color:#2168d0;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.pa-eyebrow-error{background:#fff1f1;color:#b84242}.pa-card h3{margin-top:10px;color:#17117a;font:700 16px/1.3 Poppins,sans-serif}.pa-card-intro{margin-top:5px;color:#6b7280;font-size:11px;line-height:1.45}
.pa-field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.pa-field{margin-top:12px}.pa-field-row .pa-field{margin-top:0}.pa-field label{display:block;margin-bottom:5px;color:#17117a;font-size:11px;font-weight:700}.pa-field input{width:100%;padding:11px 12px;border:1px solid #d1d5db;border-radius:10px;background:#fff;font-size:13px}
.pa-hp{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}
.pa-check{display:flex;align-items:flex-start;gap:8px;margin-top:11px;cursor:pointer}.pa-check input{margin-top:2px;flex-shrink:0}.pa-check span{color:#475569;font-size:10px;line-height:1.5}.pa-check a{color:#2168d0;text-decoration:underline}
.pa-card button[type=submit]{width:100%;margin-top:14px;padding:13px;border-radius:10px;background:linear-gradient(90deg,#2d8ee7,#2168d0);color:#fff;font-size:12px;font-weight:800;letter-spacing:.02em;box-shadow:0 7px 16px rgba(45,142,231,.24)}.pa-card button[type=submit]:disabled{opacity:.6}
.pa-rpps-note{display:block;margin-top:9px;text-align:center;color:#9ca3af;font-size:9px;line-height:1.4}
.pa-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#pa-code-form fieldset.pa-code-boxes{display:flex;flex-wrap:nowrap;gap:8px;justify-content:center;margin:12px 0 0;border:0;padding:0;min-width:0}
#pa-code-form .pa-code-boxes input.pa-code-box{box-sizing:border-box;flex:0 0 44px;width:44px;min-width:0;height:52px;padding:0;margin:0;border:1px solid #d1d5db;border-radius:10px;background:#fff;color:#17117a;font-size:20px;font-weight:800;line-height:52px;text-align:center;-moz-appearance:textfield}
#pa-code-form .pa-code-boxes input.pa-code-box:focus{outline:2px solid #2d8ee7;outline-offset:1px;border-color:#2d8ee7}
@media(max-width:420px){#pa-code-form .pa-code-boxes input.pa-code-box{flex-basis:38px;width:38px;height:46px;font-size:18px;line-height:46px}}
.pa-secondary-btn{margin-top:12px;padding:10px 16px;border:1px solid #d6ecfc;border-radius:10px;background:#fff;color:#2168d0;font-size:11px;font-weight:700}
.pa-state-message{text-align:center}.pa-state-message h3{margin-top:6px}.pa-state-message p{margin-top:6px;color:#6b7280;font-size:12px;line-height:1.5}

/* ===================================================================
 * Écran final (post-vérification RPPS + code) : bandeau vérifié,
 * carte de résultat, étapes de fonctionnement, rappel déontologique,
 * deux CTA vers /paiement/. Tailles de police mobiles volontairement
 * plus grandes que le reste du composant (14px / 13px minimum,
 * boutons ≥48px) pour rester lisible sur petit écran.
 * =================================================================== */

.pa-verified-banner{padding:16px 18px;border:1px solid #bfe8d2;border-radius:14px;background:linear-gradient(135deg,#f0fdf4,#f8fbff)}
.pa-verified-eyebrow{display:inline-flex;align-items:center;gap:6px;color:#16845a;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.pa-verified-banner h3{margin:6px 0 0;color:#17117a;font:700 19px/1.3 Poppins,sans-serif}
.pa-verified-banner>p:not(.pa-verified-identity){margin-top:6px;color:#4b5563;font-size:13px;line-height:1.5;max-width:60ch}
.pa-verified-identity{margin-top:6px;color:#6b7280;font-size:12px}
.pa-verified-identity b{color:#374151;font-weight:700}

.pro-result-card{position:relative;margin-top:14px;padding:20px;border-radius:14px;background:linear-gradient(135deg,#17117a,#2168d0);color:#fff;overflow:hidden}
.pro-result-badge{display:inline-flex;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.16);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.pro-result-headline{margin-top:12px;font-size:12px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;opacity:.85}
.pro-result-amount{margin-top:6px;font:800 34px/1.15 Poppins,sans-serif}
.pro-result-amount small{display:block;margin-top:2px;font-size:13px;font-weight:700;opacity:.88;text-transform:none;letter-spacing:0}
.pro-result-caption{margin-top:8px;font-size:13px;color:rgba(255,255,255,.85);line-height:1.5;max-width:46ch}
.pro-result-divider{height:1px;margin:16px 0;background:rgba(255,255,255,.2)}
.pro-result-secondary-amount{font:800 21px/1.15 Poppins,sans-serif}
.pro-result-secondary-amount small{display:block;margin-top:2px;font-size:12px;font-weight:700;opacity:.85}
.pro-result-secondary-caption{margin-top:6px;font-size:12.5px;color:rgba(255,255,255,.75);line-height:1.5;max-width:52ch}
.pro-result-fineprint{margin-top:14px;font-size:10px;color:rgba(255,255,255,.62);line-height:1.5;max-width:58ch}
.pro-result-card .pro-recalculating{background:rgba(23,17,122,.55);color:#fff;backdrop-filter:blur(3px)}
.pro-result-card .pro-recalculating i{border-color:rgba(255,255,255,.35);border-top-color:#fff}

.pro-how-block{margin-top:16px}
.pro-how-title{margin:0 0 10px;color:#17117a;font:700 14px/1.3 Poppins,sans-serif}
.pro-how-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pro-how-step{display:flex;flex-direction:column;gap:5px;padding:13px 14px;border:1px solid #e5e7eb;border-radius:11px;background:#fff}
.pro-how-step .who{color:#2168d0;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.pro-how-step .what{color:#17117a;font-size:13px;font-weight:700}
.pro-how-step .desc{color:#4b5563;font-size:12.5px;line-height:1.5}

.pro-deo-card{margin-top:16px;padding:16px 18px;border:1px solid #bfe8d2;border-radius:14px;background:#f0fdf4}
.pro-deo-title{margin:0 0 10px;color:#17117a;font:700 14px/1.3 Poppins,sans-serif}
.pro-deo-list{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.pro-deo-list li{display:flex;align-items:flex-start;gap:8px;color:#1f2937;font-size:13px;line-height:1.5}
.pro-deo-list svg{flex:none;margin-top:2px;color:#16845a}
.pro-deo-disclaimer{margin:12px 0 0;padding-top:11px;border-top:1px solid #bfe8d2;color:#4b5563;font-size:12px;line-height:1.55}

.pro-cta-card{margin-top:16px;padding:20px;border-radius:14px;background:#f8fbff;border:1px solid #d6ecfc;text-align:center}
.pro-cta-card.pro-cta-compact{padding:15px 18px}
.pro-cta-card.pro-cta-compact h4{margin:0;color:#17117a;font:700 14px/1.3 Poppins,sans-serif}
.pro-cta-eyebrow{display:inline-flex;padding:5px 11px;border-radius:999px;background:#eaf5fe;color:#2168d0;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.pro-cta-card.pro-cta-final h4{margin:10px 0 4px;color:#17117a;font:700 18px/1.3 Poppins,sans-serif}
.pro-cta-sub{margin:0 auto;max-width:42ch;color:#4b5563;font-size:13px;line-height:1.5}
.pro-cta-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin-top:12px;padding:12px 16px;border:0;border-radius:11px;background:linear-gradient(90deg,#2d8ee7,#2168d0);color:#fff;font-size:14px;font-weight:800;letter-spacing:.01em;text-decoration:none;box-shadow:0 7px 16px rgba(45,142,231,.24);transition:transform .2s ease,box-shadow .2s ease}
.pro-cta-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(45,142,231,.29)}
.pro-cta-btn-compact{min-height:46px;font-size:13px}
.pro-cta-btn-final{min-height:52px;font-size:14.5px}
.pro-cta-fine{margin-top:10px;color:#6b7280;font-size:11.5px}
.pro-cta-error{margin-top:10px;padding:8px 10px;border-radius:8px;background:#fff1f1;color:#b84242;font-size:11.5px}
.pro-cta-confirm-eyebrow{display:inline-flex;padding:5px 11px;border-radius:999px;background:#e8f8f0;color:#16845a;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.pro-cta-app-links{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.pro-cta-btn.pro-cta-btn-secondary{background:linear-gradient(90deg,#16845a,#16a34a)}
.pro-cta-btn:disabled{opacity:.65;cursor:default;box-shadow:none}

@media(max-width:800px){
  .pro-how-steps{grid-template-columns:1fr}
  .pro-result-amount{font-size:28px}
  .pa-verified-banner h3{font-size:17px}
  /* Lisibilité mobile renforcée : textes explicatifs ≥14px, mentions secondaires ≥13px, contraste plus marqué. */
  .pa-verified-banner>p:not(.pa-verified-identity){font-size:14px;color:#374151}
  .pro-result-caption{font-size:13.5px}
  .pro-result-secondary-caption{font-size:13px;color:rgba(255,255,255,.85)}
  .pro-how-step .desc{font-size:13px;color:#374151}
  .pro-deo-list li{font-size:13.5px}
  .pro-deo-disclaimer{font-size:12.5px;color:#374151}
  .pro-cta-sub{font-size:13px;color:#374151}
  .pro-cta-fine{font-size:12px;color:#4b5563}
  .pro-cta-btn,.pro-cta-btn-compact,.pro-cta-btn-final{min-height:48px}
}
@media(min-width:801px){.pa-card{padding:15px}.pa-preview{padding:12px 14px}}

/* ==============================
 * Ajustements d'harmonie — final modal pro (17/08)
 * Ordre souhaité : déontologie → offre → FAMI → CTA final → version web
 * ============================== */
.pro-deo-card{
  margin-top:18px;
  padding:18px 20px;
  border:1px solid #bfe8d2;
  border-radius:0;
  background:#f7fbf8;
}
.pro-deo-title{
  margin:0 0 12px;
  color:#17117a;
  font:700 15px/1.35 Poppins,sans-serif;
}
.pro-deo-list{display:grid;gap:10px}
.pro-deo-list li{font-size:13px;color:#475569}

.pro-cta-card.pro-cta-offer,
.pro-cta-card.pro-cta-final{
  margin-top:18px;
  padding:22px 22px;
  border-radius:0;
  background:#fbfbfd;
  border:0;
  text-align:center;
}
.pro-cta-card.pro-cta-offer .pro-cta-eyebrow{
  background:#eaf3ff;
  color:#2168d0;
  font-size:11px;
  padding:8px 16px;
}
.pro-cta-card.pro-cta-offer h4,
.pro-cta-card.pro-cta-final h4{
  margin:14px 0 8px;
  color:#17117a;
  font:700 18px/1.3 Poppins,sans-serif;
}
.pro-cta-card.pro-cta-offer .pro-cta-sub,
.pro-cta-card.pro-cta-final .pro-cta-sub{
  max-width:none;
  color:#64748b;
  font-size:14px;
}
.pro-cta-btn{
  border-radius:12px;
}
.pro-cta-card.pro-cta-offer .pro-cta-btn{
  max-width:360px;
  margin:16px auto 0;
}
.pro-cta-btn-outline{
  max-width:360px;
  margin:16px auto 0;
  background:transparent;
  color:#2168d0;
  border:2px solid #2168d0;
  box-shadow:none;
}
.pro-cta-btn-outline:hover{
  box-shadow:none;
}

.pro-fami-info-card{
  margin-top:18px;
  padding:22px 20px;
  border:1px solid #bfdbfe;
  background:#eef5ff;
  border-radius:0;
}
.pro-fami-info-label{
  display:inline-block;
  margin-bottom:10px;
  color:#2168d0;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.pro-fami-info-card h4{
  margin:0 0 10px;
  color:#17117a;
  font:700 17px/1.35 Poppins,sans-serif;
}
.pro-fami-info-card p{
  margin:0;
  color:#64748b;
  font-size:13px;
  line-height:1.55;
}
.pro-fami-info-link{
  display:inline-block;
  margin-top:14px;
  color:#2168d0;
  font-size:13px;
  font-weight:700;
  text-decoration:underline;
}
.pro-fami-info-note{
  margin-top:12px!important;
  color:#94a3b8!important;
  font-size:12px!important;
}

.pro-web-link-card{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid #dbe4ef;
  text-align:center;
}
.pro-web-link-card p{
  margin:0 0 8px;
  color:#64748b;
  font-size:14px;
  line-height:1.5;
}
.pro-web-link-card a{
  color:#2168d0;
  font-size:14px;
  text-decoration:underline;
}

@media(max-width:800px){
  .pro-deo-card,
  .pro-cta-card.pro-cta-offer,
  .pro-cta-card.pro-cta-final,
  .pro-fami-info-card{
    padding:18px 16px;
  }
  .pro-cta-card.pro-cta-offer h4,
  .pro-cta-card.pro-cta-final h4,
  .pro-fami-info-card h4{
    font-size:16px;
  }
  .pro-cta-card.pro-cta-offer .pro-cta-sub,
  .pro-cta-card.pro-cta-final .pro-cta-sub,
  .pro-web-link-card p,
  .pro-web-link-card a,
  .pro-fami-info-card p,
  .pro-deo-list li{
    font-size:13px;
  }
}

/* ==============================
 * Raffinements finaux — lisibilité, structure et réassurance (17/08 v2)
 * ============================== */
.pro-result-card{
  padding:22px;
}
.pro-result-topline{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.pro-result-badge{
  background:rgba(255,255,255,.14);
}
.pro-plan-pill{
  min-width:160px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  text-align:right;
}
.pro-plan-pill-kicker{
  display:block;
  margin-bottom:3px;
  font-size:10px;
  font-weight:700;
  opacity:.8;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.pro-plan-pill strong{
  display:block;
  font:800 18px/1.1 Poppins,sans-serif;
}
.pro-plan-pill small{
  display:block;
  margin-top:3px;
  font-size:11px;
  opacity:.85;
}
.pro-result-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.pro-result-summary-item{
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.14);
}
.pro-result-summary-item span{
  display:block;
  margin-bottom:5px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:rgba(255,255,255,.78);
}
.pro-result-summary-item strong{
  display:block;
  font-size:13px;
  line-height:1.4;
  color:#fff;
}
.pro-result-secondary-caption{
  margin-top:10px;
  font-size:12.5px;
  color:rgba(255,255,255,.88);
}

.pro-how-block{
  margin-top:22px;
  padding:18px;
  border:1px solid #e6ebf2;
  border-radius:18px;
  background:#fbfcff;
}
.pro-how-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.pro-how-head p{
  margin:0;
  color:#64748b;
  font-size:13px;
}
.pro-how-title{margin:0}
.pro-how-steps{
  gap:14px;
}
.pro-how-step{
  position:relative;
  gap:7px;
  min-height:190px;
  padding:18px 18px 18px 18px;
  border:1px solid #dfe6ef;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff 0%,#f9fbff 100%);
  box-shadow:0 6px 18px rgba(15,23,42,.04);
}
.pro-how-step .step-no{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:999px;
  background:#eaf3ff;
  color:#2168d0;
  font-size:14px;
  font-weight:800;
}
.pro-how-step .who{
  color:#2168d0;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.pro-how-step .what{
  color:#17117a;
  font-size:16px;
  line-height:1.3;
}
.pro-how-step .desc{
  font-size:13px;
  color:#475569;
}

.pro-deo-card{
  position:relative;
  border-radius:18px;
}
.pro-deo-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.pro-deo-stamp{
  display:inline-flex;
  align-items:center;
  padding:6px 12px;
  border:1px solid #92d5b1;
  border-radius:999px;
  background:#effbf3;
  color:#16845a;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.pro-deo-badge{
  flex:none;
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border:2px solid #16845a;
  border-radius:999px;
  color:#16845a;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
  transform:rotate(-6deg);
  background:rgba(255,255,255,.55);
}
.pro-deo-title{
  margin:10px 0 0;
}

.pro-web-link-card{
  padding-bottom:6px;
}
.pro-web-link-meta{
  margin-top:16px;
  color:#94a3b8;
  font-size:12px;
  line-height:1.5;
}
.pro-web-link-meta a{
  font-size:12px;
}

@media(max-width:800px){
  .pro-result-topline,
  .pro-how-head,
  .pro-deo-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .pro-plan-pill{
    width:100%;
    text-align:left;
  }
  .pro-result-summary{
    grid-template-columns:1fr;
  }
  .pro-how-block,
  .pro-deo-card{
    border-radius:16px;
  }
  .pro-how-step{
    min-height:auto;
  }
  .pro-deo-badge{
    transform:none;
  }
  .pro-web-link-meta{
    font-size:11px;
  }
}

/* ==============================
 * Ajustements v3 — moins de répétition, 3 étapes plus explicites, preuve visuelle plus simple
 * ============================== */
.pro-result-summary-item strong{
  overflow-wrap:anywhere;
}
.pro-result-summary-item:last-child strong{
  font-size:12px;
}

.pro-how-block{
  padding:18px 16px;
}
.pro-how-title{
  margin:0 0 14px;
  color:#17117a;
  font:700 18px/1.3 Poppins,sans-serif;
}
.pro-how-steps.pro-how-steps-clarified{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
.pro-how-steps.pro-how-steps-clarified .pro-how-step{
  min-height:auto;
  padding:16px 16px 14px;
  border:1px solid #cfe4fb;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.pro-how-steps.pro-how-steps-clarified .step-label{
  display:block;
  margin-bottom:6px;
  color:#2d8ee7;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.pro-how-steps.pro-how-steps-clarified .what{
  display:block;
  margin-bottom:6px;
  color:#17117a;
  font-size:15px;
  font-weight:800;
  line-height:1.35;
}
.pro-how-steps.pro-how-steps-clarified .desc{
  display:block;
  color:#64748b;
  font-size:13px;
  line-height:1.55;
}
.pro-how-steps.pro-how-steps-clarified .step-no,
.pro-how-steps.pro-how-steps-clarified .who{
  display:none;
}

.pro-deo-card{
  text-align:left;
}
.pro-deo-title{
  margin:0 0 14px;
}

@media(min-width:900px){
  .pro-how-steps.pro-how-steps-clarified{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

/* ==============================
 * Ajustements v4 — bloc "KINEVOLU en trois étapes" plus harmonieux
 * ============================== */
.pro-how-block{
  margin-top:22px;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.pro-how-title{
  margin:0 0 16px !important;
  color:#17117a;
  font:700 19px/1.25 Poppins,sans-serif;
}

.pro-how-steps.pro-how-steps-clarified{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.pro-how-steps.pro-how-steps-clarified .pro-how-step{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  min-height:235px;
  padding:20px 18px 18px !important;
  border:1px solid #dbe5f2 !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:none !important;
}

.pro-how-steps.pro-how-steps-clarified .step-label{
  margin-bottom:10px;
  color:#334155;
  font-size:15px;
  font-weight:500;
  text-transform:none;
  letter-spacing:0;
  line-height:1.35;
}

.pro-how-steps.pro-how-steps-clarified .what{
  margin-bottom:10px;
  color:#17117a;
  font-size:16px;
  font-weight:800;
  line-height:1.25;
}

.pro-how-steps.pro-how-steps-clarified .desc{
  color:#52627a;
  font-size:14px;
  line-height:1.45;
}

@media(max-width:899px){
  .pro-how-steps.pro-how-steps-clarified{
    grid-template-columns:1fr;
    gap:14px;
  }
  .pro-how-steps.pro-how-steps-clarified .pro-how-step{
    min-height:auto;
    padding:18px 16px !important;
    border-radius:16px !important;
  }
  .pro-how-title{
    font-size:18px;
  }
  .pro-how-steps.pro-how-steps-clarified .step-label{
    font-size:14px;
  }
  .pro-how-steps.pro-how-steps-clarified .what{
    font-size:15px;
  }
  .pro-how-steps.pro-how-steps-clarified .desc{
    font-size:13px;
  }
}

/* ==============================
 * Ajustements v7 — bloc 3 étapes compact, cartes rectangulaires
 * ============================== */
.pro-how-block{
  margin-top:16px;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

.pro-how-title{
  margin:0 0 10px !important;
  color:#17117a !important;
  font:700 15px/1.3 Poppins,sans-serif !important;
}

.pro-how-steps.pro-how-steps-clarified{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}

.pro-how-steps.pro-how-steps-clarified .pro-how-step{
  min-height:0 !important;
  padding:13px 15px !important;
  border:1px solid #e5e7eb !important;
  border-radius:10px !important;
  background:#ffffff !important;
  box-shadow:none !important;
}

.pro-how-steps.pro-how-steps-clarified .step-label{
  display:block !important;
  margin:0 0 5px !important;
  color:#64748b !important;
  font-size:11px !important;
  font-weight:700 !important;
  line-height:1.3 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}

.pro-how-steps.pro-how-steps-clarified .what{
  display:block !important;
  margin:0 0 5px !important;
  color:#17117a !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}

.pro-how-steps.pro-how-steps-clarified .desc{
  display:block !important;
  color:#4b5563 !important;
  font-size:12.5px !important;
  line-height:1.45 !important;
}

@media(max-width:899px){
  .pro-how-steps.pro-how-steps-clarified{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .pro-how-steps.pro-how-steps-clarified .pro-how-step{
    min-height:0 !important;
    padding:12px 14px !important;
    border-radius:10px !important;
  }
  .pro-how-title{
    font-size:14px !important;
  }
  .pro-how-steps.pro-how-steps-clarified .step-label{
    font-size:10.5px !important;
    margin-bottom:4px !important;
  }
  .pro-how-steps.pro-how-steps-clarified .what{
    font-size:13.5px !important;
    margin-bottom:4px !important;
  }
  .pro-how-steps.pro-how-steps-clarified .desc{
    font-size:12.5px !important;
  }
}

/* ==============================
 * Ajustements v6 — tampon vert à droite dans le bloc déontologique
 * ============================== */
.pro-deo-card{
  position:relative !important;
  padding:26px 30px 24px !important;
}
.pro-deo-stamp-right{
  position:absolute !important;
  top:20px !important;
  right:20px !important;
  width:50px !important;
  height:50px !important;
  min-width:50px !important;
  min-height:50px !important;
  max-width:50px !important;
  max-height:50px !important;
  margin:0 !important;
  flex:none !important;
}
.pro-deo-stamp-right svg{
  display:block !important;
  width:100% !important;
  height:100% !important;
}
.pro-deo-title{
  padding-right:78px !important;
}

@media(max-width:899px){
  .pro-deo-card{
    padding:20px 18px !important;
  }
  .pro-deo-stamp-right{
    top:16px !important;
    right:16px !important;
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    max-width:40px !important;
    max-height:40px !important;
  }
  .pro-deo-title{
    padding-right:56px !important;
  }
}
/* Contexte "embarque" (page /comprendre-kinevolu/, hors modale) : le
   composant n'est plus contraint par les dimensions d'une fenetre modale.
   On laisse le contenu se deployer naturellement dans la page, sans
   scroll interne ni hauteur plafonnee. */
.pro-access-embedded .pro-access-dialog{
  max-height:none;
  overflow:visible;
}

