.menu-shade{position:fixed;z-index:100;inset:0;border:0;background:rgb(17 64 90/.35);opacity:0;pointer-events:none;transition:opacity .2s ease}
.menu-shade.open{opacity:1;pointer-events:auto}
.menu-panel{position:fixed;z-index:101;top:0;right:0;width:min(84vw,340px);height:100%;padding:max(24px,env(safe-area-inset-top)) 22px 30px;background:#f8fffc url("page3-background.webp") center top/cover;box-shadow:-12px 0 34px rgb(30 86 112/.22);font-family:"M PLUS Rounded 1c","Hiragino Maru Gothic ProN","Yu Gothic",sans-serif;transform:translateX(105%);transition:transform .24s ease}
.menu-panel.open{transform:translateX(0)}
.menu-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:17px;border-bottom:1px dashed #9ccbdc;color:#075daf;font-size:16px;font-weight:800}
.menu-title{display:flex;align-items:center;gap:9px;font-size:18px}
.menu-cross{width:37px;height:37px;border:0;border-radius:50%;display:grid;place-items:center;padding:0;color:#fff;background:#ff5966;font-size:24px;line-height:1;cursor:pointer}
.menu-links{display:grid;gap:10px;margin-top:19px}
.menu-links a{min-height:54px;padding:0 17px;border:2px solid #80bdd9;border-radius:16px;display:flex;align-items:center;justify-content:space-between;color:#075daf;background:rgb(255 255 255/.93);text-decoration:none;font-size:16px;font-weight:800;box-shadow:0 4px 10px rgb(44 104 128/.08)}
.menu-links a.primary{border-color:#ff6972;color:#fff;background:linear-gradient(180deg,#ff6f77,#f44355)}
body.menu-open{overflow:hidden!important}
@media(prefers-reduced-motion:reduce){.menu-panel,.menu-shade{transition:none}}
