/* Styles propres à la page Bénévolat (s'ajoute à about.css) */
.page-hero .btn { margin-top: 25px; }

/* Étapes numérotées : c'est une vraie séquence */
.steps {
    list-style: none; margin: 0 0 60px; padding: 0; counter-reset: step;
    display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 25px;
}
.step { counter-increment: step; text-align: center; padding: 0 10px; }
.step::before {
    content: counter(step);
    display: flex; align-items: center; justify-content: center;
    width: 48px; height: 48px; margin: 0 auto 15px;
    border-radius: 50%; background: var(--primary-blue); color: #fff;
    font-size: 20px; font-weight: bold;
}
.step h3 { color: var(--primary-blue); margin: 0 0 8px; }
.step p { margin: 0; }

.action-body .btn { margin: 15px 0 0; }

/* Formulaire */
.volunteer-form {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 20px;
    max-width: 800px; margin: 0 auto; padding: 30px;
    border: 1px solid #ddd; border-radius: 8px; background: #fff;
}
.field { display: flex; flex-direction: column; gap: 6px; }
.field.full { grid-column: 1 / -1; }
.field label { font-weight: bold; font-size: 14px; }
.field input, .field select, .field textarea {
    font: inherit; padding: 10px 12px; border: 1px solid #aaa; border-radius: 5px; background: #fff; width: 100%;
}
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--primary-blue); }
.consent label { display: flex; gap: 10px; align-items: flex-start; font-weight: normal; }
.consent input { width: auto; margin-top: 5px; }
.submit { border: none; cursor: pointer; font-size: 16px; margin: 0; }
.form-status { margin: 12px 0 0; padding: 12px; background: #e8f1fd; border-left: 4px solid var(--primary-blue); }

/* Missions ponctuelles / régulières : deux grandes cartes */
.actions-grid.two { grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); max-width: 900px; margin: 0 auto; }
.action-body .checklist { margin: 15px 0 5px; text-align: left; }

/* Photo du bandeau de la page */
.page-hero { --hero-img: url('img8.jpeg'); --hero-pos: center 45%; }
