/* Menu photos are illustrations; all names and prices remain editable HTML. */
.menu-page{--menu-ink:#171226;--menu-card:#241c38;--menu-muted:#d5cce3;--menu-orange:#ffad58;--menu-cyan:#8be1ff;--menu-lime:#d1ee90;--menu-pink:#ffb3d7;background:var(--menu-ink);color:#fff9f0}
.menu-page main{overflow-wrap:anywhere}
.menu-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;max-width:1240px;gap:36px;padding:65px 5% 40px;margin:auto}
.menu-hero h1{font-size:clamp(3rem,6.6vw,6rem);line-height:1.04;letter-spacing:-.045em;color:#fff9f0}
.menu-hero h1 em{color:var(--menu-orange);font-style:normal}
.menu-page .eyebrow{color:var(--menu-orange)}
.menu-hero p{color:var(--menu-muted);max-width:430px;font-size:1.1rem;line-height:1.8}
.menu-hero .button{margin-top:26px;background:#ffd446;color:#25163f}
.menu-order-note{display:block;color:var(--menu-muted);font-size:.85rem;margin-top:13px}
.menu-hero-picture{position:relative;min-width:0;border-radius:44px;border:1px solid #ffad583d;overflow:hidden;box-shadow:0 20px 65px #0003}
.menu-hero-picture img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.menu-hero-picture.menu-hero-mascot{background:radial-gradient(ellipse at 50% 50%,#52337399,transparent 70%),#171226;border-color:#a684d955;box-shadow:0 20px 65px #0003}
.menu-hero-picture.menu-hero-mascot img{aspect-ratio:1;object-fit:contain;padding:clamp(18px,3vw,36px)}
.menu-picture-note{position:absolute;inset-inline-start:20px;bottom:18px;background:#171226e8;border:1px solid #ffffff40;border-radius:30px;padding:5px 13px;font-size:.8rem;color:#fff}
.menu-categories{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding:20px 5% 30px}
.menu-categories a{min-height:46px;display:flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid #ffffff40;border-radius:40px;padding:9px 30px;background:var(--menu-card);color:#fff9f0;font-weight:700}
.menu-categories a:hover{background:#49336b;border-color:#bb9ae9}
.menu-content{max-width:1160px;margin:auto;padding:10px 5% 65px}
.menu-food,.menu-category{scroll-margin-top:160px}
.menu-heading{margin:25px 0 28px}
.menu-heading h2,.menu-category h2{font-size:clamp(2rem,4vw,3.3rem);color:#fff9f0}
.food-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.food-item{min-width:0;border:1px solid #ffad584a;border-radius:28px;background:var(--menu-card);overflow:hidden}
.food-item>img{width:100%;height:auto;aspect-ratio:1.3;object-fit:cover}
.food-item-copy{padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.food-item h3{font-size:clamp(1.3rem,2.2vw,1.8rem);color:#fff9f0;line-height:1.4}
.menu-price{white-space:nowrap;background:#ffad58;color:#25163f;border-radius:18px;padding:7px 15px;font-weight:900;font-size:1.65rem}
.menu-combo{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;border:1px solid #ffce7b;padding:30px 34px;border-radius:26px;background:linear-gradient(110deg,#ffd446,#ffad58);color:#25163f;margin:30px 0 50px}
.menu-combo h2{font-size:clamp(1.7rem,3vw,2.45rem);color:#25163f;line-height:1.3}
.menu-combo p{margin-top:9px;font-size:1rem;color:#38203d}
.menu-combo-tag{display:inline-block;font-weight:800;margin-bottom:10px;font-size:.85rem;padding:4px 12px;background:#fff6ce;border-radius:20px}
.combo-price{display:grid;text-align:center;gap:5px;white-space:nowrap;background:#25163f;color:#fff4d6;border-radius:24px;padding:17px 22px}
.combo-price bdi{font-size:clamp(2.3rem,5vw,3.4rem);font-weight:900;line-height:1.05}
.combo-price span{font-size:.8rem}
.menu-category{--category-accent:var(--menu-cyan);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(25px,5vw,65px);padding:32px;border:1px solid #ffffff26;border-radius:30px;margin-top:30px;background:var(--menu-card)}
.menu-gear{--category-accent:var(--menu-lime)}
.menu-coffee{--category-accent:var(--menu-pink)}
.menu-category-photo{min-width:0;border-radius:22px;overflow:hidden}
.menu-category-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.menu-category-copy{min-width:0}
.menu-category .eyebrow{color:var(--category-accent);margin-bottom:12px}
.menu-category h2{color:var(--category-accent)}
.menu-lines{margin:24px 0 0}
.menu-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:20px;padding:14px 0;border-bottom:1px solid #ffffff24}
.menu-line:last-child{border-bottom:0}
.menu-line dt{font-size:clamp(1rem,1.8vw,1.25rem);font-weight:650;line-height:1.5}
.menu-line dd{margin:0;color:var(--category-accent);font-size:clamp(1.35rem,2.4vw,1.8rem);font-weight:850;white-space:nowrap}
.menu-info{margin:28px 4px;color:var(--menu-muted);font-size:.9rem}
.menu-info p{margin-top:7px}
.menu-outro{padding:35px 0 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px}
.menu-outro h2{font-size:clamp(2rem,4vw,3rem);color:#fff9f0}
.menu-outro .button{background:#d9c5ff;color:#25163f}
.menu-page a:focus-visible{outline:3px solid #fff;outline-offset:5px}
@media(max-width:760px){
 .menu-hero{grid-template-columns:minmax(0,1fr);gap:26px;padding:35px 5% 20px}
 .menu-hero h1{font-size:clamp(2.8rem,12vw,4.8rem)}
 .menu-hero-picture{max-width:410px;width:100%;justify-self:center;border-radius:28px}
 .menu-hero-picture img{aspect-ratio:1.35;object-fit:cover}
 .menu-categories{gap:8px;padding:14px 5% 22px}
 .menu-categories a{flex:1 1 40%;padding:9px 14px}
 .food-items{grid-template-columns:minmax(0,1fr);gap:18px}
 .food-item-copy{padding:18px;gap:10px}
 .food-item h3{font-size:1.35rem}
 .menu-price{font-size:1.45rem;padding:6px 12px}
 .menu-combo{padding:23px 18px;gap:14px}
 .combo-price{padding:14px 12px;border-radius:18px}
 .menu-category{grid-template-columns:minmax(0,1fr);padding:20px;gap:24px;border-radius:24px}
 .menu-category-photo{max-width:340px;width:100%;justify-self:center}
 .menu-line{gap:12px}
 .menu-outro .button{width:100%}
}
@media(prefers-reduced-motion:reduce){.menu-categories a{transition:none}}
