:root{--navy-950:#061a2c;--navy-900:#0b2a44;--navy-800:#002347;--green:#2ea348;--green-dark:#23803a;--green-light:#5fd27a;--red:#e0281d;--blue-light:#7cc4ff;--ink:#13202e;--head-h:64px;--slide:7s;--mx:0;--my:0}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background:var(--navy-800);color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100svh;margin:0;font-family:Roboto,ui-sans-serif,system-ui,sans-serif;overflow-x:clip}::selection{background:color-mix(in srgb, var(--green) 45%, transparent)}.sn-photos{z-index:0;background:var(--navy-800);transform:translate3d(calc(var(--mx) * -14px), calc(var(--my) * -10px), 0);will-change:transform;position:fixed;inset:-3%;overflow:hidden}.sn-slide{opacity:0;margin:0;transition:opacity 1.6s;position:absolute;inset:0}.sn-slide.is-on{opacity:1}.sn-slide img{object-fit:cover;object-position:var(--pos,50% 50%);width:100%;height:100%;display:block;transform:scale(1.04)}.sn-slide.is-on img{animation:sn-kenburns calc(var(--slide) + 2s) ease-out forwards}@keyframes sn-kenburns{0%{transform:scale(1.14) translate3d(var(--kx,1%), var(--ky,0.5%), 0)}to{transform:scale(1.04)translate(0,0)}}.sn-shade{z-index:0;pointer-events:none;background:radial-gradient(90% 60% at 50% 48%, #00234780, transparent 75%), linear-gradient(0deg, var(--navy-800) 0%, #002347b8 22%, #00234759 55%, #00234740 100%);position:fixed;inset:0}.sn[data-state=inactive] .sn-shade{background:radial-gradient(80% 55% at 50% 50%, #0a12208c, transparent 78%), linear-gradient(0deg, var(--navy-800) 0%, #002347b3 22%, #0023472e 60%, #0a12201a 100%)}.sn-fx{z-index:3;pointer-events:none;position:fixed;inset:0;overflow:hidden}.sn-spark{width:var(--size,8px);height:var(--size,8px);margin:calc(var(--size,8px) / -2) 0 0 calc(var(--size,8px) / -2);background:var(--c,var(--green));border-radius:50%;position:absolute}.sn-spark.is-star{clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);border-radius:0}.sn-head{z-index:2;padding-top:env(safe-area-inset-top);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;position:fixed;inset:0 0 auto;box-shadow:0 10px 30px -18px #061a2c80}.sn-head-in{max-width:1280px;height:var(--head-h);padding:0 max(16px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex}.sn-logo{border-radius:10px;display:inline-flex}.sn-logo img{width:auto;height:36px;display:block}.sn-head-note{color:var(--navy-900);text-align:right;font-size:13px;font-weight:500}.sn-head-note b{color:var(--green-dark);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.sn-main{z-index:1;min-height:100svh;padding:calc(var(--head-h) + env(safe-area-inset-top) + 28px) max(16px, env(safe-area-inset-right)) calc(118px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.sn-content{flex-direction:column;align-items:center;width:100%;max-width:940px;display:flex}.sn-chip{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;letter-spacing:.2em;text-transform:uppercase;background:#ffffff1a;border-radius:999px;align-items:center;gap:8px;margin:0;padding:7px 14px;font-size:11px;font-weight:600;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff40}.sn-dot{background:var(--green);border-radius:50%;width:8px;height:8px;position:relative}.sn-dot:after{content:"";background:inherit;border-radius:50%;animation:1.8s cubic-bezier(0,0,.2,1) infinite sn-ping;position:absolute;inset:0}.sn[data-state=inactive] .sn-dot{background:var(--red)}@keyframes sn-ping{75%,to{opacity:0;transform:scale(2.6)}}.sn-title{text-wrap:balance;text-shadow:0 2px 24px #00142859;margin:clamp(14px,2.6svh,22px) 0 0;font-weight:700;line-height:1.1}.sn-lead{letter-spacing:-.01em;color:#ffffffeb;font-size:clamp(1.15rem,min(4.6vw,3.8svh),2.1rem);font-weight:500;display:block}.sn-date{letter-spacing:-.035em;font-variant-numeric:tabular-nums;text-shadow:none;background-image:linear-gradient(100deg, transparent 38%, #fffffff2 50%, transparent 62%), linear-gradient(100deg, var(--green-light) 0%, #b8f0c6 40%, #fff 62%, var(--blue-light) 100%);color:#0000;filter:drop-shadow(0 4px 22px #00142859);background-position:130% 0,0 0;background-repeat:no-repeat;background-size:250% 100%,100% 100%;-webkit-background-clip:text;background-clip:text;margin-top:.1em;padding:0 .04em .04em;font-size:clamp(2.7rem,min(15vw,13svh),7.5rem);font-weight:900;line-height:1;animation:6s ease-in-out 2s infinite sn-shine;display:inline-block}.sn-date:hover{animation-duration:1.6s}@keyframes sn-shine{0%{background-position:130% 0,0 0}35%,to{background-position:-30% 0,0 0}}.sn-time{color:#ffffffd9;margin-top:.45em;font-size:clamp(1.05rem,3.6vw,1.45rem);font-weight:500;display:block}.sn-title--off{letter-spacing:-.02em;font-size:clamp(1.9rem,min(7.6vw,7svh),4rem)}.sn-title--off .sn-accent{background:linear-gradient(100deg,#ffe3d1 0%,#ffc4a3 45%,#fff0d2 100%);color:#0000;filter:drop-shadow(0 3px 18px #00142859);-webkit-background-clip:text;background-clip:text;margin-top:.08em;display:block}.sn-countdown{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,2.2vw,14px);width:min(100%,540px);margin-top:clamp(18px,3.6svh,36px);display:grid}.sn-unit{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff1a;border-radius:clamp(14px,3vw,18px);padding:clamp(10px,2.2vw,15px) 4px clamp(9px,1.8vw,12px);transition:transform .35s cubic-bezier(.2,.8,.2,1),background-color .35s,box-shadow .35s;box-shadow:inset 0 0 0 1px #fff3,0 18px 40px -20px #000a1999}@media (hover:hover){.sn-unit:hover{box-shadow:inset 0 0 0 1px #ffffff4d, 0 0 0 2px color-mix(in srgb, var(--green) 70%, transparent), 0 22px 44px -20px #000a19b3;background:#ffffff29;transform:translateY(-4px)}}.sn-num{font-variant-numeric:tabular-nums;letter-spacing:-.02em;height:1.1em;font-size:clamp(1.75rem,min(8.4vw,6.4svh),3.4rem);font-weight:700;line-height:1.1;display:block;position:relative;overflow:hidden}.sn-num span{display:block}.sn-num .is-out{animation:.5s cubic-bezier(.55,0,.3,1) forwards sn-roll-out;position:absolute;inset:0}.sn-num .is-in{animation:.5s cubic-bezier(.2,.8,.2,1) sn-roll-in}@keyframes sn-roll-out{to{opacity:0;filter:blur(2px);transform:translateY(-85%)}}@keyframes sn-roll-in{0%{opacity:0;filter:blur(2px);transform:translateY(85%)}}.sn-label{color:var(--green-light);letter-spacing:.16em;text-transform:uppercase;margin-top:4px;font-size:clamp(9.5px,2.4vw,11.5px);font-weight:700;display:block}.sn.is-final .sn-unit{animation:1s ease-in-out infinite sn-pulse}@keyframes sn-pulse{50%{background:#2ea34859;transform:scale(1.05)}}.sn-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:clamp(18px,3.4svh,32px);display:flex}.sn-btn{background:var(--green);color:#fff;-webkit-user-select:none;user-select:none;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:13px 26px;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .25s cubic-bezier(.2,.8,.2,1),background-color .25s,color .25s,box-shadow .25s;display:inline-flex;box-shadow:0 14px 30px -12px #2ea348b3}.sn-btn:hover{background:var(--green-dark);transform:translateY(-2px)}.sn-btn:active{transform:translateY(0)scale(.98)}.sn-btn:focus-visible,.sn-logo:focus-visible,.sn-pager button:focus-visible{outline:3px solid color-mix(in srgb, var(--green-light) 70%, transparent);outline-offset:3px}.sn-btn svg{flex:none;width:20px;height:20px}.sn-bell{transform-origin:50% 10%}.sn-btn:hover .sn-bell{animation:.8s ease-in-out sn-ring}@keyframes sn-ring{20%{transform:rotate(16deg)}40%{transform:rotate(-14deg)}60%{transform:rotate(9deg)}80%{transform:rotate(-5deg)}}.sn-btn--ghost{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;box-shadow:inset 0 0 0 1px #ffffff59}.sn-btn--ghost:hover{color:var(--navy-900);background:#fff}.sn-btn--ghost svg{transition:transform .25s}.sn-btn--ghost:hover svg{transform:translate(3px)}.sn-lock{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:clamp(14px,2.6svh,22px) 0 0;display:inline-flex;position:relative;box-shadow:inset 0 0 0 1px #ffffff4d}.sn-lock:before{content:"";border:2px solid #ff8a5c99;border-radius:50%;animation:2.6s ease-out infinite sn-halo;position:absolute;inset:-8px}@keyframes sn-halo{0%{opacity:1;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}.sn-lock svg{width:32px;height:32px}.sn-shackle{transition:transform .3s cubic-bezier(.3,1.6,.5,1)}@media (hover:hover){.sn-lock:hover .sn-shackle{transform:translateY(-2.5px)}}.sn-lock.is-shaking svg{animation:.6s cubic-bezier(.36,.07,.19,.97) sn-shake}@keyframes sn-shake{15%,85%{transform:rotate(-8deg)}30%,70%{transform:rotate(10deg)}45%,55%{transform:rotate(-12deg)}50%{transform:rotate(12deg)}}.sn-event{color:#ffffffc7;text-wrap:balance;max-width:640px;margin:clamp(18px,3svh,28px) 0 0;font-size:clamp(.9rem,2.8vw,1.05rem);line-height:1.5}.sn-event strong{color:#fff;font-weight:700;display:block}.sn-foot{z-index:2;padding:0 max(16px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));position:fixed;inset:auto 0 0}.sn-foot-in{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 20px;max-width:1280px;margin:0 auto;display:flex}.sn-place{flex-direction:column;gap:10px;min-width:0;display:flex}.sn-place-name{letter-spacing:.02em;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;display:flex}.sn-place-name svg{width:16px;height:16px;color:var(--green-light);flex:none}.sn-place-name span{transition:opacity .4s}.sn-place-name.is-changing span{opacity:0}.sn-pager{gap:6px;margin:0;padding:0;list-style:none;display:flex}.sn-pager button{cursor:pointer;background:0 0;border:0;width:40px;height:20px;padding:0;position:relative}.sn-pager button:before,.sn-pager i{content:"";border-radius:3px;height:3px;margin-top:-1.5px;position:absolute;top:50%;left:0;right:0}.sn-pager button:before{background:#ffffff4d;transition:background-color .25s}.sn-pager button:hover:before{background:#ffffff8c}.sn-pager i{background:#fff;width:0;right:auto}.sn-pager .is-on i{animation:sn-progress var(--slide) linear forwards}.sn-pager .is-done i{width:100%}.sn.is-paused .sn-pager .is-on i{animation-play-state:paused}@keyframes sn-progress{to{width:100%}}.sn-meta{color:#fff9;text-align:right;font-size:11.5px;line-height:1.6}.sn-meta a{color:inherit;text-underline-offset:2px;-webkit-text-decoration:underline #ffffff4d;text-decoration:underline #ffffff4d}.sn-meta a:hover{color:#fff}.sn-toast{left:50%;top:calc(var(--head-h) + env(safe-area-inset-top) + 14px);z-index:3;color:var(--navy-900);white-space:nowrap;opacity:0;background:#fff;border-radius:999px;align-items:center;gap:10px;padding:12px 20px;font-weight:600;transition:opacity .4s,transform .6s cubic-bezier(.2,.9,.2,1.2);display:flex;position:fixed;transform:translate(-50%,-12px);box-shadow:0 18px 40px -14px #061a2c99}.sn.is-open .sn-toast{opacity:1;transform:translate(-50%)}.sn-toast i{background:var(--green);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 4px #2ea3484d}.sn-in{transition:opacity .9s cubic-bezier(.2, .7, .2, 1) var(--d,0s), transform .9s cubic-bezier(.2, .7, .2, 1) var(--d,0s)}.sn-js:not(.is-ready) .sn-in{opacity:0;transition:none;transform:translateY(18px)}@media (width<=639px){.sn-head-note{display:none}.sn-main{padding-bottom:calc(132px + env(safe-area-inset-bottom))}.sn-foot-in{text-align:center;flex-direction:column;align-items:center}.sn-place{align-items:center}.sn-meta{text-align:center}.sn-meta .sn-copy{display:none}}@media (width>=640px){:root{--head-h:80px}.sn-logo img{height:48px}.sn-chip{padding:8px 16px;font-size:12px}}@media (height<=520px){:root{--head-h:52px}.sn-logo img{height:30px}.sn-main{padding-bottom:72px}.sn-place{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.sn-photos{transform:none}.sn-slide{transition:opacity 1.2s!important}.sn-pager .is-on i{width:100%}.sn-js:not(.is-ready) .sn-in{opacity:1;transform:none}}
