:root{
  --creme:#f8ecd9;--creme-2:#f6dec0;--creme-3:#efdcc2;
  --vermelho:#8f1d22;--vermelho-2:#a9252c;--verde:#1f4d3a;--verde-2:#2b6a50;--ouro:#f0b63d;
  --tinta:#2b2420;--cinza:#6f6259;--fio:#e6d2b6;--r:18px;--max:1140px;
  --sombra:0 14px 40px rgba(90,60,30,.12);
  --serif:"Cormorant Garamond",Georgia,serif;--sans:"Nunito Sans",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{background:var(--creme);color:var(--tinta);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
ul{list-style:none}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.05;color:var(--vermelho)}
h2{font-size:clamp(36px,4.4vw,54px)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--vermelho);color:#fff;text-decoration:none;font-weight:700;font-size:15.5px;padding:15px 26px;border-radius:999px;border:0;cursor:pointer;transition:background .15s,transform .15s,box-shadow .15s;box-shadow:0 8px 22px rgba(143,29,34,.22)}
.btn:hover{background:var(--vermelho-2);transform:translateY(-2px)}
.btn svg{width:20px;height:20px;fill:currentColor}
.btn.vazado{background:transparent;color:var(--verde);box-shadow:none;border:1.5px solid #c9b797}
.btn.vazado:hover{background:#fff;border-color:var(--verde);transform:none}
.btn.claro{background:#fff;color:var(--vermelho);box-shadow:0 8px 22px rgba(0,0,0,.12)}
.btn.claro:hover{background:var(--creme)}

/* topo */
header{position:sticky;top:0;z-index:40;background:rgba(248,236,217,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .2s}
.barra{display:flex;align-items:center;gap:28px;height:82px}
.marca img{height:48px;width:auto}
header nav{display:flex;gap:26px;margin-left:auto}
header nav a{text-decoration:none;font-weight:700;font-size:15px;color:var(--verde)}
header nav a:hover{color:var(--vermelho)}
.barra .btn{padding:12px 20px;font-size:14.5px}

/* capa */
.capa{background:var(--creme-2);overflow:hidden}
.capa .wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:30px;min-height:560px;padding-top:40px;padding-bottom:40px}
.capa .sobre{font-size:13.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--verde);margin-bottom:16px}
h1{font-size:clamp(44px,5.6vw,72px);max-width:560px}
.capa .sub{font-size:clamp(17px,1.5vw,19px);color:#4c3f36;margin:22px 0 30px;max-width:520px}
.capa .acoes{display:flex;flex-wrap:wrap;gap:14px}
.fatos{display:flex;flex-wrap:wrap;gap:8px 26px;margin-top:34px;padding-top:22px;border-top:1px solid #e3c9a4;font-size:14.5px;font-weight:700;color:var(--verde)}
.fatos li::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--vermelho);margin-right:9px;vertical-align:2px}
.capa .foto img{width:100%;height:auto;-webkit-mask-image:radial-gradient(ellipse 62% 62% at 50% 50%,#000 55%,transparent 100%);mask-image:radial-gradient(ellipse 62% 62% at 50% 50%,#000 55%,transparent 100%);transform:scale(1.08)}

/* seções */
.bloco{padding:96px 0}
.titulo{display:flex;align-items:end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:38px}
.titulo p{font-size:17px;color:var(--cinza);max-width:520px}
.grade{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.item{display:flex;flex-direction:column;background:var(--creme-2);border-radius:var(--r);overflow:hidden;text-decoration:none;transition:transform .2s,box-shadow .2s}
.item:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.item .foto{aspect-ratio:4/3;overflow:hidden}
.item .foto img{width:100%;height:100%;object-fit:cover;-webkit-mask-image:radial-gradient(ellipse 66% 66% at 50% 50%,#000 60%,transparent 100%);mask-image:radial-gradient(ellipse 66% 66% at 50% 50%,#000 60%,transparent 100%);transition:transform .3s}
.item:hover .foto img{transform:scale(1.04)}
.item .info{padding:4px 24px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.item h3{font-size:27px;color:var(--vermelho)}
.item p{font-size:15px;color:#4c3f36;flex:1}
.item .linha{display:flex;align-items:center;gap:12px;margin-top:8px;padding-top:14px;border-top:1px solid #e3c9a4}
.item .preco{font-weight:700;font-size:17px;color:var(--verde)}
.item .peso{font-size:14px;color:var(--cinza)}
.item .pedir{margin-left:auto;font-weight:700;font-size:14.5px;color:var(--vermelho)}
.item .pedir::after{content:" ›"}
.nota{margin-top:22px;font-size:15px;color:var(--cinza)}

/* combos */
.combos{background:#fff;padding-top:80px;padding-bottom:80px}
.combos-grade{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.combo{display:block;text-decoration:none;border-radius:var(--r);overflow:hidden;background:var(--creme);border:1px solid var(--fio);transition:transform .2s,box-shadow .2s}
.combo:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.combo .nome{display:block;background:var(--verde);color:#fff;text-align:center;font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;padding:12px}
.combo.vermelho .nome{background:var(--vermelho)}
.combo .corpo{padding:24px 20px;text-align:center}
.combo strong{display:block;font-family:var(--serif);font-weight:700;font-size:40px;line-height:1;color:var(--vermelho)}
.combo small{display:block;font-size:13.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cinza);margin-top:6px}
.combo em{display:block;font-style:normal;font-family:var(--serif);font-weight:700;font-size:28px;color:var(--vermelho);margin-top:16px;padding-top:14px;border-top:1px solid var(--fio)}

/* promoção */
.promo{background:var(--vermelho);color:#fff;padding:80px 0}
.promo .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.promo .acima{font-size:13.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#f3c9c9}
.promo h2{color:#fff;margin:8px 0 14px;font-size:clamp(40px,5vw,62px)}
.promo .frase{font-family:var(--serif);font-size:24px;font-style:italic}
.promo .itens{margin-top:18px;font-size:15.5px;color:#f7dcdc;line-height:1.8}
.promo .preco{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);border-radius:var(--r);padding:34px 30px;text-align:center}
.promo .qtd{font-size:13.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#f3c9c9}
.promo .valor{font-family:var(--serif);font-weight:700;font-size:64px;line-height:1.05;margin-top:8px}
.promo .cada{display:inline-block;margin-top:10px;background:var(--ouro);color:#4a2d00;font-weight:700;padding:6px 14px;border-radius:8px}
.promo .btn{margin-top:22px;width:100%}
.promo .validade{margin-top:14px;font-size:13.5px;color:#f3c9c9}

/* como funciona */
.como .duas{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.prosa p{font-size:17.5px;color:#4c3f36}
.prosa p+p{margin-top:16px}

/* chamada */
.chamada{background:var(--verde);color:#fff;padding:72px 0}
.chamada .wrap{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.chamada h2{color:#fff}
.chamada p{margin-top:8px;color:#cfe3d7;font-size:17px}
.chamada strong{color:#fff}

/* rodapé */
footer{background:var(--creme-3);padding:50px 0 32px;text-align:center;color:var(--verde)}
footer img{height:44px;width:auto;margin:0 auto 18px}
footer p{font-size:15px}
footer .redes a{font-weight:700;color:var(--vermelho)}
footer .legal{margin-top:22px;font-size:13px;color:var(--cinza)}

/* WhatsApp fixo */
.zap{position:fixed;right:22px;bottom:22px;z-index:30;width:60px;height:60px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 10px 26px rgba(37,211,102,.38);transition:transform .15s}
.zap:hover{transform:scale(1.07)}
.zap svg{width:32px;height:32px;fill:#fff}

/* entrada suave */
.rv{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}
.rv.ok{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

@media (max-width:1000px){
  header nav{display:none}
  .grade{grid-template-columns:1fr 1fr}
  .combos-grade{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
  html{scroll-padding-top:76px}
  .wrap{padding:0 18px}
  .barra{height:68px;gap:12px}
  .marca img{height:36px}
  .barra .btn{margin-left:auto;padding:10px 14px;font-size:13.5px}
  .capa .wrap{grid-template-columns:1fr;min-height:0;padding-top:28px;padding-bottom:10px;gap:0}
  .capa .foto{order:-1;margin:-10px -30px -14px}
  .capa .foto img{transform:none}
  h1{font-size:clamp(38px,11vw,50px)}
  .capa .sub{margin:16px 0 22px}
  .bloco{padding:64px 0}
  .titulo{margin-bottom:26px}
  .grade{grid-template-columns:1fr;gap:16px}
  .item h3{font-size:25px}
  .combos-grade{grid-template-columns:1fr 1fr;gap:12px}
  .combo strong{font-size:32px}
  .combo em{font-size:24px}
  .promo{padding:60px 0}
  .promo .wrap{grid-template-columns:1fr;gap:28px}
  .promo .valor{font-size:54px}
  .como .duas{grid-template-columns:1fr;gap:18px}
  .chamada{padding:56px 0}
  .zap{right:16px;bottom:16px;width:56px;height:56px}
}
