footer{background:var(--layer-1,#1a2b24);border-top:1px solid var(--ink-1);color:var(--text-color,#e2ded8);padding:clamp(2.5rem,5vw,4rem) var(--space-md) var(--space-xl);box-shadow:none;width:100%;box-sizing:border-box;position:relative}.footer-inner{max-width:1200px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:clamp(2rem,4vh,3rem)}.footer-grid{display:grid;grid-template-columns:1fr;gap:1.4rem;align-items:stretch}.footer-card{display:flex;flex-direction:column;background:var(--ink-1);border:1px solid var(--ink-1);border-radius:var(--radius-card,16px);padding:1.6rem 1.8rem;box-shadow:none;transition:border-color .25s ease,background-color .25s ease;text-align:left;box-sizing:border-box}.footer-card:hover{border-color:var(--ink-2);background:var(--ink-1)}.footer-card-header{display:flex;align-items:center;gap:1rem;margin-bottom:.85rem;text-align:left}.footer-card-icon{width:42px;height:42px;border-radius:12px;background:rgba(var(--theme-color-rgb),.12);border:1px solid rgba(var(--theme-color-rgb),.25);color:var(--theme-color);display:flex;align-items:center;justify-content:center;flex-shrink:0}.footer-card-icon svg{width:22px;height:22px;display:block;margin:auto;fill:currentColor}.footer-card-title{font-family:var(--font-brand, "Playfair Display", serif);font-size:1.65rem;font-weight:700;color:var(--text-strong);margin:0;line-height:1.25;letter-spacing:.3px}.footer-card-desc{font-family:var(--font-body, "Open Sans", sans-serif);font-size:1.35rem;color:var(--text-color,#dcd7ce);line-height:1.55;margin:0 0 1.4rem 0;flex-grow:1;font-weight:400}.footer-address{font-style:normal;margin:0;width:100%}.footer-contact-actions{width:100%}.footer-action-btn{display:flex;flex-direction:column;gap:.4rem;background:var(--ink-1);border:1px solid var(--ink-1);border-radius:12px;padding:1rem 1.2rem;text-decoration:none;transition:background-color .2s ease,border-color .2s ease;box-sizing:border-box;width:100%}.footer-action-btn:hover{background:var(--ink-2);border-color:var(--ink-3)}.footer-action-main{color:var(--text-strong);font-size:1.35rem;font-weight:600;line-height:1.35}.footer-action-badge{color:var(--text-color);font-size:1.2rem;font-weight:600;display:inline-flex;align-items:center;gap:.35rem}.footer-action-badge svg{flex-shrink:0;transition:transform .2s ease}.footer-action-btn:hover .footer-action-badge svg{transform:translateX(3px)}.social-media{display:flex;align-items:center;gap:1rem;margin-top:auto;padding-top:.4rem}.social-btn{width:44px;height:44px;border-radius:50%;background:var(--ink-2);border:1px solid var(--ink-4);color:var(--text-strong);display:flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease;flex-shrink:0}.social-btn svg{width:20px;height:20px;display:block;margin:auto;fill:currentColor}.social-btn:hover{background:var(--ink-2);border-color:var(--ink-4);color:var(--text-strong);transform:translateY(-2px);box-shadow:0 4px 14px rgba(var(--shadow-rgb),calc(.3 * var(--shadow-k)))}.social-btn:active{transform:scale(.94)}.footer-bottom{border-top:1px solid var(--ink-1);padding-top:var(--space-lg);display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.footer-allergen-banner{background:var(--ink-1);border:1px solid var(--ink-1);border-radius:12px;padding:.9rem 1.3rem;max-width:680px;width:100%;display:flex;align-items:center;gap:.75rem;text-align:left;box-sizing:border-box}.footer-allergen-icon{color:var(--text-color);flex-shrink:0}.footer-allergen-text{color:var(--text-color,#dcd7ce);font-size:1.25rem;line-height:1.45;margin:0;font-weight:400}.footer-legal-links{display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap}.footer-legal-link{color:var(--text-strong);font-size:1.3rem;font-weight:600;text-decoration:none;border-bottom:1px dashed rgba(255,255,255,.4);padding-bottom:2px;transition:color .2s ease,border-color .2s ease}.footer-legal-link:hover{color:var(--text-strong);border-color:var(--ink-4)}.copyright{font-size:1.25rem;color:var(--text-color,#c8c2b8);opacity:.85;margin:0;font-weight:400}.signature{font-size:1.15rem;font-weight:400;opacity:.55;margin:0}.signature>a{color:var(--text-color,#c8c2b8);text-decoration:none;transition:color .2s ease,opacity .2s ease}.signature>a:hover{color:var(--text-strong);text-decoration:underline;opacity:1}@media screen and (min-width:640px){.category-group,.menu-nav,.utility-bar,footer{max-width:1360px;margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box}.utility-bar{padding:var(--pad-inline)}.menu-intro{max-width:1360px;margin:var(--space-lg) auto var(--space-xs)}.menu-hint{max-width:780px;margin:0 auto var(--space-md)}.menu-search-wrap{max-width:640px;margin:var(--space-md) auto var(--space-lg);width:100%}.items-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;width:100%;max-width:1360px;gap:var(--space-md) var(--space-lg);padding:var(--space-sm) var(--pad-inline) var(--space-xl);margin:0 auto;box-sizing:border-box}.card{grid-template-columns:115px minmax(0,1fr);padding:var(--space-sm) var(--space-md) var(--space-sm) var(--space-sm)}}@media screen and (min-width:900px){.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.8rem}}@media screen and (min-width:1120px){.items-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg)}}@media screen and (min-width:1600px){.category-group,.items-list,.menu-intro,.menu-nav,.utility-bar,footer{max-width:1600px}.items-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-lg)}}