/* ASLANE — Simulateur d'aides (composant réutilisable). Classes préfixées .asm- */
.aslane-simulateur-mpr{--asm-rouge:#E30613;--asm-marine:#0d2240;--asm-gris:#5b6470;--asm-bord:#e4e8ee;
  margin:36px 0;border:1px solid var(--asm-bord);border-radius:16px;overflow:hidden;background:#fff;
  box-shadow:0 6px 26px rgba(13,34,64,.08);font-family:inherit;color:var(--asm-marine);scroll-margin-top:80px;}
.aslane-simulateur-mpr *{box-sizing:border-box;}
.aslane-simulateur-mpr .asm-head{background:var(--asm-marine);color:#fff;padding:22px 22px 18px;}
.aslane-simulateur-mpr .asm-title{margin:0 0 4px;font-size:1.28rem;line-height:1.25;color:#fff;}
.aslane-simulateur-mpr .asm-sub{margin:0;font-size:.88rem;opacity:.85;}
.aslane-simulateur-mpr .asm-progress{height:8px;background:rgba(255,255,255,.18);border-radius:6px;margin-top:14px;overflow:hidden;}
.aslane-simulateur-mpr .asm-progress-bar{height:100%;width:16.6%;background:var(--asm-rouge);border-radius:6px;transition:width .45s cubic-bezier(.4,0,.2,1);}
.aslane-simulateur-mpr .asm-progress-txt{font-size:.78rem;opacity:.8;margin-top:7px;display:block;letter-spacing:.02em;}
.aslane-simulateur-mpr .asm-body{padding:24px 22px 26px;}
.aslane-simulateur-mpr .asm-step{display:none;}
.aslane-simulateur-mpr .asm-step h4{margin:0 0 4px;font-size:1.08rem;color:var(--asm-marine);}
.aslane-simulateur-mpr .asm-hint{margin:0 0 18px;font-size:.85rem;color:var(--asm-gris);}
.aslane-simulateur-mpr .asm-field{margin-bottom:18px;}
.aslane-simulateur-mpr .asm-field label{display:block;font-weight:600;font-size:.92rem;margin-bottom:8px;}
.aslane-simulateur-mpr .asm-field input,.aslane-simulateur-mpr .asm-field select,.aslane-simulateur-mpr .asm-field textarea{
  width:100%;padding:12px 14px;border:1.5px solid var(--asm-bord);border-radius:10px;font-size:1rem;color:var(--asm-marine);
  background:#fff;transition:border-color .2s;font-family:inherit;}
.aslane-simulateur-mpr .asm-field input:focus,.aslane-simulateur-mpr .asm-field select:focus,.aslane-simulateur-mpr .asm-field textarea:focus{outline:none;border-color:var(--asm-rouge);}
.aslane-simulateur-mpr .asm-tip{font-size:.78rem;color:var(--asm-gris);margin-top:6px;}
.aslane-simulateur-mpr .asm-err input,.aslane-simulateur-mpr .asm-err select{border-color:var(--asm-rouge)!important;background:#fff5f5;}
.aslane-simulateur-mpr .asm-choices{display:flex;flex-wrap:wrap;gap:10px;}
.aslane-simulateur-mpr .asm-choices label{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 15px;border:1.5px solid var(--asm-bord);
  border-radius:10px;cursor:pointer;font-weight:600;font-size:.9rem;margin:0;transition:.15s;flex:1 1 auto;min-width:calc(33% - 7px);}
.aslane-simulateur-mpr .asm-choices input{position:absolute;opacity:0;pointer-events:none;}
.aslane-simulateur-mpr .asm-choices label:has(input:checked){border-color:var(--asm-rouge);background:#fff0f1;color:var(--asm-rouge);box-shadow:inset 0 0 0 1px var(--asm-rouge);}
.aslane-simulateur-mpr .asm-nav{display:flex;justify-content:space-between;gap:12px;margin-top:22px;}
.aslane-simulateur-mpr .asm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:10px;
  font-weight:700;font-size:.95rem;border:none;cursor:pointer;text-decoration:none;transition:.18s;font-family:inherit;}
.aslane-simulateur-mpr .asm-next,.aslane-simulateur-mpr .asm-submit{background:var(--asm-rouge);color:#fff;}
.aslane-simulateur-mpr .asm-next:hover,.aslane-simulateur-mpr .asm-submit:hover{filter:brightness(.92);}
.aslane-simulateur-mpr .asm-prev{background:#eef1f5;color:var(--asm-marine);}
.aslane-simulateur-mpr .asm-btn:disabled{opacity:.6;cursor:default;}
.aslane-simulateur-mpr .asm-results{display:grid;gap:10px;margin:6px 0 14px;}
.aslane-simulateur-mpr .asm-res-line{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;border:1px solid var(--asm-bord);border-radius:11px;background:#fbfcfd;}
.aslane-simulateur-mpr .asm-res-line span:first-child{font-size:.88rem;color:var(--asm-gris);font-weight:600;flex:0 0 auto;}
.aslane-simulateur-mpr .asm-res-line span:last-child{font-size:1rem;font-weight:800;color:var(--asm-marine);text-align:right;}
.aslane-simulateur-mpr .asm-total{background:var(--asm-marine);border-color:var(--asm-marine);}
.aslane-simulateur-mpr .asm-total span:first-child{color:rgba(255,255,255,.85);font-size:.95rem;}
.aslane-simulateur-mpr .asm-total span:last-child{color:#fff;font-size:1.4rem;}
.aslane-simulateur-mpr .asm-pulse{animation:asmPulse .5s ease;}
@keyframes asmPulse{0%{transform:scale(1);}40%{transform:scale(1.06);}100%{transform:scale(1);}}
.aslane-simulateur-mpr .asm-note-produit{font-size:.83rem;color:#8a5a00;background:#fff8e6;border:1px solid #ffe2a8;border-radius:10px;padding:11px 14px;margin:2px 0 14px;display:none;}
.aslane-simulateur-mpr .asm-disclaimer{font-size:.76rem;color:var(--asm-gris);font-style:italic;margin:12px 0 4px;border-top:1px dashed var(--asm-bord);padding-top:12px;}
.aslane-simulateur-mpr .asm-lead{margin-top:22px;padding-top:22px;border-top:2px solid var(--asm-bord);}
.aslane-simulateur-mpr .asm-lead h4{font-size:1.05rem;margin:0 0 4px;}
.aslane-simulateur-mpr .asm-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.aslane-simulateur-mpr .asm-consent{display:flex;gap:10px;align-items:flex-start;font-size:.82rem;color:var(--asm-gris);margin:6px 0 14px;font-weight:400;}
.aslane-simulateur-mpr .asm-consent input{margin-top:2px;flex:0 0 auto;width:17px;height:17px;accent-color:var(--asm-rouge);}
.aslane-simulateur-mpr .asm-form-msg{font-size:.85rem;margin-top:10px;min-height:1em;}
.aslane-simulateur-mpr .asm-err-msg{color:var(--asm-rouge);font-weight:600;}
.aslane-simulateur-mpr .asm-success{background:#eafaf0;border:1px solid #b7e6c8;color:#12683a;border-radius:11px;padding:18px 20px;font-size:.98rem;text-align:center;}
@media(min-width:620px){.aslane-simulateur-mpr .asm-head{padding:26px 30px 20px;}.aslane-simulateur-mpr .asm-body{padding:28px 30px 30px;}.aslane-simulateur-mpr .asm-choices label{min-width:auto;flex:1 1 0;}}
@media(max-width:520px){.aslane-simulateur-mpr .asm-grid2{grid-template-columns:1fr;}.aslane-simulateur-mpr .asm-total span:last-child{font-size:1.2rem;}.aslane-simulateur-mpr .asm-res-line span:last-child{font-size:.92rem;}}

/* ===== MODAL (homepage) ===== */
.asm-modal{position:fixed;inset:0;z-index:99999;display:none;}
.asm-modal.asm-open{display:block;}
.asm-modal .asm-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(2px);}
.asm-modal .asm-modal-content{position:relative;z-index:1;max-width:720px;width:95vw;max-height:90vh;overflow-y:auto;
  margin:5vh auto;background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.35);
  animation:asmModalIn .22s ease;-webkit-overflow-scrolling:touch;}
@keyframes asmModalIn{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}
.asm-modal .asm-modal-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;
  background:#0d2240;color:#fff;padding:14px 18px;}
.asm-modal .asm-modal-bar h2{margin:0;font-size:1.1rem;color:#fff;}
.asm-modal .asm-modal-close{background:transparent;border:none;color:#fff;font-size:1.9rem;line-height:1;cursor:pointer;padding:0 6px;}
.asm-modal .asm-modal-inner{padding:6px 16px 18px;}
.asm-modal .aslane-simulateur-mpr{margin:16px 0;box-shadow:none;}
body.asm-modal-lock{overflow:hidden;}
/* Le simulateur en modal n'a pas besoin de son propre bandeau titre (le modal-bar le porte) */
.asm-modal .aslane-simulateur-mpr[data-mode="modal"] .asm-head .asm-title{font-size:1.12rem;}
@media(max-width:520px){
  .asm-modal .asm-modal-content{width:100vw;max-width:100vw;height:100vh;max-height:100vh;margin:0;border-radius:0;}
}
/* Paire de boutons CTA (homepage) — centrée, tailles naturelles (pas de texte rogné) */
.asm-cta-pair{display:flex;flex-wrap:wrap;gap:16px;align-items:stretch;justify-content:center;text-align:center;}
.asm-cta-pair .asm-cta-btn{max-width:none;white-space:normal;}
/* 2e bouton "Simulez vos aides" en bleu nuit (au lieu du rouge cloné) */
a.asm-open-btn.asm-open-btn{background:#0d2240!important;border-color:#0d2240!important;color:#fff!important;box-shadow:none!important;}
a.asm-open-btn.asm-open-btn:hover{background:#0a1a30!important;}
@media(max-width:600px){.asm-cta-pair{flex-direction:column;align-items:stretch;}.asm-cta-pair .asm-cta-btn{width:100%;}}
/* M10 audit 2026-07-31 : anciens h4 convertis en p.asm-h4 (hiérarchie Hn) */
.aslane-simulateur-mpr .asm-step .asm-h4{margin:0 0 4px;font-size:1.08rem;color:var(--asm-marine);font-weight:700;}
.aslane-simulateur-mpr .asm-lead .asm-h4{font-size:1.05rem;margin:0 0 4px;font-weight:700;}
