/* Boutons de recommandation [ap_reco] */
.ap-reco {
	--ap-primary: #0a6c8f; /* Couleur propre (texte blanc lisible), indépendante du bleu clair Elementor. */
	display: inline-block; margin: .25em .3em; padding: .45em 1em;
	border-radius: 999px; background: var(--ap-primary); color: #fff !important;
	font-weight: 600; font-size: .95em; line-height: 1.3; text-decoration: none !important;
	vertical-align: middle; transition: opacity .15s;
}
.ap-reco:hover { opacity: .88; }
.ap-reco:focus-visible { outline: 2px solid var(--ap-primary); outline-offset: 2px; }
.ap-reco--manquant { background: #fff7e0; color: #8a5a00 !important; border: 1px dashed #d9a400; font-weight: 500; }
.ap-reco-widget { margin: 1em 0; }
/* Encadré matériel [ap_equipement] */
.ap-equip { --ap-primary: #0a6c8f; margin: 1.5em 0; padding: 1em 1.2em; border-radius: 12px; background: #f3f7f8; }
.ap-equip__titre { margin: 0 0 .6em; font-weight: 700; font-size: 1.1em; }
.ap-equip__liste { list-style: none; margin: 0; padding: 0; display: grid; gap: .6em; }
@media (min-width: 640px) { .ap-equip__liste { grid-template-columns: 1fr 1fr; } }
.ap-equip__item { display: flex; flex-direction: column; align-items: flex-start; gap: .3em; padding: .7em .9em; border-radius: 10px; background: #fff; }
.ap-equip__nom { font-weight: 600; }
.ap-equip__pourquoi { font-size: .9em; opacity: .8; }
.ap-equip .ap-equip__btn { margin: .3em 0 0; }
.ap-reco-mention { margin-top: 2em; font-size: .85em; opacity: .75; }
