/* Rasoi theme: restaurant & cafe */
:root{--head:"Poppins",system-ui,sans-serif;--body:"Inter",system-ui,sans-serif;--r:20px;--rb:12px}
.muted{color:var(--mut)}.small{font-size:13.5px}.center{text-align:center;margin-top:30px}
.hdr .w{gap:24px}.hdr-cta{margin-left:6px}.hcall{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14.5px;margin-right:6px}.hcall .ic{width:18px;height:18px;color:var(--c2)}
.btn-acc{color:#2A1A12}
/* hero */
.hero{background:radial-gradient(900px 500px at 85% 20%,color-mix(in srgb,var(--c2) 70%,transparent),transparent 70%),var(--c1);color:#fff;overflow:hidden}
.hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding-top:64px;padding-bottom:72px}
.kick{display:inline-flex;align-items:center;gap:8px;color:var(--acc);font-weight:600;font-size:14px}.kick .ic{width:17px;height:17px}.kick .ic .A{stroke:#fff}
.hero h1{font-size:54px;line-height:1.08;margin:16px 0 16px;letter-spacing:-.02em}.hero h1 em{font-style:normal;color:var(--acc)}
.hero-txt>p{font-size:18px;color:rgba(255,255,255,.78);max-width:520px}.ctas{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.hinfo{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:24px;font-size:14.5px;color:rgba(255,255,255,.8)}.hinfo span{display:inline-flex;gap:8px;align-items:center}.hinfo .ic{width:17px;height:17px;color:var(--acc)}
.hero-img{position:relative}.hero-img img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;box-shadow:0 40px 80px -30px rgba(0,0,0,.7);border:10px solid rgba(255,255,255,.06)}
.hbadge{position:absolute;left:0;bottom:8%;background:#fff;color:var(--c1);border-radius:14px;padding:12px 16px;font-weight:600;font-size:14.5px;display:flex;gap:8px;align-items:center;box-shadow:0 18px 40px -16px rgba(0,0,0,.5)}.hbadge .ic{color:var(--acc);fill:var(--acc)}
.apps{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.app{border-radius:10px;padding:9px 14px;font-size:14px;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18)}.app b{font-weight:700}.app.zo b{color:#FF6B78}.app.sw b{color:#FF9F43}
.oside .apps .app{background:#fff;color:var(--ink);border-color:var(--line)}.oside .app.zo b{color:#E23744}.oside .app.sw b{color:#FC8019}
/* section heads */
.k{color:var(--c2)}.hd h2,.h2{color:var(--c1)}
/* dish cards */
.dgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.dc{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.dc:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.dc-img{position:relative;aspect-ratio:4/3;background:var(--c1);display:flex;align-items:center;justify-content:center}.dc-img img{width:100%;height:100%;object-fit:cover}.dc-img>.ic{width:44px;height:44px;color:var(--acc)}
.dc-tag{position:absolute;top:12px;left:12px;background:var(--acc);color:#2A1A12;font-style:normal;font-weight:700;font-size:12px;border-radius:99px;padding:4px 10px}
.dc-b{padding:18px;display:flex;flex-direction:column;gap:6px;flex:1}.dc-t{display:flex;align-items:center;gap:8px}.dc-t b{font-size:17px;font-family:var(--head)}.dc-b p{color:var(--mut);font-size:14.5px;flex:1}
.dc-f{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.dc-f>b{font-size:18px}
.vm{width:16px;height:16px;border:2px solid #1A8F3C;border-radius:3px;position:relative;flex:none}.vm::after{content:"";position:absolute;inset:3px;border-radius:50%;background:#1A8F3C}.vm.nv{border-color:#B3261E}.vm.nv::after{background:#B3261E;border-radius:0;clip-path:polygon(50% 0,100% 100%,0 100%)}.vm.egg{border-color:#D68A00}.vm.egg::after{background:#D68A00}
.hot{display:inline-flex}.hot .ic{width:16px;height:16px;color:#D9480F}.hot .ic .A{stroke:#D9480F}
.tag{font-style:normal;font-size:11.5px;font-weight:700;color:var(--c2);background:var(--soft);border-radius:99px;padding:2px 8px}
/* story */
.story-sec{background:var(--cream)}.story{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}.story-img img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:28px}.story .lead{margin:0 0 22px}
.feats{display:flex;flex-direction:column;gap:12px}.feat{display:flex;gap:14px;align-items:center;background:#fff;border-radius:16px;padding:14px;border:1px solid var(--line)}.feat .ibox{width:46px;height:46px;padding:12px;border-radius:12px;background:var(--c1);color:var(--acc);flex:none;display:flex}.feat .ibox .ic .A{stroke:#fff}.feat b{display:block}.feat span{color:var(--mut);font-size:14.5px}
/* gallery */
.gal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gal figure{margin:0;position:relative;border-radius:18px;overflow:hidden}.gal img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .4s}.gal figure:hover img{transform:scale(1.05)}
.gal figcaption{position:absolute;left:12px;bottom:12px;background:rgba(0,0,0,.55);color:#fff;font-size:13px;font-weight:600;border-radius:99px;padding:4px 12px}
/* reviews */
.rv-sec{background:var(--c1)}.rv-sec .hd h2{color:#fff}.rv-sec .k{color:var(--acc)}
.rvs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rv{margin:0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:24px;color:#fff;display:flex;flex-direction:column}
.stars{color:var(--acc);letter-spacing:3px}.rv blockquote{margin:12px 0 16px;font-size:16.5px;line-height:1.6;flex:1}.rv figcaption b{display:block}.rv figcaption small{color:rgba(255,255,255,.65)}
/* booking band */
.bookband{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.vinfo{display:flex;flex-direction:column;gap:12px;margin-top:20px}.vinfo>*{display:flex;gap:12px;align-items:flex-start;color:var(--ink)}.vinfo .ic{color:var(--c2);margin-top:2px}
/* menu page */
.mnav{position:sticky;top:74px;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.mnav .w{display:flex;gap:8px;overflow-x:auto;padding-top:12px;padding-bottom:12px;scrollbar-width:none}.mnav .w::-webkit-scrollbar{display:none}
.mnav a{white-space:nowrap;border:1px solid var(--line);border-radius:99px;padding:7px 16px;font-weight:600;font-size:14.5px;background:#fff}.mnav a:hover{border-color:var(--c2);color:var(--c2)}
.menu-w{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.msec{scroll-margin-top:140px;margin-bottom:28px}.msec h2{font-size:26px;color:var(--c1);padding-bottom:10px;border-bottom:2px solid var(--acc);display:inline-block;margin-bottom:6px}
.mr{display:grid;grid-template-columns:minmax(0,1fr) 128px;gap:18px;padding:18px 0;border-bottom:1px dashed var(--line)}.mr-b p{color:var(--mut);font-size:14.5px;margin:4px 0 6px}.mr-b .pr{font-size:17px}
.mr-r{position:relative;display:flex;flex-direction:column;align-items:center}.mr-r img{width:128px;height:110px;object-fit:cover;border-radius:16px}
.mr-r .addq{margin-top:-18px}.mr-r img+.addq{margin-top:-18px}.mr-r .addq:only-child{margin-top:20px}
.addq{position:relative;z-index:2}.addq .add{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--c2);color:var(--c2);font-weight:700;border-radius:10px;height:38px;padding:0 16px;cursor:pointer;box-shadow:0 6px 14px -8px rgba(0,0,0,.35)}.addq .add .ic{width:15px;height:15px}
.addq .stp{display:none;align-items:center;background:var(--c2);color:#fff;border-radius:10px;height:38px;box-shadow:0 6px 14px -8px rgba(0,0,0,.35)}.addq .stp button{background:none;border:0;color:#fff;width:36px;height:100%;cursor:pointer;display:flex;align-items:center;justify-content:center}.addq .stp .ic{width:15px;height:15px}.addq .stp .ic .A{stroke:#fff}
.addq .stp em{font-style:normal;font-weight:700;min-width:22px;text-align:center}.addq.on .add{display:none}.addq.on .stp{display:inline-flex}
.oside{position:sticky;top:140px;display:flex;flex-direction:column;gap:12px}.oside .card{padding:22px}.oside h2{font-size:20px;display:flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--c1)}.oside h2 .ic{color:var(--c2)}
.olines{max-height:240px;overflow:auto}.ol{display:flex;justify-content:space-between;gap:10px;padding:7px 0;font-size:14.5px;border-bottom:1px dashed var(--line)}.otot{display:flex;justify-content:space-between;padding:12px 0;font-size:17px;font-weight:600}
.otype{display:grid;grid-template-columns:1fr 1fr;gap:8px}.otype input{position:absolute;opacity:0;pointer-events:none}.otype span{display:flex;align-items:center;justify-content:center;height:42px;border:1.5px solid var(--line);border-radius:10px;font-weight:600;cursor:pointer}.otype input:checked+span{border-color:var(--c1);background:var(--c1);color:#fff}
.btn-wa[disabled]{opacity:.5;cursor:not-allowed;transform:none}
.obar{display:none}
.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:start}.cinfo{display:flex;flex-direction:column;gap:14px}.contact .card h2{font-size:24px}
.ftr .fl{display:block;margin-bottom:9px}
@media (max-width:1100px){.hcall span{display:none}}
@media (max-width:980px){.hero-in,.story,.bookband,.contact,.menu-w{grid-template-columns:1fr}.dgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.rvs{grid-template-columns:1fr}.oside{position:static}.hero-img{max-width:440px;margin:0 auto}}
@media (max-width:860px){.hcall{display:none}.hdr-cta{margin-left:auto}.burger{margin-left:0}.mnav{top:64px}}
@media (max-width:760px){
  .hero-in{padding-top:36px;padding-bottom:44px;gap:30px}.hero h1{font-size:36px}.hero-txt>p{font-size:16px}.ctas .btn{flex:1 1 100%}
  .dgrid,.gal{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dc-b{padding:12px}.dc-t b{font-size:15px}.dc-b p{font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dc-f>b{font-size:16px}
  .mr{grid-template-columns:minmax(0,1fr) 108px;gap:12px}.mr-r img{width:108px;height:96px}.msec h2{font-size:22px}
  .obar:not([hidden]){display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:45;background:var(--c1);color:#fff;border-radius:16px;padding:10px 12px 10px 16px;align-items:center;justify-content:space-between;box-shadow:0 18px 40px -14px rgba(0,0,0,.6)}
  .menu-pg{padding-bottom:84px}.hdr-cta .btn{display:inline-flex}
}
@media (max-width:420px){.dgrid{grid-template-columns:1fr}}
.dc-t{flex-wrap:wrap}.tag{white-space:nowrap}
