#gentiane-season-decoration[hidden]{display:none!important}#gentiane-season-decoration{position:fixed;left:18px;bottom:18px;z-index:8;pointer-events:none;user-select:none;background:#fffdf0ed;border:2px solid var(--season-accent);border-radius:50%;width:54px;height:54px;display:grid;place-items:center;box-shadow:0 3px 14px #17394422;font-size:30px}html[data-theme=dark] #gentiane-season-decoration{background:#173944}
html[data-season]:not([data-season=standard]) .header{border-top:3px solid var(--season-detail)}html[data-season]:not([data-season=standard]) .footer{border-top:4px solid var(--season-accent);background:var(--season-dark)}html[data-season]:not([data-season=standard]) .footer h3{color:var(--season-on-dark)}html[data-season]:not([data-season=standard]) .page-hero{background:var(--season-dark);color:#fff}html[data-season]:not([data-season=standard]) .page-hero h1,html[data-season]:not([data-season=standard]) .page-hero p{color:#fff}html[data-season]:not([data-season=standard]) .btn:not(.nav-action):not(.line):not(.dark){background:var(--season-accent);color:var(--season-contrast)}html[data-season]:not([data-season=standard]) .eyebrow{color:var(--season-dark)}html[data-season]:not([data-season=standard]):not([data-theme=dark]) .route,html[data-season]:not([data-season=standard]):not([data-theme=dark]) .map-section{background:var(--season-soft)}html[data-season]:not([data-season=standard]) .bort-route-notice{border-left-color:var(--season-accent)}
html[data-season=halloween] .header{box-shadow:0 4px 20px #38234525}html[data-season=christmas] .header{box-shadow:0 4px 20px #16473325}html[data-season=easter] .header{box-shadow:0 4px 20px #bd8fc925}
.season-animate span{animation:gentiane-season-float 4s ease-in-out infinite}@keyframes gentiane-season-float{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-4px) rotate(4deg)}}@media(prefers-reduced-motion:reduce){.season-animate span{animation:none}}@media(max-width:600px){#gentiane-season-decoration{left:10px;bottom:12px;width:42px;height:42px;font-size:24px}}

html[data-season]:not([data-season=standard]) .hero .eyebrow,html[data-season]:not([data-season=standard]) .page-hero .eyebrow{color:var(--season-on-dark)}html[data-theme=dark][data-season]:not([data-season=standard]) .eyebrow{color:var(--season-on-dark)}
/* Décors illustrés : seuls les habillages actifs utilisent ces variables. */
html[data-season=halloween]{--season-header:#352043;--season-nav-ink:#fff;--season-heading:#623478;--season-watermark:url('seasonal/halloween-watermark.svg');--season-frieze:url('seasonal/halloween-frieze.svg');--season-page:#fff7eb;--season-panel:#f6e7d5;--season-border:#c08135;--season-wash:linear-gradient(120deg,#472352ee,#5935489e,#24153035)}
html[data-season=christmas]{--season-header:#8f2736;--season-nav-ink:#fff;--season-heading:#23563e;--season-watermark:url('seasonal/christmas-watermark.svg');--season-frieze:url('seasonal/christmas-frieze.svg');--season-page:#fffaf1;--season-panel:#e4efe5;--season-border:#a64f50;--season-wash:linear-gradient(120deg,#103c35ee,#2859438e,#661c3035)}
html[data-season=easter]{--season-header:#eed6ee;--season-nav-ink:#173944;--season-heading:#75428c;--season-watermark:url('seasonal/easter-watermark.svg');--season-frieze:url('seasonal/easter-frieze.svg');--season-page:#fffaf5;--season-panel:#e7f0e4;--season-border:#ab77bc;--season-wash:linear-gradient(120deg,#31483cee,#5a405c8e,#9c67a835)}
html[data-season]:not([data-season=standard]) body{background-color:var(--season-page)}
html[data-season]:not([data-season=standard]) .top,html[data-season]:not([data-season=standard]) .band{background:var(--season-dark);color:#fff}
html[data-season]:not([data-season=standard]) .header{background:var(--season-header);color:var(--season-nav-ink);border-bottom:4px solid var(--season-accent)}
html[data-season]:not([data-season=standard]) .header .brand small,html[data-season]:not([data-season=standard]) .header .mobile{color:var(--season-nav-ink)}
html[data-season]:not([data-season=standard]) .header .submenu,html[data-season]:not([data-season=standard]) .header .links.open{background:var(--season-header);color:var(--season-nav-ink)}
html[data-season]:not([data-season=standard]) .carousel-shade{background:var(--season-wash)}
html[data-season]:not([data-season=standard]) .carousel-copy .eyebrow{color:var(--season-on-dark)}
html[data-season]:not([data-season=standard]) .carousel-arrows button{background:var(--season-dark);border:2px solid var(--season-accent)}
html[data-season]:not([data-season=standard]) .carousel-dots button[aria-current=true]{background:var(--season-accent);border-color:var(--season-accent)}
html[data-season]:not([data-season=standard]) .section:not(.builder-tone-dark) h2,html[data-season]:not([data-season=standard]) .partners h2{color:var(--season-heading)}
html[data-season]:not([data-season=standard]) .card,html[data-season]:not([data-season=standard]) .item,html[data-season]:not([data-season=standard]) .news-card,html[data-season]:not([data-season=standard]) .station-presentation,html[data-season]:not([data-season=standard]) .builder-card{border-top:5px solid var(--season-border);box-shadow:0 8px 24px #17394412;border-radius:12px}
html[data-season]:not([data-season=standard]) .facts{border-top:4px solid var(--season-accent);border-radius:12px}
html[data-season]:not([data-season=standard]) .photo,html[data-season]:not([data-season=standard]) .brochure-module{border:3px solid var(--season-border);border-radius:12px}
html[data-season]:not([data-season=standard]) .btn.dark{background:var(--season-dark);color:#fff;border:2px solid var(--season-accent)}
html[data-season]:not([data-season=standard]) .page-hero{background:radial-gradient(ellipse at 80% 90%,var(--season-heading),transparent 65%),var(--season-dark);border-bottom:6px solid var(--season-accent)}
html[data-season]:not([data-season=standard]):not([data-theme=dark]) .route,html[data-season]:not([data-season=standard]):not([data-theme=dark]) .map-section{background:var(--season-panel)}
/* Motifs derrière les contenus, décors sur les bannières et au pied de page. */
html[data-season-decorations=on]:not([data-season=standard]) .section{position:relative;isolation:isolate}
html[data-season-decorations=on]:not([data-season=standard]) .section::before{content:'';position:absolute;inset:0;background-image:var(--season-watermark);background-size:460px 460px;background-position:center;opacity:.19;pointer-events:none;z-index:0;mask-image:linear-gradient(90deg,#000,transparent 38%,transparent 62%,#000)}
html[data-season-decorations=on]:not([data-season=standard]) .section>.wrap{position:relative;z-index:1}
html[data-season-decorations=on]:not([data-season=standard]) .page-hero:not(.builder-hero.has-photo)::after{inset:0;background-image:var(--season-frieze);background-position:center bottom;background-size:auto 90%;background-repeat:no-repeat;opacity:.85;pointer-events:none}
html[data-season-decorations=on]:not([data-season=standard]) .home-carousel::after{content:'';position:absolute;left:0;right:0;bottom:0;height:155px;background-image:var(--season-frieze);background-position:center bottom;background-size:auto 100%;background-repeat:no-repeat;pointer-events:none;z-index:1}
html[data-season-decorations=on]:not([data-season=standard]) .carousel-copy,html[data-season-decorations=on]:not([data-season=standard]) .carousel-controls{z-index:2}
html[data-season-decorations=on]:not([data-season=standard]) .footer{position:relative;padding-bottom:150px;background-image:var(--season-frieze);background-position:center bottom;background-size:auto 145px;background-repeat:no-repeat}
html[data-season-decorations=on]:not([data-season=standard]) .partners{background-color:var(--season-page);background-image:var(--season-watermark);background-size:500px}
html[data-season-decorations=on]:not([data-season=standard]) .partners .wrap{background:#fffdf3eb;border-radius:12px;padding-top:24px;padding-bottom:24px}
/* Surfaces de lecture opaques et mode sombre. */
html[data-theme=dark][data-season]:not([data-season=standard]) body{background:#13212b}
html[data-theme=dark][data-season]:not([data-season=standard]) .section:not(.builder-tone-dark) h2,html[data-theme=dark][data-season]:not([data-season=standard]) .partners h2{color:var(--season-on-dark)}
html[data-theme=dark][data-season]:not([data-season=standard]) .card,html[data-theme=dark][data-season]:not([data-season=standard]) .item,html[data-theme=dark][data-season]:not([data-season=standard]) .station-presentation,html[data-theme=dark][data-season]:not([data-season=standard]) .builder-card,html[data-theme=dark][data-season]:not([data-season=standard]) .news-card{background:#1b3039;color:#fff}
html[data-theme=dark][data-season-decorations=on]:not([data-season=standard]) .partners .wrap{background:#1b3039f2}
html[data-theme=dark][data-season-decorations=on]:not([data-season=standard]) .section::before{opacity:.13}
@media(max-width:680px){html[data-season-decorations=on]:not([data-season=standard]) .home-carousel::after{height:90px}html[data-season-decorations=on]:not([data-season=standard]) .page-hero:not(.builder-hero.has-photo)::after{background-size:auto 55%;opacity:.6}html[data-season-decorations=on]:not([data-season=standard]) .section::before{background-size:330px;opacity:.13}html[data-season-decorations=on]:not([data-season=standard]) .footer{background-size:auto 95px;padding-bottom:105px}}
html[data-season]:not([data-season=standard]) .header .submenu a:hover,html[data-season]:not([data-season=standard]) .header .submenu a:focus-visible{background:var(--season-dark);color:#fff}
html[data-season=blue_festival]{--season-header:#c5e4f5;--season-nav-ink:#173944;--season-heading:#21578d;--season-watermark:url('seasonal/blue_festival-watermark.svg');--season-frieze:url('seasonal/blue_festival-frieze.svg');--season-page:#f1f9ff;--season-panel:#dceef8;--season-border:#467cbb;--season-wash:linear-gradient(120deg,#153d69ee,#386a929e,#1c5b7835)}
.season-effect-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;border-radius:inherit}.season-effect{position:absolute;display:block;opacity:.24;pointer-events:none}.effect-halloween .season-effect{width:62px;height:36px;background:#503163;clip-path:polygon(0 0,30% 20%,46% 50%,46% 15%,50% 25%,54% 15%,54% 50%,70% 20%,100% 0,90% 70%,70% 55%,60% 90%,50% 100%,40% 90%,30% 55%,10% 70%);animation:season-bat var(--duration) ease-in-out var(--delay) infinite}.effect-christmas .season-effect{font-size:27px;color:#76a5b9;top:-40px!important;animation:season-snow var(--duration) linear var(--delay) infinite}.effect-easter .season-effect{font-size:40px;transform-origin:50% 0;animation:season-bell 3.5s ease-in-out var(--delay) infinite}.home-carousel .season-effect-layer{z-index:1}.season-effect-layer~.wrap{position:relative;z-index:1}html[data-theme=dark] .effect-halloween .season-effect{background:#c6a1de}html[data-theme=dark] .effect-christmas .season-effect{color:#d8edf8}
@keyframes season-bat{0%,100%{transform:translate(-30px,8px) scaleX(.9) rotate(-8deg)}50%{transform:translate(60px,-25px) scaleX(1.1) rotate(8deg)}}@keyframes season-snow{from{transform:translate(0,-50px)}to{transform:translate(45px,900px)}}@keyframes season-bell{0%,100%{transform:rotate(-18deg)}50%{transform:rotate(18deg)}}@media(prefers-reduced-motion:reduce){.season-effect{animation:none!important}.effect-christmas .season-effect{top:30%!important}}@media(max-width:680px){.season-effect:nth-child(n+8){display:none}.effect-easter .season-effect{font-size:28px}.effect-halloween .season-effect{width:42px;height:25px}}
.festival-mascot-watermark{position:absolute;bottom:22px;right:20px;max-width:160px;max-height:200px;object-fit:contain;opacity:.2;pointer-events:none;z-index:0}@media(max-width:680px){.festival-mascot-watermark{max-width:95px;opacity:.14}}
