@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,600;1,600&display=swap');

:root { --plum:#5b335d; --plum-dark:#3b243d; --smoke:#5f7b88; --mist:#dce1dd; --sand:#e8dfd3; --cream:#f7f2ea; --ink:#202326; --lime:#c7d857; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif} a{color:inherit;text-decoration:none} img{display:block;max-width:100%}
.site-header{height:88px;display:grid;grid-template-columns:180px 1fr auto;align-items:center;padding:0 5vw;background:var(--plum-dark);color:white;position:relative;z-index:10}.brand img{width:132px}.nav{display:flex;justify-content:center;gap:34px;font-size:14px}.nav a{opacity:.75}.nav a:hover{opacity:1}.header-call{border:1px solid rgba(255,255,255,.5);padding:12px 18px;border-radius:999px;font-size:13px}.nav-toggle{display:none}
.hero{height:min(760px,calc(100vh - 88px));min-height:620px;position:relative;overflow:hidden;background:#333}.hero-image{position:absolute;inset:0;background:url('/assets/images/emmas-interior.jpg') center/cover}.hero-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,30,40,.9) 0%,rgba(55,36,57,.68) 40%,rgba(25,34,39,.12) 72%)}.hero-copy{position:relative;color:white;padding:12vh 7vw;max-width:790px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:600}.hero h1,.section-heading h2,.menu-copy h2,.ambience-copy h2,.contact h2{font-family:"Playfair Display",serif;font-size:clamp(48px,6.4vw,92px);line-height:.98;margin:22px 0}.hero h1 em{color:#d8c7d8;font-weight:600}.hero-copy>p:not(.eyebrow){max-width:570px;line-height:1.7;font-size:18px;color:rgba(255,255,255,.82)}.hero-actions,.button-row{display:flex;align-items:center;gap:28px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 23px;border-radius:4px;font-size:14px;font-weight:600}.primary{background:var(--lime);color:#263019}.text-link{font-weight:600;border-bottom:1px solid currentColor;padding:7px 0}.today-ribbon{position:absolute;right:5vw;bottom:0;background:var(--plum);color:white;padding:24px 32px;display:grid;gap:3px;min-width:270px}.today-ribbon span{text-transform:uppercase;letter-spacing:.2em;font-size:11px}.today-ribbon strong{font:600 26px "Playfair Display",serif}.today-ribbon small{opacity:.7;margin-top:5px}
.lunch-section{padding:100px 7vw;background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #cfc7bc;padding-bottom:30px}.section-heading h2{font-size:clamp(46px,6vw,78px);margin:8px 0 0}.plum{color:var(--plum)}.week{display:grid;text-align:right;gap:3px}.week span{text-transform:uppercase;font-size:11px;letter-spacing:.2em}.week strong{font-size:26px;color:var(--plum)}.week small{color:#76716b}.dish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.dish-card{position:relative;background:white;min-height:310px;padding:32px;border-top:6px solid var(--smoke);box-shadow:0 12px 35px rgba(56,45,38,.07)}.dish-card:nth-child(2){border-color:var(--plum)}.dish-card:nth-child(3){border-color:var(--lime)}.dish-number{font:600 72px "Playfair Display",serif;color:#ede8e0;position:absolute;right:22px;top:12px}.dish-tag{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--smoke);position:relative}.dish-card h3{font:600 29px "Playfair Display",serif;margin:45px 0 10px;position:relative}.dish-card p{color:#736f69;line-height:1.6;max-width:80%}.price{position:absolute;left:32px;bottom:30px;font-size:20px;color:var(--plum)}.lunch-meta{display:flex;justify-content:space-between;align-items:center;padding:30px 0}.lunch-meta p{max-width:650px;color:#625e59}.dark{background:var(--plum-dark);color:white}.classics{border-top:1px solid #cfc7bc;border-bottom:1px solid #cfc7bc;padding:22px 0}.classics summary{cursor:pointer;font-weight:600;display:flex;justify-content:space-between}.classics summary span{color:var(--plum)}.classic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:30px}.classic-grid h3{font:600 19px "Playfair Display",serif}.classic-grid p{font-size:14px;color:#777}.classic-grid strong{color:var(--plum)}
.menu-section,.ambience{display:grid;grid-template-columns:1fr 1fr;min-height:640px}.menu-copy{background:var(--smoke);color:white;padding:9vw 7vw}.menu-copy h2,.ambience-copy h2{font-size:clamp(45px,5vw,72px)}.menu-copy>p:not(.eyebrow),.ambience-copy>p:not(.eyebrow){line-height:1.8;max-width:560px;font-size:17px}.menu-photo img,.ambience-photo img{width:100%;height:100%;object-fit:cover}.dark-link{color:white}.ambience-copy{padding:9vw 7vw;background:var(--sand)}.ambience-copy blockquote{font:italic 600 24px/1.45 "Playfair Display",serif;color:var(--plum);margin:40px 0 10px;padding-left:24px;border-left:3px solid var(--plum)}.ambience-copy>span{font-size:13px;color:#756f68}
.contact{padding:95px 7vw;background:var(--plum-dark);color:white}.contact>div:first-child{display:flex;align-items:end;justify-content:space-between}.contact h2{font-size:clamp(44px,5vw,70px)}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.contact-cards a{display:grid;gap:13px;padding:34px;border-right:1px solid rgba(255,255,255,.18)}.contact-cards a:last-child{border:0}.contact-cards span{text-transform:uppercase;letter-spacing:.17em;font-size:11px;color:#cdb6ce}.contact-cards strong{font:600 22px/1.35 "Playfair Display",serif}.contact-cards small{opacity:.6}.hours{display:flex;gap:32px;margin-top:28px;align-items:center;font-size:14px}.hours strong{color:var(--lime)}
footer{background:#211b22;color:white;padding:55px 7vw;display:grid;grid-template-columns:160px 1fr auto;gap:25px;align-items:center}footer img{width:120px}footer p,footer small{opacity:.6;font-size:13px}.legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:20px;display:flex;gap:30px}.legal summary{cursor:pointer;font-size:13px}.legal details p{max-width:760px;line-height:1.65}.legal+small{grid-column:1/-1}
@media(max-width:850px){.site-header{grid-template-columns:140px 1fr auto;height:76px}.nav-toggle{display:block;justify-self:end;background:none;color:white;border:0}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--plum-dark);padding:25px;flex-direction:column}.nav.open{display:flex}.header-call{display:none}.hero{min-height:660px;height:calc(100vh - 76px)}.hero-copy{padding:12vh 6vw}.today-ribbon{right:0}.section-heading{display:block}.week{text-align:left;margin-top:25px}.dish-grid{grid-template-columns:1fr}.classic-grid{grid-template-columns:1fr 1fr}.menu-section,.ambience{grid-template-columns:1fr}.menu-photo,.ambience-photo{height:420px}.ambience-photo{order:2}.contact-cards{grid-template-columns:1fr}.contact-cards a{border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}.hours{align-items:flex-start;flex-direction:column;gap:8px}footer{grid-template-columns:1fr}.legal{display:block}.lunch-meta{align-items:flex-start;gap:20px;flex-direction:column}}
@media(max-width:520px){.hero h1{font-size:48px}.hero-copy{padding-top:80px}.hero-copy>p:not(.eyebrow){font-size:16px}.today-ribbon{left:0;right:0;min-width:0}.lunch-section,.contact{padding:75px 22px}.dish-card{padding:25px}.classic-grid{grid-template-columns:1fr}.menu-copy,.ambience-copy{padding:75px 24px}.button-row{align-items:flex-start;flex-direction:column}.contact-cards a{padding:28px 5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.editor-page{min-height:100vh;background:#efe9df}.editor-page>header{height:82px;background:var(--plum-dark);display:flex;justify-content:space-between;align-items:center;padding:0 6vw;color:white}.editor-page>header img{width:120px}.editor-shell{max-width:1050px;margin:auto;padding:70px 25px}.editor-shell h1{font:600 clamp(44px,6vw,72px) "Playfair Display",serif;margin:10px 0}.editor-intro{color:#6e6862;max-width:650px;line-height:1.7}.editor-top,.editor-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.editor-top{margin:35px 0}.editor-top label,.editor-field{display:grid;gap:8px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:600}.editor-top input,.editor-field input{border:1px solid #d4c9bd;background:white;padding:14px 16px;border-radius:4px;font:400 15px "DM Sans",sans-serif;width:100%}.editor-list{display:grid;gap:18px}.editor-list article{background:white;padding:25px;box-shadow:0 8px 25px rgba(40,30,30,.06);display:grid;gap:17px;border-left:5px solid var(--smoke)}.editor-list article>span{color:var(--plum);font-weight:600}.editor-field span{display:flex}.editor-field span button{width:48px;border:0;background:var(--smoke);color:white;border-radius:0 4px 4px 0;cursor:pointer}.editor-field span input{border-radius:4px 0 0 4px}.editor-actions{display:flex;justify-content:space-between;margin-top:25px}.editor-actions button{border:1px solid var(--plum);background:transparent;color:var(--plum);padding:14px 18px;border-radius:4px;font-weight:600}.editor-actions .save{background:var(--plum);color:white}.editor-message{background:#dce8d4;padding:14px 18px;border-radius:4px}@media(max-width:650px){.editor-top,.editor-row{grid-template-columns:1fr}.editor-actions{align-items:stretch;flex-direction:column;gap:12px}}
