/* Template Projet — surcharge du rendu TotalPoll dans le bloc Sondage (#sondage .projet-sondage).
   Les sélecteurs doublent l'id pour passer devant le CSS généré par le plugin
   (div#totalpoll.totalpoll-wrapper[totalpoll-uid=…]). */
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper { font-size: 2rem; line-height: 1.3; color: #323232; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-questions,
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question { margin: 0; padding: 0; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-content { font-size: 2.6rem; font-weight: 700; line-height: 1.2; margin-bottom: 2.5rem; color: #1B4164; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-content p { margin: 0; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices { margin: 0; gap: 1.2rem; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item { padding: 0; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-control { border: 2px solid #1B4164; border-radius: 10rem; background: #fff; align-items: center; padding-left: 1.6rem; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item:hover .totalpoll-question-choices-item-control,
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item:focus-within .totalpoll-question-choices-item-control { background: #FDF5F0; border-color: #1B4164; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-checked .totalpoll-question-choices-item-control,
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-checked:hover .totalpoll-question-choices-item-control,
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-checked:focus-within .totalpoll-question-choices-item-control { background: #1B4164; border-color: #1B4164; color: #fff; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-label { padding: 1.4rem 2rem 1.4rem 1.2rem; font-weight: 700; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-selector-box { width: 2.4rem; height: 2.4rem; padding: 0.3rem; border: 2px solid #1B4164; background: #fff; color: #1B4164; fill: #1B4164; box-shadow: none; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-selector input:checked + .totalpoll-question-choices-item-selector-box { border-color: #fff; background: #fff; fill: #1B4164; box-shadow: none; }
/* Résultats */
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-results .totalpoll-question-choices-item-container,
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-results:hover .totalpoll-question-choices-item-container { border: 0; border-radius: 0; background: transparent; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-results + .totalpoll-question-choices-item-results { border-top: 1px solid rgba(27, 65, 100, 0.15); padding-top: 1.2rem; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-results .totalpoll-question-choices-item-label,
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-results:hover .totalpoll-question-choices-item-label { padding: 0.6rem 0; font-weight: 700; cursor: default; background: transparent; border: 0; color: inherit; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-votes { margin-top: 0.8rem; font-size: 1.6rem; text-transform: none; gap: 1.2rem; background: #EEF4EF; border-radius: 10rem; padding: 0.3rem 1.2rem 0.3rem 0.3rem; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-votes-bar { height: 1.2rem; border-radius: 10rem; background: #1B4164; background-image: none; min-width: 0.6rem; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-votes-text { opacity: 1; font-size: 1.6rem; font-weight: 700; color: #1B4164; }
/* Boutons */
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-buttons { margin: 0; padding: 3rem 0 0; gap: 1.2rem; justify-content: flex-start; flex-wrap: wrap; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-buttons > .totalpoll-button { margin: 0; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-button { font-size: 1.8rem; font-weight: 700; padding: 1.4rem 3.2rem; border-radius: 10rem; border: 2px solid #1B4164; background: #fff; color: #1B4164; cursor: pointer; transition: background .15s, color .15s; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-button:hover,
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-button:focus { background: #FDF5F0; color: #1B4164; border-color: #1B4164; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-button-primary { background: #F45905; border-color: #F45905; color: #fff; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-button-primary:hover,
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-button-primary:focus { background: #d84d02; border-color: #d84d02; color: #fff; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-share { margin-top: 2rem; padding: 0; border: 0; gap: 1rem; }
#sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-share-service { flex: 0 0 auto; border-radius: 50%; padding: 1rem; }
@media all and (max-width: 767.9px) and (orientation: portrait) {
  #sondage .projet-sondage div#totalpoll.totalpoll-wrapper { font-size: 3.2rem; }
  #sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-content { font-size: 4rem; }
  #sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-button { font-size: 3rem; padding: 2.2rem 4rem; }
  #sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-selector-box { width: 3.6rem; height: 3.6rem; }
  #sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-votes,
  #sondage .projet-sondage div#totalpoll.totalpoll-wrapper .totalpoll-question-choices-item-votes-text { font-size: 2.6rem; }
}

/* Modules « Projet · … » dans un article (.projet-article) : neutralise les styles de titres de la colonne article
   (.o-single-article__block-right h2/h3) pour laisser les classes des blocs s'appliquer. */
.o-single-article__block-right .projet-article h2 { font-size: 4.8rem; line-height: 1.2; margin-bottom: 0; color: inherit; }
.o-single-article__block-right .projet-article h3 { font-size: 2.4rem; line-height: 1.2; margin-bottom: 0; }
@media (max-width: 767.9px) {
  .o-single-article__block-right .projet-article h2 { font-size: 6.5rem; }
  .o-single-article__block-right .projet-article h3 { font-size: 3.8rem; }
}

/* Ancres des blocs : la cible s'arrête sous le header fixe du site au lieu de passer dessous. */
#inscription, #numeros, #faq, #question, #sondage { scroll-margin-top: 8rem; }
@media (max-width: 767px) {
  #inscription, #numeros, #faq, #question, #sondage { scroll-margin-top: 11rem; }
}
