.inrb-demarches-mobile { display: none; }
.inrb-demarches-trigger { white-space: nowrap; }
.inrb-demarches-modal { color: var(--primary-color, #172c45); }
.inrb-demarches-modal .modal-dialog { max-width: 620px; margin-right: auto; margin-left: auto; }
.inrb-demarches-modal .modal-content { border: 1px solid #dce3e8; border-radius: 8px; background: #fff; box-shadow: 0 20px 70px #0c223330; }
.inrb-demarches-modal .modal-header { align-items: flex-start; gap: 16px; padding: 28px 28px 20px; border-bottom: 1px solid #e4e9ed; }
.inrb-demarches-kicker { color: #526779; font-size: 13px; font-weight: 700; margin: 0 0 10px; }
.inrb-demarches-modal h2 { font-size: 24px; font-weight: 600; line-height: 1.4; letter-spacing: 0; }
.inrb-demarches-close { flex: 0 0 36px; width: 36px; height: 36px; border: 1px solid #e0e6eb; border-radius: 6px; background: #f5f7f8; color: #172c45; display: grid; place-items: center; font-size: 20px; }
.inrb-demarches-close:hover { background: #e4edf4; }
.inrb-demarches-modal .modal-body { padding: 12px 28px 24px; }
.inrb-demarches-choices { display: grid; }
.inrb-demarche-choice { display: grid; grid-template-columns: 48px minmax(0, 1fr) 18px; align-items: center; gap: 16px; padding: 20px 0; border-bottom: 1px solid #e4e9ed; color: #172c45; text-decoration: none; }
.inrb-demarche-choice:last-child { border-bottom: 0; }
.inrb-demarche-choice:hover { color: #172c45; background: #f5f8fa; }
.inrb-demarche-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 8px; background: #e0effa; color: #244b68; font-size: 21px; }
.inrb-demarche-signalement .inrb-demarche-icon { background: #fce9e6; color: #a33c32; }
.inrb-demarche-stage .inrb-demarche-icon { background: #e6f1ea; color: #326448; }
.inrb-demarche-reservation .inrb-demarche-icon { background: #f4edda; color: #766127; }
.inrb-demarche-copy { min-width: 0; }
.inrb-demarche-copy strong { display: block; font-size: 16px; line-height: 1.5; font-weight: 700; overflow-wrap: anywhere; }
.inrb-demarche-copy > span { display: block; font-size: 14px; line-height: 1.6; color: #526779; margin-top: 3px; }
.inrb-demarche-arrow { font-size: 15px; color: #6b8496; }
.inrb-demarche-choice:focus-visible, .inrb-demarches-close:focus-visible, .inrb-demarches-trigger:focus-visible { outline: 3px solid #377699; outline-offset: 3px; border-radius: 4px; }
.inrb-demarches-page { padding: 70px 0 90px; }
.inrb-demarches-page .inrb-demarches-choices { max-width: 740px; margin: 0 auto; }
.inrb-demarche-intro h2 { font-size: 28px; line-height: 1.4; margin-bottom: 20px; }
.inrb-demarche-intro p { font-size: 16px; line-height: 1.8; }
.inrb-demarche-intro .inrb-demarche-note { padding-top: 20px; margin-top: 24px; border-top: 1px solid #dce3e8; font-size: 14px; }
.inrb-demarche-back { display: inline-flex; align-items: center; gap: 10px; margin-top: 12px; font-weight: 700; color: #244b68; }
.inrb-demarche-form label { display: block; margin-bottom: 9px; font-size: 14px; font-weight: 700; color: #172c45; }
.inrb-demarche-form .form-control { background: #fff; border: 1px solid #dce3e8; border-radius: 6px; min-height: 48px; padding: 12px 14px; }
.inrb-demarche-form textarea.form-control { min-height: 160px; resize: vertical; }
.inrb-demarche-form .form-control:focus { border-color: #377699; box-shadow: 0 0 0 3px #37769920; }
.inrb-demarche-form button:disabled { opacity: .65; cursor: wait; }
.inrb-demarche-status { margin: 20px 0 0; font-size: 15px; line-height: 1.6; }
.inrb-demarche-status.is-success { color: #276044; }
.inrb-demarche-status.is-error { color: #ac322d; }
@media (max-width: 991px) {
    .inrb-demarches-mobile { display: inline-flex; margin-left: auto; margin-right: 14px; align-items: center; padding: 12px 16px; font-size: 14px; }
    .inrb-demarches-mobile::before, .inrb-demarches-mobile::after { display: none; }
    .inrb-demarches-page { padding: 48px 0 64px; }
}
@media (max-width: 575px) {
    .main-header .navbar-brand { max-width: 110px; }
    .inrb-demarches-mobile { padding: 11px 12px; margin-right: 10px; font-size: 12px; }
    .inrb-demarches-modal .modal-dialog { margin: 12px; }
    .inrb-demarches-modal .modal-header { padding: 22px 20px 16px; }
    .inrb-demarches-modal h2 { font-size: 20px; }
    .inrb-demarches-modal .modal-body { padding: 4px 20px 16px; }
    .inrb-demarche-choice { grid-template-columns: 40px minmax(0, 1fr) 14px; gap: 12px; padding: 16px 0; }
    .inrb-demarche-icon { width: 40px; height: 40px; font-size: 18px; }
    .inrb-demarche-copy strong { font-size: 15px; }
    .inrb-demarche-copy > span { font-size: 13px; }
    .inrb-demarche-intro h2 { font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) {
    .inrb-demarches-modal.fade .modal-dialog { transition: none; }
}
