@font-face{font-family:"Oferta do Dia";src:url(../fonts/Oferta-do-Dia.ttf) format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Gilroy";src:url(../fonts/Gilroy-Light.otf) format("opentype");font-weight:300;font-display:swap}
@font-face{font-family:"Gilroy";src:url(../fonts/Gilroy-ExtraBold.otf) format("opentype");font-weight:800;font-display:swap}
/* Caldinho do Nenen Recife: estilo original (creme, vermelho e mostarda, azulejo pernambucano, logo da casa).
   A página "se monta" conforme rola. */
:root{
  --r-creme:#FAEBD0; --r-papel:#FFF7EA; --r-verm:#D52F1A; --r-verm-esc:#A8200F; --r-most:#F2B11C; --r-tinta:#3A1E14; --r-suave:#7A5A4A; --r-linha:#3a1e1422;
  --p-ceu:#D6EBF8; --p-ceu-2:#EEF7FD; --p-mar:#2B8FD6; --p-mar-esc:#174F80; --p-areia:#F1DCB8; --p-laranja:#E8652A; --p-tinta:#2F2219; --p-suave:#6E5A4B; --p-linha:#2f22191f;
  --zap:#25D366; --ifood:#EA1D2C;
  --f-slab:"Oferta do Dia","Arial Black",Impact,sans-serif;
  --f-cond:"Gilroy","Arial",sans-serif;
  --f-corpo:"Gilroy",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-pincel:"Kaushan Script","Brush Script MT",cursive;
  --gl:max(20px,env(safe-area-inset-left,0px)); --gr:max(20px,env(safe-area-inset-right,0px));
  --topo:76px;
  --mola:cubic-bezier(.34,1.56,.64,1);
  --suave-ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--f-corpo);font-weight:300;font-size:17px;line-height:1.6;background:var(--r-creme);color:var(--r-tinta);overflow-x:hidden;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--faixa-topo,#3A1E14)}
img{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;cursor:pointer}
h1,h2,h3{margin:0;font-weight:400;text-wrap:balance;line-height:1;font-family:var(--f-slab);letter-spacing:.01em}
b,strong,.pill,.rot,.chip,.trocar{font-weight:800}
p{margin:0}
[hidden]{display:none!important}
.wrap{max-width:1200px;margin:0 auto;padding-left:var(--gl);padding-right:var(--gr)}
.rot{font-family:var(--f-cond);font-weight:800;text-transform:uppercase;letter-spacing:.16em;font-size:.8rem}
:focus-visible{outline:3px solid var(--r-most);outline-offset:3px}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;border-radius:999px;border:0;font-weight:800;font-size:.95rem;text-decoration:none;white-space:nowrap;transition:transform .25s var(--mola),background .2s,box-shadow .2s}
.pill:hover{transform:translateY(-3px)}
.pill svg{width:18px;height:18px;flex:none;fill:currentColor}
.pill-zap{background:var(--zap);color:#fff}
.pill-ifood{background:var(--ifood);color:#fff}
.trocar{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:1.5px solid currentColor;font-weight:700;font-size:.85rem;text-decoration:none;white-space:nowrap}
.secao{padding-block:110px;position:relative}
@media(max-width:900px){.secao{padding-block:76px}}
.logo-mask{display:block;-webkit-mask:url(../img/logo.png) center/contain no-repeat;mask:url(../img/logo.png) center/contain no-repeat;aspect-ratio:3263/2108}

/* ---------- movimento ---------- */
@keyframes flutua{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes gira{to{transform:rotate(360deg)}}
@keyframes corre{to{transform:translateX(-50%)}}
@keyframes palavra{from{transform:translateY(105%) rotate(4deg);opacity:0}to{transform:none;opacity:1}}
@keyframes entra{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
@keyframes balanca{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
@keyframes folha{0%,100%{transform:rotate(var(--r0,0deg))}50%{transform:rotate(calc(var(--r0,0deg) + 6deg))}}
@keyframes pisca{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.82);opacity:.75}}
@keyframes chacoalha{0%,86%,100%{transform:rotate(0)}89%{transform:rotate(-3deg)}92%{transform:rotate(3deg)}95%{transform:rotate(-2deg)}}
@keyframes onda-mov{to{transform:translateX(-50%)}}
@keyframes zoom-lento{from{transform:scale(1.08)}to{transform:scale(1)}}
.pal{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.06em}
.pal>span{display:inline-block;animation:palavra .9s var(--suave-ease) both;animation-delay:calc(var(--i,0)*90ms + 150ms)}
.entra{animation:entra .8s var(--suave-ease) both;animation-delay:var(--d,0s)}

/* revelar ao rolar: só esconde quando o JS está ativo */
html.anim .rv{opacity:0;transform:translateY(46px);transition:opacity .9s var(--suave-ease),transform .9s var(--suave-ease),clip-path 1.1s var(--suave-ease);transition-delay:var(--d,0s)}
html.anim .rv.esq{transform:translateX(-60px)}
html.anim .rv.dir{transform:translateX(60px)}
html.anim .rv.pop{transform:scale(.6) rotate(-8deg);transition-timing-function:var(--mola),var(--mola)}
html.anim .rv.wipe{opacity:1;transform:none;clip-path:inset(0 100% 0 0 round 22px)}
html.anim .rv.in{opacity:1;transform:none}
html.anim .rv.wipe.in{clip-path:inset(0 0 0 0 round 22px)}


/* barra de azulejos que se monta conforme rola */
.obra{display:flex;height:22px;overflow:hidden;background:var(--r-tinta)}
.obra svg{width:22px;height:22px;flex:none;transform:scale(0) rotate(-90deg);transition:transform .45s var(--mola)}
.obra svg.on{transform:none}
.p-progresso{height:5px;background:#ffffff33}
.p-progresso i{display:block;height:100%;background:linear-gradient(90deg,var(--p-areia),#fff);transform-origin:left;transform:scaleX(0)}

/* ============ RECIFE ============ */
.r{background:var(--r-creme);color:var(--r-tinta)}
.r-topo{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:#faebd0f2;backdrop-filter:blur(8px)}
.r-topo .wrap,.p-topo .wrap{display:flex;align-items:center;gap:20px;height:var(--topo)}
.r-topo .logo-mask{width:86px;background:var(--r-verm)}
.topo-nav{display:flex;gap:2px;margin-left:auto}
.topo-nav button{background:none;border:0;padding:8px 9px;border-radius:8px;font-family:var(--f-cond);font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:.84rem;color:inherit;opacity:.85;white-space:nowrap}
.topo-nav button:hover{opacity:1;background:#0000000d}
.topo-nav .nav-vagas{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;margin-left:6px;border-radius:8px;font-family:var(--f-cond);font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:.84rem;white-space:nowrap;color:var(--r-verm);text-decoration:none;border:2px solid #d52f1a40}
.topo-nav .nav-vagas:hover{background:#d52f1a14;border-color:var(--r-verm)}
.nova-aba{width:14px;height:14px;fill:currentColor;flex:none}
.r-topo .cta{background:var(--r-verm);color:#fff;padding:11px 18px}
.r-topo .trocar{color:var(--r-verm)}
@media(max-width:1240px){.topo-nav{display:none}.r-topo .cta,.p-topo .cta{margin-left:auto}}
@media(max-width:520px){.r-topo .trocar,.p-topo .trocar{display:none}}

.r-hero{background:var(--r-verm);color:var(--r-creme);position:relative;overflow:hidden}
.r-hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;min-height:calc(90svh - var(--topo));padding-block:72px}
.r-hero .rot{color:var(--r-most)}
.r-hero h1{font-size:clamp(2.8rem,6.4vw,5.6rem);line-height:.98;margin-top:16px}
.slogan{display:flex;flex-direction:column;align-items:flex-start;margin-top:14px;line-height:.9}
.slogan .s1{font-family:var(--f-corpo);font-weight:800;font-size:clamp(4rem,10vw,8rem);letter-spacing:-.04em;color:var(--r-creme);text-shadow:0 6px 0 var(--r-verm-esc);animation:cai 1s var(--mola) .1s both}
.slogan .s2{font-family:var(--f-slab);font-size:clamp(1.6rem,3.8vw,3rem);color:#FFE7B0;margin-left:.2em;white-space:nowrap}
.slogan .s2:nth-of-type(3){margin-left:.5em}
.slogan .s3{font-family:var(--f-slab);font-size:clamp(3rem,7.6vw,6rem);color:var(--r-most);text-shadow:0 5px 0 var(--r-verm-esc);margin-top:.08em;animation:estoura .8s var(--mola) 1.5s both;transform-origin:20% 60%}
.onda .l{display:inline-block;animation:letra-entra .5s var(--mola) both,letra-onda 2.6s ease-in-out infinite;animation-delay:calc((var(--i) + var(--o,0))*45ms + 500ms),calc((var(--i) + var(--o,0))*90ms + 1.8s)}
@keyframes cai{from{transform:translateY(-60%) rotate(-6deg);opacity:0}to{transform:none;opacity:1}}
@keyframes estoura{from{transform:scale(.3) rotate(-8deg);opacity:0}to{transform:none;opacity:1}}
@keyframes letra-entra{from{transform:translateY(80%);opacity:0}to{transform:none;opacity:1}}
@keyframes letra-onda{0%,100%{transform:translateY(0)}50%{transform:translateY(-.14em)}}
.r-hero .sub{font-size:1.15rem;max-width:40ch;margin-top:22px;color:#ffe3da}
.r-hero .acoes{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn-creme{background:var(--r-creme);color:var(--r-verm-esc)}
.btn-creme:hover{box-shadow:0 12px 26px #0003}
.btn-vazado-c{border:2px solid #fff6;color:var(--r-creme);background:transparent}
.btn-vazado-c:hover{border-color:var(--r-creme)}
.ifood-arte{display:block;width:min(400px,100%);margin-top:26px;filter:drop-shadow(0 10px 18px #0003);animation:chacoalha 5s ease-in-out infinite;animation-delay:2s;transform-origin:30% 50%}
.ifood-arte:hover{animation-play-state:paused}
/* roda de azulejos com a logo */
.roda{position:relative;width:min(470px,84vw);aspect-ratio:1;justify-self:center}
.roda .disco{position:absolute;inset:16%;border-radius:50%;background:var(--r-creme);box-shadow:0 0 0 10px #ffffff1f,0 0 0 22px #ffffff12,0 30px 60px #5a0d0055;display:grid;place-items:center}
.roda .disco .logo-mask{width:74%;background:var(--r-verm);animation:flutua 5s ease-in-out infinite}
.roda .orbita{position:absolute;inset:0;animation:gira 50s linear infinite}
.roda .orbita svg{position:absolute;left:41%;top:41%;width:18%;height:18%;border-radius:6px;box-shadow:0 8px 16px #0003;transform:rotate(calc(var(--a)*1deg)) translateY(-232%) rotate(calc(var(--a)*-1deg))}
@media(max-width:900px){.r-hero .wrap{grid-template-columns:1fr;min-height:0;gap:36px;padding-block:56px 72px}.roda{order:-1;width:min(360px,84vw)}}

.r-letreiro{background:var(--r-tinta);color:var(--r-creme);overflow:hidden}
.r-letreiro .trilho{display:flex;width:max-content;animation:corre 40s linear infinite}
.r-letreiro span{font-family:var(--f-cond);font-weight:600;font-size:clamp(1.05rem,2vw,1.35rem);text-transform:uppercase;letter-spacing:.14em;padding:16px 0;white-space:nowrap}
.r-letreiro b{color:var(--r-most);margin:0 1.1em;font-weight:600}

.r-banner{background:var(--r-creme);padding-top:80px;position:relative;z-index:2}
.r-banner figure{margin:0;position:relative}
.r-banner img{width:100%;aspect-ratio:1366/550;object-fit:cover;border-radius:22px}
.r-banner figcaption{position:absolute;z-index:3;left:24px;bottom:-22px;background:var(--r-tinta);color:var(--r-creme);font-family:var(--f-slab);font-size:clamp(1rem,2vw,1.35rem);padding:12px 22px;border-radius:14px}

/* peça */
.r-peca{background:var(--r-creme)}
.cab-centro{text-align:center;max-width:720px;margin:0 auto 48px}
.cab-centro h2{font-size:clamp(2.4rem,5vw,4rem);color:var(--r-verm)}
.cab-centro h2 span{color:var(--r-tinta)}
.cab-centro p{margin-top:16px;color:var(--r-suave);font-size:1.1rem}
.canais{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.canal{position:relative;display:flex;flex-direction:column;gap:10px;padding:28px 24px 24px;border-radius:22px;text-decoration:none;min-height:260px;transition:transform .35s var(--mola),box-shadow .3s;overflow:hidden}
.canal:hover{transform:translateY(-8px) rotate(-1deg);box-shadow:0 22px 40px #3a1e1426}
.canal .ic{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#ffffff2e}
.canal .ic svg{width:28px;height:28px;fill:currentColor}
.canal h3{font-size:1.55rem;margin-top:auto}
.canal p{font-size:.95rem;opacity:.92}
.canal .ir{display:inline-flex;align-items:center;gap:8px;font-weight:800;margin-top:6px;transition:gap .25s}
.canal:hover .ir{gap:14px}
.canal .ir svg{width:16px;height:16px}
.canal.direto{background:var(--r-verm);color:#fff}
.canal.direto::after{content:"Recomendado";position:absolute;top:22px;right:20px;background:var(--r-most);color:var(--r-tinta);font-family:var(--f-cond);font-weight:700;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:999px}
.canal.ifood{background:var(--r-papel);color:var(--r-tinta);border:2px solid #3a1e1414}
.canal.ifood .arte{width:100%;margin:-4px 0 4px}
.canal.menu{background:var(--r-most);color:var(--r-tinta)}
.canal.menu .ic{background:#3a1e1414}
.canal.zap{background:var(--r-tinta);color:var(--r-creme)}
.canal.zap .ic{background:var(--zap);color:#fff}
@media(max-width:1000px){.canais{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.canais{grid-template-columns:1fr}.canal{min-height:0}.canal h3{margin-top:14px}}

/* vitrine */
.r-menu{background:var(--r-papel);overflow:hidden}
.r-menu .cab{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:56px}
.r-menu h2{font-size:clamp(2.4rem,5vw,4rem);color:var(--r-verm)}
.r-menu h2 span{color:var(--r-tinta)}
.r-menu .cab p{color:var(--r-suave);max-width:46ch;margin-top:12px}
.btn-verm{background:var(--r-verm);color:#fff}
.btn-verm:hover{background:var(--r-verm-esc)}
.vitrine{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:20px}
.item{border-radius:24px;padding:26px;display:flex;flex-direction:column;justify-content:flex-end;min-height:400px;position:relative;overflow:hidden}
.item .pf{position:absolute;left:50%;top:44%;width:92%;translate:-50% -50%;animation:flutua 5.5s ease-in-out infinite;animation-delay:var(--fd,0s)}
.item .pf img{width:100%;max-width:none;filter:drop-shadow(0 22px 22px #0000004d);transition:transform .6s var(--mola)}
.item:hover .pf img{transform:scale(1.06) rotate(-3deg)}
.item h3{font-size:1.6rem;position:relative;z-index:2}
.item span{position:relative;z-index:2;font-size:.95rem;opacity:.95}
.item::after{content:"";position:absolute;left:0;right:0;bottom:0;height:52%;background:linear-gradient(to top,var(--cor-item) 42%,transparent);z-index:1;pointer-events:none}
.item .pf{z-index:0}
.item .fundo{position:absolute;right:-30px;top:-30px;width:150px;height:150px;opacity:.16;animation:gira 40s linear infinite}
.item.i1{background:var(--r-verm);color:#fff;--cor-item:var(--r-verm)}
.item.i1 .pf{width:104%}
.item.i2{background:var(--r-most);color:var(--r-tinta);--cor-item:var(--r-most)}
.item.i3{background:var(--r-tinta);color:var(--r-creme);--cor-item:var(--r-tinta)}
.item.i3 .pf{width:82%}
@media(max-width:900px){.vitrine{grid-template-columns:1fr 1fr}.item.i1{grid-column:span 2}.item{min-height:340px}}
@media(max-width:560px){.vitrine{grid-template-columns:1fr}.item.i1{grid-column:auto}}

/* almoço */
.r-almoco{background:var(--r-creme);overflow:hidden}
.r-almoco .grade{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.r-almoco h2{font-size:clamp(2.6rem,5.6vw,4.6rem);color:var(--r-verm)}
.r-almoco h2 span{display:block;color:var(--r-tinta)}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--r-tinta);color:var(--r-creme);font-family:var(--f-cond);font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:.9rem}
.chip.c2{background:var(--r-most);color:var(--r-tinta)}
.lead{margin-top:22px;font-size:1.1rem;max-width:46ch}
.r-almoco .lead{color:var(--r-suave)}
.acoes-lin{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.btn-linha-r{border:2px solid var(--r-tinta);color:var(--r-tinta);background:transparent}
.palco{position:relative;aspect-ratio:1/1}
.palco .disco{position:absolute;inset:7%;border-radius:50%;background:var(--r-verm)}
.palco .anel{position:absolute;inset:2%;border-radius:50%;border:3px dashed #d52f1a66;animation:gira 30s linear infinite}
.palco .foto{position:absolute;left:-4%;top:26%;width:108%;animation:flutua 6s ease-in-out infinite}
.palco .foto img{width:100%;max-width:none;filter:drop-shadow(0 26px 26px #0000005c)}
.palco .azz{position:absolute;width:20%;height:20%;border-radius:8px;box-shadow:0 10px 18px #0003}
.palco .azz.a1{top:4%;right:4%;animation:balanca 6s ease-in-out infinite}
.palco .azz.a2{bottom:6%;right:2%;animation:balanca 7s ease-in-out infinite reverse}
.palco .nome-prato{position:absolute;z-index:3;left:0;bottom:12%;font-family:var(--f-slab);font-size:clamp(1.8rem,4vw,2.9rem);line-height:.92;color:var(--r-creme);background:var(--r-tinta);padding:14px 20px 16px;border-radius:16px;text-shadow:3px 3px 0 var(--r-verm);box-shadow:6px 6px 0 var(--r-most);transform:rotate(-6deg);animation:balanca 5s ease-in-out infinite}
@media(max-width:900px){.r-almoco .grade{grid-template-columns:1fr;gap:36px}.palco{max-width:460px;margin:0 auto;width:100%}}

/* happy hour: o braço chega com o chopp */
.r-happy{background:var(--r-tinta);color:var(--r-creme);overflow:hidden}
.r-happy::before{content:"";position:absolute;inset:0;background:radial-gradient(closest-side at 28% 60%,#f2b11c40,transparent 70%),radial-gradient(closest-side at 80% 10%,#d52f1a40,transparent 60%);pointer-events:none}
.r-happy .grade{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:end;position:relative}
.brinde{position:relative;width:min(420px,86%);justify-self:center;margin-bottom:-110px}
.brinde .braco{position:relative;transform-origin:30% 100%}
.brinde .braco img{width:100%}
.brinde .brilho{position:absolute;opacity:0}
.brinde .brilho.e{left:9.7%;top:16.4%;width:21%;transform-origin:100% 60%}
.brinde .brilho.d{left:91%;top:14.1%;width:17.4%;transform-origin:0% 60%}
@keyframes braco-chega{0%{transform:translateY(85%) rotate(16deg)}60%{transform:translateY(-6%) rotate(-5deg)}78%{transform:translateY(2%) rotate(2deg)}100%{transform:translateY(0) rotate(0)}}
@keyframes braco-brinde{0%,100%{transform:rotate(0)}50%{transform:rotate(-4deg) translateY(-2%)}}
@keyframes brilho-pop{0%{opacity:0;transform:scale(.2)}60%{opacity:1;transform:scale(1.2)}100%{opacity:1;transform:scale(1)}}
@keyframes brilho-pulsa{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.8);opacity:.7}}
.brinde.vai .braco{animation:braco-chega 1.3s var(--suave-ease) both,braco-brinde 3.2s ease-in-out 1.6s infinite}
.brinde.vai .brilho{animation:brilho-pop .5s var(--mola) 1.05s both,brilho-pulsa 1.6s ease-in-out 1.6s infinite}
html:not(.anim) .brinde .brilho{opacity:1}
.r-happy .texto{padding-bottom:20px}
.happy-faixa{position:absolute;left:0;right:0;bottom:0;z-index:3;height:44px;background:url(../img/az2/faixa-cordel.png) 0 0/auto 100% repeat-x;animation:faixa-corre 40s linear infinite reverse;box-shadow:0 -6px 14px #0000004d}
.r-happy h2{font-size:clamp(2.6rem,6vw,4.8rem);color:var(--r-most)}
.r-happy h2 span{color:var(--r-creme)}
.r-happy .chip{background:var(--r-verm);color:#fff}
.r-happy .chip.c2{background:var(--r-creme);color:var(--r-tinta)}
.r-happy .lead{color:#f2d9c4}
.r-happy .rot{color:var(--r-most)}
@media(max-width:900px){.r-happy .grade{grid-template-columns:1fr;gap:0}.brinde{order:2;width:min(300px,76%);margin:40px auto -80px}.r-happy .texto{padding-bottom:0}}

/* espaço kids (cores da casa) */
.r-kids{background:var(--r-creme);overflow:hidden}
.kids-painel{position:relative;background:var(--r-most);color:var(--r-tinta);border-radius:28px;padding:clamp(26px,5vw,60px);overflow:hidden;box-shadow:0 24px 50px #a8200f2e}
.kids-painel::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 92% 8%,#ffffff55,transparent 35%),radial-gradient(circle at 0% 100%,#d52f1a26,transparent 40%);pointer-events:none}
.kids-topo{position:relative;z-index:2;display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:end}
.logo-kids{display:block;width:min(260px,70%);aspect-ratio:285/97;background:var(--r-verm);-webkit-mask:url(../img/kids/logo-nenen.png) left center/contain no-repeat;mask:url(../img/kids/logo-nenen.png) left center/contain no-repeat;animation:flutua 5s ease-in-out infinite}
.r-kids h2{font-size:clamp(2.2rem,4.6vw,3.6rem);margin-top:18px;color:var(--r-tinta)}
.r-kids h2 span{color:var(--r-verm)}
.r-kids .lead{color:#5a3418}
.kids-lista{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.kids-lista li{background:var(--r-creme);color:var(--r-verm);font-weight:800;padding:10px 16px;border-radius:999px;box-shadow:0 4px 0 var(--r-verm-esc)}
.kids-lista li:nth-child(3n+2){background:var(--r-verm);color:#fff}
.kids-gal{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(150px,17vw,220px);gap:14px;margin-top:36px}
.foto-bt.g-alto{grid-row:span 2}
.foto-bt.g-largo{grid-column:span 2}
.foto-bt{padding:0;border:0;background:var(--r-tinta);border-radius:18px;overflow:hidden;cursor:zoom-in;box-shadow:0 10px 22px #5a0d0033;transition:transform .35s var(--mola)}
.foto-bt:hover{transform:rotate(0) scale(1.03)}
.foto-bt img{width:100%;height:100%;object-fit:cover;display:block}
.brinq{position:absolute;width:clamp(54px,6vw,84px);z-index:1;filter:drop-shadow(0 8px 12px #0003)}
.b2{top:6%;right:4%;animation:pula 3.4s ease-in-out infinite .4s}
.b5{top:38%;right:40%;animation:pula 2.8s ease-in-out infinite .8s}
@keyframes pula{0%,100%{transform:translateY(0) rotate(0)}40%{transform:translateY(-18px) rotate(-6deg)}60%{transform:translateY(-18px) rotate(4deg)}}
@media(max-width:900px){.kids-topo{grid-template-columns:1fr}.kids-lista{justify-content:flex-start}.kids-gal{grid-template-columns:1fr 1fr;grid-auto-rows:150px}.b5{display:none}}

/* história */
.r-hist{background:var(--r-verm);color:#fff;overflow:hidden}
.r-hist .grade{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}
.r-hist h2{font-size:clamp(2.4rem,5vw,4rem);color:var(--r-creme)}
.r-hist h2 em{font-style:normal;color:var(--r-most)}
.r-hist p{margin-top:20px;font-size:1.1rem;color:#ffe3da;max-width:52ch}
.r-hist .rot{color:var(--r-most)}
.marcos{display:grid;gap:14px}
.marcos div{display:grid;grid-template-columns:auto 1fr;gap:4px 20px;align-items:center;background:var(--r-creme);color:var(--r-tinta);border-radius:18px;padding:18px 22px}
.marcos b{grid-row:span 2;font-family:var(--f-slab);font-weight:400;font-size:2.3rem;color:var(--r-verm);line-height:1;min-width:2.8ch;font-variant-numeric:tabular-nums}
.marcos h3{font-size:1.15rem}
.marcos b.trofeu{display:grid;place-items:center}
.marcos b.trofeu svg{width:2.3rem;height:2.3rem;fill:var(--r-most);stroke:var(--r-verm);stroke-width:1.2;animation:balanca 4s ease-in-out infinite}
.marcos p{margin:0;font-size:.93rem;color:var(--r-suave)}
.r-hist .copo-grande{position:absolute;right:-60px;bottom:-60px;width:260px;height:260px;opacity:.12;animation:gira 60s linear infinite}
@media(max-width:900px){.r-hist .grade{grid-template-columns:1fr;gap:40px}}

/* instagram (compartilhado) */
.insta .cab{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:36px}
.insta h2{font-size:clamp(2.2rem,4.6vw,3.6rem)}
.insta .perfil{display:flex;align-items:center;gap:14px;margin-top:14px}
.insta .avatar{width:58px;height:58px;border-radius:50%;padding:3px;background:conic-gradient(#f9ce34,#ee2a7b,#6228d7,#f9ce34);animation:gira 8s linear infinite}
.insta .avatar>span{width:100%;height:100%;border-radius:50%;border:2px solid #fff;animation:gira 8s linear infinite reverse;display:grid;place-items:center;overflow:hidden}
.insta .perfil b{display:block;font-weight:800}
.insta .perfil small{opacity:.75}
.btn-insta{background:linear-gradient(100deg,#f9ce34,#ee2a7b 50%,#6228d7);color:#fff}
.feed{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.feed a{position:relative;display:block;aspect-ratio:1;overflow:hidden;border-radius:12px}
.feed img,.feed svg{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--suave-ease)}
.feed a::after{content:"";position:absolute;inset:0;background:#0000 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.5' cy='6.5' r='1' fill='white'/%3E%3C/svg%3E") center/34px no-repeat;opacity:0;transition:opacity .3s,background-color .3s}
.feed a:hover::after{opacity:1;background-color:#0006}
.feed a:hover img,.feed a:hover svg{transform:scale(1.08)}
.nota-widget{margin-top:16px;font-size:.85rem;opacity:.7}
@media(max-width:900px){.feed{grid-template-columns:repeat(3,minmax(0,1fr))}}
.r-insta{background:var(--r-creme)}
.r-insta h2{color:var(--r-tinta)}
.r-insta h2 span{color:var(--r-verm)}
.r-insta .avatar>span{background:var(--r-creme)}
.r-insta .avatar .logo-mask{width:78%;background:var(--r-verm)}

/* anúncio do réveillon (publicidade pontual) */
.anuncio-sec{background:var(--r-papel);padding-block:40px}
.anuncio{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center;max-width:980px;margin:0 auto;padding:28px;border-radius:22px;color:#fff;background:#0d4f7a url(../img/ceu-palmeiras.jpg) center/cover;box-shadow:0 18px 40px #0d4f7a40}
.anuncio::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#06304ce6,#0a4a73b3)}
.anuncio>*{position:relative}
.selo-pub{position:absolute;top:12px;right:14px;z-index:2;font-family:var(--f-cond);font-weight:800;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:#06304c;background:#ffffffd9;padding:4px 10px;border-radius:6px}
.anuncio .folha{position:absolute;right:-50px;bottom:-60px;width:200px;opacity:.85;--r0:-20deg;transform-origin:80% 90%;animation:folha 7s ease-in-out infinite;pointer-events:none}
.anuncio .cartaz{display:block;width:190px;border-radius:14px;border:4px solid #fff;box-shadow:0 14px 30px #0006;animation:flutua 6s ease-in-out infinite}
.anuncio .logo-box{position:relative;display:block;width:min(320px,100%);animation:rev-pulsa 3.6s ease-in-out infinite}
.anuncio .logo-rev{display:block;width:100%;filter:brightness(0) invert(1) drop-shadow(0 3px 10px #0006)}
.anuncio .logo-box::after{content:"";position:absolute;inset:0;-webkit-mask:var(--logo-anuncio,url(../img/logo-reveillon.webp)) center/100% 100% no-repeat;mask:var(--logo-anuncio,url(../img/logo-reveillon.webp)) center/100% 100% no-repeat;background:linear-gradient(105deg,transparent 35%,#FFE29A 48%,#fff 50%,#FFE29A 52%,transparent 65%) 0 0/300% 100%;animation:rev-brilho 3.6s ease-in-out infinite;pointer-events:none}
.anuncio .logo-box .faisca{position:absolute;width:14px;height:14px;background:#FFE29A;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:faisca 2.4s ease-in-out infinite}
.anuncio .logo-box .faisca.f1{left:-4%;top:30%}.anuncio .logo-box .faisca.f2{right:-3%;top:62%;animation-delay:.8s}.anuncio .logo-box .faisca.f3{left:46%;top:-6%;animation-delay:1.6s;width:10px;height:10px}
@keyframes rev-pulsa{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
@keyframes rev-brilho{0%{background-position:100% 0}60%,100%{background-position:0 0}}
@keyframes faisca{0%,100%{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1) rotate(90deg);opacity:1}}
.anuncio .quando{margin-top:10px;font-size:1.15rem;color:#FFE29A}
.anuncio .quem{font-family:var(--f-cond);font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
.anuncio .acoes{display:flex;gap:10px;margin-top:16px}
.anuncio small{display:block;margin-top:12px;font-size:.78rem;color:#cfe6f6;max-width:52ch}
.btn-ouro{background:linear-gradient(100deg,#FFE29A,#F2B11C);color:#21170a}
.cartaz-bt{position:relative;padding:0;border:0;background:none;cursor:zoom-in;border-radius:14px}
.cartaz-bt .lupa{position:absolute;left:50%;bottom:10px;translate:-50% 0;background:#06304ce6;color:#fff;font-weight:800;font-size:.75rem;letter-spacing:.06em;padding:6px 12px;border-radius:999px;opacity:0;transition:opacity .25s;white-space:nowrap}
.cartaz-bt:hover .lupa,.cartaz-bt:focus-visible .lupa{opacity:1}
@media(hover:none){.cartaz-bt .lupa{opacity:1}}
.caixa-arte{border:0;padding:0;background:transparent;max-width:min(92vw,720px);max-height:92vh;overflow:visible}
.caixa-arte::backdrop{background:#0a1a28e6;backdrop-filter:blur(4px)}
.caixa-arte img{display:block;max-width:100%;max-height:88vh;width:auto;margin:0 auto;border-radius:16px;box-shadow:0 30px 70px #000a}
.caixa-arte[open]{animation:abre .35s var(--mola)}
@keyframes abre{from{transform:scale(.85);opacity:0}to{transform:none;opacity:1}}
.caixa-arte .fecha{position:absolute;top:-16px;right:-16px;width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:#06304c;font-size:1.6rem;line-height:1;box-shadow:0 6px 16px #0006;z-index:2}
@media(max-width:700px){.caixa-arte .fecha{top:-10px;right:-6px}}
@media(max-width:700px){.anuncio{grid-template-columns:1fr;text-align:center;justify-items:center;padding:40px 20px 24px}.anuncio .cartaz{width:150px}.anuncio .logo-box{margin-inline:auto}.anuncio .acoes{justify-content:center}}

/* fale conosco */
.r-fale{background:var(--r-verm);color:#fff}
.r-fale .grade{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.r-fale .rot{color:var(--r-most)}
.r-fale h2{font-size:clamp(2.4rem,5vw,4rem);color:var(--r-creme)}
.r-fale h2 span{display:block;color:var(--r-most)}
.r-fale .lead{color:#ffe3da}
.fale-atalhos{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:12px}
.fale-atalhos li{display:flex;align-items:center;gap:14px;background:#ffffff1a;border:1px solid #ffffff33;border-radius:16px;padding:14px 18px}
.fale-atalhos svg{width:26px;height:26px;fill:var(--r-most);flex:none}
.fale-atalhos b{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--r-most)}
.fale-atalhos a{color:#fff;text-decoration:none;font-weight:800}
.vagas-chamada{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding:16px 18px;border-radius:16px;background:var(--r-most);color:var(--r-tinta);text-decoration:none;box-shadow:0 12px 24px #5a0d0033;transition:transform .25s var(--mola)}
.vagas-chamada:hover{transform:translateY(-3px)}
.vagas-chamada b{display:block;font-family:var(--f-slab);font-weight:400;font-size:1.35rem;line-height:1.1;color:var(--r-verm)}
.vagas-chamada .nova-aba.grande{width:22px;height:22px}
.fale-form{background:var(--r-creme);color:var(--r-tinta);border-radius:24px;padding:clamp(22px,4vw,36px);display:grid;gap:16px;box-shadow:0 24px 50px #5a0d0055}
.dupla{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.campo{display:grid;gap:6px}
.campo label{font-weight:800;font-size:.9rem}
.campo label small{font-weight:300;opacity:.7}
.campo input,.campo select,.campo textarea{font:inherit;font-weight:300;color:var(--r-tinta);background:#fff;border:2px solid #3a1e1426;border-radius:12px;padding:12px 14px;width:100%;transition:border-color .2s,box-shadow .2s}
.campo textarea{resize:vertical;min-height:110px}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--r-verm);box-shadow:0 0 0 4px #d52f1a26}
.campo .erro{border-color:var(--r-verm);background:#fff4f2}
.fale-form .pill{justify-self:start}
.fale-aviso{font-weight:800;min-height:1.4em}
.fale-aviso.ok{color:#1d7a3a}
@media(max-width:900px){.r-fale .grade{grid-template-columns:1fr;gap:36px}}
@media(max-width:520px){.dupla{grid-template-columns:1fr}}

/* visite (compartilhado) */
.visite h2{font-size:clamp(2.6rem,6vw,4.6rem)}
.ficha{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:48px}
.ficha>div{border-radius:22px;padding:28px;display:flex;flex-direction:column}
.ficha .rot{display:block;margin-bottom:12px}
.ficha .grande{font-family:var(--f-cond);font-weight:600;font-size:1.5rem;line-height:1.2;text-transform:uppercase;letter-spacing:.01em}
.ficha p{margin-top:4px}
.horas{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.horas td{padding:8px 0;border-bottom:1px dashed var(--linha)}
.horas td:last-child{text-align:right;font-weight:700}
.ficha .acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:20px}
.avalie{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;margin-top:18px;border-radius:22px;padding:26px 30px}
.avalie .estrelas{display:flex;gap:4px}
.avalie .estrelas svg{width:30px;height:30px;animation:pisca 2.4s ease-in-out infinite}
.avalie .estrelas svg:nth-child(2){animation-delay:.2s}.avalie .estrelas svg:nth-child(3){animation-delay:.4s}.avalie .estrelas svg:nth-child(4){animation-delay:.6s}.avalie .estrelas svg:nth-child(5){animation-delay:.8s}
.avalie h3{font-size:1.5rem}
.avalie p{opacity:.85;margin-top:4px}
.avalie-bts,.redes-bts{display:flex;flex-wrap:wrap;gap:10px}
.btn-trip{background:#00AF87;color:#fff}
.btn-tiktok{background:#111;color:#fff}
.btn-google{background:#fff;color:#1f1f1f;box-shadow:0 2px 0 #0000001a}
.btn-google svg{width:20px;height:20px}
@media(max-width:900px){.ficha{grid-template-columns:1fr}.avalie{grid-template-columns:1fr;gap:14px}}
.r-visite{--linha:var(--r-linha);background:var(--r-papel)}
.r-visite h2{color:var(--r-verm)}
.r-visite h2 span{color:var(--r-tinta)}
.r-visite .ficha>div{background:var(--r-creme)}
.r-visite .rot{color:var(--r-verm)}
.r-visite .ficha p{color:var(--r-suave)}
.r-visite .avalie{background:var(--r-most);color:var(--r-tinta)}
.r-visite .avalie .estrelas svg{fill:var(--r-verm)}
.btn-escuro-r{background:var(--r-tinta);color:var(--r-creme)}

.r-rodape{background:var(--r-tinta);color:var(--r-creme)}
.friso-mov{overflow:hidden;height:44px;background:url(../img/az2/faixa-cordel.png) 0 0/auto 100% repeat-x;animation:faixa-corre 40s linear infinite}
@keyframes faixa-corre{to{background-position:-432px 0}}
.friso-mov .trilho{display:flex;width:max-content;animation:corre 30s linear infinite}
.friso-mov svg{width:34px;height:34px;flex:none}
.rodape-corpo{padding-block:60px calc(40px + env(safe-area-inset-bottom,0px))}
.r-rodape .logo-mask{width:min(240px,60%);background:var(--r-creme)}
.rodape-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.rodape-links a{padding:9px 16px;border-radius:999px;border:1px solid #ffffff33;text-decoration:none;font-weight:600;font-size:.9rem;transition:background .2s}
.rodape-links a:hover{background:#ffffff14}
.rodape-linha{display:flex;flex-wrap:wrap;gap:16px 28px;justify-content:space-between;align-items:center;margin-top:36px;padding-top:24px;border-top:1px solid #ffffff22;font-size:.92rem}
.rodape-linha a{text-decoration:none}
.ir-outra{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border-radius:999px;font-weight:700;text-decoration:none!important;color:#fff}
.r-rodape .ir-outra{background:var(--p-mar)}

.zap-fixo{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:55;width:58px;height:58px;border-radius:50%;background:var(--zap);display:grid;place-items:center;box-shadow:0 10px 26px #0004;transition:transform .3s var(--mola)}
.zap-fixo::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--zap);animation:anel-zap 2.4s ease-out infinite}
@keyframes anel-zap{from{transform:scale(1);opacity:.8}to{transform:scale(1.7);opacity:0}}
.zap-fixo:hover{transform:scale(1.1)}
.zap-fixo svg{width:28px;height:28px;fill:#fff}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}.brinde .brilho{opacity:1}}
.mapa{position:relative;margin-top:44px;border-radius:28px;overflow:hidden;border:3px solid var(--r-tinta);box-shadow:8px 8px 0 var(--r-most);aspect-ratio:1120/880;background:#F6DDB0}
.mapa-svg{display:block;width:100%;height:100%}
.m-agua{fill:#8FCFD1}
.m-ondas{animation:m-mare 6s linear infinite}
@keyframes m-mare{to{transform:translateX(60px)}}
.m-praia{fill:#F7C95E}
.m-parque{fill:#A9CF7E}
.m-res{fill:none;stroke:#FFF3DC;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.m-mai-borda{fill:none;stroke:var(--r-tinta);stroke-width:15;stroke-linecap:round;stroke-linejoin:round}
.m-mai{fill:none;stroke:#FFFDF6;stroke-width:10;stroke-linecap:round;stroke-linejoin:round}
.m-nog-borda{fill:none;stroke:var(--r-tinta);stroke-width:17;stroke-linecap:round}
.m-nog{fill:none;stroke:var(--r-verm);stroke-width:11;stroke-linecap:round;stroke-dasharray:14 10;animation:m-anda 1s linear infinite}
@keyframes m-anda{to{stroke-dashoffset:-24}}
.m-rua{font:800 17px var(--f-corpo);fill:var(--r-tinta);text-anchor:middle;paint-order:stroke;stroke:#F6DDB0;stroke-width:5px;letter-spacing:.02em}
.m-agua-txt{font:italic 26px var(--f-slab);fill:#2E7F86;letter-spacing:.06em}
.m-verde-txt{font:800 16px var(--f-corpo);fill:#4F7A2A;text-anchor:middle}
.m-marco rect{fill:var(--r-creme);stroke:var(--r-tinta);stroke-width:3}
.m-marco text{font:800 18px var(--f-corpo);fill:var(--r-tinta);text-anchor:middle}
.m-seta path{fill:none;stroke:var(--r-tinta);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.m-seta text{font:800 20px var(--f-corpo);fill:var(--r-tinta);paint-order:stroke;stroke:#F6DDB0;stroke-width:6px}
.m-praia-tag text{font:800 18px var(--f-corpo);fill:var(--r-tinta);paint-order:stroke;stroke:#F7C95E;stroke-width:6px}
.m-praia-tag svg,.m-deco svg{overflow:visible}
.m-praia-tag>svg{animation:balanca 4s ease-in-out infinite;transform-origin:center;transform-box:fill-box}
.m-sol>svg{animation:gira 30s linear infinite;transform-origin:center;transform-box:fill-box}
.m-caranguejo>svg{animation:m-anda-lado 5s ease-in-out infinite;transform-box:fill-box}
@keyframes m-anda-lado{0%,100%{transform:translateX(-10px)}50%{transform:translateX(10px)}}
.m-rosa circle{fill:var(--r-creme);stroke:var(--r-tinta);stroke-width:3}
.m-rosa path{fill:var(--r-tinta)}.m-rosa path.n{fill:var(--r-verm)}
.m-rosa text{font:24px var(--f-slab);fill:var(--r-verm);text-anchor:middle}
.m-pulso{fill:var(--r-verm);opacity:.4;transform-box:fill-box;transform-origin:center;animation:m-pulso 2.2s ease-out infinite}
.m-pulso.p2{animation-delay:1.1s}
@keyframes m-pulso{from{transform:scale(.4);opacity:.55}to{transform:scale(3);opacity:0}}
.m-pino{animation:m-pula 2.2s var(--mola) infinite}
.m-pino>path{fill:var(--r-verm);stroke:var(--r-tinta);stroke-width:4}
@keyframes m-pula{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-14px)}}
.m-placa rect{fill:var(--r-tinta)}
.m-placa .t1{font:24px var(--f-slab);fill:var(--r-most)}
.m-placa .t2{font:800 16px var(--f-corpo);fill:var(--r-creme)}
.btn-waze{background:#33CCFF;color:#0b2a36}
@media(max-width:700px){.mapa{aspect-ratio:4/5;box-shadow:5px 5px 0 var(--r-most)}}
@media(max-width:700px){.m-rua{font-size:24px;stroke-width:6px}.m-agua-txt{font-size:34px}.m-seta text,.m-praia-tag text{font-size:26px}.m-marco text{font-size:22px}.m-placa{transform:translate(-132px,-200px)}.m-placa rect{width:290px;height:86px}.m-placa .t1{font-size:27px}.m-placa .t2{font-size:18px}}
@media(prefers-reduced-motion:reduce){.m-ondas,.m-nog,.m-pino,.m-pulso{animation:none!important}}

.feed-vivo{margin-top:8px}
.campo-mel{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
