/* Traverse — pages, fiches et modules iCommune. Chargé après le socle et l'ambiance.
 * Les données, filtres et interactions restent ceux des plugins natifs.
 * Variables de couleur/police : réglages du Framework et palette du thème actif. */
.tr-site:not(.home){--k3-content-title-weight:700;--sl-module-title-weight:700;--k3-content-quote-weight:500}
.tr-site:not(.home) #main-page{margin:0;padding:clamp(32px,4vw,56px) 0 clamp(48px,6vw,80px)}
.tr-site:not(.home) :is(#content,#content_large){font:400 1rem/1.8 var(--police-secondaire);color:var(--couleur-noir);overflow-wrap:break-word;min-width:0}
.tr-site:not(.home) :is(#content,#content_large)>:is(h1,h2,h3,h4),
.tr-site:not(.home) :is(.entry-content,#description-fiche,.bloc-fiche)>:is(h1,h2,h3,h4),
.tr-site:not(.home) :is(#entete-fiche,#entete-listing)>:is(h1,h2,h3){font-family:var(--police);font-weight:var(--k3-content-title-weight);color:var(--couleur-principale);text-transform:none;line-height:1.2;letter-spacing:-.025em;overflow-wrap:break-word;height:auto}
.tr-site:not(.home) :is(#content,#content_large)>h1,
.tr-site:not(.home) :is(#entete-fiche,#entete-listing)>h1{font-size:clamp(2rem,4vw,3.5rem);margin:0 0 30px;padding:0}
.tr-site:not(.home) :is(#content,#content_large)>h2,
.tr-site:not(.home) :is(.entry-content,#description-fiche,.bloc-fiche)>h2{font-size:clamp(1.6rem,2.7vw,2.3rem);margin:36px 0 18px;padding:0}
.tr-site:not(.home) :is(#content,#content_large)>h3,
.tr-site:not(.home) :is(.entry-content,#description-fiche,.bloc-fiche)>h3{font-size:clamp(1.3rem,2vw,1.65rem);margin:26px 0 14px;padding:0}
.tr-site:not(.home) :is(#content,#content_large)>h4,
.tr-site:not(.home) :is(.entry-content,#description-fiche,.bloc-fiche)>h4{font-size:1.15rem;margin:22px 0 12px;padding:0}
.tr-site:not(.home) :is(#content,#content_large)>p,
.tr-site:not(.home) :is(.entry-content,#description-fiche)>p{font:inherit;line-height:1.8;margin:0 0 1.4em;padding:0;color:inherit}
.tr-site:not(.home) :is(#content,#content_large)>:is(ul,ol),
.tr-site:not(.home) :is(.entry-content,#description-fiche)>:is(ul,ol){padding:0 0 0 1.5em;margin:0 0 1.5em;display:block;width:auto}
.tr-site:not(.home) :is(#content,#content_large)>:is(ul,ol)>li,
.tr-site:not(.home) :is(.entry-content,#description-fiche)>:is(ul,ol)>li{padding:0;margin:0 0 .5em;line-height:1.8}
.tr-site:not(.home) :is(#content,#content_large)>ul>li{list-style:disc}
.tr-site:not(.home) :is(#content,#content_large)>ol>li{list-style:decimal}
.tr-site:not(.home) :is(#content,#content_large)>p a,
.tr-site:not(.home) :is(.entry-content,#description-fiche)>p a{color:var(--couleur-principale);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.tr-site:not(.home) :is(#content,#content_large) :is(img,figure,iframe){max-width:100%}
.tr-site:not(.home) :is(#content,#content_large)>img{height:auto}
.tr-site:not(.home) :is(#content,#content_large) .wp-caption{max-width:100%;height:auto}
.tr-site:not(.home) :is(#content,#content_large) :is(figcaption,.wp-caption-text){font:400 .85rem/1.6 var(--police-secondaire);color:var(--gris-fonce);padding:10px 0;margin:0}
/* Les !important neutralisent uniquement les citations Abril héritées du socle. */
.tr-site:not(.home) #la-page :is(blockquote,.wp-block-quote){background:var(--gris-tres-clair)!important;border:0!important;border-left:4px solid var(--couleur-secondaire)!important;color:var(--couleur-principale)!important;font:var(--k3-content-quote-weight) 1.35rem/1.6 var(--police)!important;margin:30px 0!important;padding:25px 30px!important;max-width:100%!important;position:static!important;height:auto!important}
.tr-site:not(.home) #la-page :is(blockquote,.wp-block-quote)::before{content:none!important}
.tr-site:not(.home) #la-page :is(blockquote,.wp-block-quote) p{font:inherit!important;line-height:1.6!important;color:inherit!important;padding:0!important;margin:0!important;text-align:left!important}
.tr-site:not(.home) #la-page :is(blockquote,.wp-block-quote) p+p{margin-top:14px!important}
.tr-site:not(.home) #la-page :is(blockquote,.wp-block-quote) cite{font:400 .9rem/1.6 var(--police-secondaire)!important;color:var(--gris-fonce)!important;border-top:1px solid var(--gris-clair)!important;padding-top:12px!important;margin:18px 0 0!important;display:block!important}
.tr-site:not(.home) :is(#content,#content_large)>table,
.tr-site:not(.home) :is(.entry-content,.wp-block-table)>table{border-collapse:collapse;width:100%;max-width:100%;table-layout:fixed;margin:24px 0;font:400 .95rem/1.6 var(--police-secondaire);color:var(--couleur-noir)}
.tr-site:not(.home) :is(#content,#content_large)>table :is(td,th),
.tr-site:not(.home) :is(.entry-content,.wp-block-table)>table :is(td,th){padding:12px;border:1px solid var(--gris-clair);text-align:left;vertical-align:top;overflow-wrap:anywhere;color:inherit}
.tr-site:not(.home) :is(#content,#content_large)>table th,
.tr-site:not(.home) :is(.entry-content,.wp-block-table)>table th{background:var(--gris-tres-clair);font-weight:650}
.tr-site:not(.home) :is(#content,#content_large) .wp-block-table{margin:24px 0;overflow:auto}
.tr-site:not(.home) :is(#content,#content_large) caption{text-align:left;font:600 1rem/1.5 var(--police-secondaire);color:var(--couleur-principale);padding:0 0 12px}
/* Navigation locale : aucun effet sur le moteur du menu principal. */
.tr-site:not(.home) #gauche :is(ul,#menu_pages){list-style:none;margin:0;padding:0;background:transparent}
.tr-site:not(.home) #gauche li{list-style:none;padding:0;margin:0}
.tr-site:not(.home) #gauche a{display:block;min-height:44px;padding:11px 14px;border:0;border-bottom:1px solid var(--gris-clair);background:transparent;color:var(--couleur-principale);font:500 .95rem/1.5 var(--police-secondaire);text-decoration:none}
.tr-site:not(.home) #gauche ul ul{padding-left:12px}
.tr-site:not(.home) #gauche a:is(:hover,:focus-visible),.tr-site:not(.home) #gauche .current_page_item>a{background:var(--gris-tres-clair);color:var(--couleur-principale)}
/* Listes d'actualités/agenda : format 4:3 fixe, titre et date dans le flux. */
.tr-site:not(.home) #la-page .sl-list-card{padding:26px 0!important;align-items:flex-start;min-width:0}
.tr-site:not(.home) #la-page .sl-list-image{flex:0 0 220px;width:220px;aspect-ratio:4/3;height:auto;min-width:0;border-radius:0;overflow:hidden}
.tr-site:not(.home) #la-page .sl-list-image img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0}
.tr-site:not(.home) #la-page .sl-list-card h2{font:var(--k3-content-title-weight) clamp(1.3rem,2vw,1.6rem)/1.3 var(--police);margin:8px 0 14px!important;color:var(--couleur-principale)}
.tr-site:not(.home) #la-page .sl-list-card h2 a{font:inherit;color:inherit;text-decoration:none}
.tr-site:not(.home) #la-page .sl-list-card :is(time,.sl-event-date){font:600 .82rem/1.6 var(--police-secondaire)!important;position:static!important;display:block;float:none;transform:none;max-width:none;width:auto;grid-area:auto;text-transform:none;color:var(--couleur-principale)!important;margin:0 0 8px!important;overflow-wrap:normal}
.tr-site:not(.home) #la-page .sl-list-card p{font:400 .95rem/1.75 var(--police-secondaire);margin:0 0 12px;color:var(--couleur-noir)}
.tr-site:not(.home) #la-page .sl-list-card .sl-kicker{font-size:.68rem!important;line-height:1.6}
.tr-site:not(.home) :is(#entete-fiche,#entete-listing){display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px 24px;width:100%;margin:0 0 24px;padding:0}
.tr-site:not(.home) :is(#entete-fiche,#entete-listing)>h1{flex:1 1 300px;min-width:0;margin:0}
.tr-site:not(.home) #date-manif-fiche{display:flex;gap:10px;flex-wrap:wrap;padding:0;list-style:none}
.tr-site:not(.home) #date-manif-fiche li{font:600 1rem/1.6 var(--police-secondaire);color:var(--couleur-principale);background:var(--gris-tres-clair);border:1px solid var(--gris-clair);padding:12px 16px;margin:0;border-radius:0}
.tr-site:not(.home) .bloc-fiche{font-family:var(--police-secondaire);color:var(--couleur-noir)}
.tr-site:not(.home) .bloc-fiche :is(h2,h3){font-family:var(--police);color:var(--couleur-principale);font-weight:var(--k3-content-title-weight)}
/* Navigation, pagination et recherche : cibles tactiles, libellés lisibles. */
.tr-site:not(.home) #la-page :is(.listing-pagination,.krea3-pagination,.nav-results,.nav-actus,.nav-fiche){display:flex;flex-wrap:wrap;align-items:center;gap:8px;list-style:none;padding:0;margin:22px 0}
.tr-site:not(.home) #la-page :is(.nav-results,.nav-actus,.nav-fiche)>li{margin:0;padding:0;list-style:none}
.tr-site:not(.home) #la-page :is(.listing-pagination,.krea3-pagination,.nav-results,.nav-actus,.nav-fiche) :is(a,button,.page-numbers){display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:10px 14px;border:1px solid var(--gris-clair);border-radius:0;font:500 .9rem/1.4 var(--police-secondaire);color:var(--couleur-principale);background:var(--couleur-blanc);text-decoration:none;gap:10px;height:auto}
.tr-site:not(.home) #la-page :is(.listing-pagination,.krea3-pagination,.nav-results,.nav-actus,.nav-fiche) :is(a,button):is(:hover,:focus-visible),
.tr-site:not(.home) #la-page :is(.listing-pagination,.krea3-pagination) .current{color:var(--couleur-blanc);background:var(--couleur-principale);border-color:var(--couleur-principale)}
.tr-site:not(.home) #ligne-outils{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:0 0 24px;margin:0 0 24px;border-bottom:1px solid var(--gris-clair)}
.tr-site:not(.home) #ligne-outils:empty{display:none}
.tr-site:not(.home) #share_buttons :is(a,a i,a .svg-inline--fa){color:var(--couleur-principale)!important}
/* Formulaires natifs Krea3 et Gravity Forms : également sur les pages larges. */
.tr-site:not(.home) #la-page .krea3_formulaire{background:var(--couleur-blanc)!important;border:1px solid var(--gris-clair)!important;box-shadow:none!important;color:var(--couleur-noir)!important;max-width:100%!important;margin:28px 0!important;padding:clamp(22px,4vw,36px)!important}
.tr-site:not(.home) #la-page .krea3_formulaire :is(label,legend.obligatoire){font-family:var(--police-secondaire)!important;color:var(--couleur-noir)!important;font-weight:600!important}
.tr-site:not(.home) #la-page :is(.krea3_formulaire,.gform_wrapper,.visual-form-builder) :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=hidden]),select,textarea){width:100%;max-width:100%;min-width:0;min-height:48px;border:1px solid var(--gris-fonce)!important;border-radius:0!important;padding:12px 14px;box-shadow:none!important;color:var(--couleur-noir)!important;background:var(--couleur-blanc)!important;font:400 1rem/1.5 var(--police-secondaire)!important}
.tr-site:not(.home) #la-page :is(.krea3_formulaire,.gform_wrapper,.visual-form-builder) textarea{min-height:170px;resize:vertical}
.tr-site:not(.home) #la-page :is(.krea3_formulaire,.gform_wrapper,.visual-form-builder) :is(input,select,textarea):focus-visible{outline:3px solid var(--couleur-principale)!important;outline-offset:3px!important;border-color:var(--couleur-principale)!important;box-shadow:none!important}
.tr-site:not(.home) #la-page :is(.krea3_formulaire,.gform_wrapper,.visual-form-builder) ::placeholder{color:var(--gris-fonce)!important;opacity:1}
.tr-site:not(.home) #la-page .krea3_formulaire :is(.phrase_form_contact_rgpd,p:has(input#rgpd)){background:var(--gris-tres-clair)!important;border-color:var(--gris-clair)!important;color:var(--couleur-noir)!important}
.tr-site:not(.home) #la-page .krea3_formulaire p:has(input#rgpd){border-left-color:var(--couleur-principale)!important}
.tr-site:not(.home) #la-page :is(.descriptioncontact,.gfield_description){white-space:normal!important;width:auto!important;max-width:100%!important;float:none!important;font:400 .85rem/1.6 var(--police-secondaire)!important;color:var(--gris-fonce)!important;margin:8px 0 0!important;padding:0!important}
.tr-site:not(.home) #la-page .ginput_container_consent{display:grid!important;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px}
.tr-site:not(.home) #la-page .ginput_container_consent input{width:20px!important;height:20px!important;min-height:20px!important;margin:4px 0 0!important;padding:0;accent-color:var(--couleur-principale)}
.tr-site:not(.home) #la-page .ginput_container_consent label{min-width:0;float:none;max-width:100%;width:auto;font:400 1rem/1.6 var(--police-secondaire)}
.tr-site:not(.home) #la-page .gfield_description{grid-column:1/-1}
.tr-site:not(.home) #la-page :is(.krea3_formulaire,.gform_wrapper,.visual-form-builder) :is(input[type=submit],button[type=submit]){min-height:48px;border:1px solid var(--couleur-principale)!important;border-radius:0!important;background:var(--couleur-principale)!important;color:var(--couleur-blanc)!important;font:600 1rem/1.4 var(--police-secondaire)!important;padding:12px 22px!important}
/* Les modules gardent leurs classes, tailles de cartes, erreurs et comportements. */
.tr-site:not(.home) :is(.k3-agenda-modern-pro,.k3-annuaire-modern-pro,.krea3-deliberations,.krea3-container,.krea3-filters,.krea3-affichage-legal,.krea3-affichage-legal-single,.krea3-kiosque,.krea3-kiosque-page,.krea3-kiosque-single){font-family:var(--police-secondaire);color:var(--couleur-noir)}
.tr-site:not(.home) :is(.k3-agenda-modern-pro,.k3-annuaire-modern-pro,.krea3-deliberations,.krea3-container,.krea3-kiosque-page,.krea3-kiosque-single) :is(h2,h3){font-family:var(--police);font-weight:var(--k3-content-title-weight);color:var(--couleur-principale)}
.tr-site:not(.home) #la-page :focus-visible{outline:3px solid var(--couleur-principale);outline-offset:3px}
@media(max-width:800px){.tr-site:not(.home) #la-page{display:block;width:calc(100% - 40px)}.tr-site:not(.home) #la-page #gauche{width:100%;margin:0 0 30px}.tr-site:not(.home) #gauche{border:1px solid var(--gris-clair)}.tr-site:not(.home) #la-page .sl-list-image{flex-basis:180px;width:180px}}
@media(max-width:580px){.tr-site:not(.home) #la-page{width:calc(100% - 36px)}.tr-site:not(.home) #la-page .sl-list-card{flex-direction:column;gap:18px}.tr-site:not(.home) #la-page .sl-list-image{flex-basis:auto;width:100%;height:auto}.tr-site:not(.home) #la-page :is(blockquote,.wp-block-quote){padding:22px!important;font-size:1.2rem!important}.tr-site:not(.home) :is(#content,#content_large) .alignleft,.tr-site:not(.home) :is(#content,#content_large) .alignright{float:none;display:block;margin:20px 0;max-width:100%}.tr-site:not(.home) #la-page .nav-fiche .text-nav{max-width:230px;overflow-wrap:anywhere}}
@media print{.tr-site:not(.home) #image-header-page,.tr-site:not(.home) #gauche{display:none}.tr-site:not(.home) #la-page{display:block;width:100%}.tr-site:not(.home) #main-page{padding:0}}

.tr-site:not(.home) :is(#content,#content_large)>:is(ul,ol) a,.tr-site:not(.home) :is(.entry-content,#description-fiche)>:is(ul,ol) a{text-decoration:underline;text-underline-offset:4px;color:var(--couleur-principale)}

/* Krea3FormBuilder réel : groupes/labels conservés, aucun changement de validation. */
.tr-site:not(.home) #la-page form.visual-form-builder{font:400 1rem/1.7 var(--police-secondaire);color:var(--couleur-noir);background:var(--couleur-blanc);border:1px solid var(--gris-clair);padding:clamp(20px,3vw,32px);margin:28px 0;max-width:100%}
.tr-site:not(.home) #la-page .visual-form-builder fieldset{background:transparent;border:0;border-radius:0;margin:0 0 20px;padding:0;min-width:0}
.tr-site:not(.home) #la-page .visual-form-builder .legend{color:var(--couleur-principale);border:0;font:600 1.2rem/1.4 var(--police-secondaire);margin:0 0 20px;padding:0}
.tr-site:not(.home) #la-page .visual-form-builder .section{font:inherit;list-style:none;padding:0;margin:0}
.tr-site:not(.home) #la-page .visual-form-builder li.item{list-style:none;width:100%;padding:0;margin:0 0 22px;float:none;min-width:0}
.tr-site:not(.home) #la-page .visual-form-builder :is(label:not(.screen-reader-text),legend.desc){float:none;position:static;font:500 1rem/1.6 var(--police-secondaire);color:var(--couleur-noir);padding:0;margin:0 0 8px;width:auto;max-width:100%}
.tr-site:not(.home) #la-page .visual-form-builder .vfb-choice-list{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.tr-site:not(.home) #la-page .visual-form-builder .vfb-choice-item{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;float:none;width:100%;min-width:0}
.tr-site:not(.home) #la-page .visual-form-builder :is(input[type=checkbox],input[type=radio]){display:block;width:20px;height:20px;min-height:20px;float:none;margin:4px 0 0;padding:0;accent-color:var(--couleur-principale)}
.tr-site:not(.home) #la-page .visual-form-builder label.choice{font-weight:400;margin:0;padding:0;width:auto;line-height:1.6}
.tr-site:not(.home) #la-page .visual-form-builder .vfb-help{font:400 .85rem/1.6 var(--police-secondaire);color:var(--gris-fonce);margin:8px 0 0;float:none;width:auto;clear:both}
.tr-site:not(.home) #la-page .visual-form-builder :is(.vfb-instructions,.item-instructions){background:var(--gris-tres-clair);border:1px solid var(--gris-clair);border-radius:0;color:var(--couleur-noir);padding:18px}
.tr-site:not(.home) #la-page .visual-form-builder .vfb-address-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tr-site:not(.home) #la-page .visual-form-builder .vfb-address-grid>span{float:none;min-width:0;width:auto}
.tr-site:not(.home) #la-page .visual-form-builder .vfb-address-grid>.full{grid-column:1/-1}
.tr-site:not(.home) #la-page :is(.visual-form-builder,.krea3_formulaire,.gform_wrapper) :is(input,textarea,select):is(.error,[aria-invalid=true]){border-color:#b00020!important}
.tr-site:not(.home) #la-page .visual-form-builder label.error{font:600 .9rem/1.5 var(--police-secondaire);color:#b00020;margin:8px 0 0;display:block}
@media(max-width:580px){.tr-site:not(.home) #la-page .visual-form-builder .vfb-address-grid{grid-template-columns:minmax(0,1fr)}}

/* Service Public : les profils restent cliquables et lisibles, même non sélectionnés. */
.tr-site:not(.home) #la-page #menu-top-guide-demarches a.light-profil-comarquage{opacity:1}
.tr-site:not(.home) #la-page :is(.texte-OuSAdresser,.source-en-savoir-plus-N){color:var(--gris-fonce)}
/* Le lien PDF légal garde son contraste face à l'ancienne règle générale #content a. */
.tr-site:not(.home) #la-page :is(#content,#content_large) a.krea3-affichage-legal-button{color:var(--couleur-blanc);background:var(--couleur-principale);border-color:var(--couleur-principale)}
.tr-site:not(.home) #la-page :is(#content,#content_large) a.krea3-affichage-legal-button:is(:hover,:focus-visible){color:var(--couleur-blanc);background:var(--sl-teal);border-color:var(--sl-teal)}

/* Les états de navigation hérités utilisent !important : neutralisation ciblée. */
.tr-site:not(.home) #la-page #entete-fiche :is(.nav.nav-fiche,.nav.nav-actus) li a{background:var(--couleur-blanc)!important;border-color:var(--gris-fonce)!important;color:var(--couleur-principale)!important;box-shadow:none!important;transform:none!important}
.tr-site:not(.home) #la-page #entete-fiche :is(.nav.nav-fiche,.nav.nav-actus) li a:is(:hover,:focus){background:var(--couleur-principale)!important;border-color:var(--couleur-principale)!important;color:var(--couleur-blanc)!important;transform:none!important}
.tr-site:not(.home) #la-page :is(#entete-fiche .nav.nav-fiche,#entete-fiche .nav.nav-actus,.page-resultats-recherche .nav-results) a:focus-visible{outline:3px solid var(--couleur-principale)!important;outline-offset:3px!important;box-shadow:0 0 0 3px var(--couleur-blanc)!important}
.tr-site:not(.home) #la-page .page-resultats-recherche .nav-results a:is(:hover,:focus){background:var(--couleur-principale)!important;border-color:var(--couleur-principale)!important;color:var(--couleur-blanc)!important}
.tr-site:not(.home) #la-page .page-resultats-recherche #searchform{background:var(--gris-tres-clair)!important;border-color:var(--gris-clair)!important}
.tr-site:not(.home) #la-page .page-resultats-recherche #searchform input:not([type=submit]){border-color:var(--gris-fonce)!important}
.tr-site:not(.home) #la-page .page-resultats-recherche #searchform input:focus-visible{outline:3px solid var(--couleur-principale)!important;outline-offset:3px!important}
.tr-site:not(.home) #la-page #date-manif-fiche li{background:var(--gris-tres-clair)!important;border-color:var(--gris-clair)!important;border-left-color:var(--couleur-secondaire)!important;color:var(--couleur-principale)!important;box-shadow:none!important}
.tr-site:not(.home) #la-page #date-manif-fiche li::before{background:var(--couleur-principale)!important;color:var(--couleur-blanc)!important}

.tr-site:not(.home) #la-page .gform_wrapper :is(.gfield_validation_message,.gfield_error .validation_message){color:#b00020!important}
