.menu-hero{padding:70px 0 55px}.menu-hero>.eyebrow,.menu-hero>h1{text-align:center}.menu-hero h1{font-size:clamp(25px,3.2vw,43px);line-height:1.5;margin:20px 0 12px;letter-spacing:-.065em}.menu-board{position:relative;width:100%;max-width:900px;height:550px;margin:0 auto;touch-action:pan-y}.menu-block{position:absolute;background:#fff;border:1px solid #e1e1d9;box-shadow:0 3px 12px #252b2a05;transition:box-shadow .15s,border-color .15s;overflow:visible}.menu-block:hover,.menu-block:focus-within{border-color:#b6bbb5;box-shadow:0 6px 18px #252b2a0a}.menu-block.moving{border-color:#bf583e;box-shadow:0 8px 22px #252b2a12;z-index:2}.block-link{display:flex;flex-direction:column;justify-content:flex-end;height:100%;padding:27px;position:relative}.block-link h2{font-size:clamp(30px,4.3vw,56px);letter-spacing:-.06em;line-height:1.07;margin:0 0 15px;font-weight:600}.block-works h2{font-size:clamp(36px,5.5vw,70px)}.block-caption{font-size:12px;color:#565c58;line-height:1.7;word-break:keep-all}.block-arrow{position:absolute;top:18px;right:20px;font-size:22px;color:#727974}.move-handle{position:absolute;z-index:3;top:3px;left:3px;width:40px;height:40px;border:0;background:transparent;color:#9a9e98;font:25px/1 sans-serif;cursor:grab;touch-action:none;padding:0}.move-handle:active{cursor:grabbing}.move-handle:focus-visible,#reset-menu:focus-visible{outline:2px solid #bf583e;outline-offset:3px}.block-link:focus-visible{outline-offset:4px}.menu-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:720px;margin:0 auto}.menu-controls p{font-size:12px;line-height:1.9;color:#565c58;margin:0}.menu-controls p span{color:#727974;font-size:11px}#reset-menu{font:500 12px 'DM Sans','Noto Sans KR',sans-serif;border:0;border-bottom:1px solid #b5b8b1;background:transparent;padding:12px 0;color:#565c58;cursor:pointer;white-space:nowrap}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1000px){.menu-hero{padding:40px 0}.menu-board{height:435px;max-width:430px;margin-top:25px}.block-link{padding:18px 15px}.block-link h2{font-size:32px;line-height:1.12;margin-bottom:13px}.block-works h2{font-size:39px}.block-caption{font-size:11px}.block-arrow{top:12px;right:12px;font-size:18px}.menu-controls{gap:14px}.menu-controls p{font-size:11px}.menu-controls p span{font-size:10px}}@media(max-width:350px){.block-link{padding:16px 12px}.block-link h2{font-size:28px}.block-works h2{font-size:32px}.block-caption{font-size:10px}}@media(prefers-reduced-motion:reduce){.menu-block{transition:none}}
.block-works h2{font-size:48px}.block-hello h2{font-size:38px}@media(max-width:1000px){.block-me h2{font-size:28px}.block-works h2{font-size:30px}.block-hello h2{font-size:26px}}

.block-empty{background:transparent;border:1px solid #cbcfc6;box-shadow:none}.empty-toggle{width:100%;height:100%;padding:38px 18px 18px;border:0;background:transparent;font:400 13px/1.9 "Noto Sans KR",sans-serif;color:#565c58;cursor:pointer;word-break:keep-all}.empty-toggle:focus-visible{outline:2px solid #bf583e;outline-offset:4px}@media(max-width:1000px){.menu-board{height:560px}.empty-toggle{font-size:11px;padding:28px 12px 12px}}@media(min-width:1001px){.menu-board{height:580px}.block-me h2{font-size:43px}.block-days h2{font-size:48px}.block-hello h2{font-size:36px}}
@media(max-width:1000px){.menu-board{height:590px}.block-me h2{font-size:26px}}@media(max-width:350px){.block-me h2{font-size:23px}.block-works h2{font-size:27px}.block-hello h2{font-size:23px}}

/* Compact collected starting arrangement, with clear six-dot drag grips. */
.move-handle{width:44px;height:44px;top:4px;left:4px;color:#565c58;display:grid;place-items:center}
.move-handle span{font-size:0;width:16px;height:24px;background:radial-gradient(circle,#656d64 2px,transparent 2.5px) 0 0/8px 8px}
.move-handle:hover{background:#f3f2ec;border-radius:5px}.move-handle:active{cursor:grabbing}
.menu-controls{max-width:600px}.menu-board{height:570px}.menu-controls p{font-size:12px}
@media(max-width:1000px){.menu-board{height:450px}.block-link{padding:16px 10px}.block-me h2{font-size:23px}.block-works h2{font-size:27px}.block-days h2{font-size:22px}.block-hello h2{font-size:21px}.block-caption{font-size:10px;line-height:1.7}.empty-toggle{padding:50px 6px 8px;font-size:10px;line-height:1.6;word-break:normal}.menu-controls{align-items:flex-start;gap:10px}.menu-controls p{font-size:11px}.menu-controls p span{font-size:10px}}
@media(max-width:350px){.block-days h2{font-size:20px}.block-hello h2{font-size:20px}.block-link{padding-left:9px;padding-right:9px}}
.block-empty{background:#fff;border:1px solid #e1e1d9;box-shadow:0 3px 12px #252b2a05}
@media(max-width:1000px){.block-days h2{font-size:25px}}@media(max-width:350px){.block-days h2{font-size:21px}}
.menu-block.settling{transition:left .34s cubic-bezier(.22,1.22,.36,1),top .34s cubic-bezier(.22,1.22,.36,1),box-shadow .15s,border-color .15s}.menu-block.moving{transition:none;z-index:5}.menu-block.moving .move-handle{cursor:grabbing}@media(prefers-reduced-motion:reduce){.menu-block.settling{transition:none}}
@media(max-width:1000px){.menu-hero{padding:24px 0 28px}}

/* Seven-card comparison: staggered outer silhouette, upright cards. */
.menu-board{height:625px;max-width:960px}.menu-controls{max-width:810px}
@media(max-width:1000px){.menu-board{height:568px;max-width:430px}.block-me h2{font-size:23px}.block-works h2{font-size:27px}.block-days h2{font-size:23px}.block-hello h2{font-size:23px}.empty-toggle{font-size:10px;padding:50px 4px 5px;line-height:1.5;overflow-wrap:anywhere}}
@media(max-width:350px){.block-me h2,.block-hello h2,.block-days h2{font-size:21px}.block-works h2{font-size:25px}}
@media(max-width:1000px){.menu-hero{padding:12px 0 24px}.menu-hero h1{font-size:22px;line-height:1.35;margin:12px 0 6px}.menu-board{height:536px;margin-top:14px}.block-days h2{font-size:21px;margin-bottom:8px}.empty-toggle{line-height:1.35}}
.menu-board{height:700px}.block-me h2{font-size:40px}.block-works h2{font-size:46px}.block-days h2{font-size:43px}.block-hello h2{font-size:34px}@media(max-width:1000px){.menu-board{height:548px}.block-me h2,.block-hello h2{font-size:23px}.block-works h2{font-size:27px}.block-days h2{font-size:21px}}@media(max-width:350px){.block-me h2,.block-hello h2{font-size:21px}.block-works h2{font-size:25px}}
@media(min-width:1001px){.menu-board{height:620px}}
.menu-block[data-block="empty"] .empty-toggle{padding:48px 6px 4px;font-size:11px;line-height:1.5;word-break:normal;overflow-wrap:anywhere}@media(max-width:1000px){.menu-block[data-block="empty"] .empty-toggle{padding:48px 4px 4px;font-size:10px;line-height:1.3}}
@media(min-width:1001px){.menu-hero{padding:28px 0 38px}.menu-hero h1{margin:12px 0 6px}}
@media(min-width:1001px){.block-days .block-link{padding:18px 22px}.block-days h2{font-size:36px;margin-bottom:12px}}
.empty-toggle{display:block}.jin-initial{font-size:1.1em;color:#a6476b;line-height:inherit}
.jin-initial{color:#c76b94;font-size:max(1.1em,24px)}.jin-suffix{font-size:.84em;line-height:inherit;color:var(--ink);vertical-align:baseline}
/* Local mobile proportion correction; desktop geometry and typography stay intact. */
.menu-board,.move-handle,.move-handle *{-webkit-user-select:none;user-select:none}.move-handle{-webkit-touch-callout:none;touch-action:none}.menu-board.is-dragging,.menu-board.is-dragging *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
@media(max-width:1000px){
 .menu-board{width:calc(100vw - 24px);max-width:600px;left:50%;transform:translateX(-50%);margin-left:0;margin-right:0}
 .block-link{padding:5px 7px}.block-link h2{line-height:1.05;margin-bottom:5px;letter-spacing:-.055em}
 .block-me h2{font-size:16px}.block-works h2{font-size:19px}.block-days h2{font-size:16px;margin-bottom:5px}.block-hello h2{font-size:16px}
 .block-caption{font-size:9px;line-height:1.2;word-break:normal}.block-me .block-caption{font-size:8px}
 .move-handle{top:-3px;left:-3px;width:44px;height:44px}.move-handle span{width:12px;height:18px;background-size:6px 6px;background-image:radial-gradient(circle,#656d64 1.6px,transparent 2px)}
 .block-empty .move-handle{left:calc(50% - 22px);top:0}.menu-block[data-block="empty"] .move-handle{top:-8px}
 .empty-toggle,.menu-block[data-block="empty"] .empty-toggle{padding:0;font-size:11px;line-height:1.5}
 .empty-message:not([hidden]){position:absolute;left:50%;top:100%;transform:translateX(-50%);min-width:126px;max-width:150px;padding:8px 10px;background:#fff;border:1px solid #e1e1d9;box-shadow:0 3px 12px #252b2a12;z-index:9;color:#565c58;pointer-events:none}
 .block-empty:has(.empty-toggle[aria-pressed="true"]){z-index:8}
 .block-hello .jin-initial{font-size:24px;line-height:1}.block-hello .jin-suffix{font-size:.84em}
 .menu-controls{margin-top:12px}.menu-controls p{font-size:10px}
}
@media(max-width:350px){.block-me h2{font-size:15px}.block-works h2{font-size:17px}.block-days h2{font-size:14px}.block-hello h2{font-size:15px}.block-caption{font-size:8px}.block-hello .jin-initial{font-size:24px}}

/* Readable phone composition: preserve each silhouette, re-space the cluster vertically. */
@media(max-width:1000px){
 .menu-board{max-width:430px}
 .block-link{padding:6px}
 .block-me h2{font-size:18px}.block-works h2{font-size:22px}.block-days h2{font-size:20px}.block-hello h2{font-size:17px}
 .block-caption,.block-me .block-caption{font-size:12px;line-height:1.2}
 .move-handle{left:0;top:0}.menu-block[data-block="empty"] .move-handle{top:0}
 .block-empty .move-handle{top:0}
 .menu-controls p,.menu-controls p span{font-size:11px}
}
.menu-board,.menu-board *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}

/* Keep the v17 composition; modest uniform shrink, compact header and one control row. */
@media(max-width:1000px){
 .nav{min-height:48px;padding:2px 0}.brand{font-size:23px}
 .menu-hero{padding:8px 0 16px}.menu-hero>.eyebrow{font-size:10px;line-height:14px}
 .menu-hero h1{font-size:21px;line-height:1.25;margin:5px 0 0}
 .menu-board{margin-top:8px}
 .menu-controls{margin-top:4px;align-items:center;gap:8px;min-height:44px}
 .menu-controls p{font-size:12px;line-height:1.35}.menu-controls p span{display:none}
 #reset-menu{min-height:44px;padding:8px 0;font-size:12px}
 .compact-viewport .nav{min-height:44px;padding:0}
 .compact-viewport .menu-hero{padding-top:4px}
 .compact-viewport .menu-hero h1{font-size:20px;line-height:1.2;margin-top:3px}
 .compact-viewport .menu-board{margin-top:6px}
 .menu-block[data-block="empty"] .empty-message:not([hidden]){left:auto;right:0;transform:none}
}

@media(max-width:1000px){.block-me .block-link{padding:5px}}

@media(max-width:1000px){.block-hello .block-link{padding-bottom:2px}.block-hello h2{margin-bottom:1px}}

/* Mobile opening frame: preserve card geometry, keep the next photograph beyond its initial fold. */
@media(max-width:1000px){
 .menu-hero{padding-top:calc(8px + var(--menu-breathing-top,0px));min-height:calc(var(--menu-first-view-height,100svh) - var(--menu-nav-height,49px))}
 .compact-viewport .menu-hero{padding-top:calc(4px + var(--menu-breathing-top,0px))}
}
