/* Plugin privacy — page de politique, liens de pied de page et bandeau de consentement.
   Couleurs reprises de la charte publique (custom.css): --custom #3e90a4,
   --custom3 #fabc02, fond de pied de page #263238. */

.privacy-page { max-width: 960px; padding-top: 8px; padding-bottom: 64px; font-size: 16px; line-height: 1.8; color: #242424; }
.privacy-page h1 { font-family: 'Montserrat', sans-serif; font-weight: 700; }
.privacy-page h2 { font-family: 'Montserrat', sans-serif; font-size: 24px; line-height: 1.4; margin-top: 0; }
.privacy-page h3 { font-family: 'Montserrat', sans-serif; font-size: 19px; line-height: 1.5; }
.privacy-page section { padding-top: 32px; scroll-margin-top: 24px; }
.privacy-page a { color: var(--custom, #3e90a4); text-decoration: underline; overflow-wrap: anywhere; }
.privacy-page a:hover { color: var(--custom3, #fabc02); }
.privacy-eyebrow { color: var(--custom, #3e90a4); font-size: 14px; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 4px; }
.privacy-intro { font-size: 18px; max-width: 760px; }
.privacy-date { color: #595959; font-size: 14px; }
.privacy-summary { display: flex; flex-wrap: wrap; gap: 12px 24px; padding: 20px 0; border-top: 1px solid #dedede; border-bottom: 1px solid #dedede; margin-top: 28px; }

.privacy-button, .privacy-button:focus, .privacy-button:hover { background: var(--custom, #3e90a4); color: #fff; border: 1px solid var(--custom, #3e90a4); padding: 10px 16px; font-size: 15px; white-space: normal; }
.privacy-button:hover { background: #33798a; border-color: #33798a; color: #fff; }

.privacy-table-wrapper { overflow-x: auto; margin-top: 24px; }
.privacy-table caption { color: #333; font-size: 15px; caption-side: top; }
.privacy-table th, .privacy-table td { min-width: 125px; }

/* Emplacement d'un contenu tiers non encore accepté (voir syncEmbeds dans privacy.js).
   Aucun gabarit n'en pose aujourd'hui: ces règles servent le jour où l'on intègre
   une carte ou une vidéo, pour que le remplacement n'ait pas à être redessiné. */
.privacy-placeholder { padding: 28px; background: #eef4f5; color: #222; text-align: center; font-size: 16px; line-height: 1.7; }
.privacy-placeholder p { margin: 0 0 16px; }
.privacy-placeholder a { color: var(--custom, #3e90a4); text-decoration: underline; }
.privacy-placeholder .privacy-button { margin-bottom: 12px; }
.privacy-external[hidden], .privacy-placeholder[hidden] { display: none !important; }

/* Liens de confidentialité du pied de page (fond sombre #263238) */
.privacy-footer-links { display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: center; padding: 4px 0 12px; }
footer .privacy-footer-links a, .privacy-footer-links button { color: #ccc; text-decoration: underline; font-size: 13px; }
footer .privacy-footer-links a:hover, .privacy-footer-links button:hover { color: #fff; }
.privacy-footer-links button { border: 0; background: transparent; padding: 0; line-height: inherit; }
.privacy-footer-links a:focus-visible, .privacy-footer-links button:focus-visible, .privacy-button:focus-visible { outline: 3px solid var(--custom3, #fabc02); outline-offset: 4px; }

/* Bandeau et panneau de préférences (vanilla-cookieconsent) */
#cc-main {
	--cc-font-family: 'Source Sans Pro', sans-serif;
	--cc-primary-color: #242424;
	--cc-btn-primary-bg: var(--custom, #3e90a4);
	--cc-btn-primary-color: #fff;
	--cc-btn-primary-border-color: var(--custom, #3e90a4);
	--cc-btn-primary-hover-bg: #33798a;
	--cc-btn-primary-hover-color: #fff;
	--cc-btn-primary-hover-border-color: #33798a;
	--cc-toggle-on-bg: var(--custom, #3e90a4);
	--cc-cookie-category-block-bg: #eef4f5;
}
#cc-main .cm, #cc-main .pm { font-size: 15px; }
#cc-main .cm__title, #cc-main .pm__title { font-family: 'Montserrat', sans-serif; }

@media (max-width: 600px) {
	.privacy-page { font-size: 15px; }
	.privacy-placeholder { padding: 24px 16px; }
}
