@font-face{font-family:BrightWall;src:url('../assets/Brightwall.ttf') format('truetype');font-display:swap}
:root{--green:#26351e;--gold:#be6b18;--cream:#f4eedf;--line:#d39345}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--cream)}body{color:var(--green);font-family:'Libre Baskerville',Georgia,serif}
.menu-page{min-height:100vh;background:url('../assets/Kalha homepage background_001.svg') center/cover fixed no-repeat;overflow:hidden}
.site-header{position:relative;z-index:2;display:flex;align-items:center;width:min(1180px,calc(100% - 80px));margin:0 auto;padding-top:26px;gap:48px}.brand{display:block;flex:0 0 190px}.brand img{display:block;width:160px;height:auto}nav{display:flex;align-items:center;justify-content:flex-start;flex:1;gap:52px;padding-top:3px}nav a{color:#435a3c;font:400 14px/1 'Libre Baskerville',Georgia,serif;text-decoration:none;white-space:nowrap}nav a:hover,nav a.active{color:#6f7d58;text-decoration:underline;text-underline-offset:4px}
.menu-content{display:grid;grid-template-columns:1fr 1fr;gap:2.5vw;max-width:1500px;margin:0 auto;padding:42px 3vw 50px}.opening-menu{grid-column:1/-1;padding-top:8px}.opening-menu h1{margin:0 0 24px;color:var(--gold);font-size:clamp(24px,2.3vw,38px)}.opening-columns{display:grid;grid-template-columns:1fr 1fr;gap:2.5vw}.opening-menu article{margin:0 0 15px}.opening-menu h2{margin:0 0 3px;font-size:clamp(18px,1.55vw,28px);line-height:1.08}.opening-menu p{margin:0;font-size:clamp(12px,1vw,16px);line-height:1.4}
.menu-tabs{grid-column:1/-1;display:flex;align-items:stretch;justify-content:center;gap:clamp(28px,6vw,96px);margin:0 auto 28px;padding:0 3vw;width:100%}.menu-tab{display:flex;align-items:center;justify-content:center;gap:12px;min-width:240px;padding:10px 18px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--green);font:400 clamp(18px,2vw,29px)/1 'Libre Baskerville',Georgia,serif;cursor:pointer}.menu-tab img{width:28px;height:28px;object-fit:contain;animation:menu-tab-rotate 8s linear infinite}.menu-tab:nth-child(2) img{animation-direction:reverse}.menu-tab.is-active{color:var(--gold);border-bottom-color:var(--gold)}.menu-tab:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.menu-panel{grid-column:1/-1}.menu-panel:not(.is-active){display:none}@keyframes menu-tab-rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.additional-opening-menu{margin-top:5%}
.menu-section-divider{width:8%;height:0;margin:0 auto 5%;border-top:2px solid #694027}
.menu-week-divider{grid-column:1/-1;justify-self:center;width:8%;height:0;margin:5% auto 1%;border-top:2px solid #694027}
.current-menu-featured+.menu-week-divider{margin:0 auto 6%}
.weekly-menu-new{grid-column:1/-1!important}
.current-menu-featured{grid-column:1/-1;width:min(780px,100%);margin:0 auto 6%;padding:38px 1vw 0;color:var(--green);text-align:center}.current-menu-featured h2{margin:0 0 28px;color:var(--green);font:400 clamp(34px,4vw,58px)/1 'Libre Baskerville',Georgia,serif;letter-spacing:.05em}.current-menu-featured article{margin:0 0 14px;padding:0;border:0}.current-menu-featured article+article{padding-top:0}.current-menu-featured article::before{content:none}.current-menu-featured h3{margin:0;color:var(--green);font-size:16px;line-height:1.1}.current-menu-featured p{margin:4px 0 0;font-size:14px;line-height:1.2}.current-menu-featured em{font-style:italic}
.additional-opening-menu h1{color:var(--green);text-shadow:none}.additional-opening-menu h1 span{color:var(--gold);font-family:BrightWall,cursive;font-weight:400;text-shadow:none}
.current-menu-featured .menu-subheading{margin:34px 0 20px;color:var(--green);font:400 26px/1 BrightWall,cursive;letter-spacing:0}.current-menu-featured .menu-subheading:first-child{margin-top:0}
@media(max-width:800px){.menu-page .additional-opening-menu h1{font-size:18px!important}}
.opening-menu h2{font-size:16px}.opening-menu p{font-size:14px}
.opening-menu h1,.weekly-menu>h2,.this-week h2{font-size:29px}
.this-week h2{font-size:20px}
.menu-page .this-week li:before{content:"•";color:#cc975d}
.menu-page .this-week li{padding-left:20px}
.menu-page .weekly-menu>h2{font-size:20px}
.this-week{padding-top:60px}
.closing{line-height:1.01}
.menu-page .this-week h2{margin-top:-80px}
.this-week .ornament{display:none}
@keyframes menu-anahaw-rotate{from{transform:translateY(-50%) rotate(0deg)}to{transform:translateY(-50%) rotate(360deg)}}
.weekly-menu .ornament img{animation:menu-anahaw-rotate 8s linear infinite}
.menu-page .this-week h2{margin-bottom:10%}
.social-links svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}.social-links a:first-of-type svg{fill:currentColor;stroke:none}
.menu-page .this-week li{font-size:14px}
.weekly-menu p,.this-week small{color:#26351e}
.opening-menu h1{color:#cc975d;text-shadow:1px 1px 0 #26351e,-1px -1px 0 #26351e,0 2px 4px rgba(38,53,30,.35)}
.weekly-menu .ornament{border-top:0;width:auto;height:28px}.weekly-menu .ornament img{width:28px;height:28px}
.this-week .ornament{border-top:0;width:auto;height:28px}.this-week .ornament img{width:28px;height:28px}
.this-week li:before{content:"•";color:#cc975d}
.weekly-menu{text-align:center;padding:38px 1vw 0}.weekly-menu>h2{margin:0;font-size:clamp(36px,4vw,62px);font-weight:400;white-space:nowrap}.weekly-menu>h2 span{color:var(--gold);font-family:BrightWall,cursive;font-weight:400}.ornament{display:flex;align-items:center;justify-content:center;color:var(--line);font-size:32px;line-height:1;border-top:1px solid var(--line);width:58%;height:15px;margin:22px auto 24px}.ornament img{display:block;width:15px;height:15px;object-fit:contain;transform:translateY(-50%)}.weekly-menu article{margin:0 0 14px}.weekly-menu h3{margin:0;font-size:clamp(17px,1.5vw,25px);line-height:1.1}.weekly-menu p{margin:4px 0 0;font-size:clamp(13px,1.1vw,18px);line-height:1.2}
.weekly-menu>h2,.weekly-menu h3{font-size:16px}.weekly-menu p{font-size:14px}
.this-week{align-self:start;margin-top:0;padding:150px 5vw 80px;border-radius:10px;background:rgba(248,244,228,.7);text-align:center}.this-week h2{margin:0;font-size:clamp(29px,2.8vw,46px);font-weight:400;white-space:nowrap}.this-week h2 span,.closing span{color:var(--gold);font-family:BrightWall,cursive}.this-week .ornament{margin-bottom:20px}.this-week ul{padding:0;margin:0;text-align:left;list-style:none}.this-week li{position:relative;margin:0 0 12px;padding-left:32px;font-size:clamp(14px,1.2vw,20px);line-height:1.15}.this-week li:before{content:'✿';position:absolute;left:0;color:#7d806d}.this-week small{display:block;color:var(--gold);font-size:.67em;margin-top:3px}.closing{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);font-family:BrightWall,cursive;font-size:20px;line-height:1.2}
.opening-menu{padding-left:15%;padding-right:15%}.this-week{padding-left:15%;padding-right:15%}
.site-footer{display:grid;grid-template-columns:1fr 180px 1fr;align-items:end;gap:2rem;padding:30px 5% 38px;color:#435a3c;font:400 14px 'Open Sans',Arial,sans-serif}.site-footer img{width:157.5px;margin:auto}.site-footer>span:last-child{text-align:right}.social-links{display:flex;align-items:center;justify-content:flex-end;gap:14px}.social-links a{color:inherit;text-decoration:none;font-size:20px}
@media(max-width:900px){.site-header{width:calc(100% - 36px);gap:20px}.brand{flex-basis:130px}.brand img{width:132px}nav{gap:14px}nav a{font-size:14px}.menu-content{grid-template-columns:1fr 1fr;padding:38px 5vw}.this-week{grid-column:1/-1;margin:0 auto;max-width:680px;width:100%;padding:60px 10vw}.weekly-menu{padding-top:30px}}
@media(max-width:620px){.menu-page{background-attachment:scroll}.site-header{align-items:flex-start}.brand{flex:0 0 90px}.brand img{width:97px}nav{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 12px;padding-top:4px}nav a{font-size:14px}.menu-content{display:block;padding:50px 7vw 30px}.opening-menu{padding:0}.opening-columns{grid-template-columns:1fr}.weekly-menu{padding:60px 0}.weekly-menu>h2{white-space:normal}.this-week{padding:48px 8vw;border-radius:70px}.site-footer{grid-template-columns:1fr;text-align:center;gap:2vh}.site-footer>span:last-child{text-align:center}.site-footer img{order:-1}}
.opening-columns{align-items:start}.opening-columns>div{min-width:0}
.opening-columns>div{padding-top:0}.opening-columns>div>article:first-child{margin-top:0}
.menu-page .opening-menu{padding-left:15%;padding-right:15%}
.opening-columns>div:first-child{padding-left:8%}
.menu-page .opening-menu{width:100%;justify-self:stretch}
.menu-content{max-width:1200px}
.menu-content{column-gap:1vw}
.menu-page .this-week{width:80%;justify-self:start}
.menu-page .weekly-menu>h2,.menu-page .this-week h2{font-size:24px}
.this-week .ornament{display:flex}.this-week .ornament img{animation:menu-anahaw-rotate 8s linear infinite}
.this-week h2{margin-bottom:0}.this-week .ornament{margin-top:-5px;margin-bottom:5px}.this-week .ornament img{animation:menu-anahaw-rotate 8s linear infinite reverse}
.this-week h2{font-size:20px}
.menu-page .weekly-menu .ornament img,.menu-page .this-week .ornament img{width:20px!important;height:20px!important;max-width:20px!important;max-height:20px!important}
@media(min-width:901px){
  .menu-page .menu-content{display:grid;grid-template-columns:1fr 1fr}
  .menu-page #current-menu-panel.is-active{display:grid;grid-template-columns:1fr 1fr;gap:1vw}
  .menu-page .opening-menu{grid-column:1/-1}
  .menu-page .opening-columns{display:grid;grid-template-columns:1fr 1fr}
  .menu-page .weekly-menu{grid-column:1}
  .menu-page .this-week{grid-column:2}
}

/* Smooth transitions between standalone pages. */
html{background:var(--cream)}
body{opacity:1;transition:opacity .4s ease}
body.page-leaving{opacity:0}
@media(max-width:900px){
  .menu-page .this-week{
    width:100%;
    margin:0 auto;
    padding:32px 8vw 48px;
    border-radius:24px;
  }
  .menu-page .this-week h2{
    margin:0 0 18px;
    font-size:24px;
    line-height:1.1;
    white-space:normal;
  }
  .menu-page .this-week .ornament{margin:0 auto 22px}
  .menu-page .this-week ul{margin:0}
  .menu-page .this-week li{font-size:14px;line-height:1.2;margin-bottom:12px}
  .menu-page .this-week .closing{
    margin-top:20px;
    padding-top:16px;
    font-size:16px;
    line-height:1.15;
  }
}
@media(max-width:620px){
  .current-menu-featured{margin-bottom:16%;padding:38px 0 0}.current-menu-featured+.menu-week-divider{margin:0 auto 16%}.current-menu-featured h2{margin-bottom:22px;font-size:30px}.current-menu-featured h3{font-size:16px}.current-menu-featured p{margin-top:4px;font-size:14px;line-height:1.2}
  .menu-tabs{gap:8px;margin-bottom:22px;padding:0;width:100%}.menu-tab{min-width:0;flex:1;gap:5px;padding:8px 4px;font-size:14px;line-height:1.1}.menu-tab img{width:20px;height:20px;flex:none}
  .menu-page .opening-columns{grid-template-columns:1fr 1fr;gap:12px}
  .menu-page .opening-columns>div:first-child{padding-left:0}
  .menu-page .opening-menu h2{font-size:12px}
  .menu-page .opening-menu p{font-size:10px}
}
.mobile-menu-toggle{display:none!important}
@media(max-width:800px){.menu-page{background-position:23% top;background-attachment:fixed}}
@media(max-width:800px){.menu-page{position:relative}.menu-page::before{content:"";position:absolute;inset:0;z-index:0;background:rgba(67,90,60,.24);pointer-events:none}.menu-page>*{position:relative;z-index:1}}
@media(max-width:800px){.site-footer{display:flex!important;flex-direction:column!important;align-items:center!important}.site-footer img{width:180px!important;order:1!important}.site-footer .social-links{display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:nowrap!important;white-space:nowrap!important;gap:10px!important;order:2!important}.site-footer .social-links svg{flex:none!important}.site-footer>span:first-child{order:3!important;font-size:10px!important}.site-footer>span:last-child{text-align:center!important}}
@media(max-width:800px){
  .mobile-nav-header{position:relative;z-index:20;display:flex;align-items:center;width:100%;min-height:220px;margin:0;padding:0 5%;background:transparent;color:#f5f0df}
  .mobile-nav-header>.brand{position:absolute;left:50%;top:0;display:block;width:220px;margin:0;transform:translateX(-50%);z-index:2}
  .mobile-nav-header>.brand img{display:block;width:220px;height:220px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(253,240,146,.95)) drop-shadow(0 5px 6px rgba(245,240,223,.7))}
  .mobile-menu-toggle{position:absolute;right:5%;top:33px;display:flex!important;flex-direction:column;justify-content:center;gap:5px;width:46px;height:34px;padding:5px;border:0;background:transparent;color:#f5f0df;cursor:pointer}
  .mobile-menu-toggle span{display:block;width:23px;height:2px;background:currentColor;border-radius:2px}
  .mobile-nav-header nav{position:absolute;top:calc(100% + 10px);left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px 8%;background:var(--green);border-radius:22px;box-shadow:0 8px 20px rgba(0,0,0,.18)}
  .mobile-nav-header.mobile-menu-open nav{display:flex}
  .mobile-nav-header nav a{padding:13px 8px;color:#f5f0df;font:700 14px/1 'Libre Baskerville',Georgia,serif;text-align:center;text-decoration:none;border-bottom:1px solid rgba(245,240,223,.25)}
  .mobile-nav-header nav a.active,.mobile-nav-header nav a:hover{color:var(--gold,#f0d767)}
  .mobile-nav-header nav a:last-child{border-bottom:0}
}

/* Single-page menu layout: the weekly menu appears first, followed by the full archive. */
.menu-page .menu-content{display:flex!important;flex-direction:column;gap:0;max-width:1200px}
.menu-page-title{order:0;width:100%;padding:8px 0 28px;text-align:center}
.menu-page-title h1,.past-menu-title h2{margin:0;color:var(--green);font:400 clamp(24px,3vw,38px)/1 'Libre Baskerville',Georgia,serif}
.menu-page-title span,.past-menu-title span{color:var(--gold);font-family:BrightWall,cursive;font-weight:400}
.menu-page-title p{max-width:560px;margin:14px auto 0;color:var(--green);font:400 18px/1.35 BrightWall,cursive}
.current-menu-panel{order:1;width:100%;display:block!important}
.menu-category-divider{order:1;width:72px;height:0;margin:0 auto 5%;border-top:2px solid #cc975d}
.past-menu-divider{width:72px;height:0;margin:5% auto;border-top:2px solid #cc975d}
.past-menu-title{order:2;width:100%;margin:10% 0 4%;text-align:center}
.past-menu-panel{order:3;width:100%;display:block!important}
.past-menu-panel .opening-menu{text-align:center}
.past-menu-panel .opening-menu h1{display:inline-block}
.past-menu-load-more{display:block;margin:5% auto 0;padding:11px 28px;border:1px solid var(--gold);border-radius:999px;background:rgba(244,238,223,.68);color:var(--green);font:400 16px/1 'Libre Baskerville',Georgia,serif;cursor:pointer}
.past-menu-load-more:hover,.past-menu-load-more:focus-visible{background:var(--gold);color:var(--cream)}
.past-menu-extra[hidden]{display:none!important}
.menu-page .legacy-menu-content:not([hidden]){order:4;width:100%;display:block!important}
.menu-page .opening-columns{grid-template-columns:1fr!important;gap:0}
.menu-page .opening-columns>div{padding-left:0!important}
.menu-page .opening-menu{padding-left:15%;padding-right:15%}
.menu-page .weekly-menu,.menu-page .this-week{width:100%;max-width:none;margin-left:0;margin-right:0}
.menu-page .this-week{padding:20px 0 0;background:transparent;border-radius:0;text-align:center}
.menu-page .this-week ul{display:inline-block;text-align:left}
.menu-page .this-week .ornament{margin:0 auto 18px}
@media(max-width:620px){
  .menu-page-title{padding:0 0 24px}
  .menu-page-title h1,.past-menu-title h2{font-size:24px}
  .menu-page-title p{max-width:320px;font-size:16px}
  .past-menu-title{margin:16% 0 8%}
  .past-menu-load-more{margin-top:12%}
  .menu-page .opening-menu{padding-left:0;padding-right:0}
}
