@font-face{font-family:'Erica One';src:url(fonts/erica-one-latin.woff2) format('woff2');font-display:swap}
@font-face{font-family:'Imprima';src:url(fonts/imprima-latin.woff2) format('woff2');font-display:swap}
:root{
  --cream:#FBF3E4;--cream2:#F4E6CB;--paper:#FFFaf0;--red:#C9282D;--red-d:#9E1B20;--red-l:#E2484C;
  --ink:#3B2A24;--muted:#7C665A;--line:rgba(201,40,45,.28);--green:#86B33C;--green-d:#5E8A22;--gold:#E9B949;
  --shadow:0 10px 30px -12px rgba(110,40,20,.35);--r:18px;
  --disp:'Erica One',Impact,'Arial Black',sans-serif;--body:'Imprima','Trebuchet MS',system-ui,sans-serif;
  --safe-b:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:128px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.5 var(--body);overflow-x:hidden;-webkit-tap-highlight-color:transparent}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:
 radial-gradient(1200px 600px at 85% -10%,#fff7e6 0,transparent 60%),
 radial-gradient(900px 500px at -10% 40%,#f6e3c4 0,transparent 60%),var(--cream)}
img,svg{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit}
h1,h2,h3,.disp{font-family:var(--disp);font-weight:400;letter-spacing:.01em;margin:0}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:8px;background:var(--red);color:#fff;padding:8px 14px;border-radius:10px;z-index:200}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:8px}
[hidden]{display:none!important}

/* ---------- top bar ---------- */
.top{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:14px;padding:10px max(16px,calc((100vw - 1160px)/2 + 20px));background:rgba(251,243,228,.88);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:2px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand img{width:44px;height:auto;filter:drop-shadow(0 3px 4px rgba(150,30,20,.25))}
.brand b{display:block;font-family:var(--disp);color:var(--red);font-size:20px;line-height:1;letter-spacing:.03em}
.brand small{display:block;font-size:10.5px;letter-spacing:.28em;color:var(--muted);margin-top:3px}
.nav{display:flex;gap:4px;margin-left:auto}
.nav a{text-decoration:none;font-weight:700;color:var(--ink);padding:8px 12px;border-radius:999px;transition:.2s}
.nav a:hover{background:#fff;color:var(--red)}
.hud{display:flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--line);border-radius:999px;padding:5px 12px 5px 6px;font-size:12px;font-weight:700}
.hud.bump{animation:bump .35s}
.lv{white-space:nowrap;background:var(--red);color:#fff;font-family:var(--disp);font-size:11px;padding:3px 8px;border-radius:999px;letter-spacing:.04em}
.xpbar{width:90px;height:9px;background:var(--cream2);border-radius:9px;overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.15)}
.xpbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--red-l),var(--red));border-radius:9px;transition:width .5s cubic-bezier(.2,1.4,.4,1)}
.xpn{min-width:52px;color:var(--muted)}
.icon-btn{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;border:2px solid var(--line);background:#fff;color:var(--red);cursor:pointer;transition:transform .12s}
.icon-btn:active{transform:scale(.9)}
#mute .x{display:none}#mute.off .x{display:block}#mute.off .w{display:none}#mute.off{color:var(--muted)}
.badge{position:absolute;top:-7px;right:-7px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--red);color:#fff;font:12px/22px var(--disp);text-align:center;border:2px solid var(--cream)}
.badge.pop{animation:pop .45s cubic-bezier(.2,1.6,.4,1)}

/* ---------- buttons (squish, game-ui) ---------- */
.btn{--b:var(--red-d);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:16px;border:0;font-family:var(--disp);font-size:15px;letter-spacing:.05em;text-decoration:none;cursor:pointer;user-select:none;transition:transform .08s,box-shadow .08s,filter .2s;overflow:hidden}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.45) 45%,transparent 60%);transform:translateX(-120%);transition:transform .6s}
.btn:hover::after{transform:translateX(120%)}
.btn-red{background:var(--red);color:#fff;box-shadow:0 6px 0 var(--red-d),0 12px 24px -8px rgba(201,40,45,.6)}
.btn-red:hover{filter:brightness(1.07)}
.btn-red:active,.btn-red.squish{transform:translateY(5px);box-shadow:0 1px 0 var(--red-d),0 4px 10px -6px rgba(201,40,45,.6)}
.btn-ghost{background:#fff;color:var(--red);border:2.5px solid var(--red);box-shadow:0 5px 0 var(--red)}
.btn-ghost:active{transform:translateY(4px);box-shadow:0 1px 0 var(--red)}
.btn-wa{background:#1FA855;color:#fff;box-shadow:0 6px 0 #137A3C,0 12px 24px -8px rgba(31,168,85,.6)}
.btn-wa:active{transform:translateY(5px);box-shadow:0 1px 0 #137A3C}
.btn-waze{background:#33CCFF;color:#0B2A3A;box-shadow:0 6px 0 #1E93BC}
.btn-waze:active{transform:translateY(5px);box-shadow:0 1px 0 #1E93BC}
.btn[disabled]{filter:grayscale(.8) opacity(.55);cursor:not-allowed}
.w100{width:100%}.grow{flex:1}.center{display:flex;width:max-content;margin:28px auto 0}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;padding:40px 0 70px}
.wedge{position:absolute;width:220px;height:220px;background:var(--green);z-index:-1}
.hero .wl{left:-110px;bottom:-110px;transform:rotate(45deg)}
.hero .wr{right:-120px;top:40px;transform:rotate(45deg);background:var(--gold);opacity:.35;width:180px;height:180px}
.hero-in{max-width:1160px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:30px}
.status{display:inline-flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--line);padding:6px 14px 6px 10px;border-radius:999px;font-weight:700;font-size:14px;margin:0 0 14px}
.status i{width:10px;height:10px;border-radius:50%;background:#bbb}
.status.open i{background:#2BB24C;box-shadow:0 0 0 0 rgba(43,178,76,.6);animation:ping 1.6s infinite}
.hero h1{font-size:clamp(64px,11vw,140px);line-height:.88;color:var(--red);text-shadow:0 4px 0 var(--red-d),0 10px 0 rgba(158,27,32,.18)}
.hero h1 .t2{display:inline-block}
.kicker{font-family:var(--disp);letter-spacing:.2em;color:var(--ink);font-size:clamp(12px,1.6vw,16px);margin:14px 0 0}
.lead{font-size:clamp(17px,1.8vw,20px);max-width:520px;color:var(--ink);margin:16px 0 26px}
.lead b{color:var(--red)}
.ctas{display:flex;gap:14px;flex-wrap:wrap}
.press{margin-top:26px;background:none;border:0;font-family:var(--disp);letter-spacing:.3em;color:var(--red);font-size:15px;cursor:pointer;animation:blink 1.1s steps(2,start) infinite;padding:8px 0}
.stage{position:relative;height:420px;display:grid;place-items:center;perspective:900px}
.halo{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,#fff 0,#fde9c8 45%,transparent 70%)}
.console{position:relative;width:min(330px,80%);height:auto;filter:drop-shadow(0 30px 30px rgba(130,25,20,.35));animation:float 4s ease-in-out infinite;transition:transform .2s;cursor:pointer}
.floor{position:absolute;bottom:40px;width:220px;height:22px;border-radius:50%;background:radial-gradient(rgba(120,40,20,.25),transparent 70%);animation:shadow 4s ease-in-out infinite}
.spark{position:absolute;color:var(--gold);font-size:26px;animation:twinkle 2.4s infinite}
.s1{top:60px;left:16%}.s2{top:110px;right:12%;animation-delay:.8s;font-size:20px;color:var(--red-l)}.s3{bottom:90px;left:10%;animation-delay:1.4s;font-size:18px}

/* ---------- section heads ---------- */
section{position:relative}
.sec-head{text-align:center;margin:0 auto 26px;max-width:640px}
.sec-head.left{text-align:left;margin-left:0}
.eyebrow{font-family:var(--disp);font-size:12px;letter-spacing:.28em;color:var(--green-d);margin:0 0 6px}
.sec-head h2{font-size:clamp(40px,6vw,64px);color:var(--red);line-height:1}
.sub{color:var(--muted);margin:10px 0 0}
.h3{font-size:22px;color:var(--red);margin:28px 0 12px}

/* ---------- order ---------- */
.order{padding:56px 0 30px;background:linear-gradient(var(--paper),var(--cream));border-top:2px solid var(--line);border-bottom:2px solid var(--line)}
.legend{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:center;margin-bottom:6px}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:13px}
.chip svg{width:22px;height:22px}
.chip span{background:var(--red);color:#fff;padding:3px 10px;border-radius:6px}
.tabs-wrap{position:sticky;top:66px;z-index:30;background:rgba(255,250,240,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:2px solid var(--line);margin-top:20px}
.tabs{display:flex;gap:8px;overflow-x:auto;padding:10px 20px;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{flex:none;display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:2px solid var(--line);background:#fff;font-family:var(--disp);font-size:14px;letter-spacing:.04em;color:var(--ink);cursor:pointer;transition:.18s}
.tab svg{width:22px;height:22px}
.tab[aria-selected=true]{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 4px 0 var(--red-d)}
.tab:active{transform:translateY(3px)}
.cat{padding:34px 0 8px;scroll-margin-top:130px}
.cat-h{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.cat-h svg{width:40px;height:40px}
.cat-h h3{font-size:30px;color:var(--red)}
.cat-h small{margin-left:auto;font-family:var(--disp);font-size:12px;letter-spacing:.14em;color:var(--muted)}
.items{display:grid;grid-template-columns:1fr;gap:0 40px}
@media(min-width:900px){.items{grid-template-columns:1fr 1fr}}
.item{position:relative;display:grid;grid-template-columns:62px 1fr auto;gap:14px;align-items:center;padding:16px 4px;border-bottom:2px solid var(--line);cursor:pointer;transition:background .2s}
.item:hover{background:rgba(255,255,255,.6)}
.item .ico{width:62px;height:62px;border-radius:16px;background:#fff;display:grid;place-items:center;box-shadow:inset 0 0 0 2px var(--line)}
.item .ico svg{width:44px;height:44px;transition:transform .3s cubic-bezier(.2,1.6,.4,1)}
.item:hover .ico svg{transform:rotate(-8deg) scale(1.1)}
.item .ico img{width:100%;height:100%;object-fit:cover;border-radius:16px}
.item h4{margin:0;font-family:var(--disp);font-weight:400;color:var(--red);font-size:17px;line-height:1.15}
.item .bdg{display:inline-block;font:700 11px/1 var(--body);letter-spacing:.06em;text-transform:uppercase;background:var(--green);color:#fff;padding:4px 7px;border-radius:6px;margin-left:6px;vertical-align:2px}
.item p{margin:3px 0 0;color:var(--muted);font-size:15px;line-height:1.35}
.item .tg{display:flex;gap:4px;margin-top:6px}.item .tg svg{width:20px;height:20px}
.item .rt{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.price{font-family:var(--disp);color:var(--red);font-size:20px;white-space:nowrap}
.price small{font-size:12px;margin-right:2px}
.consult{font-family:var(--disp);font-size:12px;letter-spacing:.1em;color:var(--muted);border:2px dashed var(--line);padding:5px 9px;border-radius:8px}
/* red price-list panel, like the printed menu */
.cat.redpanel .items{background:var(--red);border-radius:26px;padding:10px 26px;box-shadow:var(--shadow),inset 0 0 0 3px rgba(255,255,255,.08)}
.cat.redpanel .item{border-color:rgba(255,255,255,.28);grid-template-columns:44px 1fr auto}
.cat.redpanel .item:hover{background:rgba(255,255,255,.07)}
.cat.redpanel .item .ico{width:44px;height:44px;background:rgba(255,255,255,.95);box-shadow:none;border-radius:12px}
.cat.redpanel .item .ico svg{width:32px;height:32px}
.cat.redpanel .item h4{color:#fff}
.cat.redpanel .item p{color:rgba(255,255,255,.82)}
.cat.redpanel .price{color:#fff}
@media(min-width:900px){.cat.redpanel .items{gap:0 40px}}
.soon{display:flex;gap:16px;align-items:center;padding:22px;border:2.5px dashed var(--line);border-radius:var(--r);background:#fff}
.soon>svg{width:56px;height:56px;flex:none}
.soon b{font-family:var(--disp);color:var(--red);display:block;font-size:18px}
.soon p{margin:4px 0 0;color:var(--muted)}
.soon .dots::after{content:"";animation:dots 1.4s steps(4) infinite}
.skeleton{height:84px;border-radius:16px;margin:16px 0;background:linear-gradient(90deg,#f3e6cf,#fff6e6,#f3e6cf);background-size:200% 100%;animation:sk 1.2s infinite}
.legal{font-size:13px;color:var(--muted);text-align:center;margin:30px 0 10px}

/* ---------- about ---------- */
.about,.where{padding:70px 0}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.stat{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;background:#fff;border:2px solid var(--line);border-radius:var(--r);padding:20px;box-shadow:var(--shadow)}
button.stat{cursor:pointer;transition:transform .1s}button.stat:active{transform:scale(.97)}
.stat b{font-family:var(--disp);font-weight:400;font-size:46px;color:var(--red);line-height:1}
.stat span{color:var(--ink);line-height:1.25}
.leds{display:flex!important;gap:5px;margin-top:6px}
.leds i{width:14px;height:14px;border-radius:4px;background:#e7d8bf;transition:.25s}
.leds i.on{background:var(--red-l);box-shadow:0 0 10px var(--red-l)}
.note{color:var(--muted);font-size:14px;margin-top:12px}

/* ---------- where ---------- */
.where-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:36px;align-items:start}
.addr{display:flex;gap:8px;align-items:flex-start;font-size:18px;font-weight:700;margin:0}
.addr svg{color:var(--red);flex:none;margin-top:3px}
.hours{list-style:none;padding:0;margin:0;background:#fff;border:2px solid var(--line);border-radius:var(--r);overflow:hidden}
.hours li{display:flex;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--line)}
.hours li:last-child{border:0}
.hours li.today{background:#fff2df;font-weight:700}
.hours li.today span:first-child::after{content:" · hoje";color:var(--red);font-size:12px}
.hours .na{color:var(--muted);font-style:italic}
.nav-btns{display:grid;gap:12px;margin-top:22px}
.map{border-radius:24px;overflow:hidden;border:3px solid var(--red);box-shadow:0 8px 0 var(--red-d);aspect-ratio:4/3.4;background:var(--cream2)}
.map iframe{width:100%;height:100%;border:0}

/* ---------- footer ---------- */
.foot{position:relative;overflow:hidden;padding:46px 0 130px;text-align:center;border-top:2px solid var(--line)}
.foot .wl{left:-110px;bottom:-110px;transform:rotate(45deg)}
.foot .wr{right:-110px;bottom:-110px;transform:rotate(45deg)}
.foot-ui{display:flex;justify-content:center;gap:34px;flex-wrap:wrap}
.gbtn{display:inline-flex;align-items:center;gap:8px;background:none;border:0;font-family:var(--disp);font-size:20px;letter-spacing:.08em;color:var(--red);text-decoration:none;cursor:pointer;padding:8px}
.gbtn svg{color:var(--gold);transition:transform .3s}
.gbtn:hover svg{transform:rotate(72deg) scale(1.2)}
.gbtn small{font:12px var(--body);color:var(--muted);letter-spacing:0}
.foot-brand{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:26px 0 6px;color:var(--muted);font-size:14px}
.foot-brand b{font-family:var(--disp);color:var(--red);font-weight:400}
.foot-small{font-size:13px;color:var(--muted);margin:0}

/* ---------- modals ---------- */
.modal{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center}
.scrim{position:absolute;inset:0;background:rgba(40,18,12,.5);backdrop-filter:blur(3px);animation:fade .2s}
.sheet{position:relative;width:min(560px,100%);max-height:92vh;display:flex;flex-direction:column;background:var(--cream);border-radius:28px 28px 0 0;overflow:hidden;animation:up .32s cubic-bezier(.2,1.2,.4,1);padding-bottom:var(--safe-b)}
@media(min-width:700px){.modal{align-items:center}.sheet{border-radius:28px}}
.x{position:absolute;right:14px;top:14px;z-index:3;width:40px;height:40px;border-radius:12px;border:2px solid var(--line);background:#fff;color:var(--red);font-size:16px;cursor:pointer}
.im-hero{display:grid;place-items:center;padding:30px 0 16px;background:radial-gradient(circle at 50% 60%,#fff 0,var(--cream2) 70%);border-bottom:2px solid var(--line)}
.im-ico{animation:float 3s ease-in-out infinite}
.im-hero img{width:100%;max-height:260px;object-fit:cover;margin:-30px 0 -16px}
.im-body{padding:18px 22px;overflow:auto}
.im-badge{display:inline-block;margin:0 0 6px;background:var(--green);color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 8px;border-radius:6px}
.im-body h3{color:var(--red);font-size:28px;line-height:1.05}
.im-desc{color:var(--muted);margin:6px 0 10px}
.im-tags{display:flex;flex-wrap:wrap;gap:8px}
.opts{border:0;padding:0;margin:14px 0 0}
.opts legend,.seg-f legend{font-family:var(--disp);color:var(--ink);font-size:14px;letter-spacing:.04em;margin-bottom:8px;padding:0}
#imOptsC,.seg{display:flex;flex-wrap:wrap;gap:8px}
.pill{position:relative;display:inline-flex}
.pill input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.pill span{display:inline-flex;align-items:center;gap:6px;padding:11px 16px;border-radius:14px;border:2px solid var(--line);background:#fff;font-weight:700;transition:.15s}
.pill input:checked+span{border-color:var(--red);background:var(--red);color:#fff;box-shadow:0 4px 0 var(--red-d)}
.pill input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}
.fld{display:block;margin:14px 0 0}
.fld>span{display:block;font-family:var(--disp);font-size:13px;letter-spacing:.04em;margin-bottom:6px}
.fld input,.fld textarea,.fld select{width:100%;font:16px var(--body);color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:14px;padding:12px 14px;transition:border .15s,box-shadow .15s}
.fld textarea{resize:vertical}
.fld input:focus,.fld textarea:focus,.fld select:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 4px rgba(201,40,45,.15)}
.fld.err input,.fld.err select{border-color:var(--red);background:#fff1f1;animation:shake .35s}
.em{display:block;color:var(--red);font-size:13px;margin-top:4px}
.seg-f{border:0;padding:0;margin:18px 0 0}
.seg-f.err .seg{animation:shake .35s}.seg-f.err legend{color:var(--red)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hint{font-size:14px;color:var(--muted);margin:8px 0 0}
.chk{display:flex;gap:8px;align-items:center;margin-top:10px;font-size:15px}
.chk input{width:20px;height:20px;accent-color:var(--red)}
.im-foot .btn{white-space:nowrap;padding:0 16px}
.im-foot{display:flex;gap:12px;padding:14px 18px;border-top:2px solid var(--line);background:var(--paper)}
.stepper{display:flex;align-items:center;background:#fff;border:2px solid var(--line);border-radius:16px;overflow:hidden}
.stepper button{width:44px;height:48px;border:0;background:none;font:24px var(--disp);color:var(--red);cursor:pointer}
.stepper button:active{background:var(--cream2)}
.stepper output{min-width:30px;text-align:center;font-family:var(--disp);font-size:18px}
.stepper.sm button{width:36px;height:38px;font-size:20px}.stepper.sm output{min-width:24px;font-size:15px}

.dw-prog{position:absolute;left:0;right:0;bottom:-2px;height:5px;background:var(--cream2)}
.dw-prog i{display:block;height:100%;width:33%;background:linear-gradient(90deg,var(--gold),var(--red));transition:width .4s cubic-bezier(.2,1.4,.4,1)}

/* ---------- reservas ---------- */
.res{padding:70px 0;background:linear-gradient(var(--cream),var(--paper));border-bottom:2px solid var(--line)}
.how{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.how-c{position:relative;background:#fff;border:2px solid var(--line);border-radius:var(--r);padding:22px 20px 20px;box-shadow:var(--shadow)}
.how-c h3{color:var(--red);font-size:20px;margin:10px 0 6px;line-height:1.15}
.how-c p{margin:0;color:var(--muted);font-size:15px}.how-c b{color:var(--ink)}
.n{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--red);color:#fff;font-family:var(--disp);font-size:15px;box-shadow:0 3px 0 var(--red-d)}
.price-c{background:var(--red);border-color:var(--red);box-shadow:0 8px 0 var(--red-d)}
.price-c h3,.price-c p,.price-c b{color:#fff}.price-c p{opacity:.92}
.price-c .n{background:var(--cream);color:var(--red);box-shadow:0 3px 0 #d9c3a0}
.price-c .big{font-size:34px;display:block;line-height:1}
.slots-board{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:26px}
.sb-d{background:#fff;border:2px solid var(--line);border-radius:14px;padding:10px 8px;text-align:center}
.sb-d b{display:block;font-family:var(--disp);font-weight:400;color:var(--red);font-size:15px;margin-bottom:6px}
.sb-d span{display:block;font-size:13px;padding:3px 0;border-top:1px dashed var(--line)}
.sb-d.off{background:transparent;border-style:dashed}.sb-d.off b{color:var(--muted)}.sb-d.off span{color:var(--muted);font-style:italic}
.sb-d.today{border-color:var(--red);box-shadow:0 4px 0 var(--red)}
.faq-h{margin-top:44px;text-align:center;font-size:28px}
.faq{max-width:820px;margin:0 auto;display:grid;gap:10px}
.faq details{background:#fff;border:2px solid var(--line);border-radius:16px;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:16px 18px;font-family:var(--disp);color:var(--ink);font-size:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";margin-left:auto;font-size:22px;color:var(--red);transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details[open]{border-color:var(--red)}
.faq summary .q{color:var(--green-d);font-size:13px;letter-spacing:.1em}
.faq .a{padding:0 18px 16px;color:var(--ink);font-size:16px}
.faq .a p{margin:0 0 6px}
/* reservation modal */
.rs{max-height:94vh;max-height:94dvh}
.rs-head{position:relative;padding:18px 66px 16px 20px;border-bottom:2px solid var(--line);background:var(--paper)}
.rs-head small{font-family:var(--disp);font-size:11px;letter-spacing:.2em;color:var(--green-d)}
.rs-head h3{color:var(--red);font-size:26px;line-height:1.05}
.rs-body{padding:6px 18px 20px;overflow:auto;overscroll-behavior:contain}
.rs-step{border:0;padding:0;margin:18px 0 0;transition:opacity .3s,filter .3s}
.rs-step legend{display:flex;align-items:center;gap:10px;font-family:var(--disp);font-size:16px;color:var(--ink);margin-bottom:10px;padding:0}
.rs-step legend small{font:13px var(--body);color:var(--muted)}
.rs-step.locked{opacity:.38;filter:grayscale(.7);pointer-events:none}
.rs-step.locked legend::after{content:"🔒";font-size:14px}
.rs-step.ok legend .n{background:var(--green);box-shadow:0 3px 0 var(--green-d)}
.days{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x mandatory;scrollbar-width:thin}
.day{flex:none;scroll-snap-align:start;width:70px;padding:9px 4px 8px;border-radius:14px;border:2px solid var(--line);background:#fff;text-align:center;cursor:pointer;font:inherit;transition:transform .08s}
.day small{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.day b{display:block;font-family:var(--disp);font-weight:400;font-size:22px;color:var(--red);line-height:1.1}
.day i{display:block;font-style:normal;font-size:11px;color:var(--muted)}
.day[aria-pressed=true]{background:var(--red);border-color:var(--red);box-shadow:0 4px 0 var(--red-d)}
.day[aria-pressed=true] *{color:#fff}
.day:active{transform:translateY(3px)}
.day[disabled]{background:repeating-linear-gradient(-45deg,#f6ecdb 0 6px,#efe2cb 6px 12px);cursor:not-allowed;opacity:.75}
.day[disabled] b{color:var(--muted)}
.players{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.avatars{display:flex;flex-wrap:wrap;gap:4px;max-width:220px}
.avatars span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--red);color:#fff;font:11px var(--disp);animation:pop .35s cubic-bezier(.2,1.6,.4,1)}
.tablesug{margin:12px 0 0;padding:10px 12px;border-radius:12px;background:#fff;border:2px dashed var(--line);font-size:15px}
.tablesug b{color:var(--red)}
.rs-sum{margin-top:18px;background:#2a1d18;color:#fff;border-radius:18px;padding:16px 18px;border:2px solid var(--gold);animation:fade .3s}
.rs-sum small{font-family:var(--disp);font-size:11px;letter-spacing:.2em;color:var(--gold)}
.rs-sum .tot{font-family:var(--disp);font-size:30px;color:#fff;display:block;margin:2px 0}
.rs-sum p{margin:4px 0 0;font-size:14px;opacity:.9}
.btn[aria-disabled=true]{filter:grayscale(.8) opacity(.5);pointer-events:none}
@media(max-width:820px){.how{grid-template-columns:1fr}.slots-board{grid-template-columns:repeat(4,1fr)}}
@media(max-width:520px){.slots-board{grid-template-columns:repeat(2,1fr)}.slots-board .sb-d:last-child{grid-column:1/-1}}

/* fx */
#fx{position:fixed;inset:0;pointer-events:none;z-index:120}
.xp-pop{position:fixed;z-index:121;pointer-events:none;font-family:var(--disp);color:var(--red);font-size:16px;text-shadow:0 2px 0 #fff,0 0 8px #fff;transform:translate(-50%,-50%);animation:xp .95s ease-out forwards}
.toasts{position:fixed;top:78px;right:14px;z-index:130;display:flex;flex-direction:column;gap:8px;align-items:flex-end;pointer-events:none}
.toast{display:flex;align-items:center;gap:12px;background:#2a1d18;color:#fff;padding:10px 16px 10px 10px;border-radius:16px;border:2px solid var(--gold);box-shadow:0 10px 30px -10px rgba(0,0,0,.5);animation:tin .45s cubic-bezier(.2,1.5,.4,1)}
.toast .tr{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--gold);font-size:22px}
.toast small{display:block;font-size:10px;letter-spacing:.2em;color:var(--gold);font-family:var(--disp)}
.toast b{font-family:var(--disp);font-weight:400;font-size:15px}
.toast.out{animation:tout .4s forwards}
.levelup{position:fixed;inset:0;z-index:125;display:grid;place-items:center;pointer-events:none}
.levelup div{font-family:var(--disp);font-size:clamp(46px,9vw,96px);color:var(--red);text-shadow:0 5px 0 var(--red-d),0 0 30px #fff;text-align:center;animation:lvl 1.7s forwards}
.levelup small{display:block;font-size:14px;letter-spacing:.2em;color:var(--ink);text-shadow:none}
.flash{position:fixed;inset:0;background:#fff;z-index:124;pointer-events:none;animation:flash .5s forwards}
body.cheat{--red:#7B2FF7;--red-d:#4B14A8;--red-l:#A66BFF;--green:#00C2A8}

/* reveal */
.rv{opacity:0;transform:translateY(24px);transition:opacity .6s,transform .6s cubic-bezier(.2,1,.3,1)}
.rv.in{opacity:1;transform:none}

@keyframes float{50%{transform:translateY(-14px)}}
@keyframes shadow{50%{transform:scale(.8);opacity:.6}}
@keyframes twinkle{50%{opacity:.2;transform:scale(.6) rotate(40deg)}}
@keyframes blink{to{visibility:hidden}}
@keyframes ping{70%{box-shadow:0 0 0 9px rgba(43,178,76,0)}100%{box-shadow:0 0 0 0 rgba(43,178,76,0)}}
@keyframes bump{40%{transform:scale(1.08)}}
@keyframes pop{0%{transform:scale(.4)}60%{transform:scale(1.35)}100%{transform:scale(1)}}
@keyframes rise{from{transform:translate(-50%,120%)}}
@keyframes glow{0%{box-shadow:0 6px 0 var(--red-d),0 0 0 0 rgba(233,185,73,.9)}100%{box-shadow:0 6px 0 var(--red-d),0 0 0 22px rgba(233,185,73,0)}}
@keyframes fade{from{opacity:0}}
@keyframes up{from{transform:translateY(100%)}}
@keyframes slide{from{transform:translateX(100%)}}
@keyframes shake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
@keyframes spin{to{transform:rotateY(360deg)}}
@keyframes scan{50%{top:220px}}
@keyframes xp{0%{opacity:0;transform:translate(-50%,-30%) scale(.6)}20%{opacity:1;transform:translate(-50%,-80%) scale(1.15)}100%{opacity:0;transform:translate(-50%,-260%)}}
@keyframes tin{from{opacity:0;transform:translateX(60px) scale(.8)}}
@keyframes tout{to{opacity:0;transform:translateX(60px)}}
@keyframes lvl{0%{transform:scale(.3);opacity:0}25%{transform:scale(1.15);opacity:1}40%{transform:scale(1)}80%{opacity:1}100%{opacity:0;transform:translateY(-30px)}}
@keyframes flash{from{opacity:.75}to{opacity:0}}
@keyframes sk{to{background-position:-200% 0}}
@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}

/* ---------- responsive ---------- */
@media(max-width:980px){.nav{display:none}.hud{margin-left:auto}}
@media(max-width:820px){
  .hero{padding:26px 0 50px}
  .hero-in{grid-template-columns:1fr;text-align:center;gap:0}
  .stage{order:-1;height:250px}.halo{width:240px;height:240px}.console{width:210px}.floor{bottom:16px;width:150px}
  .lead{margin-left:auto;margin-right:auto}.ctas{justify-content:center}
  .where-grid{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr}.stats .stat:first-child{grid-column:1/-1}
}
@media(max-width:520px){
  body{font-size:16px}
  .top{gap:8px;padding:8px 12px}
  .brand .brand-logo{width:40px}.brand .brand-word{height:32px}.brand-tag{display:none}
  .hud{padding:4px 8px 4px 4px;gap:5px}.xpbar{width:44px}.xpn{display:none}
  .icon-btn{width:40px;height:40px;border-radius:12px}
  .tabs-wrap{top:58px}
  .ctas .btn{flex:1 1 100%}

  .item{grid-template-columns:54px 1fr auto;gap:12px}.item .ico{width:54px;height:54px}.item .ico svg{width:38px;height:38px}
  .cat.redpanel .items{padding:6px 16px;border-radius:22px}
  .toasts{top:8px;right:10px;left:10px;align-items:center}
  .toast{padding:6px 14px 6px 6px;gap:10px;border-radius:14px}.toast .tr{width:30px;height:30px;font-size:17px;border-radius:9px}.toast small{display:none}.toast b{font-size:14px}
  .im-foot .btn{font-size:14px}
  .foot-ui{gap:10px;flex-direction:column;align-items:center}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .rv{opacity:1;transform:none}
  .press{animation:none}
}

/* ================= v3 · logo oficial, cardápio com fotos, jogos, turnos, ambiente ================= */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.brand{gap:9px}
.brand .brand-logo{width:48px;height:auto;filter:drop-shadow(0 3px 3px rgba(150,30,20,.22));transition:transform .3s cubic-bezier(.2,1.6,.4,1)}
.brand:hover .brand-logo{transform:rotate(-8deg) scale(1.08)}
.brand .brand-word{width:auto;height:38px;filter:none}
.brand-tag{font-family:var(--disp);font-size:9px;line-height:1.25;letter-spacing:.18em;color:var(--red);padding-left:9px;border-left:2px solid var(--line)}
.hero-word{margin:4px 0 0;line-height:0}
.hero-word img{width:min(400px,78vw);height:auto;filter:drop-shadow(0 6px 0 rgba(201,40,45,.18))}
.console{width:min(340px,82%)}
.foot-brand{gap:14px;margin:26px 0 10px}
.foot-brand .fb-logo{width:64px;height:auto}.foot-brand .fb-word{width:auto;height:50px}
.center-t{text-align:center;margin-top:40px}

/* cardápio: categoria */
.cat-h>div{min-width:0}
.cat-sub{margin:2px 0 0;font-family:var(--disp);font-size:12px;letter-spacing:.16em;color:var(--green-d);text-transform:uppercase}
.item{cursor:pointer}
.item:focus-visible,.card:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.item .ico{position:relative;overflow:hidden}
.item .ico img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.item .ico:not(.noimg) svg{visibility:hidden}

/* cards com foto */
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:10px}
@media(min-width:700px){.cards{grid-template-columns:repeat(3,1fr);gap:18px}}
@media(min-width:1000px){.cards{grid-template-columns:repeat(4,1fr);gap:20px}}
.card{position:relative;display:flex;flex-direction:column;background:#fff;border:2px solid var(--line);border-radius:20px;overflow:hidden;cursor:pointer;box-shadow:0 5px 0 rgba(201,40,45,.18);transition:transform .18s cubic-bezier(.2,1.4,.4,1),box-shadow .18s,border-color .18s}
.card:hover{transform:translateY(-5px) rotate(-.4deg);border-color:var(--red);box-shadow:0 10px 0 rgba(201,40,45,.25)}
.card:active{transform:translateY(2px);box-shadow:0 2px 0 rgba(201,40,45,.25)}
.ph{position:relative;aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;background:var(--cream2)}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.card:hover .ph img,.gcard:hover .gbox img{transform:scale(1.06)}
.ph .ph-ico{display:none;width:64px;height:64px;position:relative;z-index:1;transition:transform .35s cubic-bezier(.2,1.6,.4,1)}
.ph.noimg{background:
  radial-gradient(circle at 50% 58%,#fff 0 30%,transparent 31%),
  radial-gradient(rgba(201,40,45,.13) 1.5px,transparent 1.6px) 0 0/14px 14px,
  linear-gradient(160deg,#FFF6E6,#F4E6CB)}
.ph.noimg .ph-ico{display:block}
.card:hover .ph.noimg .ph-ico{transform:rotate(-10deg) scale(1.15)}
.ph .bdg{position:absolute;left:10px;top:10px;z-index:2;font:700 10.5px/1 var(--body);letter-spacing:.06em;text-transform:uppercase;background:var(--green);color:#fff;padding:5px 8px;border-radius:7px;box-shadow:0 2px 0 var(--green-d)}
.cbody{display:flex;flex-direction:column;flex:1;padding:12px 14px 14px}
.cbody h4{margin:0;font-family:var(--disp);font-weight:400;color:var(--red);font-size:17px;line-height:1.15}
.cbody p{margin:5px 0 0;color:var(--muted);font-size:14px;line-height:1.35}
.cfoot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto;padding-top:10px}
.cfoot .tg{display:flex;gap:3px}.cfoot .tg svg{width:20px;height:20px}
.card .price{font-size:19px}
@media(max-width:420px){.cbody{padding:10px 11px 12px}.cbody h4{font-size:15px}.cbody p{font-size:13px}.card .price{font-size:17px}.ph .ph-ico{width:52px;height:52px}}

/* detalhe do item */
.im-hero{position:relative;min-height:220px;padding:0;overflow:hidden;aspect-ratio:16/10}
.im-hero img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;margin:0}
.im-hero .im-ico{display:none;position:relative;z-index:1}
.im-hero.noimg{background:radial-gradient(circle at 50% 55%,#fff 0 28%,transparent 29%),radial-gradient(rgba(201,40,45,.13) 1.5px,transparent 1.6px) 0 0/14px 14px,linear-gradient(160deg,#FFF6E6,#F4E6CB)}
.im-hero.noimg .im-ico{display:block}
.ph-note{display:none;position:absolute;right:12px;bottom:12px;align-items:center;gap:6px;background:rgba(255,255,255,.9);color:var(--muted);font:700 11px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;padding:6px 9px;border-radius:999px}
.im-hero.noimg .ph-note{display:inline-flex}
.im-foot{align-items:center}
.im-price .price{font-size:28px}
.rs-note{margin:16px 0 0;font-size:14px;color:var(--ink);background:#FFF4CC;border:2px dashed #E0A800;border-radius:14px;padding:10px 12px}

/* horários em turnos */
.turnos{max-width:720px;margin:0 auto}
.tt{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:2px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);font-size:16px}
.tt thead th{background:var(--red);color:#fff;font-family:var(--disp);font-weight:400;font-size:13px;letter-spacing:.12em;padding:12px 10px;text-align:center}
.tt thead th:first-child{text-align:left;padding-left:18px}
.tt .tn{display:inline-block;background:rgba(255,255,255,.16);border:1.5px solid rgba(255,255,255,.4);border-radius:8px;padding:4px 10px}
.tt tbody th,.tt td{padding:13px 10px;border-top:1.5px solid var(--line);text-align:center;white-space:nowrap}
.tt tbody th{text-align:left;padding-left:18px;font-family:var(--disp);font-weight:400;color:var(--red);font-size:15px}
.tt td{font-weight:700;font-variant-numeric:tabular-nums}
.tt td+td{border-left:1.5px dashed var(--line)}
.tt tr.off th{color:var(--muted)}
.tt .closed,.tt .na{color:var(--muted);font-style:italic;font-weight:400}
.tt tr.today{background:#FFF2DF}
.tt tr.today th{box-shadow:inset 5px 0 0 var(--red)}
.tt em{display:inline-block;margin-left:8px;font:700 10px/1 var(--body);font-style:normal;letter-spacing:.1em;text-transform:uppercase;background:var(--green);color:#fff;padding:4px 6px;border-radius:6px;vertical-align:2px}
.turnos.compact{margin:0}
.turnos.compact .tt{box-shadow:none;font-size:15px}
@media(max-width:420px){.tt{font-size:14px}.tt thead th{font-size:11px;padding:10px 4px}.tt .tn{padding:3px 6px}.tt tbody th,.tt td{padding:11px 4px}.tt tbody th,.tt thead th:first-child{padding-left:12px}.tt tbody th{font-size:13px}.tt em{display:none}}

/* cardápio de jogos */
.games{padding:70px 0;background:linear-gradient(var(--cream),#F7EAD2);border-bottom:2px solid var(--line)}
.gcards{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:700px){.gcards{grid-template-columns:repeat(3,1fr);gap:18px}}
@media(min-width:1000px){.gcards{grid-template-columns:repeat(4,1fr)}}

/* nosso ambiente (galeria horizontal) */
.amb{padding:70px 0}
.gal{position:relative;max-width:1240px;margin:0 auto}
.gal-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 20px;padding:6px 20px 18px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.gal-track::-webkit-scrollbar{display:none}
.gal-track:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}
.slide{position:relative;flex:0 0 82%;margin:0;aspect-ratio:4/3;border-radius:22px;overflow:hidden;scroll-snap-align:start;background:var(--cream2);box-shadow:0 8px 0 rgba(201,40,45,.18);border:3px solid #fff}
@media(min-width:700px){.slide{flex-basis:46%}}
@media(min-width:1100px){.slide{flex-basis:calc((100% - 32px)/3.2)}}
.slide img{width:100%;height:100%;object-fit:cover;display:block}
.slide figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 14px;color:#fff;font-family:var(--disp);font-size:16px;letter-spacing:.03em;background:linear-gradient(transparent,rgba(30,12,8,.7))}
.slide.noimg{background:linear-gradient(160deg,#FFF6E6,#F4E6CB)}
.ph-slide{display:grid;place-items:center}
.ph-slide.g0{background:radial-gradient(rgba(255,255,255,.2) 2px,transparent 2.2px) 0 0/18px 18px,linear-gradient(150deg,var(--red-l),var(--red-d))}
.ph-slide.g1{background:radial-gradient(rgba(255,255,255,.25) 2px,transparent 2.2px) 0 0/18px 18px,linear-gradient(150deg,#9BC550,var(--green-d))}
.ph-slide.g2{background:radial-gradient(rgba(255,255,255,.12) 2px,transparent 2.2px) 0 0/18px 18px,linear-gradient(150deg,#4a3329,#22150f)}
.ph-emoji{font-size:64px;filter:drop-shadow(0 6px 0 rgba(0,0,0,.18));animation:float 4s ease-in-out infinite}
.ph-slide figcaption{background:none;text-shadow:0 2px 0 rgba(0,0,0,.25)}
.soon-tag{position:absolute;right:12px;top:12px;display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.92);color:var(--ink);font:700 10.5px/1 var(--body);letter-spacing:.1em;padding:6px 9px;border-radius:999px}
.gal-arr{position:absolute;top:calc(50% - 32px);z-index:3;width:52px;height:52px;border-radius:16px;border:0;background:var(--red);color:#fff;font:34px/1 var(--disp);cursor:pointer;box-shadow:0 5px 0 var(--red-d);display:none;transition:transform .08s,opacity .2s}
.gal-arr:active{transform:translateY(4px);box-shadow:0 1px 0 var(--red-d)}
.gal-arr[disabled]{opacity:0;pointer-events:none}
.gal-arr.prev{left:6px}.gal-arr.next{right:6px}
@media(min-width:900px){.gal-arr{display:grid;place-items:center}}
.gal-bar{height:6px;margin-top:4px;margin-bottom:34px;position:relative}
.gal-bar::before{content:"";position:absolute;left:20px;right:20px;top:0;height:6px;border-radius:6px;background:var(--cream2)}
.gal-bar i{position:relative;display:block;height:6px;margin-left:20px;max-width:calc(100% - 40px);border-radius:6px;background:linear-gradient(90deg,var(--gold),var(--red));transition:width .25s}
@media(max-width:520px){.brand .brand-tag{display:none}.stage{height:300px}.stage .console{width:min(250px,70%)}.halo{width:280px;height:280px}}

/* ---- v3 jogos: categorias + filtros ---- */
.t-estrategia{--gc:#2F6FD6;--gd:#1B3F86}.t-deducao{--gc:#7A3FD1;--gd:#43207A}.t-party{--gc:#F0592A;--gd:#A8300E}
.t-cartas{--gc:#E0A100;--gd:#8C5A00}.t-cooperativo{--gc:#1FA574;--gd:#0E5E40}.t-familia{--gc:#E23D7B;--gd:#8E1846}
.gfilters{display:flex;flex-direction:column;gap:10px;margin:0 0 22px}
.gchips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 2px 8px;margin:0 -2px;-webkit-overflow-scrolling:touch}
.gchips::-webkit-scrollbar{display:none}
@media(min-width:900px){.gchips{flex-wrap:wrap;justify-content:center;overflow:visible}}
.gchip{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 15px;border-radius:999px;border:2px solid #2a1d18;background:#fff;color:#2a1d18;font:700 14px/1 var(--body);cursor:pointer;box-shadow:0 3px 0 #2a1d18;transition:transform .12s,background .15s,color .15s}
.gchip svg{color:var(--gc,var(--red))}
.gchip:active{transform:translateY(3px);box-shadow:0 0 0 #2a1d18}
.gchip[aria-pressed="true"]{background:var(--gc,var(--red));color:#fff;border-color:var(--gd,var(--red-d));box-shadow:0 3px 0 var(--gd,var(--red-d))}
.gchip[aria-pressed="true"] svg{color:#fff}
.gchips.pl{align-items:center;flex-wrap:wrap;overflow:visible}
.glbl{flex:none;display:inline-flex;align-items:center;gap:6px;font:700 13px/1 var(--body);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-right:2px}
.gchips.pl .gchip{min-width:44px;justify-content:center;padding:8px 12px}
.gcount{flex:none;margin-left:auto;align-self:center;font-weight:700;font-size:13px;color:var(--muted);padding-left:8px}
.gempty{grid-column:1/-1;text-align:center;color:var(--muted);padding:30px 0;font-weight:700}
.gcard{display:grid;grid-template-columns:112px 1fr;background:#2a1d18;color:#fff;border-radius:18px;overflow:hidden;box-shadow:0 5px 0 var(--gd);cursor:pointer;transition:transform .18s;outline-offset:3px}
.gcard:hover{transform:translateY(-4px) rotate(-.4deg)}
.gcard.flip .gico{animation:gspin .55s cubic-bezier(.3,1.6,.5,1)}
@keyframes gspin{0%{transform:scale(.6) rotate(-25deg)}100%{transform:none}}
.gbox{position:relative;overflow:hidden;display:grid;place-items:center;min-height:118px;background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.35),transparent 55%),repeating-linear-gradient(45deg,rgba(255,255,255,.08) 0 8px,transparent 8px 16px),linear-gradient(160deg,var(--gc),var(--gd))}
.gbox img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s;z-index:1}
.gbox .gico{width:52px;height:52px;color:#fff;filter:drop-shadow(0 4px 0 rgba(0,0,0,.25))}
.gtype{position:absolute;left:6px;bottom:6px;right:6px;z-index:2;text-align:center;background:rgba(0,0,0,.35);color:#fff;font:700 10px/1.1 var(--body);letter-spacing:.04em;text-transform:uppercase;padding:4px 5px;border-radius:999px;backdrop-filter:blur(2px)}
.gage{position:absolute;right:6px;top:6px;z-index:2;background:#fff;color:var(--gd);font:800 11px/1 var(--body);padding:4px 6px;border-radius:7px;box-shadow:0 2px 0 rgba(0,0,0,.25)}
.gage.adult{background:#111;color:#FFD23F}
.gcard .cbody{padding:12px 14px 14px}
.gcard .cbody h4{color:#fff;margin:0;font-size:17px;line-height:1.15}
.gcard .cbody p{color:rgba(255,255,255,.78);font-size:13.5px;line-height:1.4;margin:6px 0 0}
.gmeta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:5px;font-size:13px;color:#FFD23F;font-weight:700}
.gmeta span{display:inline-flex;align-items:center;gap:4px}.gmeta svg{width:15px;height:15px}
@media(min-width:700px){
 .gcard{grid-template-columns:1fr;grid-template-rows:auto 1fr}
 .gbox{aspect-ratio:4/3;min-height:0}
 .gbox .gico{width:76px;height:76px}
 .gtype{right:auto;left:10px;bottom:10px;font-size:11px;padding:5px 9px}
 .gage{right:10px;top:10px;font-size:12px}
}
.gcards.pop .gcard{animation:gin .35s both}
@keyframes gin{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.gcards.pop .gcard,.gcard.flip .gico{animation:none}}

/* badges especiais */
.bdg{display:inline-flex;align-items:center;gap:4px}
.bdg.b-veg,.im-badge.b-veg{background:#1E9E4A!important;color:#fff!important}
.bdg.b-gold,.im-badge.b-gold{background:#FFC93C!important;color:#2a1d18!important}
.im-badge.b-veg,.im-badge.b-gold{display:inline-flex;align-items:center;gap:5px}
.im-badge[hidden]{display:none!important}
/* ---- capas dos jogos ---- */
.gbox:not(.noimg) .gico{display:none}
.gtype{background:var(--gc)!important;color:#fff;box-shadow:0 2px 0 var(--gd)}
.t-cartas .gtype{color:#2a1d18}
.gbox img{object-fit:cover;object-position:center}
@media(max-width:699px){
 .gcard{grid-template-columns:136px 1fr}
 .gbox{display:block;min-height:0}
 .gbox:not(.noimg) img{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:4/3}
 .gbox:not(.noimg) .gtype{bottom:8px}
}

/* acompanhamento dos lanches */
.cat-note{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:12px 16px;border-radius:16px;background:#FFF6D6;border:2.5px dashed #E0A100;box-shadow:0 4px 0 rgba(224,161,0,.25)}
.cat-note span{font-size:24px;line-height:1;flex:none}
.cat-note p{margin:0;font-weight:700;color:#5a3d00;font-size:15px;line-height:1.3}
.xtra{display:inline-flex;align-items:center;gap:4px;margin:6px 0 0;padding:3px 9px;border-radius:999px;background:#FFC93C;color:#2a1d18;font:700 11.5px/1.2 var(--body);letter-spacing:.02em;width:max-content}
.cbody .xtra{display:flex}
.xtra.big{font-size:13px;padding:5px 11px;margin:0 6px 6px 0}

.spc{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:6px 0 0;padding:4px 9px;border-radius:8px;background:#FFE7B8;color:#7a4a00;font:600 12px/1.25 var(--body);width:max-content;max-width:100%}
.spc b{background:#7DC242;color:#fff;border-radius:5px;padding:2px 5px;font-size:10.5px;letter-spacing:.04em}
.spc.big{font-size:13px;margin:0 6px 6px 0}
/* Let's Play: fliperamas */
.arcades{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:22px;max-width:760px;margin:0 auto}
.arcade{position:relative;cursor:pointer;border-radius:26px 26px 14px 14px;background:linear-gradient(180deg,#E3262B,#A3141A);padding:14px 14px 16px;border:4px solid #7DC242;box-shadow:0 8px 0 #4F8A1E,0 14px 24px -10px rgba(0,0,0,.4);transition:transform .15s;text-align:center;color:#fff}
.arcade:hover{transform:translateY(-4px)}
.arcade:active{transform:translateY(3px);box-shadow:0 4px 0 #4F8A1E}
.ac-marq{background:#FFC93C;border-radius:12px;padding:10px;box-shadow:inset 0 -4px 0 #E0A100;margin:0 6px 12px}
.ac-marq h4{margin:0;font-family:var(--disp);color:#fff;font-size:22px;text-shadow:0 2px 0 #C9282D,0 0 1px #C9282D;letter-spacing:.02em}
.ac-screen{position:relative;min-height:128px;display:grid;place-items:center;border-radius:18px;padding:16px 18px;background:radial-gradient(ellipse at 50% 40%,#5FE3F2,#1AA8C4 70%,#127F96);border:6px solid #2a1d18;box-shadow:inset 0 0 22px rgba(255,255,255,.35);overflow:hidden}
.ac-screen::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.07) 0 2px,transparent 2px 4px);pointer-events:none}
.ac-screen p{margin:0;font-family:var(--disp);font-size:17px;line-height:1.25;color:#fff;text-transform:uppercase;text-shadow:0 2px 0 rgba(0,0,0,.25)}
.ac-panel{display:flex;justify-content:center;align-items:center;gap:22px;margin:12px 0 10px;height:34px}
.ac-panel i{display:block;border-radius:50%}
.ac-panel .joy{width:26px;height:26px;background:radial-gradient(circle at 35% 35%,#FFD873,#E0A100);box-shadow:0 10px 0 -6px #2a1d18,0 4px 0 #8C5A00;position:relative}
.ac-panel .b1,.ac-panel .b2{width:18px;height:18px;background:#FFC93C;box-shadow:0 3px 0 #8C5A00}.ac-panel .b2{background:#7DC242;box-shadow:0 3px 0 #4F8A1E}
.ac-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#FFF3E0;border-radius:12px;padding:8px 12px;color:#2a1d18}
.ac-chip{font-weight:700;font-size:13px;color:#7a4a00}.ac-chip b{color:#C9282D;text-transform:uppercase}
.ac-foot .price{color:#C9282D}
/* hero: wordmark sem sombra + centralizado no mobile */
.hero-word img{filter:none!important}
@media(max-width:820px){
 .hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center}
 .hero-word{width:100%;text-align:center}.hero-word img{display:block;margin:0 auto}
 .status,.kicker,.lead{margin-left:auto;margin-right:auto;text-align:center}
 .ctas{width:100%;justify-content:center}
 .press{margin-left:auto;margin-right:auto}
 .stage{margin:0 auto;width:100%}
}
