@import"https://fonts.googleapis.com/css2?family=Mountains+of+Christmas:wght@400;700&family=Great+Vibes&family=Quicksand:wght@400;500;600;700&display=swap";:root{--gold: #e0a72e;--gold-bright: #ffd35c;--gold-dim: rgba(224, 167, 46, .4);--red: #b3202b;--red-bright: #e2394a;--green: #0f5c34;--green-bright: #1f8f4a;--black: #071009;--dark: #0c1a10;--surface: rgba(10, 20, 13, .78);--text: #f1e6cf;--font-display: "Mountains of Christmas", "Georgia", serif;--font-script: "Great Vibes", cursive;font-family:Quicksand,Segoe UI,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background:var(--black)}.page{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem;padding:2rem 1rem;color:var(--text);background:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(224,167,46,.1) 0%,transparent 70%),radial-gradient(ellipse 45% 30% at 10% 90%,rgba(15,92,52,.5) 0%,transparent 70%),radial-gradient(ellipse 45% 30% at 90% 90%,rgba(179,32,43,.28) 0%,transparent 70%),linear-gradient(180deg,#0b1a10,#071009);overflow:hidden}.snow,.snow:before,.snow:after{position:absolute;top:-20%;right:0;bottom:-20%;left:0;pointer-events:none;background-repeat:repeat;will-change:transform}.snow{background-image:radial-gradient(1.5px 1.5px at 7% 15%,rgba(255,255,255,.9),transparent),radial-gradient(1px 1px at 23% 42%,rgba(255,255,255,.6),transparent),radial-gradient(2px 2px at 38% 8%,rgba(255,255,255,.8),transparent),radial-gradient(1px 1px at 54% 60%,rgba(255,255,255,.5),transparent),radial-gradient(1.5px 1.5px at 70% 28%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 85% 75%,rgba(255,255,255,.6),transparent),radial-gradient(2px 2px at 93% 12%,rgba(255,255,255,.9),transparent),radial-gradient(1px 1px at 16% 88%,rgba(255,255,255,.5),transparent),radial-gradient(1.5px 1.5px at 47% 50%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 62% 95%,rgba(255,255,255,.4),transparent);background-size:400px 300px;animation:fall-slow 22s linear infinite}.snow:before{content:"";background-image:radial-gradient(1px 1px at 11% 35%,rgba(255,255,255,.7),transparent),radial-gradient(2px 2px at 29% 10%,rgba(255,255,255,.9),transparent),radial-gradient(1.5px 1.5px at 44% 72%,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 58% 22%,rgba(255,255,255,.5),transparent),radial-gradient(2px 2px at 76% 55%,rgba(255,255,255,.8),transparent),radial-gradient(1px 1px at 88% 40%,rgba(255,255,255,.6),transparent),radial-gradient(1.5px 1.5px at 4% 65%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 67% 85%,rgba(255,255,255,.4),transparent);background-size:300px 250px;animation:fall-mid 16s linear infinite;animation-delay:-6s}.snow:after{content:"";background-image:radial-gradient(2.5px 2.5px at 18% 20%,rgba(255,255,255,.85),transparent),radial-gradient(2px 2px at 35% 55%,rgba(255,255,255,.7),transparent),radial-gradient(2.5px 2.5px at 52% 10%,rgba(255,255,255,.9),transparent),radial-gradient(2px 2px at 71% 78%,rgba(255,255,255,.65),transparent),radial-gradient(3px 3px at 90% 33%,rgba(255,255,255,.8),transparent),radial-gradient(2px 2px at 6% 90%,rgba(255,255,255,.6),transparent);background-size:500px 400px;animation:fall-fast 10s linear infinite;animation-delay:-2s}@keyframes fall-slow{0%{transform:translateY(0)}to{transform:translateY(300px)}}@keyframes fall-mid{0%{transform:translateY(0) translate(0)}50%{transform:translateY(125px) translate(12px)}to{transform:translateY(250px) translate(0)}}@keyframes fall-fast{0%{transform:translateY(0) translate(0)}50%{transform:translateY(200px) translate(-10px)}to{transform:translateY(400px) translate(0)}}.page:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 80% at 50% 50%,transparent 40%,rgba(0,0,0,.65) 100%);pointer-events:none;z-index:0}.card{position:relative;z-index:1;width:min(700px,100%);text-align:center;padding:clamp(2rem,6vw,4rem) clamp(1.5rem,5vw,3.5rem);border-radius:4px;background:var(--surface);border-top:1px solid var(--gold-dim);border-bottom:1px solid var(--gold-dim);border-left:1px solid rgba(224,167,46,.15);border-right:1px solid rgba(224,167,46,.15);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 0 80px #000000b3,0 0 30px #e0a72e0d inset}.card:before,.card:after{content:"";position:absolute;width:28px;height:28px;border-color:var(--gold);border-style:solid;opacity:.6}.card:before{top:10px;left:10px;border-width:1px 0 0 1px}.card:after{bottom:10px;right:10px;border-width:0 1px 1px 0}.eyebrow{text-transform:uppercase;letter-spacing:.4em;font-size:.7rem;font-weight:400;color:var(--gold);opacity:.85;margin-bottom:1.25rem}.title{font-family:var(--font-display);font-size:clamp(3rem,9vw,6rem);font-weight:700;line-height:1.05;color:#fff;letter-spacing:.03em;text-shadow:0 0 20px rgba(224,167,46,.5),0 0 60px rgba(31,143,74,.3),0 2px 4px rgba(0,0,0,.8);margin-bottom:.5rem;animation:title-breathe 6s ease-in-out infinite}@keyframes title-breathe{0%,to{text-shadow:0 0 20px rgba(224,167,46,.5),0 0 60px rgba(31,143,74,.3),0 2px 4px rgba(0,0,0,.8)}50%{text-shadow:0 0 35px rgba(255,211,92,.9),0 0 90px rgba(31,143,74,.45),0 2px 4px rgba(0,0,0,.8)}}.divider{width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:1.5rem auto 2rem;opacity:.7}.countdown{display:flex;justify-content:center;gap:clamp(.5rem,3vw,1.25rem);margin-bottom:2.5rem}.unit{display:flex;flex-direction:column;align-items:center;min-width:clamp(64px,18vw,100px);padding:1.1rem .5rem;border-radius:2px;background:#00000080;border:1px solid rgba(224,167,46,.25);box-shadow:0 0 18px #0009,0 0 8px #e0a72e0f inset}.unit-value{font-family:var(--font-display);font-size:clamp(2.4rem,7.5vw,3.75rem);font-weight:700;font-variant-numeric:tabular-nums;color:var(--gold-bright);text-shadow:0 0 12px rgba(255,211,92,.5);line-height:1}.unit-label{margin-top:.45rem;font-size:.6rem;text-transform:uppercase;letter-spacing:.2em;color:var(--gold);opacity:.7}.celebrate{font-family:var(--font-script);font-size:clamp(1.75rem,5.5vw,2.5rem);margin-bottom:2rem;color:var(--gold-bright);text-shadow:0 0 20px rgba(255,211,92,.6)}.details{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2.5rem;border-top:1px solid rgba(224,167,46,.15);padding-top:1.5rem}.details div{min-width:120px}.details dt{font-size:.6rem;text-transform:uppercase;letter-spacing:.3em;color:var(--gold);opacity:.8;margin-bottom:.3rem}.details dd{font-size:.9rem;color:var(--text)}.footer{position:relative;z-index:1;font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--gold);opacity:.4}.landing{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 65% 35% at 50% 105%,rgba(15,92,52,.55) 0%,transparent 70%),radial-gradient(ellipse 35% 25% at 8% 50%,rgba(179,32,43,.25) 0%,transparent 70%),radial-gradient(ellipse 35% 25% at 92% 50%,rgba(179,32,43,.25) 0%,transparent 70%),var(--black);overflow:hidden}.landing-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 70% at 50% 50%,transparent 30%,rgba(0,0,0,.85) 100%);pointer-events:none}.landing-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:1.4rem;text-align:center;padding-top:1.5rem}.landing-eyebrow{font-family:var(--font-script);font-size:clamp(1.1rem,3.5vw,1.6rem);letter-spacing:.08em;color:var(--gold-bright);opacity:.9}.landing-warning{font-family:Quicksand,sans-serif;font-size:clamp(.6rem,1.5vw,.75rem);text-transform:uppercase;letter-spacing:.4em;color:var(--text);opacity:.35}.enter-btn{position:relative;padding:1.1rem 3.5rem;background:transparent;border:1px solid var(--gold);color:var(--gold-bright);font-family:var(--font-display);font-size:clamp(1.3rem,4vw,1.8rem);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:color .3s,border-color .3s;overflow:hidden}.enter-btn:hover{color:#fff;border-color:var(--gold-bright)}.enter-btn:hover .enter-btn-glow{opacity:1;transform:scale(1.5)}.enter-btn-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 50%,rgba(224,167,46,.25) 0%,transparent 70%);opacity:0;transform:scale(.8);transition:opacity .4s,transform .4s;pointer-events:none}.enter-btn-text{position:relative;z-index:1}.enter-btn{animation:btn-pulse 4s ease-in-out infinite}@keyframes btn-pulse{0%,to{box-shadow:0 0 10px #e0a72e33}50%{box-shadow:0 0 28px #e0a72e8c,0 0 6px #e0a72e4d inset}}.intro{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--black);overflow:hidden}.intro-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:fade-in-video 1.5s ease forwards}@media (orientation: portrait){.intro{background:radial-gradient(ellipse 60% 35% at 50% 0%,rgba(224,167,46,.12) 0%,transparent 70%),radial-gradient(ellipse 45% 30% at 10% 100%,rgba(15,92,52,.45) 0%,transparent 70%),radial-gradient(ellipse 45% 30% at 90% 100%,rgba(179,32,43,.25) 0%,transparent 70%),var(--black)}.intro-video{object-fit:contain}}@keyframes fade-in-video{0%{opacity:0}to{opacity:1}}.intro-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 80% at 50% 50%,transparent 35%,rgba(0,0,0,.7) 100%);pointer-events:none}.intro-close{position:absolute;top:1.25rem;right:1.25rem;z-index:10;background:#00000073;border:1px solid rgba(224,167,46,.4);color:#e0a72ed9;font-size:.85rem;width:2.25rem;height:2.25rem;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .2s,color .2s,border-color .2s}.intro-close:hover{background:#000000bf;color:#fff;border-color:var(--gold)}.intro-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff1a;z-index:10}.intro-progress-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-bright));box-shadow:0 0 8px #ffd35c80;transition:width .25s linear;will-change:width}.landing-lights{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-evenly;z-index:2;border-top:2px solid rgba(100,70,20,.45)}.light{position:relative;width:9px;height:13px;border-radius:50% 50% 40% 40%;margin-top:4px;animation:twinkle 2.6s ease-in-out infinite;animation-delay:var(--delay, 0s)}.light:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);width:2px;height:6px;background:#6446148c}.light-1{background:#c20;box-shadow:0 0 7px 2px #cc2200a6}.light-2{background:#1a8c22;box-shadow:0 0 7px 2px #1a8c22a6}.light-3{background:#ffd35c;box-shadow:0 0 7px 2px #ffd35ca6}@keyframes twinkle{0%,to{opacity:1}45%,55%{opacity:.1}}.landing-title{font-family:var(--font-display);font-size:clamp(2.25rem,7vw,4.25rem);font-weight:700;color:#fff;letter-spacing:.02em;line-height:1.15;text-shadow:0 0 20px rgba(224,167,46,.5),0 0 60px rgba(31,143,74,.3),0 2px 4px rgba(0,0,0,.9);animation:title-breathe 6s ease-in-out infinite}.landing-tree{width:min(130px,28vw);height:auto;filter:drop-shadow(0 0 10px rgba(26,140,34,.35)) drop-shadow(0 0 28px rgba(26,140,34,.12))}.landing-divider{display:flex;align-items:center;gap:.8rem;color:var(--gold);opacity:.5;font-size:1rem}.landing-divider:before,.landing-divider:after{content:"";display:block;width:55px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-dim),transparent)}.music-player{position:fixed;z-index:5;bottom:1.5rem;right:1.5rem;width:min(300px,calc(100vw - 2rem));display:flex;flex-direction:column;border-radius:6px;background:var(--surface);border:1px solid var(--gold-dim);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 0 30px #0009,0 0 12px #e0a72e14 inset;overflow:hidden}.music-player-bar{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem}.music-toggle{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;padding:.4rem;background:#e0a72e0f;border:none;border-top:1px solid rgba(224,167,46,.15);color:var(--gold);font-family:Quicksand,sans-serif;font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;cursor:pointer;transition:color .2s,background .2s}.music-toggle:hover{color:var(--gold-bright);background:#e0a72e1f}.music-toggle-chevron{display:inline-block;transition:transform .25s ease}.music-player-expanded .music-toggle-chevron{transform:rotate(180deg)}.music-playlist{list-style:none;max-height:min(260px,40vh);overflow-y:auto;border-top:1px solid rgba(224,167,46,.15)}.music-playlist-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem 1rem;background:transparent;border:none;border-left:2px solid transparent;color:var(--text);font-family:Quicksand,sans-serif;font-size:.75rem;text-align:left;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.music-playlist-item:hover{background:#e0a72e14}.music-playlist-item.active{color:var(--gold-bright);border-left-color:var(--gold);background:#e0a72e1a}.music-playlist-note{flex:none;opacity:.85}.music-playlist-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.music-icon{flex:none;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#1f8f4a2e;border:1px solid var(--gold-dim);color:var(--gold-bright);font-size:1.1rem;animation:music-icon-glow 6s ease-in-out infinite}@keyframes music-icon-glow{0%,to{box-shadow:0 0 8px #1f8f4a66}50%{box-shadow:0 0 10px #b3202b66}}.music-info{flex:1;min-width:0}.music-title{font-size:.75rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:.4rem}.music-progress{height:4px;border-radius:2px;background:#ffffff1a;cursor:pointer}.music-progress-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--gold),var(--gold-bright));box-shadow:0 0 8px #ffd35c80;will-change:width}.music-controls{flex:none;display:flex;align-items:center;gap:.35rem}.music-btn{flex:none;width:1.9rem;height:1.9rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:transparent;border:1px solid var(--gold-dim);color:var(--gold);font-size:.7rem;cursor:pointer;transition:color .2s,border-color .2s,background .2s}.music-btn:hover{color:#fff;border-color:var(--gold-bright);background:#e0a72e1f}.music-btn-main{width:2.3rem;height:2.3rem;color:var(--gold-bright);border-color:var(--gold)}
