/* V42 — Accueil immersif. Portée limitée à #welcome : les cadeaux et le final ne changent pas. */
#welcome.cinematic-v14{isolation:isolate;overflow:hidden;background-position:center 47%;animation:v42-scene-reveal 2.3s ease-out both}
#welcome.cinematic-v14::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 30% 63%,rgba(255,190,82,.15),transparent 44%),linear-gradient(180deg,rgba(0,0,0,.05),transparent 52%,rgba(8,14,27,.2));animation:v42-lantern 6s ease-in-out infinite alternate}
#welcome .v42-window-glow{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 63% 25%,rgba(255,186,67,.20),transparent 20%),radial-gradient(ellipse at 77% 24%,rgba(255,211,126,.16),transparent 14%),radial-gradient(ellipse at 88% 32%,rgba(255,176,61,.13),transparent 13%);mix-blend-mode:screen;animation:v42-village-life 5.5s ease-in-out infinite alternate}
#welcome .v42-snow-layers,#welcome .v42-stardust{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
#welcome .v42-flake{position:absolute;top:-12vh;left:var(--x);width:var(--size);height:var(--size);border-radius:50%;background:rgba(255,255,255,var(--alpha));box-shadow:0 0 5px #fff8;animation:v42-snowfall var(--duration) linear var(--delay) infinite;transform:translate3d(0,0,0);will-change:transform}
#welcome .v42-flake.far{filter:blur(.5px)}#welcome .v42-flake.near{box-shadow:0 0 7px #fffa}
#welcome .v42-glint{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#ffe5a1;box-shadow:0 0 9px 3px #ffce7499;opacity:0;animation:v42-glint var(--duration) ease-in-out var(--delay) infinite;pointer-events:none}
#welcome .welcome-content{position:relative;z-index:2}
#welcome .v42-story{margin:6px auto 2px;min-height:5.5em;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
#welcome .v42-story p{font-family:'Cormorant Garamond',Georgia,serif;color:#fff6e9;font-size:clamp(17px,2.25vw,24px);font-weight:600;line-height:1.18;margin:0;text-shadow:0 2px 10px #000c;opacity:0;animation:v42-words .9s ease-out both}
#welcome .v42-story p:nth-child(1){animation-delay:.45s}#welcome .v42-story p:nth-child(2){animation-delay:1.55s}#welcome .v42-story p:nth-child(3){animation-delay:2.65s;color:#ffe4aa}
#welcome.cinematic-v14 .sleigh{position:relative;z-index:3;animation:v42-sleigh-arrive 2.5s cubic-bezier(.18,.65,.2,1) .35s both;transform-origin:50% 50%;min-height:54px}
#welcome.cinematic-v14 .sleigh-label{display:block;transition:transform .24s ease,box-shadow .24s ease,background .24s ease;min-height:48px;display:flex;align-items:center;justify-content:center}
#welcome.cinematic-v14 .sleigh:is(:hover,:focus-visible) .sleigh-label{transform:translateY(-3px) scale(1.025);box-shadow:0 0 27px #ffe4a377,0 14px 30px #0008}
#welcome.cinematic-v14 .sleigh:active .sleigh-label{transform:scale(.98)}
#welcome .v42-countdown{font:600 clamp(12px,1.8vw,17px) 'Cormorant Garamond',Georgia,serif!important;color:#ffe0a1!important;letter-spacing:.02em;min-height:1.3em}
@keyframes v42-scene-reveal{from{opacity:.45;filter:brightness(.68)}to{opacity:1;filter:brightness(1)}}
@keyframes v42-lantern{from{opacity:.42}to{opacity:.95}}
@keyframes v42-village-life{from{opacity:.32}to{opacity:1}}
@keyframes v42-words{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes v42-sleigh-arrive{from{opacity:0;transform:translate(-8vw,18px) scale(.88);filter:drop-shadow(0 0 3px #ffe3a0)}65%{opacity:1}to{opacity:1;transform:none;filter:drop-shadow(0 0 16px #ffe3a055)}}
@keyframes v42-snowfall{to{transform:translate3d(var(--drift),115vh,0)}}
@keyframes v42-glint{0%,100%{opacity:0;transform:scale(.5)}50%{opacity:.9;transform:scale(1.25)}}
@media(max-width:650px){#welcome.cinematic-v14{min-height:calc(100svh - 60px);padding-top:12px!important;padding-bottom:16px!important;background-position:40% 47%!important}#welcome .v42-story{min-height:5em;gap:2px}#welcome .v42-story p{font-size:clamp(14px,3.7vw,18px);line-height:1.12}#welcome.cinematic-v14 .intro-glass{padding:11px 10px}#welcome.cinematic-v14 .outro-glass{padding:9px 10px}#welcome .v42-countdown{font-size:14px!important}#welcome.cinematic-v14 .sleigh{min-height:54px}#welcome.cinematic-v14 .sleigh-label{font-size:clamp(12px,3.4vw,15px);padding:11px 12px}}
@media(max-width:650px) and (max-height:700px){#welcome .v42-story{min-height:0}#welcome .v42-story p{font-size:13px}#welcome.cinematic-v14 h1{font-size:clamp(32px,8vw,46px)}#welcome.cinematic-v14 .intro-glass,#welcome.cinematic-v14 .outro-glass{padding:6px 9px}#welcome.cinematic-v14 .outro-glass .signature{font-size:23px!important}}
@media(prefers-reduced-motion:reduce){#welcome.cinematic-v14,#welcome.cinematic-v14::after,#welcome .v42-window-glow,#welcome .v42-story p,#welcome.cinematic-v14 .sleigh{animation:none!important;opacity:1!important;transform:none!important}#welcome .v42-flake,#welcome .v42-glint{display:none}}
body.reduced #welcome.cinematic-v14,body.reduced #welcome.cinematic-v14::after,body.reduced #welcome .v42-window-glow,body.reduced #welcome .v42-story p,body.reduced #welcome.cinematic-v14 .sleigh{animation:none!important;opacity:1!important;transform:none!important}body.reduced #welcome .v42-flake,body.reduced #welcome .v42-glint{display:none}
