/* Candidate refinement: scoped to navigation and official destinations. */
.menu__panel{padding:calc(var(--hd) + 10px) clamp(25px,7vw,42px) max(28px,env(safe-area-inset-bottom));isolation:isolate}
.menu__intro{position:relative;padding:0 0 18px;margin-bottom:5px;border-bottom:1px solid #e9dfd8}
.menu__intro>p{font:10px var(--sans);letter-spacing:.22em;color:#967453;margin:0 0 9px}
.menu__intro h2{font:500 23px/1.55 var(--mincho);letter-spacing:.09em;color:var(--wine-deep);margin:0 0 12px}
.menu__intro>span{font:10px var(--sans);letter-spacing:.12em;color:var(--muted)}
.menu__links a{min-height:46px;padding:12px 0;font-size:14px;letter-spacing:.035em;border-color:#eee7e2;align-items:center;gap:13px}
.menu__links span{font-size:10px;letter-spacing:.08em;color:#a38c73}
.menu__links a::after{content:'›';color:#b6997d;font-size:21px;line-height:1}
.menu__links a:hover::after{transform:translateX(3px)}
.menu__note{margin-top:22px;font-size:11px;letter-spacing:.06em}
.menu__cta{grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}
.menu__cta .btn{font-size:11px;min-height:46px;padding:12px 6px;gap:5px;border-radius:5px;letter-spacing:0}
.menu__cta .btn__lineIcon{width:21px;height:21px}
.menu__cta .btn__icon{width:14px;height:14px}
.menu__hours{font-size:9px;letter-spacing:.01em;margin-top:10px}
.wg-menu-garden{position:absolute;top:calc(var(--hd) + 16px);right:12px;margin:0;width:145px;height:100px;z-index:-1;overflow:visible}
.wg-menu-garden>img{width:145px;bottom:0;right:0}
.wg-menu-garden .wg-menu-butterfly{position:absolute;width:23px;height:23px;right:46px;bottom:40px;opacity:0;transition:opacity .4s .3s}
.menu.is-open .wg-menu-butterfly{opacity:1;animation:wg-menu-flight 8s ease-in-out infinite}
.wg-menu-garden .wg-menu-butterfly img{inset:0;width:100%;height:100%;object-fit:contain;transition:none;transform-origin:52% 50%;animation:mw-flutter .3s ease-in-out infinite alternate;animation-play-state:paused}
.menu.is-open .wg-menu-butterfly img{animation-play-state:running}
.wg-official{position:relative;padding:17px 17px 16px 20px;gap:14px;border:1px solid #dfcec4;background:linear-gradient(110deg,#fffaf5,#fff);border-radius:12px;box-shadow:none;text-align:left;max-width:460px}
.wg-official>span:first-child{white-space:normal;min-width:0;font-size:13px;letter-spacing:.01em}
.wg-official small{font:10px/1.5 var(--sans);letter-spacing:.065em;color:#88725f;margin-bottom:5px}
.wg-official strong{display:block;font-family:var(--mincho);font-size:14px;font-weight:600;line-height:1.65;color:var(--wine)}
.wg-official em{display:block;margin-top:5px;font:9px/1.4 var(--sans);letter-spacing:.06em;color:#8c827b}
.wg-official .wg-arrow{width:31px;height:31px;border:0;border-radius:0;background:transparent;color:var(--wine);font-size:23px}
.wg-official:hover,.wg-official:focus-visible{background:#fff9f4;box-shadow:0 8px 17px -14px #713a43aa}
.menu__official{margin-top:20px;padding:12px 16px;min-height:0}
.menu__official strong{font-size:14px}
.menu__official em{font-size:8px;margin-top:3px}
.wg-document-hidden .wg-menu-butterfly img{animation-play-state:paused!important}
@media(max-width:359px){.menu__links a{font-size:13px}.wg-official strong{font-size:13px}.menu__cta{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.wg-menu-butterfly,.wg-menu-butterfly img{animation:none!important}.wg-menu-garden img{opacity:1;transform:none}.wg-official,.wg-arrow{transition:none!important}}


body.menu-open .hd{background:#fff;box-shadow:0 4px 14px -12px #51343e44}

/* In-page official links stay compact; the menu keeps its existing size. */
.wg-official:not(.menu__official){min-height:48px;padding:7px 15px;border-radius:12px;gap:10px;background:#fffdf9}
.wg-official:not(.menu__official) small{font-size:9px;line-height:1.4;margin-bottom:1px}
.wg-official:not(.menu__official) strong{font-size:13px;line-height:1.5}
.wg-official:not(.menu__official) em{display:none}
.wg-official:not(.menu__official) .wg-arrow{width:24px;height:24px;font-size:20px}
.btn__lineIcon svg{width:100%;height:100%}

/* Official links: a drawn chevron, independent of emoji fonts. */
.wg-official .wg-arrow::before{content:"";display:block;width:7px;height:7px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:translateX(-2px) rotate(45deg)}
.wg-official:hover .wg-arrow{transform:translateX(2px);background:transparent}
/* Consistent directional navigation marks. Previous actions retain left direction. */
.nav-chevron{display:inline-grid;place-items:center;width:18px;height:18px;flex:none;vertical-align:middle}
.nav-chevron::before,#work .work-cards__button::before{content:"";display:block;width:7px;height:7px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:translateX(-2px) rotate(45deg)}
#work .work-cards__button--prev::before{transform:translateX(2px) rotate(-135deg)}
.menu__links a::after{content:"";width:7px;height:7px;flex:none;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg);margin-right:3px}
.menu__links a:hover::after{transform:translateX(3px) rotate(45deg)}
#work .work-cards__swipe-mark{display:inline-flex;align-items:center;justify-content:space-between;width:23px;height:12px;vertical-align:middle}
#work .work-cards__swipe-mark::before,#work .work-cards__swipe-mark::after{content:"";display:block;width:5px;height:5px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg)}
#work .work-cards__swipe-mark::before{transform:rotate(-135deg)}

/* Touch does not inherit a keyboard focus frame. Keyboard focus stays visible. */
.menu a:focus:not(:focus-visible){outline:none}
@media(max-width:959px){
  .final__card{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fffdf9}
}
