:root{--av2-ink:#17365e;--av2-blue:#1261af;--av2-muted:#667e98;--av2-border:#dce8f5;--av2-bg:#f4f8fd;--av2-soft:#eef6ff;--av2-shadow:0 18px 48px rgba(21,63,112,.09)}*{box-sizing:border-box}.adhesion-v2-page{margin:0;background:linear-gradient(150deg,#eef6ff 0%,#fff 55%,#f5f9ff 100%);color:var(--av2-ink);font:16px/1.5 system-ui,-apple-system,Segoe UI,Arial,sans-serif}.av2-shell{width:min(1100px,calc(100% - 36px));margin:42px auto 60px}.av2-header{text-align:center;margin-bottom:34px}.av2-eyebrow,.av2-kicker{font-size:12px;font-weight:800;letter-spacing:.13em;color:var(--av2-blue)}.av2-header h1{font-size:clamp(32px,4vw,48px);line-height:1.1;margin:10px 0}.av2-header p,.av2-card-heading p{color:var(--av2-muted);margin:5px 0}.av2-progress{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:28px}.av2-step{display:flex;align-items:center;justify-content:center;gap:9px;color:#8597ab;font-size:12px;font-weight:650;white-space:nowrap}.av2-step-number{display:grid;place-items:center;width:32px;height:32px;flex:none;border:1px solid var(--av2-border);border-radius:50%;background:white}.av2-step.is-current{color:var(--av2-blue)}.av2-step.is-current .av2-step-number{background:var(--av2-blue);border-color:var(--av2-blue);color:white;box-shadow:0 4px 12px #1261af33}.av2-card{background:white;border:1px solid #e3edf8;border-radius:24px;box-shadow:var(--av2-shadow);padding:36px}.av2-card-heading{display:flex;gap:18px;align-items:center;background:var(--av2-soft);padding:23px 25px;border-radius:17px;margin-bottom:29px}.av2-heading-icon{display:grid;place-items:center;width:54px;height:54px;flex:none;border-radius:16px;background:white;color:var(--av2-blue);font-size:28px}.av2-card-heading h2{font-size:26px;margin:3px 0}.av2-fieldset{border:0;padding:0;margin:0 0 26px}.av2-fieldset legend,.av2-card h3{font-weight:750;font-size:17px;margin-bottom:14px}.av2-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.av2-mode,.av2-membership{cursor:pointer;display:flex;align-items:flex-start;gap:12px;border:1.5px solid var(--av2-border);border-radius:14px;padding:18px;transition:border-color .15s,background .15s,transform .15s}.av2-mode:hover,.av2-membership:hover{border-color:#84b7e7;transform:translateY(-1px)}.av2-mode:has(input:checked),.av2-membership:has(input:checked){background:#f0f7ff;border-color:var(--av2-blue);box-shadow:inset 0 0 0 1px var(--av2-blue)}.av2-mode input,.av2-membership input{accent-color:var(--av2-blue);margin-top:4px;flex:none}.av2-mode strong,.av2-mode small{display:block}.av2-mode small{font-size:13px;color:var(--av2-muted);margin-top:5px}.av2-memberships{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.av2-membership{min-height:120px}.av2-membership-content{display:block;flex:1;min-width:0}.av2-membership-top{display:flex;justify-content:space-between;align-items:start;gap:12px}.av2-membership-top strong{font-size:16px}.av2-price{font-size:19px;color:var(--av2-blue);font-weight:800;white-space:nowrap}.av2-membership-description{display:block;color:var(--av2-muted);font-size:13px;margin-top:7px;line-height:1.5;max-height:76px;overflow:auto}.av2-membership-foot{display:block;color:#6c8cac;font-size:12px;margin-top:9px}.av2-code-note{border-radius:14px;padding:18px;background:var(--av2-soft)}.av2-code-note[hidden],#av2-standard[hidden]{display:none}.av2-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--av2-border);margin-top:28px;padding-top:24px}.av2-help,.av2-devnote{color:var(--av2-muted);font-size:13px}.av2-button{background:var(--av2-blue);border:0;border-radius:11px;color:white;padding:14px 23px;font:inherit;font-weight:750;cursor:pointer}.av2-button:hover{background:#0b4f94}.av2-button:focus-visible,.av2-mode:focus-within,.av2-membership:focus-within{outline:3px solid #75b5f1;outline-offset:3px}.av2-error,.av2-success{border-radius:10px;padding:12px 16px}.av2-error{background:#fff0f0;color:#a31f2b}.av2-success{background:#edf9f0;color:#146534}.av2-devnote{text-align:center;margin-top:22px}@media(max-width:750px){.av2-shell{width:min(100% - 22px,600px);margin:20px auto}.av2-progress{gap:3px}.av2-step{font-size:0;gap:0}.av2-step-number{font-size:12px;width:30px;height:30px}.av2-card{padding:18px;border-radius:18px}.av2-card-heading{padding:17px;gap:12px}.av2-heading-icon{width:42px;height:42px}.av2-card-heading h2{font-size:21px}.av2-mode-grid,.av2-memberships{grid-template-columns:1fr}.av2-actions{flex-direction:column;align-items:stretch}.av2-button{width:100%}}

/* Intégration APSAQ : styles limités à la zone du formulaire */
.adhesion-v2-page .av2-shell{isolation:isolate}.adhesion-v2-page .av2-card input,.adhesion-v2-page .av2-card button{font-family:inherit}.av2-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.av2-field{display:flex;flex-direction:column;gap:7px;font-weight:700}.av2-field input{width:100%;padding:13px 14px;border:1px solid var(--av2-border);border-radius:10px;background:#fff;color:var(--av2-ink);font-size:16px}.av2-field input:focus{outline:2px solid #79b8f0;outline-offset:1px}.av2-field small{font-weight:400;color:var(--av2-muted)}.av2-field small[data-state=ok]{color:#13713b}.av2-field small[data-state=error]{color:#a31f2b}.av2-wide{grid-column:1/-1}.av2-back{color:var(--av2-blue);font-weight:700;text-decoration:none}@media(max-width:750px){.av2-fields{grid-template-columns:1fr}}


/* =============================================================
   APSAQ V2 — Harmonisation officielle (27 octobre 2026)
   Variables provenant de generalv4.0.css.
   Surcharge volontaire, sans modifier les CSS publics.
   ============================================================= */
.adhesion-v2-page {
  --av2-blue: var(--bleu-apsaq, #00b7e8);
  --av2-ink: #17365e;
  --av2-muted: #555;
  --av2-border: #d9e8ed;
  --av2-bg: var(--grey-100, #f5f5f5);
  --av2-soft: var(--bleu-apsaq-50, #e6f9fd);
  --av2-shadow: 0 14px 38px rgba(0, 75, 107, .09);
  background: linear-gradient(180deg, #fff 0%, var(--grey-100, #f5f5f5) 100%);
  font-family: "Roboto", sans-serif;
}
.adhesion-v2-page .av2-eyebrow,
.adhesion-v2-page .av2-kicker,
.adhesion-v2-page .av2-price,
.adhesion-v2-page .av2-heading-icon,
.adhesion-v2-page .av2-step.is-current {
  color: var(--bleu-apsaq, #00b7e8);
}
.adhesion-v2-page .av2-header h1 {
  color: #17365e;
}
.adhesion-v2-page .av2-card {
  border-color: #e3edf0;
  box-shadow: var(--av2-shadow);
}
.adhesion-v2-page .av2-card-heading {
  background: var(--bleu-apsaq-50, #e6f9fd);
}
.adhesion-v2-page .av2-step.is-current .av2-step-number {
  background: var(--bleu-apsaq, #00b7e8);
  border-color: var(--bleu-apsaq, #00b7e8);
  color: #003c50;
  box-shadow: 0 5px 15px rgba(0, 183, 232, .18);
}
.adhesion-v2-page .av2-mode:hover,
.adhesion-v2-page .av2-membership:hover {
  border-color: var(--bleu-apsaq-hover, #73d7ea);
  background: var(--bleu-apsaq-hover-lite, #e9f3fd);
}
.adhesion-v2-page .av2-mode:has(input:checked),
.adhesion-v2-page .av2-membership:has(input:checked) {
  border-color: var(--bleu-apsaq, #00b7e8);
  background: var(--bleu-apsaq-50, #e6f9fd);
  box-shadow: inset 0 0 0 1px var(--bleu-apsaq, #00b7e8);
}
.adhesion-v2-page .av2-mode input,
.adhesion-v2-page .av2-membership input {
  accent-color: #005f7a;
}
.adhesion-v2-page .av2-code-note {
  background: var(--bleu-apsaq-50, #e6f9fd);
}
.adhesion-v2-page .av2-button {
  background: var(--bleu-apsaq, #00b7e8);
  color: #003c50;
  box-shadow: 0 5px 14px rgba(0, 183, 232, .16);
  transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.adhesion-v2-page .av2-button:hover {
  background: var(--bleu-apsaq-hover, #73d7ea);
  color: #003c50;
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(0, 75, 107, .14);
}
.adhesion-v2-page .av2-button:focus-visible,
.adhesion-v2-page .av2-mode:focus-within,
.adhesion-v2-page .av2-membership:focus-within,
.adhesion-v2-page .av2-field input:focus-visible {
  outline: 3px solid #005f7a;
  outline-offset: 3px;
}
.adhesion-v2-page .av2-field input:focus {
  border-color: var(--bleu-apsaq, #00b7e8);
}
.adhesion-v2-page .av2-back {
  color: #005f7a;
}
@media (prefers-reduced-motion: reduce) {
  .adhesion-v2-page .av2-button,
  .adhesion-v2-page .av2-mode,
  .adhesion-v2-page .av2-membership {
    transition: none;
    transform: none;
  }
}

/* Bouton inactif jusqu'au choix d'une formule */
.adhesion-v2-page .av2-actions:has(#av2-choice-submit){justify-content:flex-end}
.adhesion-v2-page .av2-button:disabled{background:#d9d9d9;color:#666;cursor:not-allowed;box-shadow:none;transform:none;opacity:1}
.adhesion-v2-page .av2-button:disabled:hover{background:#d9d9d9;color:#666;box-shadow:none;transform:none}

/* Sections sobres — identité APSAQ */
.adhesion-v2-page .av2-section{border:1px solid #b9e8f2;border-radius:17px;overflow:hidden;margin:0 0 20px;background:#fff}
.adhesion-v2-page .av2-section-head{display:flex;align-items:center;gap:14px;padding:14px 20px;background:var(--bleu-apsaq-50,#e6f9fd)}
.adhesion-v2-page .av2-section-head h3{margin:0;font-size:19px;color:#064b78}
.adhesion-v2-page .av2-section-head p{margin:3px 0 0;color:#4d7084;font-size:13px}
.adhesion-v2-page .av2-section-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:11px;background:#fff;color:#008fb5;font-size:20px}
.adhesion-v2-page .av2-section-body{padding:21px 20px 23px}
.adhesion-v2-page .av2-field select{width:100%;padding:13px 14px;border:1px solid var(--av2-border);border-radius:10px;background:#fff;color:var(--av2-ink);font:inherit}
.adhesion-v2-page .av2-field select:focus-visible{outline:3px solid #005f7a;outline-offset:2px}
@media(max-width:750px){.adhesion-v2-page .av2-section-head{padding:13px 15px}.adhesion-v2-page .av2-section-body{padding:17px 15px}}

.adhesion-v2-page #av2-email-status[data-state='ok']{color:#146b3a}
.adhesion-v2-page #av2-email-status[data-state='error']{color:#b42318}
.adhesion-v2-page #av2-email-status a{color:inherit;text-decoration:underline;font-weight:700}

/* Respecter hidden même avec les règles de grille et de mise en page */
.adhesion-v2-page [hidden]{display:none!important}

/* Étape 3 : résultats de recherche */
.av2-autocomplete{position:relative}.av2-employer-results{position:absolute;top:100%;left:0;right:0;z-index:10;background:white;border:1px solid #a4e3f4;border-radius:10px;box-shadow:0 12px 25px #102e491a;max-height:240px;overflow-y:auto}.av2-employer-result{display:block;width:100%;border:0;border-bottom:1px solid #e8f3f8;background:white;padding:12px;text-align:left;cursor:pointer;color:#12314b}.av2-employer-result:hover,.av2-employer-result:focus{background:#e6f9fd}.av2-section[hidden],.av2-field[hidden]{display:none!important}

/* Étape 4 : consentements volontaires */
.adhesion-v2-page .av2-consents{display:grid;gap:15px}
.adhesion-v2-page .av2-consent{display:flex;align-items:flex-start;gap:13px;padding:13px 15px;border:1px solid #d7edf5;border-radius:11px;cursor:pointer;color:#17365e}
.adhesion-v2-page .av2-consent input{flex:none;width:19px;height:19px;margin-top:3px;accent-color:#00b7e8}
.adhesion-v2-page .av2-consent-note{font-size:13px;color:#56758b;margin:0}

/* Étape 5 : récapitulatif, lisible sur mobile */
.adhesion-v2-page .av2-review-content{display:grid;gap:20px;padding:20px}
.adhesion-v2-page .av2-review .av2-section{overflow:hidden}
.adhesion-v2-page .av2-review .av2-section-head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.adhesion-v2-page .av2-review-edit{display:inline-flex;align-items:center;white-space:nowrap;font-weight:700;color:#006d94;text-decoration:underline;text-underline-offset:3px}
.adhesion-v2-page .av2-review-list{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;margin:0;padding:8px 20px 16px}
.adhesion-v2-page .av2-review-row{min-width:0;padding:12px 0;border-bottom:1px solid #e4eff4}
.adhesion-v2-page .av2-review-row dt{font-size:13px;color:#54718a;margin:0 0 4px}
.adhesion-v2-page .av2-review-row dd{font-size:15px;font-weight:600;color:#17365e;overflow-wrap:anywhere;margin:0}
.adhesion-v2-page .av2-review-next{color:#56758b;font-size:13px;max-width:440px;text-align:right}
@media(max-width:650px){.adhesion-v2-page .av2-review-list{grid-template-columns:1fr}.adhesion-v2-page .av2-review-content{padding:12px}.adhesion-v2-page .av2-review-next{text-align:left}.adhesion-v2-page .av2-review .av2-section-head{align-items:flex-start}}
