.menu-toggle{display:none}.mobile-menu:not([open]){display:none}.mobile-menu{inset:0;margin:0;border:0;width:100%;max-width:none;height:100dvh;max-height:none;padding:0;color:#f2efdf;background:#233fea;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;z-index:1000}.mobile-menu::backdrop{background:#233fea}.menu-is-open{overflow:hidden}.menu-top{display:flex;align-items:center;justify-content:space-between;padding:calc(16px + env(safe-area-inset-top)) 6% 16px;border-bottom:1px solid #f2efdf40;position:relative;z-index:2}.menu-brand{font-size:30px;font-weight:900;letter-spacing:-2px}.menu-brand>span{color:#edff76;font-size:13px;margin-left:5px}.menu-close{display:flex;align-items:center;gap:14px;min-height:48px;padding:0 0 0 12px;background:transparent;border:0;color:inherit;font-size:13px}.menu-close>span:last-child{font-size:35px;font-weight:300;line-height:1;width:40px;height:40px;display:grid;place-items:center}.menu-inner{padding:35px 6% calc(25px + env(safe-area-inset-bottom));position:relative;z-index:1;min-height:calc(100dvh - 90px);display:flex;flex-direction:column}.menu-kicker{font-family:'Courier New',monospace;font-size:11px;letter-spacing:1px;margin:0 0 28px}.menu-inner nav{display:flex;flex-direction:column}.menu-link{display:flex;align-items:baseline;gap:12px;border-bottom:1px solid #f2efdf45;padding:15px 0 19px;min-height:75px;color:inherit}.menu-number{font-family:'Courier New',monospace;font-size:11px;opacity:.65;align-self:center}.menu-link-text{font-size:clamp(38px,10.7vw,70px);font-weight:500;letter-spacing:-2.5px;line-height:1.05;white-space:nowrap}.menu-link:nth-child(2) .menu-link-text,.menu-link:nth-child(4) .menu-link-text{font-family:Georgia,serif;font-style:italic}.menu-arrow{font-size:25px;margin-left:auto;align-self:center;color:#edff76;transition:transform .25s}.menu-link[aria-current=page]{color:#edff76}.menu-link:hover .menu-arrow{transform:translate(4px,-4px)}.menu-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-top:auto;padding-top:45px;font-family:'Courier New',monospace;font-size:11px;line-height:1.7}.menu-bottom a{min-height:44px;display:flex;align-items:center;font-family:Arial,sans-serif;font-size:14px}.menu-flower{position:absolute;bottom:65px;right:-24px;font-size:190px;color:#f7a1c0;opacity:.12;pointer-events:none;line-height:1;transform:rotate(15deg)}.mobile-menu a:focus-visible,.mobile-menu button:focus-visible{outline:2px solid #edff76;outline-offset:5px}.mobile-menu[open]{animation:menu-curtain .5s cubic-bezier(.16,1,.3,1) both}.mobile-menu[open] .menu-link{animation:menu-link-in .55s cubic-bezier(.16,1,.3,1) calc(90ms + var(--menu-order)*65ms) both}.mobile-menu[open] .menu-close>span:last-child{animation:menu-cross .5s ease both}.mobile-menu.is-closing{animation:menu-leave .24s ease both}.mobile-menu.is-closing .menu-link{animation:none}.mobile-menu.is-closing .menu-close>span:last-child{animation:none}
@keyframes menu-curtain{from{clip-path:inset(0 0 100% 0 round 0 0 50% 50%)}to{clip-path:inset(0)}}@keyframes menu-link-in{from{opacity:0;transform:translateY(22px) rotate(2deg)}to{opacity:1;transform:none}}@keyframes menu-leave{to{opacity:0;transform:translateY(-18px)}}@keyframes menu-cross{from{transform:rotate(-90deg)}to{transform:rotate(0)}}
@media(max-width:700px){.mobile-menu-ready .navigation{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;min-height:76px;padding:12px 0;gap:20px}.mobile-menu-ready .navigation>nav{display:none}.menu-toggle{display:flex;align-items:center;justify-content:center;gap:15px;background:transparent;border:1px solid var(--line);border-radius:28px;min-height:46px;padding:10px 17px;font-size:13px}.menu-bars{display:flex;flex-direction:column;gap:6px;width:19px}.menu-bars i{display:block;width:19px;height:1.5px;background:currentColor;transition:transform .3s}.menu-toggle[aria-expanded=true] .menu-bars i:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-bars i:last-child{transform:translateY(-3.75px) rotate(-45deg)}}
@media(max-height:570px){.menu-inner{padding-top:20px}.menu-kicker{margin-bottom:12px}.menu-link{padding:10px 0;min-height:57px}.menu-link-text{font-size:37px}.menu-bottom{padding-top:25px}}
@media(prefers-reduced-motion:reduce){.mobile-menu,.mobile-menu .menu-link,.mobile-menu .menu-close>span{animation:none!important;transition:none!important}}

.menu-theme{align-self:flex-start;margin-top:16px;min-height:44px;padding:9px 16px;border:1px solid #f2efdf80;border-radius:24px;background:transparent;color:inherit;font-size:13px}
/* Menu colors follow the site's appearance immediately, including while open. */
.mobile-menu{--menu-bg:#233fea;--menu-fg:#f2efdf;--menu-accent:#edff76;--menu-rule:#f2efdf45;--menu-soft:#f7a1c0;background:var(--menu-bg);color:var(--menu-fg);transition:background-color .35s,color .35s}
body.darkroom .mobile-menu{--menu-bg:#1f2825;--menu-fg:#f2efdf;--menu-accent:#dfff83;--menu-rule:#f2efdf30;--menu-soft:#dfff83}
.mobile-menu::backdrop{background:transparent}.menu-top{border-color:var(--menu-rule)}.menu-brand>span,.menu-arrow,.menu-link[aria-current=page]{color:var(--menu-accent)}.menu-link{border-color:var(--menu-rule)}.menu-flower{color:var(--menu-soft);bottom:100px;opacity:.1}.menu-theme{border-color:var(--menu-rule);color:var(--menu-fg);align-self:stretch;display:flex;align-items:center;justify-content:center;min-height:48px;background:color-mix(in srgb,var(--menu-fg) 5%,transparent);margin-top:20px;transition:background .25s,border-color .25s}.menu-theme:hover{border-color:var(--menu-accent);background:color-mix(in srgb,var(--menu-fg) 10%,transparent)}.mobile-menu a:focus-visible,.mobile-menu button:focus-visible{outline-color:var(--menu-accent)}
.menu-close{gap:12px}.menu-close>span:last-child{border:1px solid var(--menu-rule);border-radius:50%;width:44px;height:44px;font-size:30px;transition:background .25s}.menu-close:hover>span:last-child{background:var(--menu-accent);color:var(--menu-bg)}.menu-kicker{opacity:.75;letter-spacing:1.3px}.menu-link-text{transition:translate .3s cubic-bezier(.2,.8,.2,1)}.menu-link:hover .menu-link-text{translate:6px 0}.menu-link[aria-current=page] .menu-number{opacity:1}.menu-link[aria-current=page] .menu-number:before{content:'●';font-size:6px;display:block;line-height:1;margin-bottom:5px}.menu-bottom{padding-top:35px}
.mobile-menu.is-closing{animation:menu-fold-away .48s cubic-bezier(.65,0,.35,1) both;pointer-events:none}.mobile-menu.is-closing .menu-link{animation:menu-link-away .24s ease-in calc((3 - var(--menu-order))*25ms) both}.mobile-menu.is-closing .menu-close>span:last-child{animation:menu-close-turn .4s ease both}.mobile-menu.is-closing .menu-bottom,.mobile-menu.is-closing .menu-theme{animation:menu-detail-away .2s ease both}
@keyframes menu-fold-away{0%{clip-path:inset(0);opacity:1;transform:none}100%{clip-path:inset(0 0 100% 0 round 0 0 35% 35%);opacity:1;transform:none}}
@keyframes menu-link-away{to{opacity:0;transform:translateY(-14px)}}@keyframes menu-close-turn{to{transform:rotate(90deg)}}@keyframes menu-detail-away{to{opacity:0;translate:0 -8px}}
@media(max-width:380px){.menu-inner{padding-top:25px}.menu-link-text{font-size:38px;letter-spacing:-2px}.menu-link{gap:10px}.menu-kicker{font-size:10px}.menu-bottom{font-size:10px}}
@media(prefers-reduced-motion:reduce){.mobile-menu.is-closing,.mobile-menu.is-closing *{animation:none!important;transition:none!important}}
