/* Quelques flocons, sans intercepter les interactions de la page. */
.snowfall{position:fixed;inset:0;z-index:8;overflow:hidden;pointer-events:none;contain:strict}
.snowfall[hidden]{display:none!important}
.snowflake{position:absolute;top:-28px;left:var(--snow-x);width:var(--snow-size);height:var(--snow-size);color:var(--snow-color,#fff);opacity:0;filter:drop-shadow(0 1px 1px rgba(49,76,62,.25));animation:snow-drift var(--snow-time) linear var(--snow-delay) infinite;will-change:transform}
.snowflake svg{display:block;width:100%;height:100%}
.snowfall.is-paused .snowflake{animation-play-state:paused}
.snow-toggle{position:fixed;left:16px;bottom:16px;z-index:9;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 13px;border:1px solid #d6decf;border-radius:24px;background:rgba(255,254,250,.96);color:#365446;font-family:Montserrat,Arial,sans-serif;font-size:12px;font-weight:600;box-shadow:0 3px 14px rgba(16,63,53,.08);cursor:pointer}
.snow-toggle svg{width:17px;height:17px;flex:none}
.snow-toggle:focus-visible{outline:3px solid #86692e;outline-offset:3px}
.snow-toggle[aria-pressed=false]{color:#657067;background:rgba(247,244,236,.96)}
.snow-toggle[hidden]{display:none!important}
@keyframes snow-drift{0%{opacity:0;transform:translate3d(0,-20px,0) rotate(0deg)}8%{opacity:var(--snow-opacity)}88%{opacity:var(--snow-opacity)}100%{opacity:0;transform:translate3d(var(--snow-drift),calc(100vh + 60px),0) rotate(var(--snow-spin))}}
@media(max-width:760px){.snow-toggle{left:12px;bottom:12px;padding:8px 12px}.snowflake:nth-child(n+11){display:none}}
@media(prefers-reduced-motion:reduce){.snowfall,.snow-toggle{display:none!important}}
@media print{.snowfall,.snow-toggle{display:none!important}}
