/* Pages « professionnels » des deux exemples de Phil Darwin (07/10/2026) : arbre de Noël du CSE, repas des anciens, team building.
   S'ajoute à scene.css ou atelier.css, cours.css et pages.css. Mêmes variables (--a, --carte, --trait, --texte-2, --f-titre). */

/* Références : villes et salles qui l'ont programmé */
.pros-refs { list-style: none; margin: 34px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.pros-refs li { display: grid; gap: 6px; padding: 22px 24px; border-radius: 16px; background: var(--carte); }
.style-1 .pros-refs li { box-shadow: inset 0 0 0 1px var(--or-trait); }
.style-2 .pros-refs li { border: 2px solid var(--encre); box-shadow: 5px 5px 0 var(--jaune); }
.pros-refs b { font: 500 24px/1.15 var(--f-titre); }
.pros-refs span { color: var(--texte-2); line-height: 1.5; }
.pros-refs small { font-size: 12.5px; opacity: .7; }
.pros-salles small { font-size: 12.5px; } /* déjà en --texte-2 : pas d'opacité en plus (contraste 4,5:1, Lighthouse du 07/10) */
.pros-salles { margin: 26px 0 0; max-width: 72ch; line-height: 1.6; color: var(--texte-2); }
@media (max-width: 700px) { .pros-refs { grid-template-columns: 1fr; } }

/* Le guide de l'élu CSE */
.pros-guide h3 { margin: 30px 0 8px; font: 500 24px/1.2 var(--f-titre); color: var(--a-clair); }
.style-2 .pros-guide h3 { color: var(--encre); }
.pros-guide h3:first-child { margin-top: 10px; }
.pros-sources { margin: 26px 0 0; font-size: 13px; line-height: 1.55; opacity: .72; max-width: 72ch; }

/* Le calcul du plafond des cadeaux de Noël (idée : 21st.dev 28378 et 22007, refait sans React) */
.pros-simu { padding: clamp(24px, 4vw, 40px); border-radius: 22px; background: var(--carte); }
.style-1 .pros-simu { box-shadow: inset 0 0 0 1px var(--or-trait), 0 30px 60px rgba(0,0,0,.35); }
.style-2 .pros-simu { border: 3px solid var(--encre); box-shadow: 8px 8px 0 var(--jaune); }
.pros-simu .titre { margin-bottom: 22px; }
.simu-ligne { display: grid; grid-template-columns: 1fr auto; align-items: baseline; gap: 6px 16px; margin: 0 0 20px; font-weight: 600; }
.simu-ligne output { font: 500 34px/1 var(--f-titre); font-variant-numeric: tabular-nums; color: var(--a-clair); }
.style-2 .simu-ligne output { color: var(--encre); }
.simu-ligne input { grid-column: 1 / -1; width: 100%; height: 44px; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; accent-color: var(--a); cursor: pointer; }
.style-2 .simu-ligne input { accent-color: var(--encre); }
.simu-total { margin: 8px 0 0; padding-top: 22px; border-top: 1px solid var(--trait); font-size: 18px; line-height: 1.4; }
.simu-total b { display: block; margin-top: 6px; font: 500 clamp(44px, 7vw, 72px)/1 var(--f-titre); font-variant-numeric: tabular-nums; color: var(--a); }
.style-2 .simu-total b { color: var(--encre); background: linear-gradient(transparent 62%, var(--jaune) 62%); display: inline-block; }
.simu-total b.saute { animation: simu-saute .45s var(--ressort, cubic-bezier(.3,1.5,.5,1)); }
@keyframes simu-saute { 0% { transform: translateY(0); } 40% { transform: translateY(-6px); } 100% { transform: translateY(0); } }
.simu-note { margin: 14px 0 0; font-size: 13.5px; line-height: 1.55; color: var(--texte-2); }

/* Sous le bouton du formulaire */
.pros-qui { margin: 12px 0 0; font-size: 13.5px; color: var(--texte-2); }

/* Les autres pages pour les pros : 4 vignettes */
.pg-pros .at-autres ul { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 900px) { .pg-pros .at-autres ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

@media (prefers-reduced-motion: reduce) { .simu-total b.saute { animation: none; } }

/* Adresse d'agent sous le formulaire (08/10/2026) */
.pros-mail { margin: 8px 0 0; font-size: 14px; color: var(--texte-2); }
.pros-mail a { color: var(--texte); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
