/* Lunch page – Happy Lunch Hours */
:root{--mm-ink:#1a2420;--mm-mute:#5b6b63;--mm-line:#e3e9e5;--mm-soft:#eef2ef;--mm-gold:#c9a24a;--mm-gold-d:#b8862b;--mm-orange:#d2691e}
/* hero */
.kd-section_header-menu.text-color-alternate{min-height:0;min-width:0;overflow:hidden}
.kd-section_header-menu .kd-header-menu-content{min-height:clamp(440px,58vh,640px);max-height:none;align-items:flex-end}
.kd-section_header-menu .kd-padding-section-large{padding-top:8rem;padding-bottom:2.75rem}
.kd-section_header-menu .kd-heading-style-h1{font-size:clamp(3.2rem,7vw,6.2rem);line-height:.9;margin:0}
.mm-hero-kicker{display:block;font-size:.34em;letter-spacing:.14em;color:var(--mm-gold);margin-bottom:.4em;font-weight:400}
.kd-section_header-menu .kd-max-width-medium{max-width:46rem}
.mm-lunch-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.mm-lunch-chips span{display:inline-flex;align-items:center;height:34px;padding:0 .9rem;border-radius:999px;border:1px solid rgba(255,255,255,.45);background:rgba(0,0,0,.25);backdrop-filter:blur(4px);font-family:var(--heading);font-size:1.05rem;letter-spacing:.08em;text-transform:uppercase;color:#fff}
.kd-section_header-menu .kd-margin-top.margin-small{margin-top:1.4rem}
.kd-section_header-menu .kd-button-group{display:flex;gap:.9rem;flex-wrap:wrap}
.kd-section_header-menu .kd-button-group a{min-width:200px;height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 1.6rem;border-radius:6px;font-family:var(--heading);font-size:1.2rem;letter-spacing:.09em;text-transform:uppercase;line-height:1;text-decoration:none;box-sizing:border-box;border:2px solid #fff;transition:transform .2s,box-shadow .2s,background .2s,color .2s}
.kd-section_header-menu .kd-button-group a.kd-button{background:#fff;color:var(--urban-green);box-shadow:0 10px 24px rgba(0,0,0,.3)}
.kd-section_header-menu .kd-button-group a.kd-button-secondary{background:rgba(255,255,255,.08);color:#fff}
.kd-section_header-menu .kd-button-group a:hover{transform:translateY(-2px)}
.kd-section_header-menu .kd-button-group a.kd-button-secondary:hover{background:#fff;color:var(--urban-green)}
.kd-section_header-menu .kd-header-menu-background-image-wrapper{background-image:linear-gradient(180deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,.2) 45%,rgba(0,0,0,.65) 100%)}
.kd-section_header-menu .kd-image-overlay-layer{background:linear-gradient(90deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,.1) 60%,rgba(0,0,0,0) 100%)}
.mm-lunch-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);animation:mmHeroZoom 16s ease-in-out infinite alternate}
@keyframes mmHeroZoom{from{transform:scale(1.04)}to{transform:scale(1.1)}}
/* offer band (marquee) */
.mm-lunch{background:var(--urban-white);color:var(--mm-ink)}
.mm-lunch-band{background:var(--mm-gold);color:#1f2a24;overflow:hidden;white-space:nowrap;border-top:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.08)}
.mm-lunch-band-track{display:inline-flex;align-items:center;gap:1.4rem;padding:.75rem 0;font-family:var(--heading);font-size:1.25rem;letter-spacing:.12em;text-transform:uppercase;animation:mmBand 40s linear infinite}
.mm-lunch-band-track i{font-style:normal;opacity:.6}
@keyframes mmBand{to{transform:translateX(-50%)}}
/* intro + steps */
.mm-lunch .kd-padding-section-large{padding-top:3.5rem;padding-bottom:3rem}
.mm-lunch-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem 4rem;align-items:end;margin-bottom:2.5rem}
.mm-lunch-intro .kd-text-style-tagline{color:var(--mm-gold-d);margin-bottom:.5rem}
.mm-lunch-intro h2{color:var(--urban-green);font-size:clamp(2.6rem,5vw,4.4rem);line-height:.95;margin:0}
.mm-lunch-how{display:flex;flex-direction:column;gap:.55rem}
.mm-lunch-step{display:flex;align-items:center;gap:.8rem;background:#fff;border:1px solid var(--mm-line);border-radius:10px;padding:.6rem .9rem;font-size:.95rem;font-weight:500;position:relative;overflow:hidden;animation:mm-step-glow 6s ease-in-out infinite}
.mm-lunch-step:nth-child(2){animation-delay:2s}.mm-lunch-step:nth-child(3){animation-delay:4s}
.mm-lunch-step em{font-style:normal;font-weight:700;color:#7a4f00;animation:mm-step-em 6s ease-in-out infinite;animation-delay:inherit}
@keyframes mm-step-glow{0%,100%{border-color:var(--mm-line);box-shadow:0 0 0 0 rgba(27,40,34,0);background:#fff;color:var(--mm-ink,#1b2822)}50%{border-color:var(--urban-green);box-shadow:0 10px 26px rgba(27,40,34,.3);background:var(--urban-green);color:#fff}}
@keyframes mm-step-em{0%,100%{color:#7a4f00}50%{color:#f3dc8e}}
@media (prefers-reduced-motion:reduce){.mm-lunch-step,.mm-lunch-step em{animation:none}}
.mm-lunch-step b{width:30px;height:30px;border-radius:50%;background:var(--urban-green);color:#fff;animation:mm-step-badge 6s ease-in-out infinite;animation-delay:inherit;display:grid;place-items:center;font-family:var(--heading);font-size:1.1rem;font-weight:400;flex:0 0 30px}
/* menu */
.mm-lunch-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem 4rem;align-items:start}
.mm-lunch-sec+.mm-lunch-sec{margin-top:2.5rem}
.mm-lunch-sech{margin-bottom:.75rem}
.mm-lunch-sech .kd-text-style-tagline{color:var(--mm-gold-d);margin-bottom:.2rem}
.mm-lunch-sech h2{color:var(--urban-green);margin:0;font-size:2.6rem}
.mm-lunch-list{list-style:none;margin:0;padding:0}
.mm-lunch-item{padding:.9rem 0;border-bottom:1px solid var(--mm-line)}
.mm-lunch-item:last-child{border-bottom:0}
.mm-lunch-head{display:flex;align-items:baseline;gap:.5rem}
.mm-lunch-head h3{font-family:var(--heading);font-size:1.55rem;letter-spacing:.03em;text-transform:uppercase;color:var(--urban-green);margin:0;line-height:1}
.mm-lunch-lead{flex:1;border-bottom:2px dotted #c9d3cd;transform:translateY(-5px);min-width:1.2rem}
.mm-lunch-price{display:inline-flex;align-items:baseline;gap:.4rem;white-space:nowrap}
.mm-lunch-price s{color:#8a9490;font-size:.95rem}
.mm-lunch-price b{font-family:var(--heading);font-size:1.6rem;color:var(--mm-orange);font-weight:400;letter-spacing:.03em;border-bottom:2px solid var(--mm-orange);line-height:1}
.mm-lunch-price small{font-size:.72rem;letter-spacing:.06em;color:var(--mm-orange)}
.mm-lunch-item p{margin:.3rem 0 0;font-size:.93rem;line-height:1.5;color:#3d4a44}
.mm-al{display:inline-grid;place-items:center;width:18px;height:18px;flex:0 0 18px;align-self:center}
.mm-al svg{width:15px;height:15px}
.mm-vegan{color:#3a8f3a}.mm-milk{color:#b8862b}.mm-nuts{color:#9a6b2a}.mm-fish{color:#2f6f9f}
.mm-lunch-legend{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;align-items:center;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--mm-line);font-size:.85rem;color:var(--mm-mute)}
.mm-lunch-legend span{display:inline-flex;align-items:center;gap:.35rem}
.mm-lunch-note{margin-left:auto;font-size:.8rem}
/* mosaic */
.mm-lunch-photos{background:var(--urban-white)}
.mm-lunch-mosaic{display:grid;grid-template-columns:repeat(6,1fr);gap:.4rem;padding:0 .4rem}
.mm-lunch-mosaic img{width:100%;aspect-ratio:1;object-fit:cover;display:block;border-radius:6px;transition:transform .5s}
.mm-lunch-mosaic img:hover{transform:scale(1.03)}

/* lamb (gold) */
.mm-lunch-lamb{background:var(--mm-gold);color:#1f2a24}
.mm-lunch-lamb .kd-padding-section-large{padding-top:3rem;padding-bottom:2.5rem}
.mm-lunch-lamb .mm-lunch-sech .kd-text-style-tagline{color:#3f3214}
.mm-lunch-lamb .mm-lunch-sech h2{color:#1f3a2c}
.mm-lunch-lamb .mm-lunch-item{border-bottom-color:rgba(31,42,36,.18)}
.mm-lunch-lamb .mm-lunch-head h3{color:#1f3a2c}
.mm-lunch-lamb .mm-lunch-lead{border-bottom-color:rgba(31,42,36,.35)}
.mm-lunch-lamb .mm-lunch-price s{color:#5f5a40}
.mm-lunch-lamb .mm-lunch-price b,.mm-lunch-lamb .mm-lunch-price small{color:#1f3a2c;border-bottom-color:#1f3a2c}
.mm-lunch-lamb .mm-lunch-item p{color:#3a3a2c}
.mm-lunch-grid-lamb .mm-lunch-sech{min-height:4.6rem}
/* breads + sides (dark green) */
.mm-lunch-dark{background:#17261f;color:#e9efe9}
.mm-lunch-dark .kd-padding-section-large{padding-top:3.5rem;padding-bottom:3rem}
.mm-lunch-dark .mm-lunch-sech .kd-text-style-tagline{color:var(--mm-gold)}
.mm-lunch-dark .mm-lunch-sech h2{color:#fff}
.mm-lunch-dark .mm-lunch-item{border-bottom-color:rgba(255,255,255,.12)}
.mm-lunch-dark .mm-lunch-head h3{color:#fff}
.mm-lunch-dark .mm-lunch-lead{border-bottom-color:rgba(255,255,255,.25)}
.mm-lunch-dark .mm-lunch-price s{color:#8d9a92}
.mm-lunch-dark .mm-lunch-item p{color:#b9c6bd}
.mm-lunch-fine{font-size:.8rem;color:#9fb0a6;margin:.6rem 0 0}
.mm-lunch-allergy{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.14)}
.mm-lunch-allergy h3{font-family:var(--heading);font-weight:400;font-size:1.7rem;letter-spacing:.02em;line-height:1.15;color:#fff;margin:0 0 .6rem}
.mm-lunch-allergy h3 em{font-style:normal;color:var(--mm-gold)}
.mm-lunch-legend-dark{margin-top:0;padding-top:0;border-top:0;color:#cfd9d2}
.mm-lunch-facts{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.14);display:grid;gap:.9rem}
.mm-lunch-facts small{display:block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mm-gold);margin-bottom:.15rem}
.mm-lunch-facts b{font-family:var(--heading);font-weight:400;font-size:1.35rem;letter-spacing:.04em;color:#fff}
.mm-lunch-facts a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
.mm-lunch-facts a:hover{border-bottom-color:#fff}
/* cta */
.mm-lunch-cta{background:var(--urban-white)}
.mm-lunch-cta .kd-container-large{padding:3rem 0 3.5rem}
.mm-lunch-cta-box{background:var(--urban-green);color:#fff;border-radius:16px;padding:2.5rem 2.75rem;display:grid;grid-template-columns:1.2fr auto;gap:2rem;align-items:center}
.mm-lunch-cta-box h2{color:#fff;margin:0 0 .5rem;font-size:2.4rem}
.mm-lunch-cta-box p{margin:0;color:#e6ebe7}
.mm-lunch-cta-box .kd-button-group{display:flex;gap:.9rem;flex-wrap:wrap}
.mm-lunch-cta-box .kd-button-group a{min-width:190px;height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 1.5rem;border-radius:6px;font-family:var(--heading);font-size:1.2rem;letter-spacing:.09em;text-transform:uppercase;line-height:1;text-decoration:none;box-sizing:border-box;border:2px solid #fff;transition:transform .2s}
.mm-lunch-cta-box .kd-button-group a.kd-button{background:#fff;color:var(--urban-green)}
.mm-lunch-cta-box .kd-button-group a.kd-button-secondary{background:transparent;color:#fff}
.mm-lunch-cta-box .kd-button-group a:hover{transform:translateY(-2px)}
@media (max-width:991px){
 .mm-lunch-intro{grid-template-columns:1fr;gap:1.5rem}
 .mm-lunch-grid{grid-template-columns:1fr;gap:2rem}
 .mm-lunch-mosaic{grid-template-columns:repeat(3,1fr)}
 .mm-lunch-cta-box{grid-template-columns:1fr;padding:2rem}
 .mm-lunch-grid-lamb .mm-lunch-sech{min-height:0}
 .mm-lunch-grid-lamb .mm-lunch-col:last-child .mm-lunch-sech{display:none}
 .mm-lunch-grid-lamb{gap:0}
}
@media (max-width:767px){
 .kd-section_header-menu .kd-header-menu-content{min-height:clamp(460px,62vh,580px)}
 .kd-section_header-menu .kd-padding-section-large{padding-top:7.5rem;padding-bottom:2rem}
 .kd-section_header-menu .kd-heading-style-h1{font-size:3rem}
 .mm-lunch-chips span{height:30px;font-size:.95rem;padding:0 .7rem}
 .kd-section_header-menu .kd-button-group a{width:100%}
 .mm-lunch-band-track{font-size:1.05rem}
 .mm-lunch .kd-padding-section-large{padding-top:2.5rem;padding-bottom:2.5rem}
 .mm-lunch-intro h2{font-size:2.4rem}
 .mm-lunch-head{flex-wrap:nowrap;align-items:flex-start}
 .mm-lunch-head h3{font-size:1.35rem;flex:1 1 auto;min-width:0;line-height:1.1}
 .mm-lunch-lead{display:none}
 .mm-lunch-price{margin-left:auto;flex:0 0 auto;padding-top:.1rem}
 .mm-lunch-note{margin-left:0}
 .mm-lunch-mosaic{grid-template-columns:repeat(2,1fr)}
 .mm-lunch-cta-box .kd-button-group a{width:100%}
}

@keyframes mm-step-badge{0%,100%{background:var(--urban-green);color:#fff}50%{background:#f3dc8e;color:#1b2822;transform:scale(1.1)}}
