:root{--font-display:"DM Sans", Arial, sans-serif;--font-price:"Caveat", cursive;--cart-width:380px;--first-letter-scale:1.45}.nav-link:first-letter,.dish-name:first-letter{font-size:calc(1em * var(--first-letter-scale));font-weight:600}*{box-sizing:border-box;cursor:none}body{font-family:var(--font-display);color:#222;background:#fff;margin:0;padding-top:104px}.navbar{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffff5;align-items:center;gap:24px;padding:10px 28px;display:flex;position:fixed;inset:0 0 auto}.brand{flex-shrink:0;align-items:center;line-height:0;text-decoration:none;display:inline-flex}.brand-logo{width:auto;height:80px;display:block}.nav-link{color:#555;padding:2px 4px;font-size:18px;font-weight:500;text-decoration:none}.nav-link:hover,.nav-link.active{color:#e8431f;text-underline-offset:6px;-webkit-text-decoration:underline #e8431f;text-decoration:underline #e8431f;text-decoration-thickness:2px}.cart-button{background:#ef6a1e;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin-left:auto;transition:transform .25s;display:flex;position:relative}.cart-button.cart-bump{transform:scale(1.18)}.cart-icon{width:22px;height:22px;display:block}.cart-count{color:#fff;text-align:center;background:#e8431f;border-radius:50%;min-width:22px;height:22px;padding:0 4px;font:700 13px/22px Arial,sans-serif;display:none;position:absolute;top:-4px;right:-4px}.cart-backdrop{opacity:0;visibility:hidden;z-index:350;background:#00000073;transition:opacity .25s,visibility .25s;position:fixed;inset:0}body.cart-open .cart-backdrop{opacity:1;visibility:visible}.cart-panel{width:min(var(--cart-width), 92vw);z-index:400;background:#fff;flex-direction:column;height:100vh;transition:transform .5s;display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-8px 0 40px #0003}body.cart-open .cart-panel{transform:translate(0)}.cart-header{border-bottom:1px solid #e8eaed;justify-content:space-between;align-items:center;padding:24px 24px 20px;display:flex}.cart-title{font-size:24px;font-weight:600}.cart-close{color:#e8431f;background:#fff;border:none;border-radius:50%;width:36px;height:36px;font:700 18px Arial;box-shadow:0 2px 8px #0000001f}.cart-items{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex;overflow-y:auto}.cart-empty{text-align:center;color:#888;margin:auto;font-size:15px;line-height:1.55}.cart-item{border-bottom:1px solid #e8eaed;align-items:center;gap:14px;padding-bottom:16px;display:flex}.cart-item:last-child{border-bottom:none;padding-bottom:0}.cart-item img{object-fit:contain;background:#fff7ef;border-radius:8px;flex-shrink:0;width:64px;height:64px}.cart-item-info{flex:1;min-width:0}.cart-item-name{font-size:16px;font-weight:600;line-height:1.3}.cart-item-options{color:#888;margin-top:2px;font-size:12px}.cart-item-price{font-family:var(--font-price);color:#e8431f;margin-top:4px;font-size:18px;font-weight:700}.qty-control{flex-shrink:0;align-items:center;gap:6px;display:flex}.qty-btn{background:#fff;border:1px solid #e8eaed;border-radius:999px;min-width:32px;height:32px;padding:0 10px;font-size:14px;font-weight:600}.qty-btn:hover{color:#e8431f;background:#fff7ef;border-color:#f5c4a8}.qty-num{text-align:center;min-width:20px;font-size:14px;font-weight:600}.cart-footer{border-top:1px solid #e8eaed;padding:20px 24px 24px}.cart-total-label{color:#888;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:13px}.cart-total-amount{color:#e8431f;margin-bottom:16px;font-size:26px;font-weight:700}.cart-actions{flex-direction:column;gap:10px;display:flex}.cart-action-btn{width:100%;font-family:var(--font-display);border:none;border-radius:12px;padding:12px 22px;font-size:16px;font-weight:700}.cart-action-btn--pay{color:#fff;background:#ef6a1e;box-shadow:0 3px #c05413}.cart-action-btn--pay:disabled{background:#f0c4a8;box-shadow:0 3px #ddb08f}.cart-action-btn--quote{color:#e8431f;background:#fff;border:1px solid #e8eaed}.store-hero{max-width:1200px;margin:0 auto;padding:48px 28px 24px}.store-hero h1{margin:0 0 8px;font-size:clamp(32px,4vw,44px);font-weight:800;line-height:1.1}.store-hero p{color:#666;max-width:640px;margin:0;font-size:16px;line-height:1.5}.menu{max-width:1200px;margin:0 auto;padding:0 28px 72px}.store-grid{grid-template-columns:repeat(4,1fr);gap:18px 36px;width:100%;display:grid}.store-grid img{-webkit-mask-composite:source-in;border-radius:8px;width:100%;height:auto;display:block;-webkit-mask-image:linear-gradient(#0000 0%,#000 20% 80%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 20% 80%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 20% 80%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 20% 80%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.store-dish{text-align:center;margin:0;padding-top:26px;transition:transform .2s;position:relative;overflow:visible}.store-dish:hover{z-index:5;transform:scale(1.12)}.dish-photo{position:relative;overflow:visible}.dish-photo--contain img{object-fit:contain;aspect-ratio:auto;background:0 0;padding:0}.dish-price{width:72px;height:52px;font-family:var(--font-price);color:#e8431f;pointer-events:none;z-index:2;justify-content:center;align-items:center;font-size:26px;font-weight:700;display:flex;position:absolute;bottom:12px;right:-22px}.dish-name{color:#222;margin:4px 0 10px;font-size:20px;font-weight:500;line-height:1.2}.dish-unit{color:#888;margin-top:-6px;margin-bottom:10px;font-size:13px;display:block}.store-qty{background:#fff;border:1px solid #e8eaed;border-radius:999px;align-items:center;gap:8px;padding:4px;display:inline-flex;box-shadow:0 2px 8px #0000000f}.store-qty-btn{color:#555;background:#fff7ef;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;font-weight:700;line-height:1;transition:background .15s,color .15s;display:flex}.store-qty-btn:hover{color:#fff;background:#ef6a1e}.store-qty-btn:disabled{opacity:.35;cursor:none}.store-qty-btn:disabled:hover{color:#555;background:#fff7ef}.store-qty-num{color:#222;text-align:center;min-width:24px;font-size:16px;font-weight:700}.site-footer{background:#fff7ef;margin-top:0;padding:48px 28px 24px;position:relative}.site-footer:before{content:"";pointer-events:none;background:linear-gradient(#fff,#fff7ef00);height:100px;position:absolute;top:0;left:0;right:0}.footer-grid{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:20px;max-width:640px;margin:0 auto;display:flex;position:relative}.footer-brand{line-height:0;text-decoration:none;display:inline-block}.footer-brand-logo{width:auto;height:120px;margin:0 auto;display:block}.footer-tagline{max-width:420px;margin:0}.footer-nav{flex-wrap:wrap;justify-content:center;gap:8px 28px;display:flex}.footer-nav a{font-family:var(--font-display);color:#555;font-size:16px;font-weight:500;text-decoration:none}.footer-nav a:hover{color:#e8431f;text-underline-offset:4px;-webkit-text-decoration:underline #e8431f;text-decoration:underline #e8431f;text-decoration-thickness:2px}.footer-socials{flex-wrap:wrap;justify-content:center;gap:12px 20px;display:flex}.footer-socials a{color:#555;align-items:center;gap:8px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.footer-socials a:hover{color:#e8431f}.footer-social-icon{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.footer-social-icon svg{width:20px;height:20px;display:block}.footer-social-icon--ig{background:radial-gradient(circle at 30% 110%,#fdf497 0% 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)}.footer-social-icon--fb{background:#1877f2}.site-footer p{color:#555;font-size:15px;line-height:1.6}.footer-nav a,.footer-socials a{text-decoration:none}@media (max-width:800px){.footer-nav,.footer-socials{gap:8px 20px}}.custom-cursor{pointer-events:none;z-index:9999;width:155px;position:fixed;top:0;left:0;transform:translate(calc(10px - 41%),calc(30% - 36px))}@media (max-width:900px){.store-grid{grid-template-columns:repeat(2,1fr);gap:16px 28px}}@media (max-width:800px){.dish-price{width:auto;min-width:48px;height:auto;padding:2px 4px;font-size:20px;top:-10px;bottom:auto;right:-10px}.dish-name{font-size:17px}}@media (max-width:500px){.store-grid{grid-template-columns:repeat(2,1fr);gap:16px}.dish-name{font-size:16px}.dish-price{width:auto;min-width:44px;height:auto;padding:2px;font-size:18px;top:-10px;bottom:auto;right:-10px}}
