/* One scroll-led transformation: the printed menu gives way to a real dish. */
.menu-story{--story-progress:0;position:relative;display:grid;grid-template-columns:.9fr 1.3fr;align-items:center;gap:30px;padding:100px 0 55px;border-bottom:1px solid var(--line)}
.story-copy{position:relative;z-index:3}.story-copy h2{font-size:clamp(58px,6.3vw,90px);line-height:.98;letter-spacing:-.04em}.story-copy .story-lede{font:400 26px/1.35 var(--serif);margin:28px 0 18px;color:var(--ink)}.story-copy>p:not(.story-lede){color:var(--muted);font-size:16px;line-height:1.8;max-width:34ch}.story-copy .text-link{margin-top:20px;font-size:15px}
.story-scene{position:relative;height:540px;isolation:isolate;min-width:0}.paper-menu{position:absolute;left:5px;top:36px;width:220px;padding:26px 22px;background:#fffdf9;box-shadow:8px 22px 35px #30233c19;font-family:var(--serif);transform:translateX(calc(var(--story-progress)*-28px)) rotate(calc(-4deg - var(--story-progress)*7deg));transform-origin:50% 85%;z-index:0}.paper-brand{display:block;font-size:40px;line-height:1}.paper-rule{display:block;height:1px;background:#a79a8e;margin:20px 0}.paper-dish{font-size:25px}.paper-menu p{font:400 13px/1.6 var(--sans);margin-top:6px;color:var(--muted)}.paper-menu img{width:120px;height:100px;object-fit:contain;mix-blend-mode:multiply;margin:25px auto}.paper-footer{display:block;border-top:1px solid var(--line);padding-top:14px;font:400 11px/1.5 var(--sans);color:var(--muted)}
.story-viewer{position:absolute;left:12%;right:-2%;top:0;height:440px;z-index:1;background:transparent;transform:translateY(calc((1 - var(--story-progress))*20px))}.story-viewer:not(.orbit-active){mix-blend-mode:multiply}.story-viewer canvas{filter:drop-shadow(0 20px 18px #46344c18)}.story-viewer .viewer-status{font-size:12px;background:#faf7f1df}.story-viewer.orbit-active .viewer-status{display:none}.story-caption{position:absolute;bottom:66px;left:24%;font:400 30px/1.2 var(--serif);transform:rotate(-5deg);color:var(--rust)}.story-controls{position:absolute;bottom:0;left:15%;right:0;display:flex;justify-content:center;gap:7px;flex-wrap:wrap;z-index:3}.story-controls button{background:var(--paper);border:1px solid var(--control-line);border-radius:8px;min-width:44px;min-height:44px;font-size:12px;padding:8px 12px;display:flex;align-items:center;justify-content:center}.story-controls .icon{width:16px;height:16px}.story-controls button:hover{background:var(--lavender)}.story-footnote{grid-column:1/-1;font-size:12px;line-height:1.7;max-width:76ch;color:var(--muted);margin-top:10px}
.fee-story{margin:60px 0;background:#2c2037;color:#fbf7ff;padding:80px 0 35px;overflow:hidden}.fee-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px 90px;align-items:center}.fee-copy h2{font-size:clamp(54px,5.8vw,82px);line-height:1.02;letter-spacing:-.04em}.fee-copy p{font-size:17px;line-height:1.8;max-width:42ch;color:#e0d4ea;margin-top:24px}.fee-copy strong{color:#fff;font-weight:500}.fee-cta{background:#eadff5;color:#2c2037;margin-top:30px;gap:18px;font-size:14px}.fee-cta:hover{background:#fff4ff}.fee-number{display:flex;align-items:baseline;gap:3px;font:400 clamp(130px,14vw,200px)/.9 var(--serif);letter-spacing:-.04em;color:#eadff5}.fee-number>span+span{font-size:.5em}.fee-number-label{font-size:14px;color:#e0d4ea;margin:14px 0 26px}.fee-example>label{display:flex;justify-content:space-between;gap:15px;font-size:14px}.fee-example output{font-variant-numeric:tabular-nums;color:#eadff5}.fee-example input[type=range]{width:100%;height:44px;accent-color:#d4b8ef;cursor:pointer;margin:0 0 20px}.subtotal-control{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-top:1px solid #9b89a7;font-size:14px}.subtotal-control>span{display:flex;align-items:center;gap:6px}.subtotal-control input{font-size:16px;width:100px;min-height:44px;padding:6px 8px;border:1px solid #bfa9cc;border-radius:6px;background:#3f304d;color:#fff;font-variant-numeric:tabular-nums}.fee-breakdown{margin:0;font-size:15px}.fee-breakdown>div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #9b89a7;padding:18px 0}.fee-breakdown dd{margin:0;font-variant-numeric:tabular-nums}.fee-breakdown>div:last-child{font-size:20px;color:#eadff5}.fee-example #fee-method{font-size:12px;line-height:1.8;color:#d4c6df;margin-top:10px}.fee-context{grid-column:1/-1;border-top:1px solid #9b89a7;padding-top:24px;font-size:12px;line-height:1.8;color:#d4c6df;max-width:100%}.fee-context p{max-width:95ch}.fee-context p+p{margin-top:8px}.fee-context a{color:#fbf7ff;text-decoration:underline;text-underline-offset:4px}.fee-story :focus-visible{outline-color:#e1bfff}
@media(max-width:1000px){.menu-story{grid-template-columns:1fr 1.1fr;gap:20px}.story-scene{height:470px}.story-viewer{height:380px;left:0;right:-2%}.paper-menu{width:180px;padding:20px 16px}.paper-brand{font-size:32px}.story-caption{left:10%;font-size:27px}.story-controls{left:0}.fee-layout{gap:40px}.fee-copy p{font-size:16px}}
@media(max-width:700px){.menu-story{grid-template-columns:1fr;gap:24px;padding:55px 0 32px}.story-copy h2{font-size:58px}.story-copy .story-lede{font-size:25px;margin-top:20px}.story-copy>p:not(.story-lede){max-width:none;font-size:15px}.story-copy .text-link{margin-top:12px}.story-scene{height:410px}.paper-menu{left:15px;top:20px;width:175px;padding:20px 16px}.paper-menu img{margin:16px auto;height:85px}.story-viewer{left:8%;right:-3%;top:-5px;height:330px}.story-caption{left:22%;bottom:65px;font-size:29px}.story-controls{left:0;bottom:0}.story-footnote{margin-top:0}.fee-story{padding:48px 0 28px;margin:40px 0}.fee-layout{grid-template-columns:1fr;gap:35px}.fee-copy h2{font-size:54px}.fee-copy p{font-size:16px;margin-top:20px}.fee-cta{margin-top:22px;width:100%;font-size:13px;gap:12px}.fee-number{font-size:145px}.fee-number-label{margin-bottom:25px}.fee-context{padding-top:22px}.fee-breakdown>div:last-child{font-size:18px}.subtotal-control input{width:94px}.fee-copy .icon{width:20px;height:20px}}
@media(max-width:370px){.story-copy h2{font-size:50px}.story-scene{height:380px}.story-viewer{height:300px}.paper-menu{width:160px;left:4px}.paper-brand{font-size:29px}.story-caption{left:15%;font-size:26px}.story-controls{gap:5px}.story-controls button{font-size:11px;padding:8px}.fee-copy h2{font-size:48px}}
@media(prefers-reduced-motion:reduce){.paper-menu{transform:rotate(-4deg)}.story-viewer{transform:none}}

@media(max-width:700px){.story-scene{height:460px}.story-caption{bottom:115px}}
@media(max-width:370px){.story-scene{height:430px}}
