/* Municipal editorial components; separate from the preserved homepage composition. */
.tsg2026{--ed-purple:var(--tsg-primary,#3b1e7b);--ed-green:#8faf74;--ed-orange:#da4816;--ed-ink:#2d2250;max-width:1640px;width:calc(100% - 64px);margin:0 auto 76px;color:var(--ed-ink)}
.tsg2026 *{box-sizing:border-box}.tsg2026 [hidden]{display:none!important}
body #tsg-main#tsg-main .tsg2026 :is(h1,h2,h3,p,dt,dd,figcaption){text-align:left!important;text-align-last:auto!important;hyphens:none!important;overflow-wrap:anywhere}
.tsg2026 :is(h1,h2,h3){color:var(--ed-purple);line-height:1.16;letter-spacing:-.035em}
.tsg2026 h1{font-size:clamp(32px,4.4vw,64px);margin:16px 0 22px}.tsg2026 h2{font-size:clamp(25px,2.6vw,38px);margin:14px 0 20px}.tsg2026 h3{font-size:24px}
.tsg2026 p{font-size:17px;line-height:1.85;margin:0 0 18px}.tsg2026-kicker{display:block;color:var(--ed-purple);font-size:12px;font-weight:800;letter-spacing:.12em;line-height:1.6}
.tsg2026-introduction{padding:38px 0 36px;max-width:1120px}.tsg2026-introduction p:last-child{margin-bottom:0}
.tsg2026-two,.tsg2026-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.tsg2026-card{position:relative;min-width:0;padding:38px;border-radius:28px;background:linear-gradient(135deg,#fff,#f3f3f3);border:1px solid #e8e2f1;box-shadow:0 18px 45px #2d22500c;display:flex;flex-direction:column;align-items:flex-start;transition:transform .25s,box-shadow .25s}
.tsg2026-card:nth-child(even){background:linear-gradient(135deg,#fff,#edf3e8)}.tsg2026-card--wide{grid-column:1/-1}.tsg2026-card:hover{transform:translateY(-3px);box-shadow:0 22px 48px #2d225013}
body #tsg-main#tsg-main .tsg2026 .tsg2026-button,.tsg2026-source-access .tsg2026-button{display:inline-flex!important;align-items:center;justify-content:center;gap:14px;min-height:50px;max-width:100%;padding:14px 21px;border:1px solid transparent;border-radius:15px;background:#3b1e7b!important;color:#fff!important;text-align:center!important;text-align-last:auto!important;text-decoration:none!important;font-size:14px;font-weight:700;line-height:1.55;box-shadow:0 7px 18px #3b1e7b1a;transition:transform .2s,box-shadow .2s}
.tsg2026-card>.tsg2026-button{margin-top:auto}.tsg2026-button:hover{transform:translateY(-2px);box-shadow:0 10px 22px #3b1e7b30}.tsg2026-button span[aria-hidden]{font-size:20px}
.tsg2026 a:focus-visible,.tsg2026 button:focus-visible,.tsg2026-slider:focus-visible,.tsg2026-source-access a:focus-visible{outline:3px solid var(--ed-orange,#da4816);outline-offset:4px}
body #tsg-main#tsg-main .tsg2026 .tsg2026-text-link{display:block;margin-top:18px;color:#3b1e7b!important;font-weight:700;text-decoration:underline;text-underline-offset:4px;font-size:15px}
.tsg2026-step{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#3b1e7b;background:#eae4f4;font-size:13px;font-weight:800;margin-bottom:10px}.tsg2026-sources{font-size:13px!important;margin-top:28px!important;color:#5b536e}
.tsg2026-link-list{display:grid;gap:13px;width:100%;margin-top:auto}.tsg2026-link-list a{color:#3b1e7b;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.tsg2026-map{margin-top:60px}.tsg2026-map .tsg-container{max-width:100%;width:100%;padding:0}
.tsg2026-projects{display:grid;gap:40px}.tsg2026-project{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0;overflow:hidden;background:#fff;border:1px solid #e8e2f1;border-radius:30px;box-shadow:0 18px 55px #2d22500c}
.tsg2026-project:nth-child(even)>figure{order:2}.tsg2026-project figure{margin:0;background:linear-gradient(140deg,#eee8f7,#e0edd4);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:420px;padding:24px}
.tsg2026-project figure img{width:100%;height:320px;object-fit:contain}.tsg2026-project figcaption{font-size:11px;color:#514566;margin:15px 5px 0;text-align:center!important;line-height:1.6}
.tsg2026-project-copy{padding:42px}.tsg2026-status{display:inline-block;max-width:100%;font-size:12px;font-weight:800;line-height:1.5;padding:8px 12px;border-radius:10px;background:#edf3e8;color:#3d5731;margin-bottom:20px}
.tsg2026-project dl{margin:22px 0 0;display:grid;gap:13px}.tsg2026-project dl>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:12px;border-top:1px solid #eee9f5;padding-top:12px}
.tsg2026-project dt{font-size:12px;font-weight:800;color:#3b1e7b}.tsg2026-project dd{font-size:13px;line-height:1.65;margin:0;color:#5b536e}
.tsg2026-village-heading{text-align:center;padding:44px 0 25px}body #tsg-main#tsg-main .tsg2026-village-heading :is(h1,p){text-align:center!important}.tsg2026-village-heading h1{margin:12px 0}.tsg2026-slider{position:relative;border-radius:30px;overflow:hidden;background:#3b1e7b;box-shadow:0 25px 65px #2d22501a}.tsg2026-slide{position:relative;min-height:450px;background:#3b1e7b;isolation:isolate}.tsg2026-village-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.tsg2026-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#1d1134e6,#1d113440 55%,#1d113408);z-index:-1;pointer-events:none}
.tsg2026-village-caption{padding:170px 48px 68px;max-width:920px;color:#fff}.tsg2026-village-caption>span{font-size:12px;font-weight:700;letter-spacing:.14em}.tsg2026-village-caption h2{color:#fff!important;font-size:clamp(38px,5vw,66px);margin:14px 0}.tsg2026-village-caption p{font-size:17px;margin:0 0 7px;color:#fff}.tsg2026-village-caption small{display:block;font-size:12px;line-height:1.7;max-width:700px}.tsg2026-photo-description{font-size:13px!important;margin-top:12px!important}.tsg2026-credit{position:absolute;bottom:16px;left:48px;right:24px;font-size:10px;line-height:1.7;color:#fff}.tsg2026-credit a{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.tsg2026-slider-controls{display:flex;align-items:center;gap:12px;padding:18px 22px;background:#fff}.tsg2026-slider-controls>button{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;padding:0;background:#3b1e7b;color:#fff;border:0;border-radius:14px;font-size:22px}.tsg2026-slider-tabs{display:flex;flex:1;justify-content:center;gap:8px;flex-wrap:wrap}.tsg2026-slider-tabs button{border:1px solid #e2d9ed;border-radius:12px;padding:10px 16px;background:#fff;color:#3b1e7b;font-weight:700;min-height:44px;font-size:13px;cursor:pointer}.tsg2026-slider-tabs button[aria-pressed=true]{background:#eee8f7;border-color:#3b1e7b}.tsg2026-slide.is-entering{animation:tsg2026-appear .36s ease-out}@keyframes tsg2026-appear{from{opacity:.35}to{opacity:1}}
.tsg2026-story{padding:48px 0 0}.tsg2026-story>header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}.tsg2026-story>header figure{margin:0;border-radius:26px;overflow:hidden}.tsg2026-story>header img{display:block;width:100%;height:400px;object-fit:cover}.tsg2026-story .tsg2026-lead{font-size:22px;line-height:1.65;max-width:1120px;margin:38px 0 26px}.tsg2026-event-meta{display:flex;flex-wrap:wrap;gap:30px;padding:23px 0;margin:0 0 26px;border-block:1px solid #e8e2f1}.tsg2026-event-meta dt{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#5b536e}.tsg2026-event-meta dd{margin:7px 0 0;font-weight:700;font-size:15px;color:#3b1e7b}.tsg2026-story-body{max-width:1120px;margin:38px 0 0}.tsg2026-story-body h2{font-size:28px;margin-top:36px}
.tsg2026-source-access{padding:28px;border-radius:22px;margin:26px 0;background:#f3f3f3;border:1px solid #e8e2f1}.tsg2026-source-access h2{font-size:23px!important;margin:0 0 12px!important;color:#3b1e7b}.tsg2026-source-access p{color:#514566;font-size:15px!important;line-height:1.7}.tsg2026-source-access>div{display:flex;gap:12px;flex-wrap:wrap}.tsg2026-election-picture{width:112px!important;height:84px!important;object-fit:contain!important;flex:0 0 112px;filter:none!important;box-shadow:none!important;border:0!important;border-radius:0!important}
/* Resolve the white icon/white circle collision and use the site's actual orange. */
body #tsg-main#tsg-main .tsg-actes__category.is-arretes{--act:#da4816!important;background:#fff1e9!important;color:#3b1e7b!important;border-color:#efc8b5!important}
body #tsg-main#tsg-main .tsg-actes__category.is-arretes :is(strong,small){color:#3b1e7b!important}
body #tsg-main#tsg-main .tsg-actes__category .tsg-actes__category-icon{background:#fff!important;color:var(--act,#3b1e7b)!important}
body #tsg-main#tsg-main .tsg-actes__category .tsg-actes__category-icon svg{stroke:currentColor!important;fill:none!important}
body #tsg-main#tsg-main .tsg-actes__category .tsg-actes__category-arrow{display:grid!important;place-items:center!important;background:#fff!important;color:#3b1e7b!important;opacity:1!important;border:1px solid #e8e2f1!important}
body #tsg-main#tsg-main .tsg-acte-row.is-arretes{--act:#da4816;border-left:4px solid #da4816}
.tsg2026-story>header figcaption{font-size:11px;line-height:1.6;padding:12px 16px;background:#f3f3f3;color:#514566}
.tsg2026-story>header figcaption a{color:#3b1e7b;text-decoration:underline}
body #tsg-main#tsg-main .tsg2026 .tsg2026-village-photo{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;max-width:none!important;object-fit:cover!important;border-radius:0!important;margin:0!important}
@media(max-width:1100px){body.tsg-editorial-2026 .tsg-universal-header .tsg-universal-header__content p{text-align:left!important;text-align-last:auto!important;hyphens:none!important;word-spacing:normal!important}}
@media(max-width:1100px){body #tsg-main#tsg-main .tsg-actes__hero-copy p{text-align:left!important;text-align-last:auto!important;hyphens:none!important;word-spacing:normal!important}}
.tsg2026-document-fallback{margin:30px 0 60px}.tsg2026-document-fallback h2{font-size:26px!important;color:#3b1e7b}.tsg2026-document-fallback>p{font-size:16px;line-height:1.75;color:#514566}.tsg2026-document-fallback a.tsg-actes__category{text-decoration:none!important}
.tsg2026-slides{touch-action:pan-y pinch-zoom}
/* Desaturated purple derived from existing primary + muted text; all footer areas share it. */
body.tsg-site-shell footer.tsg-footer.tsg-footer{background:var(--tsg-footer-bg,#4f3c7c)!important;background-image:none!important;color:#fff!important;border-color:#ffffff38!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer :is(h2,h3,p,small,a,span,strong,label){color:#fff!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer :is(.tsg-footer__main,.tsg-footer__bottom,.tsg-footer__bottom-inner){background:transparent!important;background-image:none!important;border-color:#ffffff38!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer :is(a:hover,a:focus-visible){color:#fff!important;text-decoration:underline!important;text-underline-offset:4px}
body.tsg-site-shell footer.tsg-footer.tsg-footer :is(.tsg-social-row a,.tsg-footer__section-kicker){background:#ffffff12!important;border-color:#ffffff55!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer .tsg-newsletter-cta{background:transparent!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer .tsg-newsletter-cta__shell{background:#ffffff12!important;border:1px solid #ffffff38!important;box-shadow:none!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer .tsg-newsletter-cta__field{background:#fff!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer .tsg-newsletter-cta__field input{background:#fff!important;color:#2d2250!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer .tsg-newsletter-cta__field button{background:#3b1e7b!important;color:#fff!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer .tsg-newsletter-cta__form :is(label,small){color:#3b1e7b!important;opacity:1!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer :is(.tsg-footer__credits,.tsg-footer__bottom-data){font-size:12px!important;opacity:1!important;line-height:1.7!important}
@media(min-width:1100px){body #tsg-main#tsg-main .tsg2026 :is(.tsg2026-story-body,.tsg2026-project-copy) p{text-align:justify!important;text-justify:inter-word;hyphens:auto!important}}
@media(max-width:1100px){.tsg2026{width:calc(100% - 40px)}.tsg2026-project-copy{padding:30px}.tsg2026-project dl>div{grid-template-columns:1fr;gap:4px}.tsg2026-story>header{gap:26px}.tsg2026-story>header img{height:330px}.tsg2026-card{padding:28px}.tsg2026-slider-tabs button{padding-inline:12px}}
@media(max-width:767px){.tsg2026{width:calc(100% - 28px);margin-bottom:42px}.tsg2026-two,.tsg2026-steps,.tsg2026-project,.tsg2026-story>header{grid-template-columns:1fr}.tsg2026-project:nth-child(even)>figure{order:0}.tsg2026-project figure{min-height:240px;padding:18px}.tsg2026-project figure img{height:210px}.tsg2026-project-copy{padding:26px}.tsg2026-card{padding:26px;border-radius:22px}.tsg2026 p{font-size:16px;line-height:1.75}.tsg2026-village-heading{padding-top:28px}.tsg2026-slide{min-height:420px}.tsg2026-village-caption{padding:110px 24px 100px}.tsg2026-credit{left:24px;bottom:18px;right:24px}.tsg2026-slider-controls{gap:8px;padding:14px 10px;align-items:flex-start}.tsg2026-slider-controls>button{flex-basis:40px;width:40px;height:44px}.tsg2026-slider-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.tsg2026-slider-tabs button{padding:9px 7px;font-size:11px}.tsg2026-story{padding-top:26px}.tsg2026-story>header img{height:auto;max-height:340px}.tsg2026-story .tsg2026-lead{font-size:19px;margin-top:26px}.tsg2026-event-meta{gap:18px}.tsg2026-source-access{padding:22px}.tsg2026-source-access>div{flex-direction:column}.tsg2026-source-access a{width:100%}.tsg2026-card--wide{grid-column:auto}body.tsg-site-shell footer.tsg-footer.tsg-footer .tsg-footer__main{grid-template-columns:1fr!important;gap:28px!important}body.tsg-site-shell footer.tsg-footer.tsg-footer .tsg-footer__bottom-inner{flex-direction:column!important;align-items:flex-start!important}}
@media(prefers-reduced-motion:reduce){.tsg2026 *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.tsg2026-card:hover{transform:none}}
/* The photography opens the page; its H1 remains available to assistive technology. */
.tsg2026-villages{margin-top:24px}.tsg2026-slides{display:grid;overflow:hidden;isolation:isolate}
.tsg2026-slides>.tsg2026-slide{grid-area:1/1;min-width:0;overflow:hidden}
.tsg2026-slide.is-current{z-index:2}.tsg2026-slide.is-leaving{z-index:1}
.tsg2026-slide.is-entering{animation:tsg2026-slide-in .8s cubic-bezier(.22,.61,.36,1) both}
.tsg2026-slide.is-leaving{animation:tsg2026-slide-out .8s cubic-bezier(.22,.61,.36,1) both}
.tsg2026-slider.is-reverse .is-entering{animation-name:tsg2026-slide-in-back}
.tsg2026-slider.is-reverse .is-leaving{animation-name:tsg2026-slide-out-back}
.tsg2026-slide.is-visible .tsg2026-village-photo{animation:tsg2026-ken-burns 9s linear both;transform-origin:50% 50%;will-change:transform}
.tsg2026-slider.is-paused .tsg2026-village-photo{animation-play-state:paused}
.tsg2026-slider-controls [data-tsg-village-toggle]{font-size:17px;flex-basis:44px;width:44px}
@keyframes tsg2026-slide-in{from{transform:translate3d(100%,0,0)}to{transform:translate3d(0,0,0)}}
@keyframes tsg2026-slide-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(-100%,0,0)}}
@keyframes tsg2026-slide-in-back{from{transform:translate3d(-100%,0,0)}to{transform:translate3d(0,0,0)}}
@keyframes tsg2026-slide-out-back{from{transform:translate3d(0,0,0)}to{transform:translate3d(100%,0,0)}}
@keyframes tsg2026-ken-burns{from{transform:scale(1.075) translate3d(-.5%,-.25%,0)}to{transform:scale(1.015) translate3d(.5%,.25%,0)}}
@media(max-width:767px){.tsg2026-villages{margin-top:14px}.tsg2026-slider-controls{gap:6px;padding-inline:8px}.tsg2026-slider-controls>button{flex-basis:36px;width:36px}.tsg2026-slider-controls [data-tsg-village-toggle]{flex-basis:36px;width:36px}.tsg2026-slider-tabs{min-width:0}.tsg2026-slider-tabs button{font-size:10px;padding-inline:5px}}
@media(prefers-reduced-motion:reduce){.tsg2026-villages .tsg2026-slide,.tsg2026-villages .tsg2026-village-photo{animation:none!important;transform:none!important;will-change:auto!important}}

/* Footer labels follow the longest text in their own column, rather than the grid track. */
body.tsg-site-shell footer.tsg-footer.tsg-footer :is(.tsg-footer__essentials,.tsg-footer__accessibility,.tsg-footer__info){width:max-content!important;max-width:100%!important;justify-self:start!important}
body.tsg-site-shell footer.tsg-footer.tsg-footer :is(.tsg-footer__essentials,.tsg-footer__accessibility,.tsg-footer__info)>.tsg-footer__section-kicker{display:block!important;align-self:stretch!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}

/* A slightly shorter navigation header; retain existing type and control sizes. */
body.tsg-site-shell header.tsg-header .tsg-header__inner{height:98px!important;min-height:0!important}
body.tsg-site-shell header.tsg-header .tsg-brand img{width:52px!important;max-height:72px!important}
@media(min-width:1121px){body.tsg-site-shell header.tsg-header .tsg-nav{height:100%!important;align-self:stretch!important}body.tsg-site-shell header.tsg-header .tsg-nav__item{height:100%!important;min-height:0!important}}
@media(max-width:1120px){body.tsg-site-shell header.tsg-header .tsg-header__inner{height:88px!important}body.tsg-site-shell header.tsg-header .tsg-brand img{width:48px!important;max-height:66px!important}}
@media(max-width:720px){body.tsg-site-shell header.tsg-header .tsg-header__inner{height:84px!important}}

/* A little breathing room and softer corners on all four footer labels. */
body.tsg-site-shell footer.tsg-footer.tsg-footer .tsg-footer__section-kicker{padding:2px 8px!important;border-radius:6px!important;box-sizing:border-box!important}
/* Lighter secondary headings and slightly smaller news titles on the homepage only. */
body.tsg-layout-home #tsg-main h2{font-weight:600!important}
body.tsg-layout-home #tsg-main .tsg-showcase__heading h2{font-size:clamp(27px,2.15vw,38px)!important}
body.tsg-layout-home #tsg-main .tsg-showcase .tsg-showcase-card .tsg-showcase-card__meta p{font-weight:500!important}
body.tsg-layout-home #tsg-main .tsg-showcase-card__meta h3{font-size:clamp(19px,1.5vw,25px)!important;font-weight:600!important}
body.tsg-layout-home #tsg-main .tsg-showcase-card:not(.is-active) .tsg-showcase-card__meta h3{font-size:17px!important}

/* Vivre à Tsingoni: restore the three equal cards shown in the approved reference. */
.tsg2026--villages .tsg2026-content{padding-top:30px}
@media(min-width:851px){body.tsg-relief-page #tsg-main .tsg2026--villages .tsg-relief-editorial .tsg-relief-bento{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Source-page dates accompany links to official documents. */
.tsg-actes .tsg-actes__source-note{margin:0 0 24px;font-size:13px;line-height:1.75;color:#655c70}.tsg-actes .tsg-actes__source-note a{color:#3b1e7b;text-decoration:underline;text-underline-offset:3px}
body.tsg-site-shell #tsg-main .tsg-actes .tsg-acte-row__titleline h3{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;display:block!important;-webkit-line-clamp:unset!important;overflow-wrap:anywhere}
@media(max-width:600px){body.tsg-site-shell #tsg-main .tsg-actes .tsg-actes__pagination{max-width:100%;flex-wrap:wrap!important;gap:6px!important}body.tsg-site-shell #tsg-main .tsg-actes .tsg-actes__pagination button{flex:0 0 40px!important;width:40px!important;min-width:40px!important;min-height:44px;padding:0!important}}

/* R26 — Active document family drives the complete library palette.
   Native aria-pressed state also covers keyboard selection and filter reset. */
body #tsg-main#tsg-main .tsg-actes--library{--library-accent:#482383;--library-ink:color-mix(in srgb,var(--library-accent) 85%,#000);--library-fill:color-mix(in srgb,var(--library-accent) 94%,#000);--library-soft:color-mix(in srgb,var(--library-accent) 7%,#fff);--library-wash:color-mix(in srgb,var(--library-accent) 2.5%,#fff);--library-line:color-mix(in srgb,var(--library-accent) 19%,#fff);background:linear-gradient(180deg,#fff 70%,var(--library-wash))!important}
body #tsg-main#tsg-main .tsg-actes--library:has(.tsg-actes__category.is-arretes[aria-pressed="true"]){--library-accent:#da4816}
body #tsg-main#tsg-main .tsg-actes--library:has(.tsg-actes__category.is-finances[aria-pressed="true"]){--library-accent:#527337}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__hero{background:linear-gradient(120deg,var(--library-ink),var(--library-fill))!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__source-note a{color:var(--library-ink)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__category{box-shadow:0 9px 26px color-mix(in srgb,var(--act) 7%,transparent)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__category:is(:hover,.is-active){border-color:color-mix(in srgb,var(--act) 35%,white)!important;box-shadow:0 12px 28px color-mix(in srgb,var(--act) 15%,transparent)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__category.is-arretes,body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__category.is-arretes :is(strong,small){color:color-mix(in srgb,#da4816 85%,#000)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__category .tsg-actes__category-arrow{color:color-mix(in srgb,var(--act) 85%,#000)!important;border-color:color-mix(in srgb,var(--act) 18%,#fff)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__searchbar,body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__list-shell{border-color:var(--library-line)!important;box-shadow:0 12px 30px color-mix(in srgb,var(--library-accent) 4%,transparent)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__search-icon,body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__reset,body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__filter-fields select,body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__resultbar :is(strong,span){color:var(--library-ink)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__search input{background:var(--library-wash)!important;box-shadow:inset 0 0 0 1px var(--library-line)!important;accent-color:var(--library-accent)}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__search input:focus{background:#fff!important;box-shadow:inset 0 0 0 2px var(--library-accent)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__search-submit{background:var(--library-fill)!important;color:#fff!important;box-shadow:0 9px 20px color-mix(in srgb,var(--library-accent) 15%,transparent)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__search-submit:hover{box-shadow:0 12px 24px color-mix(in srgb,var(--library-accent) 22%,transparent)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__filters,body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__list-head{background:var(--library-wash)!important;border-color:var(--library-line)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__all,body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__all.is-active{background:var(--library-soft)!important;border-color:var(--library-line)!important;color:var(--library-ink)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__filter-fields select{border-color:var(--library-line)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__reset:hover{background:var(--library-soft)!important;color:var(--library-ink)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-acte-row{--row-ink:color-mix(in srgb,var(--act) 85%,#000);--row-soft:color-mix(in srgb,var(--act) 7%,#fff);border-bottom-color:var(--library-line)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-acte-row:hover{background:var(--library-wash)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-acte-row :is(h3,.tsg-acte-row__reference,.tsg-acte-row__reference span,.tsg-acte-row__date strong,.tsg-acte-row__date span){color:var(--row-ink)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-acte-row__date,body #tsg-main#tsg-main .tsg-actes--library .tsg-acte-row__category>span{background:var(--row-soft)!important;color:var(--row-ink)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-acte-row .tsg-acte-row__actions a{background:color-mix(in srgb,var(--act) 94%,#000)!important;border-color:var(--act)!important;color:#fff!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-acte-row .tsg-acte-row__actions a:hover{filter:brightness(.94)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__pagination button{border-color:var(--library-line)!important;color:var(--library-ink)!important;background:#fff!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__pagination button.is-current{background:var(--library-fill)!important;border-color:var(--library-fill)!important;color:#fff!important;box-shadow:0 6px 15px color-mix(in srgb,var(--library-accent) 18%,transparent)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__noresult{border-color:var(--library-line)!important;background:var(--library-wash)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__noresult :is(span,h3){color:var(--library-ink)!important}
body #tsg-main#tsg-main .tsg-actes--library :is(button,a,input,select):focus-visible{outline:2px solid var(--library-accent)!important;outline-offset:3px!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__category:focus-visible{outline-color:var(--act)!important}

/* R27 — A registered colour interpolates the gradient itself, rather than
   attempting a discrete background-image transition. Native filtering stays immediate. */
@property --library-accent{syntax:"<color>";inherits:true;initial-value:#482383}
body #tsg-main#tsg-main .tsg-actes--library{transition:--library-accent .7s cubic-bezier(.22,.61,.36,1)!important}
/* Sage tint derived from the existing charter, matching the pale orange card. */
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__category.is-finances{background:color-mix(in srgb,#8faf74 16%,#fff)!important;color:color-mix(in srgb,#527337 85%,#000)!important;border-color:color-mix(in srgb,#527337 22%,#fff)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__category.is-finances :is(strong,small){color:inherit!important}
@media(prefers-reduced-motion:reduce){body #tsg-main#tsg-main .tsg-actes--library{transition:none!important}}

/* R28 — The Finances header uses the same pale sage as its category card.
   Fixed colour targets preserve one continuous transition without retargeting. */
@property --library-hero-start{syntax:"<color>";inherits:true;initial-value:#3d1e6f}
@property --library-hero-end{syntax:"<color>";inherits:true;initial-value:#44217b}
@property --library-hero-ink{syntax:"<color>";inherits:true;initial-value:#fff}
body #tsg-main#tsg-main .tsg-actes--library{--library-hero-start:color-mix(in srgb,#482383 85%,#000);--library-hero-end:color-mix(in srgb,#482383 94%,#000);--library-hero-ink:#fff;transition:--library-accent .7s cubic-bezier(.22,.61,.36,1),--library-hero-start .7s cubic-bezier(.22,.61,.36,1),--library-hero-end .7s cubic-bezier(.22,.61,.36,1),--library-hero-ink .7s cubic-bezier(.22,.61,.36,1)!important}
body #tsg-main#tsg-main .tsg-actes--library:has(.tsg-actes__category.is-arretes[aria-pressed="true"]){--library-hero-start:#fff1e9;--library-hero-end:color-mix(in srgb,#fff1e9 60%,#fff);--library-hero-ink:color-mix(in srgb,#da4816 85%,#000)}
body #tsg-main#tsg-main .tsg-actes--library:has(.tsg-actes__category.is-finances[aria-pressed="true"]){--library-hero-start:color-mix(in srgb,#8faf74 16%,#fff);--library-hero-end:color-mix(in srgb,#8faf74 10%,#fff);--library-hero-ink:color-mix(in srgb,#527337 85%,#000)}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__hero{background:linear-gradient(120deg,var(--library-hero-start),var(--library-hero-end))!important;box-shadow:0 18px 42px color-mix(in srgb,var(--library-accent) 12%,transparent)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__hero-copy :is(h1,p),body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__hero-kicker{color:var(--library-hero-ink)!important}
body #tsg-main#tsg-main .tsg-actes--library .tsg-actes__hero-kicker:before{background:var(--library-hero-ink)!important;opacity:.6}
@media(prefers-reduced-motion:reduce){body #tsg-main#tsg-main .tsg-actes--library{transition:none!important}}

/* R29 — Arrêtés header: the same pale orange as its category card, with dark orange text. */
