:root{--navigation-offset:128px}
.header-brand{display:flex;align-items:center;gap:12px;min-width:0}
.menu-toggle,.menu-close{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}
.menu-toggle svg,.menu-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
.menu-toggle:hover,.menu-close:hover{background:var(--warm)}
.menu-toggle:focus-visible,.menu-close:focus-visible,.site-menu a:focus-visible,.site-menu summary:focus-visible,.site-menu button:focus-visible{outline:2px solid var(--rose);outline-offset:3px}
.site-menu{position:fixed;inset:0 auto 0 0;margin:0;padding:0;width:min(440px,88vw);height:100%;height:100dvh;max-width:none;max-height:none;border:0;border-right:1px solid var(--line);background:var(--paper);color:var(--ink);box-shadow:20px 0 70px #26384330;overflow:hidden}
.site-menu::backdrop{background:#24333e80}
.site-menu[open]{display:flex;flex-direction:column;animation:menu-enter .22s ease-out}
.menu-heading{flex:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 28px;background:var(--warm);border-bottom:1px solid var(--line)}
.menu-heading .logo{font-size:28px;line-height:1.2}
.menu-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:10px 28px 24px}
.menu-group{border-bottom:1px solid var(--line);padding:16px 0}
.menu-group summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:6px 0;cursor:pointer}
.menu-group summary::-webkit-details-marker{display:none}
.menu-group summary .group-name{display:block;font:500 28px/1.2 'Cormorant Garamond',serif;letter-spacing:.015em}
.menu-group summary .group-subtitle{display:block;font-size:12px;line-height:1.6;color:var(--sub);margin-top:3px;letter-spacing:.02em}
.menu-group summary::after{content:'';width:8px;height:8px;margin-right:5px;border-right:1px solid var(--rose);border-bottom:1px solid var(--rose);transform:rotate(45deg);transition:transform .18s ease;flex:none}
.menu-group[open] summary::after{transform:rotate(225deg)}
.menu-items{display:grid;gap:3px;padding:12px 0 4px 12px}
.menu-items a{display:flex;align-items:center;min-height:44px;padding:9px 12px;border-radius:8px;color:var(--sub);text-decoration:none;font-size:14px;line-height:1.65;word-break:keep-all;overflow-wrap:anywhere;letter-spacing:0}
.menu-items a:hover,.menu-items a[aria-current="location"]{background:var(--warm);color:var(--ink)}
.menu-items a.menu-subitem{padding-left:24px;font-size:14px}
.menu-bottom{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px 28px max(18px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper)}
.menu-bottom>span{font-size:12px;letter-spacing:.08em;color:var(--sub)}
.menu-bottom .langs button{min-height:38px;min-width:40px;font:inherit;font-size:14px}
#top,#services,#portfolio,#profile,#schedule,#location,#reservation,#process,#treatment-brows,#treatment-lips,#treatment-hair,#treatment-eyes,#treatment-removal,#portfolio-brows,#portfolio-eyeliner,#portfolio-lips,#portfolio-eye-detail,#channel-kakao,#channel-line,#channel-wechat,#guide{scroll-margin-top:var(--navigation-offset)}
.navigation-target:focus{outline:none}
@keyframes menu-enter{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@media(max-width:820px){.top .section-nav{display:none}.top .nav{gap:12px;min-height:64px;height:auto;padding-block:8px}.header-brand{gap:8px}.header-brand .logo{font-size:25px;letter-spacing:.13em}.top .langs button{font-size:14px;padding:6px 9px;min-height:34px}.menu-heading{padding:20px 22px}.menu-scroll{padding:8px 22px 22px}.menu-bottom{padding-inline:22px}}
@media(max-width:380px){.top .nav{gap:6px}.header-brand{gap:5px}.header-brand .logo{font-size:22px;letter-spacing:.09em}.top .langs button{padding:6px;min-width:29px}.menu-toggle{width:40px;height:40px}.menu-bottom{flex-wrap:wrap}.menu-heading,.menu-scroll,.menu-bottom{padding-inline:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-menu[open]{animation:none}.menu-group summary::after{transition:none}}
