/* Thème de Noël — page d'accueil. Activé côté PHP (voir home_premium.php). */
.noel { --noel-red: #c2413a; --noel-pine: #1f5c47; --noel-gold: #d9a441; }

/* Guirlande */
.noel-garland { position: relative; height: 26px; overflow: hidden; background: linear-gradient(#faf9f6, #faf9f6); pointer-events: none; }
.noel-garland::before { content: ""; position: absolute; left: -2%; right: -2%; top: -14px; height: 28px; border-bottom: 2px solid #2d6b55; border-radius: 0 0 50% 50% / 0 0 100% 100%; opacity: .55; }
.noel-garland i { position: absolute; top: 5px; width: 9px; height: 13px; border-radius: 50% 50% 50% 50% / 40% 40% 60% 60%; animation: noel-twinkle 2.4s ease-in-out infinite; }
.noel-garland i::before { content: ""; position: absolute; left: 50%; top: -4px; width: 4px; height: 4px; margin-left: -2px; background: #5b6b64; border-radius: 1px; }
.noel-garland i:nth-child(4n+1) { background: var(--noel-red); box-shadow: 0 0 8px #c2413a88; }
.noel-garland i:nth-child(4n+2) { background: var(--noel-gold); box-shadow: 0 0 8px #d9a44188; animation-delay: -.6s; }
.noel-garland i:nth-child(4n+3) { background: var(--noel-pine); box-shadow: 0 0 8px #1f5c4777; animation-delay: -1.2s; }
.noel-garland i:nth-child(4n+4) { background: var(--violet); box-shadow: 0 0 8px #6742cc66; animation-delay: -1.8s; }
@keyframes noel-twinkle { 0%, 100% { opacity: 1; transform: translateY(0); } 50% { opacity: .45; transform: translateY(1px); } }

/* Bandeau de vœux */
.noel-wish { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 14px; padding: 6px 14px; border-radius: 999px; background: #fdf0ee; color: #8f2f29; font-size: 13px; font-weight: 600; border: 1px solid #f3d3cf; }
.noel-wish svg { width: 15px; height: 15px; flex: none; }

/* Hero : halo plus chaleureux */
.noel .hero::before { background: radial-gradient(ellipse, #f6e3e0 0%, #eaf3ee90 38%, transparent 68%); }
.noel .hero h1 span { background: linear-gradient(90deg, var(--violet), var(--noel-red)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.noel .hero-badge::before { background: var(--noel-red); box-shadow: 0 0 0 4px #fbe3e0; }

/* Neige */
#noel-snow { position: fixed; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 40; }

/* Interrupteur */
.noel-toggle { position: fixed; left: 16px; bottom: 16px; z-index: 41; border: 1px solid var(--line); background: #fffffff0; color: var(--ink); border-radius: 999px; padding: 8px 14px; font: 600 12px/1 inherit; cursor: pointer; box-shadow: 0 4px 14px #24203914; }
.noel-toggle:hover { background: #fff; }

@media (prefers-reduced-motion: reduce) {
    .noel-garland i { animation: none; }
}
@media (max-width: 720px) {
    .noel-garland { height: 22px; }
    .noel-toggle { left: 10px; bottom: 10px; padding: 9px 10px; }
    .noel-toggle .t { display: none; }
}
