/* Flako · warm surfaces, precise marks, quiet motion */
:root{--orange:#f26522;--green:#242424;--ink:#242424;--cream:#faf8f5;--line:#eae4dd;--flako-ease:cubic-bezier(.22,1,.36,1)}
body{background:var(--cream)}
.flako-brand{display:flex!important;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px!important;background:transparent!important;border:0;border-radius:0;padding:0!important;flex-shrink:0;text-decoration:none}
.flako-wordmark{display:block;width:136px;aspect-ratio:960/330;background: url('/brand/flako-original.png') no-repeat 46.875% 39.66% / 213.333% auto;mix-blend-mode:multiply}
.flako-signature{font-family:'DM Sans',Arial,sans-serif;font-size:9px!important;font-weight:500;letter-spacing:1.1px;line-height:1.5;color:#292929;white-space:nowrap}
.top{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);box-shadow:0 4px 28px #24242404}
@supports(backdrop-filter:blur(18px)){.top{background:rgba(255,255,255,.88);backdrop-filter:blur(18px)}}
.header{padding-top:18px;padding-bottom:18px}.header nav{gap:28px}.nav-btn{position:relative;padding:10px 0}.nav-btn:after{content:'';position:absolute;bottom:2px;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--flako-ease)}.nav-btn.active:after{transform:scaleX(1)}
.hero{background:#f3ece4;border:1px solid #ebe2d8;border-radius:28px;isolation:isolate}.hero-copy{position:relative;z-index:2;padding:48px}.hero-copy h1{max-width:510px;font-weight:800;line-height:1.06;letter-spacing:-2.5px}.hero-copy h1 em{display:inline-block}.hero-copy p{color:#6e665e}.hero-photo:before{background:linear-gradient(90deg,#f3ece4,transparent 38%)}
.hero-photo img{transition:transform 1.2s var(--flako-ease)}.hero-seal{position:absolute;top:24px;right:24px;z-index:2;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:var(--orange);color:white;box-shadow:0 8px 24px #0002;transform:rotate(-30deg)}.hero-seal svg{width:29px;height:29px;stroke-width:2.5}.food-tag{border:1px solid #fff9;box-shadow:0 10px 35px #24242414}
.search{box-shadow:0 8px 26px #39220d06;border-color:#fff;transition:box-shadow .25s,border-color .25s}.search:focus-within{box-shadow:0 0 0 4px #f2652215;border-color:#f2652266}
.rest,.dish,.panel,.cart-summary{border-color:var(--line);box-shadow:0 3px 16px #35270e03}.rest{border-radius:20px}.rest-image{overflow:hidden}.rest-image img{transition:transform .7s var(--flako-ease)}.category{border-radius:16px;transition:background .25s,border-color .25s,transform .25s,box-shadow .25s}.category.active{box-shadow:inset 0 0 0 1px #f2652220;background:#fff0e6}.rating{background:#f4eee7;color:#655341}.rest-copy{padding:21px}.rest-foot{border-color:var(--line)}
.tiptop-visual{background:radial-gradient(ellipse at 50% 50%,#fff 0%,#f4ece3 80%)}.tiptop-logo{box-shadow:0 9px 28px #3824120b;border:1px solid #ede6dd}.restaurant-hero.tiptop-hero{border:1px solid var(--line);background:#f4ece3}.tiptop-hero .tiptop-visual{background:transparent}.tiptop-hero .tiptop-logo{width:160px}
.banner{position:relative;overflow:hidden;background:#242424;border:1px solid #363330;border-radius:22px;padding:30px;gap:28px}.banner:before{content:'';position:absolute;width:230px;height:230px;right:-110px;top:-120px;border:40px solid #f265221a;border-radius:50%;pointer-events:none}.banner>div{position:relative}.banner p{color:#c5bcb4}.payment-logos{gap:8px;max-width:460px}.pay-badge{width:94px;height:58px;padding:12px;background:#fff;border:1px solid #eee9e2;border-radius:12px;box-shadow:0 4px 10px #0001}.pay-badge img{max-width:100%;max-height:32px;object-fit:contain}.pay-badge.cash{color:#514237}.operator-choice{border-radius:13px}.payment{border-radius:14px}.payment-logo{padding:3px;background:#fff;border-radius:5px}
.foot{border-top:1px solid var(--line);margin-top:30px;padding-top:24px;align-items:center;gap:20px}.foot-brand{display:flex;align-items:center;gap:16px}.foot-brand .flako-wordmark{width:92px}.foot-brand small{font-size:10px;line-height:1.8;color:#7a7067}.foot-brand small b{font-weight:500;color:#3b332c}
.sidebar .flako-brand{align-self:stretch;margin:-35px -24px 0;padding:27px 24px 24px!important;background:#faf8f5!important;border-bottom:3px solid var(--orange)}.sidebar .label{margin-top:24px}.sidebar .flako-wordmark{width:145px}.sidebar .flako-signature{letter-spacing:1px}.sidebar{background:#242424}.head{padding-top:18px;padding-bottom:18px}.head .tag{border-radius:30px;letter-spacing:1.5px;font-size:9px}
button,.btn,.button,a,.add,.fav{touch-action:manipulation}.btn,.button,.cart-btn,.add,.fav,.online{transition:transform .22s var(--flako-ease),box-shadow .22s,background .22s}.btn:active,.button:active,.cart-btn:active,.add:active,.fav:active{transform:scale(.97)}.btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #f2652280;outline-offset:4px}.mobile-nav{background:rgba(255,255,255,.97);border-top:1px solid var(--line);box-shadow:0 -6px 24px #24242405}.mobile-nav button{transition:color .2s,background .2s}.mobile-nav button.active{background:#fff4ed;border-radius:12px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.rest:hover{transform:translateY(-5px);box-shadow:0 15px 36px #35270e10}.rest:hover .rest-image img{transform:scale(1.035)}.category:hover{transform:translateY(-2px);border-color:#f2652266}.btn:not(:disabled):hover,.cart-btn:hover{transform:translateY(-2px);box-shadow:0 7px 18px #f2652220}.fav:hover,.add:hover{transform:scale(1.1)}.nav-btn:hover:after{transform:scaleX(1)}.hero:hover .hero-photo img{transform:scale(1.025)}}
@keyframes flako-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes flako-count{50%{transform:scale(1.22)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:no-preference){.flako-reveal{opacity:0;transform:translateY(18px);transition:opacity .65s var(--flako-ease),transform .65s var(--flako-ease);transition-delay:var(--reveal-delay,0ms)}.flako-reveal.is-visible{opacity:1;transform:none}.count.flako-bump{animation:flako-count .35s var(--flako-ease)}dialog[open]{animation:flako-enter .3s var(--flako-ease)}}
@media(max-width:700px){.flako-wordmark{width:116px}.flako-signature{font-size:8px!important;letter-spacing:.85px}.header{gap:13px 8px;padding-top:15px;padding-bottom:12px}.header nav{gap:0}.head{flex-wrap:wrap;gap:14px}.head .tag{margin-left:auto}.head .return{flex:1 0 100%;text-align:right}.hero{border-radius:22px}.hero-copy{padding:28px 24px}.hero-copy h1{font-size:43px;line-height:1.06;letter-spacing:-1.8px}.hero-photo:before{background:linear-gradient(#f3ece4,transparent 55%)}.hero-seal{width:42px;height:42px;top:22px;right:18px}.hero-seal svg{width:22px;height:22px}.hero-photo{height:195px}.food-tag{left:16px;bottom:18px}.rest-copy{padding:18px}.banner{padding:24px;gap:20px}.payment-logos{width:100%;max-width:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.pay-badge{width:100%;height:56px;padding:9px}.pay-badge img{max-width:100%;max-height:30px}.foot{flex-direction:column;align-items:flex-start;margin-top:24px}.foot-brand{gap:13px}.sidebar .flako-brand{margin:0!important;padding:18px!important;border-radius:12px}.sidebar .flako-wordmark{width:130px}.sidebar .flako-signature{font-size:8px!important}.sidebar .label{display:block;margin:14px 0 0}.tiptop-hero .tiptop-logo{width:125px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.flako-reveal{opacity:1!important;transform:none!important}}
.search button svg{color:#fff}#restaurants{scroll-margin-top:125px}.cart-summary{top:124px}.hero-seal{pointer-events:none}
@media(min-width:701px) and (max-width:1100px){.sidebar .flako-brand{margin:-30px -18px 0;padding:25px 18px!important}}
@media(max-width:700px){#restaurants{scroll-margin-top:155px}.cart-summary{top:165px}}
.tiptop-logo{background-size:210% auto;background-position:center 43.7%}
.top{background:#fff;backdrop-filter:none}.payment-logos{max-width:none;flex-wrap:nowrap}.pay-badge{width:88px;flex-shrink:0}
@media(max-width:700px){.pay-badge{width:100%}}
@media(min-width:701px) and (max-width:1100px){.banner{flex-wrap:wrap}.banner .payment-logos{width:100%;margin-left:0;justify-content:flex-start}}
@media(min-width:701px) and (max-width:1000px){.header{flex-wrap:wrap;gap:16px}.header .address{order:3;width:100%;border-top:1px solid var(--line);padding-top:12px}.header nav{gap:16px}.cart-summary{top:173px}#restaurants{scroll-margin-top:173px}}
.message-link{text-decoration:none;gap:8px}.message-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:20px;background:#f26522;color:#fff;font-size:10px;line-height:1;font-weight:700}.chat-tracking{margin-top:16px;display:inline-flex}
