#motionToggle{font:inherit;font-size:12px;padding:6px 9px;background:transparent;border:1px solid #204f4244;border-radius:20px;color:#204f42;cursor:pointer}#motionToggle:disabled{cursor:default}.nav-links{flex-wrap:wrap}
#invitationReveal{display:none}.unwrapping{overflow:hidden}.unwrapping #invitationReveal{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background:#204f42;color:#f3f1e6}.unwrapping main{visibility:hidden}#revealTitle{font-size:clamp(36px,7vw,64px);margin:24px 0 8px}#revealNow{margin-top:26px;background:#efd5d3;color:#204f42}.reveal-stars{font-size:28px;color:#efd5d3;animation:stars-glow 1.2s ease-in-out infinite alternate}.wrapped-gift{width:112px;height:95px;margin-top:30px;background:#efd5d3;border:3px solid #f3f1e6;border-radius:6px;position:relative;animation:gift-arrive 1.9s ease-in-out both}.wrapped-gift:before{content:'';position:absolute;width:18px;height:100%;left:44px;background:#f3f1e6}.wrapped-gift i{position:absolute;left:-8px;top:-15px;width:122px;height:22px;background:#efd5d3;border:3px solid #f3f1e6;animation:gift-lid 1.9s ease-in-out both}.wrapped-gift b{position:absolute;left:33px;top:-57px;font-size:48px;color:#efd5d3}
.snow-scene{position:relative;isolation:isolate}.section-snow{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2;border-radius:inherit}.section-snow i{position:absolute;top:-12px;width:var(--size);height:var(--size);border-radius:50%;background:#fffdf4;box-shadow:0 0 2px #204f4222;opacity:.7;animation:section-snow var(--fall) linear var(--delay) infinite;animation-play-state:paused}.in-view .section-snow i{animation-play-state:running}.garland.in-view{transform-origin:50% 0;animation:garland-breathe 6s ease-in-out infinite alternate}.season-note{animation:note-arrive .8s ease-out both}main>section.has-entered{animation:section-arrive .65s ease-out both}a.button,button{transition:transform .18s ease,box-shadow .18s ease}@media(hover:hover){a.button:hover,button:not(:disabled):hover{transform:translateY(-2px)}}button:focus-visible,a:focus-visible{outline:3px solid #b76a75;outline-offset:4px}
@keyframes section-snow{to{transform:translate(var(--drift),var(--snow-travel,620px))}}@keyframes garland-breathe{to{transform:rotate(.35deg) translateY(2px)}}@keyframes note-arrive{from{transform:translateY(9px)}to{transform:none}}@keyframes section-arrive{from{transform:translateY(10px)}to{transform:none}}@keyframes stars-glow{to{opacity:.5;transform:scale(.95)}}@keyframes gift-arrive{0%{transform:translateY(12px) rotate(-4deg)}35%{transform:rotate(3deg)}60%{transform:rotate(-3deg)}100%{transform:none}}@keyframes gift-lid{65%{transform:none}100%{transform:translateY(-20px) rotate(-8deg)}}
.motion-paused *, .page-away *{animation-play-state:paused!important}.motion-paused .section-snow{display:none}.motion-paused a,.motion-paused button{transition:none}.motion-paused main>section{transform:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.section-snow{display:none}.unwrapping #invitationReveal{display:none}.unwrapping main{visibility:visible}}@media(max-width:700px){.nav-links{justify-content:flex-end;gap:8px}#motionToggle{font-size:11px}.section-snow i:nth-child(n+9){display:none}}

#invitationTitle:focus{outline:none}