/* Parcours membre — maquette J1-02 */
.parcours{background:#071424}
.parcours .top{position:relative}
.pc{display:grid;grid-template-columns:minmax(0,40fr) minmax(0,60fr);min-height:calc(100vh - 88px);background:#071424}
.pc-panneau{position:relative;color:#fff;padding:56px 44px 48px;background:linear-gradient(90deg,rgba(7,20,36,.97) 0%,rgba(7,20,36,.82) 34%,rgba(7,20,36,.18) 70%,rgba(7,20,36,0) 100%),url(/img/parcours-globe.jpg) right top/cover no-repeat;display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.pc-etapes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.pc-etapes li{display:flex;gap:22px;align-items:center;position:relative;padding:0 0 46px}
.pc-etapes li:last-child{padding-bottom:0}
.pc-etapes li:not(:last-child)::after{content:"";position:absolute;left:21px;top:48px;bottom:4px;border-left:2px dotted rgba(255,255,255,.55)}
.pc-etapes .pastille{flex:none;width:44px;height:44px;border-radius:50%;border:2px solid rgba(255,255,255,.85);display:grid;place-items:center;font-weight:700;font-size:18px;color:#fff;background:rgba(7,20,36,.6)}
.pc-etapes li.faite .pastille{border-color:#2BB8B0;color:#2BE0D0;background:rgba(14,90,84,.35)}
.pc-etapes li.faite::after,.pc-etapes li.en-cours::after{border-left-color:#2BE0D0}
.pc-etapes li.en-cours .pastille{border:3px solid #38E6D6;box-shadow:0 0 0 5px rgba(56,230,214,.16),0 0 22px rgba(56,230,214,.55);color:#fff;width:48px;height:48px;margin-left:-2px}
.pc-etapes .txt b{display:block;font-size:19px;font-weight:700}.pc-etapes li.en-cours .txt b,.pc-etapes li.faite .txt b{color:#2BE0D0}
.pc-etapes .txt small{display:block;font-size:14.5px;color:#DCE5EE;margin-top:2px}
.pc-confiance{border-top:1px solid rgba(255,255,255,.28);padding-top:34px;max-width:360px}
.pc-confiance h2{font-family:"Inter Tight",Inter,sans-serif;font-size:25px;line-height:1.2;margin:16px 0 10px;color:#fff}
.pc-confiance p{margin:0;color:#DCE5EE;font-size:16px;line-height:1.5}
.pc-carte{background:#FBF8F1;margin:14px 14px 14px 0;border-radius:20px;padding:40px 46px 36px;box-shadow:0 30px 70px rgba(0,0,0,.35);min-width:0}
.pc-sur{margin:0;color:#B9853A;font-weight:800;font-size:13px;letter-spacing:.12em}
.pc-carte h1{font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(30px,3vw,42px);font-weight:800;letter-spacing:-.02em;color:#0B1F33;margin:6px 0 8px;line-height:1.1}
.pc-intro{margin:0 0 22px;color:#2A3A55;font-size:17px;line-height:1.5;max-width:640px}
.pc-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 26px}
.pc-col{display:flex;flex-direction:column}
.pc-champ{display:block;margin-bottom:16px}.pc-champ>span{display:block;font-weight:700;font-size:15px;color:#0B1F33;margin-bottom:8px}
.pc-champ input,.pc-champ select,.pc-champ textarea{width:100%;font:inherit;font-size:15px;color:#14203A;background:#fff;border:1px solid #CDD5DF;border-radius:8px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.pc-champ select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%230B1F33' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:42px;color:#4A5873}
.pc-champ input::placeholder,.pc-champ textarea::placeholder{color:#7D8AA0}
.pc-champ input:focus,.pc-champ select:focus,.pc-champ textarea:focus{outline:0;border-color:#1FB5A8;box-shadow:0 0 0 3px rgba(31,200,180,.18)}
.pc-depot,.pc-selfie{display:flex;cursor:pointer;border:1.5px dashed #BFC8D3;border-radius:10px;background:#fff;transition:border-color .15s,background .15s;position:relative}
.pc-depot:hover,.pc-selfie:hover{border-color:#1FB5A8;background:#F4FBF9}
.pc-depot.ok,.pc-selfie.ok{border-style:solid;border-color:#1FB5A8;background:#EEF9F6}
.pc-depot input,.pc-selfie input{position:absolute;opacity:0;width:1px;height:1px}
.pc-depot{gap:16px;align-items:center;padding:16px 18px;margin:-6px 0 18px}
.pc-depot b,.pc-selfie b{display:block;font-size:14.5px;color:#0B1F33}.pc-depot small,.pc-selfie small{display:block;font-size:13px;color:#5C6B86}
.pc-depot i,.pc-selfie i{display:block;font-style:normal;font-size:12.5px;color:#0B7A5E;font-weight:600;margin-top:3px}
.pc-selfie{flex-direction:column;align-items:center;text-align:center;padding:24px 18px;min-height:190px;justify-content:center;gap:4px}
.pc-selfie .rond{width:66px;height:66px;border-radius:50%;border:1.5px solid #9AA8B8;display:grid;place-items:center;margin-bottom:10px;background:#F7F9FB}
.pc-case{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:#2A3A55;margin:2px 0 18px}.pc-case input{width:18px;height:18px;margin-top:2px;accent-color:#0E8F6E}
.pc-carte a{color:#1763C6}
.pc-adhesion{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:start;background:#E3F3EF;border-radius:10px;padding:16px 20px;margin:6px 0 20px}
.pc-adhesion>span b{display:block;font-size:17px;color:#0B1F33;margin-bottom:3px}.pc-adhesion>span{font-size:14px;color:#2A3A55;line-height:1.45}
.pc-adhesion details{grid-column:3;grid-row:1}.pc-adhesion summary{list-style:none;cursor:pointer;display:flex;gap:8px;align-items:center;color:#14325A;font-weight:600;text-decoration:underline;font-size:14.5px;white-space:nowrap;padding-top:8px}
.pc-adhesion summary::-webkit-details-marker{display:none}
.pc-adhesion details[open]{grid-column:1/-1;grid-row:2}.pc-adhesion details p{margin:6px 0 0;font-size:13.5px;color:#2A3A55}
.pc-garanties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 24px}
.pc-garanties>div{display:flex;gap:16px;align-items:flex-start;padding:4px 20px 4px 0}
.pc-garanties>div+div{border-left:1px solid #D8DEE6;padding-left:28px}
.pc-garanties b{display:block;font-size:15px;color:#0B1F33;margin-bottom:3px}.pc-garanties span{font-size:13.5px;color:#4A5873;line-height:1.45}
.pc-garanties svg{flex:none;margin-top:2px}
.pc-actions{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:18px;align-items:stretch}
.pc-btn{border:0;cursor:pointer;font:inherit;font-weight:800;font-size:21px;color:#141007;border-radius:34px;padding:18px 30px;background:linear-gradient(180deg,#F6D58E 0%,#E7B65A 55%,#D9A043 100%);box-shadow:0 10px 24px rgba(201,150,62,.35),inset 0 1px 0 rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center;gap:16px;transition:transform .15s,box-shadow .15s}
.pc-btn:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(201,150,62,.45),inset 0 1px 0 rgba(255,255,255,.6)}
.pc-btn span{font-size:26px;line-height:1}
.pc-btn-sec{display:flex;align-items:center;justify-content:center;border:1.5px solid #0B1F33;border-radius:30px;color:#0B1F33!important;text-decoration:none;font-weight:700;font-size:16.5px;background:#fff;padding:14px 18px;text-align:center}
.pc-btn-sec:hover{background:#0B1F33;color:#fff!important}
.pc-erreur{background:#FDECEA;color:#9F1F14;border:1px solid #F3C6C1;border-radius:10px;padding:12px 16px;margin-bottom:18px;font-weight:600}
.pc-ok{background:#E2F5EE;color:#0B7A5E;border-radius:10px;padding:12px 16px;margin-bottom:18px}
.pc-etroit{max-width:560px}
.pc-note{display:flex;gap:10px;align-items:center;color:#4A5873;font-size:14px;margin:0 0 22px}
.pc-separe{border-top:1px solid #D8DEE6;margin:30px 0 22px;max-width:560px}
@media (max-width:1100px){.pc{grid-template-columns:minmax(0,1fr)}.pc-panneau{padding:28px 20px;background-position:center}.pc-etapes{flex-direction:row;justify-content:space-between}.pc-etapes li{flex-direction:column;padding:0;gap:8px;text-align:center;flex:1}.pc-etapes li::after{display:none}.pc-etapes .txt small{display:none}.pc-etapes .txt b{font-size:13px}.pc-confiance{display:none}.pc-carte{margin:0;border-radius:0;padding:28px 18px}}
@media (max-width:700px){.pc-grille,.pc-garanties,.pc-actions{grid-template-columns:minmax(0,1fr)}.pc-garanties>div+div{border-left:0;padding-left:0;margin-top:14px}.pc-adhesion{grid-template-columns:auto minmax(0,1fr)}.pc-adhesion details{grid-column:1/-1;grid-row:2}.pc-btn{font-size:18px}.pc-etapes .pastille{width:36px;height:36px;font-size:15px}.pc-etapes li.en-cours .pastille{width:40px;height:40px}}
@media (max-width:700px){.pc-panneau{padding:22px 10px}.pc-etapes{gap:2px}.pc-etapes li{min-width:0}.pc-etapes .txt b{font-size:11.5px;overflow-wrap:anywhere}}
