@font-face{font-family:Google Sans Code;src:url(/assets/GoogleSansCode-VariableFont_wght-a41q3NA0.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Google Sans Code;src:url(/assets/GoogleSansCode-Italic-VariableFont_wght-DFTZbo6x.ttf) format("truetype");font-weight:100 900;font-style:italic;font-display:swap}:root{--color-brand-primary: #467016;--color-brand-primary-dark: #467016;--color-brand-on: #ffffff;--color-text-primary: #000000;--color-text-muted: rgba(0, 0, 0, .68);--color-text-subtle: rgba(0, 0, 0, .48);--color-surface: #ffffff;--color-surface-soft: rgba(70, 112, 22, .06);--color-surface-strong: rgba(70, 112, 22, .12);--shadow-glass: 0 24px 48px -36px rgba(17, 24, 39, .34);--shadow-elevated: 0 24px 48px -32px rgba(17, 24, 39, .34);color:var(--color-text-primary);background:#fff;font-family:Google Sans Code,Segoe UI,sans-serif;line-height:1.5;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#46701614,#fff 60%)}img,picture{display:block;max-width:100%}.app-shell{display:flex;flex-direction:column;min-height:100vh;color:inherit}.hero-header{position:relative;display:grid;place-items:center;padding:clamp(2.5rem,4vw,4rem) clamp(1.5rem,5vw,5rem);background:linear-gradient(135deg,#467016f0,#000000b8);overflow:hidden}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000040;mix-blend-mode:multiply}.hero-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/assets/kafega-CWQJ__Jr.jpg);background-size:cover;background-position:center;opacity:.3;filter:saturate(.3) brightness(1.05);transform:scale(1.05);z-index:0}.hero-content{position:relative;width:min(960px,100%);color:var(--color-brand-on);display:flex;flex-direction:column;gap:clamp(1.5rem,3vw,2.5rem)}.brand{display:flex;align-items:center;gap:1rem;text-decoration:none;color:inherit}.brand-logo{width:clamp(56px,6vw,72px);height:clamp(56px,6vw,72px)}.brand-label{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin:0}.brand-subtitle{margin:.15rem 0 0;font-size:.95rem;text-transform:uppercase;opacity:.8;letter-spacing:.24em}.hero-body{display:flex;flex-direction:column;gap:clamp(1.5rem,3vw,2.5rem)}.hero-title{margin:0;font-size:clamp(2.5rem,6vw,4rem);letter-spacing:-.04em}.hero-text{margin:.75rem 0 0;font-size:clamp(1rem,2vw,1.2rem);max-width:48ch;color:#ffffffd9}.hero-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem}.summary-card{padding:1.15rem 1.4rem;border-radius:20px;background:#ffffff1f;border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:flex;flex-direction:column;gap:.7rem;transition:transform .2s ease,border-color .2s ease,background .2s ease}.summary-card:hover{transform:translateY(-2px);border-color:#ffffff3d;background:#ffffff29}.summary-card.is-disabled,.summary-card.is-disabled:hover{transform:none;border-color:#ffffff29;background:#ffffff1f;cursor:default}.summary-link{display:inline-flex;align-items:center;gap:.85rem;color:#fffffff2;font-weight:600;letter-spacing:-.01em;font-size:.92rem;transition:transform .18s ease,color .18s ease;text-decoration:none}.summary-link.is-disabled{pointer-events:none;cursor:default;color:#ffffffd1}.summary-icon{width:1.25rem;height:1.25rem;color:inherit;flex-shrink:0}.summary-link:not(.is-disabled):hover,.summary-link:not(.is-disabled):focus-visible{transform:translate(2px);color:#fff}.summary-lines{display:inline-flex;flex-direction:column;gap:.15rem;font-size:.85rem}.summary-lines span{line-height:1.4}.chip-bar{display:flex;gap:clamp(.45rem,2vw,.7rem);overflow-x:auto;padding:clamp(.25rem,1.5vw,.35rem);scroll-snap-type:x mandatory;scrollbar-width:none}.chip-bar::-webkit-scrollbar{display:none}.chip-bar__item{flex-shrink:0;border:none;border-radius:999px;padding:clamp(.45rem,2vw,.55rem) clamp(.95rem,6vw,1.2rem);color:#000000d1;font-size:.95rem;font-weight:500;cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease;scroll-snap-align:center;background:#ffffffd9}.chip-bar__item.is-active{background:linear-gradient(135deg,var(--color-brand-primary),rgba(70,112,22,.88));color:var(--color-brand-on);box-shadow:0 12px 24px -12px #46701673}.chip-bar__item:hover{transform:translateY(-2px)}.meta-label{display:block;font-weight:700;text-transform:uppercase;letter-spacing:.18em;font-size:.82rem;color:#ffffffb8}.menu-layout{display:flex;gap:clamp(1.5rem,4vw,3rem);padding:clamp(1.5rem,3vw,2.5rem);width:min(1100px,100%);margin:clamp(-4rem,-10vw,-6rem) auto 0}.category-nav{flex:0 0 300px;display:flex;flex-direction:column;gap:1rem}.mobile-category-nav{display:none}.mobile-category-nav__surface{border-radius:36px;background:#ffffffe0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-glass);padding:clamp(.75rem,2vw,1rem);width:min(520px,100%);max-width:100%;display:flex;flex-direction:column;gap:.65rem}.category-nav__desktop{display:none;position:sticky;top:clamp(1rem,4vw,3rem);padding:1.5rem;border-radius:24px;background:#ffffffe0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-glass);max-height:calc(100vh - clamp(2.5rem,8vw,4.5rem));overflow-y:auto;overscroll-behavior:contain}.category-groups{display:flex;flex-direction:column;gap:1rem}.category-group-card{border-radius:24px;padding:1.1rem;border:1px solid rgba(70,112,22,.12);background:#ffffffeb;display:flex;flex-direction:column;gap:.85rem;transition:border-color .18s ease,box-shadow .18s ease}.category-group-card.is-active{border-color:#46701666;box-shadow:0 22px 44px -32px #467016b3}.category-group__label{border:none;background:transparent;padding:0;font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;color:var(--color-text-subtle);cursor:pointer;text-align:left}.category-sub-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.category-sub-link{width:100%;text-align:left;border:none;border-radius:18px;padding:.85rem 1rem;background:#4670160a;cursor:pointer;transition:background .18s ease,transform .18s ease;color:inherit}.category-sub-link.is-active{background:linear-gradient(135deg,#46701624,#46701647);transform:translate(4px);box-shadow:0 18px 32px -28px #467016cc}.category-sub-link:hover{background:#4670161f}.category-link__label{font-weight:600;display:block;font-size:1.05rem}.category-link__description{display:block;margin-top:.15rem;font-size:.85rem;color:var(--color-text-subtle)}.mobile-group-tabs{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem}.group-chip{border:1px solid rgba(70,112,22,.18);background:#ffffffe6;border-radius:999px;padding:.45rem 1rem;font-size:.9rem;font-weight:600;color:var(--color-text-primary);cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.group-chip.is-active{background:linear-gradient(135deg,#467016d9,#467016a6);color:#fff;border-color:#467016a6;box-shadow:0 12px 24px -18px #467016cc}.mobile-chip-stack{border-radius:28px;padding:.35rem .15rem;background:#f6f6f6d9}.menu-content{flex:1;display:flex;flex-direction:column;gap:clamp(2rem,5vw,3rem)}.menu-section{background:var(--color-surface);border-radius:32px;padding:clamp(1.75rem,3vw,2.75rem);box-shadow:var(--shadow-elevated);scroll-margin-top:clamp(6rem,18vw,9rem);transition:box-shadow .2s ease,transform .2s ease}.menu-section.is-active{box-shadow:0 32px 64px -32px #46701673;transform:translateY(-2px)}.menu-section__header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:clamp(1.5rem,3vw,2.5rem)}.section-eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;color:var(--color-brand-primary);margin:0}.menu-section h2{margin:0;font-size:clamp(1.75rem,4vw,2.5rem)}.section-summary{margin:0;max-width:48ch;color:var(--color-text-muted);font-size:1rem}.menu-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.scroll-top{position:fixed;right:clamp(1rem,4vw,2rem);bottom:clamp(1rem,4vw,2rem);width:52px;height:52px;border-radius:50%;border:none;background:radial-gradient(circle at 30% 30%,#467016eb,#467016cc);color:#fff;display:grid;place-items:center;box-shadow:0 16px 32px -16px #46701680;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease;z-index:60}.scroll-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-top__icon{width:22px;height:22px}.menu-card{border-radius:20px;border:1px solid rgba(70,112,22,.16);padding:1.25rem;display:flex;flex-direction:column;gap:.6rem;background:#ffffffe6;transition:transform .18s ease,box-shadow .18s ease}.menu-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px -20px #11182773}.menu-card.is-highlighted{border-color:#4670168c;background:linear-gradient(180deg,#46701629,#fff 98%);box-shadow:0 20px 40px -20px #46701661}.menu-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.menu-card__header h3{margin:0;font-size:1.1rem;letter-spacing:-.01em}.menu-card__price{font-weight:600;font-size:1rem;color:var(--color-brand-primary)}.menu-card__description{margin:0;color:var(--color-text-muted);font-size:.95rem}.menu-card__tags{display:flex;flex-wrap:wrap;gap:.5rem}.menu-tag{display:inline-flex;align-items:center;padding:.25rem .7rem;border-radius:999px;background:#46701629;color:var(--color-brand-primary);font-size:.78rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.menu-footer{display:grid;place-items:center;padding:3rem 1.5rem 4rem;color:var(--color-text-subtle);font-size:.85rem}.menu-footer span{font-weight:600;color:var(--color-brand-primary)}@media (min-width: 960px){.category-nav__desktop{display:block}}@media (max-width: 959px){.hero-summary{grid-template-columns:1fr}.mobile-category-nav{display:block;position:sticky;top:clamp(.75rem,4vw,1.25rem);padding:0 clamp(.75rem,4vw,1.1rem);margin:clamp(-2.2rem,-7vw,-1.6rem) auto clamp(1rem,4vw,1.6rem);z-index:40;width:100%}.mobile-category-nav__surface{margin:0 auto}.menu-layout{flex-direction:column;margin-top:0;gap:clamp(1.25rem,4vw,2rem)}.category-nav{display:none}.menu-section{border-radius:24px 24px 0 0}}@media (max-width: 640px){.hero-header{padding:3rem 1.25rem 4rem}.hero-content{gap:1.75rem}.menu-layout{padding:0 1.25rem 2.5rem}.menu-section{padding:1.35rem 1.15rem 2.25rem}.menu-grid{grid-template-columns:1fr}}
