/* Compléments au thème d'origine : accessibilité et éléments propres au nouveau site. */

/* Lien d'évitement : invisible tant qu'il n'a pas le focus clavier */
.skip-link {
  position: absolute; left: 16px; top: -100px; z-index: 10000;
  background: #fff; color: #005892; padding: 12px 20px; border-radius: 30px;
  font-weight: 600; text-decoration: none; box-shadow: 0 2px 12px rgba(0, 0, 0, .2);
}
.skip-link:focus { top: 16px; }
#contenu { outline: none; }

/* Focus clavier visible partout */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid #ffb431 !important; outline-offset: 2px;
}

/* Pot de miel anti-spam */
.hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* Compétence mise en avant (injecté en ligne par l'ancien thème) */
.page-template-page-skills .object_skill.highlighted { padding: 15px; background: #055387; border-radius: 30px; color: #fff; margin-bottom: 45px !important; }
.page-template-page-skills .object_skill.highlighted .object_skill--infos { margin-bottom: 0 !important; border-bottom: none !important; }

/* Messages des formulaires */
.form-status:empty { display: none; }
.form-status { margin-top: 16px; padding: 12px 16px; border-radius: 8px; font-weight: 500; }
.form-status.is--success { background: #e7f6ec; color: #14532d; }
.form-status.is--error { background: #fdecec; color: #8a1c1c; }
.wpforms-field-label-inline a { color: inherit; text-decoration: underline; }

/* Réservation */
.dvab-error:empty { display: none; }
.dvab-error { color: #b42318; font-size: 15px; margin-top: 16px; }
.dvab-timeslots__empty { color: #555; font-size: 15px; }
.dvab-booking__form .radiopseudo:has(input:focus-visible) label { outline: 3px solid #ffb431; outline-offset: 2px; }
