/* Ink, a vermilion seal and an open printed menu on warm paper. */
.customer-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,376px);align-items:center;gap:24px;width:100%;max-width:760px;margin-left:auto;padding:36px 0 34px;position:relative;isolation:isolate}
.customer-hero:before{content:'';position:absolute;inset:4px -8px 8px -36px;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 32% 48%,#d9cbb147,transparent 65%),repeating-linear-gradient(100deg,transparent 0 5px,#8e795503 6px,transparent 7px 11px);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 83%,transparent)}
.hero-enso{position:absolute;left:-48px;top:4px;width:min(440px,58%);height:auto;z-index:-1;color:#344337;opacity:.065;pointer-events:none;transform:rotate(-13deg)}
.customer-hero-copy{min-width:0;width:100%;max-width:400px;justify-self:end;padding:10px 0}
.hero-signature{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.hero-seal{display:grid;align-content:center;justify-items:center;gap:2px;flex:0 0 35px;width:35px;height:39px;background:#963e31;color:#fbf3df;border:2px solid #963e31;box-shadow:inset 0 0 0 1px #fbf3df9c;font:700 11px/1 Georgia,serif;letter-spacing:1.1px;transform:rotate(-5deg);border-radius:2px 1px 3px 1px}
.customer-hero .eyebrow{color:#675f4d;font-size:9px;font-weight:650;letter-spacing:1.55px;line-height:1.7;margin:0;max-width:275px;text-wrap:balance}
.customer-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(46px,4.1vw,56px);font-weight:400;line-height:1.07;max-width:400px;margin:0 0 19px;letter-spacing:-2.3px;color:#23382e}
.customer-hero h1 em{display:block;width:max-content;max-width:100%;color:#23382e;font-weight:400;letter-spacing:-2.1px}
.customer-hero .hero-description{font-size:13px;color:#61665a;line-height:1.8;margin:0 0 20px;max-width:345px;text-wrap:pretty}
.hero-description strong{color:#384a3b;font-weight:500}
.hero-service-times{display:flex;flex-wrap:wrap;gap:12px 28px;width:fit-content;max-width:100%;margin-top:4px;padding-top:15px;border-top:1px solid #b9ab8e70}
.hero-service-times>div{padding:0}
.hero-service-times span{display:block;font-size:10px;color:#6f7264;line-height:1.5;margin-bottom:4px}
.hero-service-times b{display:block;font-size:18px;font-weight:650;color:#2d4435;line-height:1.3}
.customer-hero .hero-time-note{margin:12px 0 0;font-size:12px;color:#853b30;font-weight:700;line-height:1.5;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px}
.mini-menu{padding:0;min-width:0;border:0;border-radius:0;background:none;box-shadow:none}
.mini-menu-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px;gap:10px;padding:0 4px}
.mini-menu-heading>span{font:italic 15px/1.4 Georgia,serif;color:#5d624f}
.mini-menu button{background:transparent;color:#4f5547;border:0;border-radius:50%}
.mini-menu button:hover:not(:disabled){background:#e5dcc8}
.mini-menu .mini-menu-expand{display:flex;align-items:center;gap:6px;font-size:11px;padding:7px 9px;border-radius:20px;border:1px solid #d8cbae}
.mini-menu-expand svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.5;fill:none}
.mini-menu-stage{position:relative;width:100%;min-height:140px;display:flex;align-items:center;justify-content:center;padding:0 0 10px}
.mini-menu-book{position:relative;filter:drop-shadow(0 12px 10px #17201732)}
.mini-menu-book:before{content:'';position:absolute;inset:5px -3px -5px;background:#d6cbb4;border-radius:3px 3px 5px 5px;box-shadow:0 2px 0 #f5efdf,0 3px 0 #a99b7e,0 5px 0 #ebe1c9,0 7px 0 #394033,0 9px 12px #222d2a20;pointer-events:none}
.mini-menu-book:after{content:'';position:absolute;top:0;bottom:0;left:50%;width:22px;transform:translateX(-50%);z-index:10;pointer-events:none;background:linear-gradient(90deg,transparent,#0005 38%,#0009 49%,#d4caa61f 54%,transparent);border-radius:45%}
.mini-menu-book.is-cover:before,.mini-menu-book.is-cover:after{display:none}
.mini-menu-leaf{background:#171a16;overflow:hidden}
.mini-menu-leaf:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px #ffffff12}
.mini-menu-leaf.--left:after{background:linear-gradient(90deg,#ffffff08,transparent 14%,transparent 80%,#0005)}
.mini-menu-leaf.--right:after{background:linear-gradient(90deg,#0005,transparent 16%,transparent 86%,#ffffff08)}
.mini-menu-leaf img{display:block;width:100%;height:100%;object-fit:contain;user-select:none}
.mini-menu-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:15px}
.mini-menu-controls button{min-width:40px;min-height:40px;padding:4px 10px;font-size:22px;line-height:1;border:1px solid #d4c8ad}
.mini-menu-status{font-size:10px;letter-spacing:1px;color:#77796b;font-variant-numeric:tabular-nums;min-width:70px;text-align:center}
.customer-hero .mini-menu-hint{font-size:10px;color:#858572;text-align:center;margin:7px 0 0;line-height:1.5}
.mini-menu-fallback{display:flex;align-items:center;gap:20px;color:#777052;font-size:12px;min-height:170px}
.mini-menu-fallback img{width:100px;box-shadow:3px 2px 0 #c5bba4,5px 4px 0 #eee4ce,0 12px 16px #0002}
@media(max-width:1150px) and (min-width:961px){.customer-hero{grid-template-columns:minmax(0,1fr) minmax(280px,46%);gap:22px}.customer-hero h1{font-size:46px;letter-spacing:-2px}.customer-hero .eyebrow{font-size:8px;letter-spacing:1.2px}.hero-signature{gap:9px}.customer-hero .hero-description{font-size:12px}.hero-service-times{gap:20px}.hero-service-times b{font-size:17px}.mini-menu-heading>span{font-size:13px}.mini-menu .mini-menu-expand{font-size:10px;padding:6px}}
@media(max-width:960px) and (min-width:801px){.customer-hero{grid-template-columns:1fr;gap:24px;max-width:410px;padding-top:30px}.customer-hero-copy{max-width:none}.customer-hero h1{font-size:51px}.hero-enso{width:380px;max-width:100%;left:-25px}.mini-menu{width:100%;max-width:376px;justify-self:center}}
@media(max-width:800px) and (min-width:701px){.customer-hero{grid-template-columns:minmax(0,1fr) minmax(300px,350px);gap:22px;padding-top:28px}.customer-hero h1{font-size:46px;letter-spacing:-2px}.customer-hero .eyebrow{font-size:8px;letter-spacing:1px}.hero-signature{gap:9px}.mini-menu .mini-menu-expand{min-height:36px}}
@media(max-width:700px){.customer-hero{grid-template-columns:1fr;gap:24px;max-width:420px;margin-right:auto;padding:27px 0 24px}.customer-hero-copy{padding:0;max-width:none}.hero-enso{width:360px;max-width:100%;left:-22px;top:5px}.hero-signature{margin-bottom:20px;gap:12px}.customer-hero .eyebrow{font-size:8px;letter-spacing:1.35px;max-width:255px}.customer-hero h1{font-size:50px;max-width:360px;margin-bottom:18px;letter-spacing:-2px}.customer-hero h1 em{letter-spacing:-2px}.customer-hero .hero-description{font-size:13px;margin-bottom:17px}.hero-service-times{gap:28px;padding-top:14px}.customer-hero .hero-time-note{margin-top:11px}.mini-menu{width:100%;max-width:376px;justify-self:center;padding:0 2px}.mini-menu-heading{margin-bottom:15px}.mini-menu .mini-menu-expand{min-height:36px}.mini-menu-controls{margin-top:13px}.customer-hero .mini-menu-hint{margin-top:5px}}
@media(max-width:360px){.customer-hero h1{font-size:44px}.hero-service-times{gap:22px}.hero-service-times b{font-size:17px}.customer-hero .eyebrow{letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){.mini-menu *{transition:none!important}}

/* Closed cover is centered; exposed paper and a dark cover give the book depth. */
.mini-menu-book{transition:transform .5s ease}
.mini-menu-book.is-cover{transform:translateX(-25%)}
.mini-menu-book.is-cover:before{display:block;left:50%;right:-6px;top:4px;bottom:-7px;background:repeating-linear-gradient(0deg,#bbaf93 0 1px,#ede4cf 1px 2px,#c8bea6 2px 3px);box-shadow:2px 2px 0 #eee5d2,3px 5px 0 #1e241b,4px 6px 0 #918365,0 15px 18px #0006}
.mini-menu-book:not(.is-cover):before{background:repeating-linear-gradient(0deg,#bcae91 0 1px,#eee5d1 1px 2px,#c5b99d 2px 3px);box-shadow:0 3px 0 #e6dcc3,0 6px 0 #20261c,1px 8px 0 #938264,0 16px 20px #0005}
