/* Adriana Machado Pâtisserie · estilos compartilhados (portal, loja, encomendas)
   Paleta: manual de identidade 2025. Logo só nas cores da paleta, monocromático. */

:root{
  --oliva:#595E40;        /* texto, títulos, fundos escuros */
  --oliva-esc:#3B3E29;    /* texto corrido (contraste maior que o oliva) */
  --verde:#888D64;        /* secundário */
  --pessego:#FBDEC4;      /* fundo claro da marca */
  --papel:#FDF3E8;        /* tom do pêssego clareado: fundo de página */
  --areia:#E4B889;        /* logo principal, linhas */
  --terracota:#D89D67;    /* botões */
  --marrom:#8C4E14;       /* ênfase */
  --font-texto:'Poppins',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  /* Shelby (script da marca) é Adobe Fonts: sem o kit do domínio, usa-se o Parisienne.
     Quando o kit existir, trocar só esta variável. */
  --font-script:'Parisienne','Shelby',cursive;
  --raio:18px;
  --larg:1120px;
  --sombra:0 18px 40px -22px rgba(59,62,41,.45);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papel);color:var(--oliva-esc);font-family:var(--font-texto);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{color:var(--oliva);line-height:1.15;margin:0 0 .6em;font-weight:600;letter-spacing:-.01em}
h1{font-size:clamp(2rem,5.2vw,3.4rem)}
h2{font-size:clamp(1.6rem,3.6vw,2.4rem)}
h3{font-size:1.15rem}
p{margin:0 0 1em}
ul{margin:0;padding:0;list-style:none}
:focus-visible{outline:3px solid var(--marrom);outline-offset:3px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cont{width:min(100% - 2rem,var(--larg));margin-inline:auto}
.script{font-family:var(--font-script);font-weight:400;letter-spacing:0;color:var(--marrom)}
.eyebrow{display:inline-block;font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--marrom);margin-bottom:1rem}
.lead{font-size:clamp(1.02rem,1.8vw,1.2rem);max-width:56ch}
.pular{position:absolute;left:-999px;top:0;background:var(--oliva);color:var(--pessego);padding:.6rem 1rem;z-index:100}
.pular:focus{left:1rem;top:1rem}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font:600 .98rem/1 var(--font-texto);text-decoration:none;
  padding:1rem 1.6rem;border-radius:999px;border:2px solid transparent;cursor:pointer;transition:transform .15s,background .15s,box-shadow .15s}
.btn svg{width:1.15em;height:1.15em;flex:none}
.btn--prim{background:var(--terracota);color:#2B2D1D;box-shadow:0 10px 24px -14px rgba(140,78,20,.8)}
.btn--prim:hover{background:#E0A870;transform:translateY(-1px)}
.btn--escuro{background:var(--oliva);color:var(--pessego)}
.btn--escuro:hover{background:#4a4e34}
.btn--fio{border-color:var(--oliva);color:var(--oliva);background:transparent}
.btn--fio:hover{background:var(--oliva);color:var(--pessego)}
.btn--fio-claro{border-color:var(--pessego);color:var(--pessego);background:transparent}
.btn--fio-claro:hover{background:var(--pessego);color:var(--oliva)}
.btn-grupo{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}

/* ---------- cabeçalho ---------- */
.topo{position:sticky;top:0;z-index:50;background:rgba(253,243,232,.93);backdrop-filter:blur(10px);border-bottom:1px solid rgba(89,94,64,.12)}
.topo__in{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:68px}
.topo__logo img{height:40px;width:auto}
.troca{display:flex;background:rgba(89,94,64,.09);border-radius:999px;padding:4px;gap:2px}
.troca a{font-size:.88rem;font-weight:600;text-decoration:none;color:var(--oliva);padding:.55rem 1.05rem;border-radius:999px;white-space:nowrap}
.troca a[aria-current="page"]{background:var(--oliva);color:var(--pessego)}
.topo__zap{display:none}
@media(min-width:760px){.topo__zap{display:inline-flex;padding:.75rem 1.2rem;font-size:.9rem}}
@media(max-width:420px){.topo__logo img{height:32px}.troca a{padding:.5rem .8rem;font-size:.82rem}}

/* ---------- seções ---------- */
.sec{padding:clamp(3.5rem,8vw,6rem) 0}
.sec--pessego{background:var(--pessego)}
.sec--escura{background:var(--oliva);color:#F3E3D0}
.sec--escura h2,.sec--escura h3{color:var(--pessego)}
.sec--escura .eyebrow{color:var(--areia)}
.sec--escura .script{color:var(--areia)}
.sec--escura .info svg{color:var(--areia)}
.sec--escura .info b{color:var(--pessego)}
.sec__cab{max-width:62ch;margin-bottom:2.4rem}
.sec__cab--centro{margin-inline:auto;text-align:center}
.com-padrao{position:relative;overflow:hidden}
.com-padrao::before{content:"";position:absolute;inset:0;background:url(../img/padrao-areia.webp) center/620px;opacity:.16;pointer-events:none}
.com-padrao>*{position:relative}

/* ---------- hero das páginas internas ---------- */
.hero{padding:clamp(2.2rem,6vw,4.5rem) 0 clamp(2.5rem,6vw,5rem)}
.hero__grid{display:grid;gap:2.2rem;align-items:center}
@media(min-width:900px){.hero__grid{grid-template-columns:1.05fr .95fr;gap:3.5rem}}
.hero__foto{position:relative}
.hero__foto img{width:100%;border-radius:var(--raio);box-shadow:var(--sombra);object-fit:cover}
.hero__foto--duplo{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.hero__foto--duplo img{aspect-ratio:3/4}
.hero__foto--duplo img:nth-child(2){margin-top:2.4rem}
.hero__foto--duplo.sem-corte img{aspect-ratio:auto;height:auto}
.selo{position:absolute;right:-.4rem;bottom:-1.4rem;width:112px;height:112px;border-radius:50%;background:var(--pessego);display:grid;place-items:center;box-shadow:var(--sombra)}
.selo img{width:88px;height:88px;object-fit:contain;box-shadow:none;border-radius:0}
.fatos{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.8rem}
.fatos li{font-size:.84rem;font-weight:500;color:var(--oliva);background:rgba(89,94,64,.09);padding:.5rem .95rem;border-radius:999px}

/* ---------- portal ---------- */
.portal{display:grid;min-height:calc(100svh - 68px)}
@media(min-width:860px){.portal{grid-template-columns:1fr 1fr}}
.porta{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:min(78svh,560px);padding:clamp(1.5rem,4vw,3rem);
  color:var(--pessego);text-decoration:none;overflow:hidden;isolation:isolate}
.porta img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s}
.porta::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(59,62,41,0) 5%,rgba(59,62,41,.62) 42%,rgba(59,62,41,.93) 100%)}
.porta:hover img{transform:scale(1.04)}
.porta .script{color:var(--areia);font-size:clamp(1.6rem,3vw,2.2rem);line-height:1}
.porta h2{color:var(--pessego);font-size:clamp(1.7rem,3.4vw,2.5rem);margin:.25rem 0 .6rem}
.porta p{max-width:36ch;margin-bottom:1.2rem;color:#F6E6D3}
.porta .btn{align-self:flex-start}
.portal-intro{padding:clamp(2.2rem,5vw,3.5rem) 0 clamp(1.8rem,4vw,2.6rem);text-align:center}
.portal-intro img{height:clamp(84px,14vw,128px);width:auto;margin:0 auto 1rem}
.portal-intro .script{font-size:clamp(1.6rem,3.4vw,2.3rem)}

/* ---------- grades de fotos e cartões ---------- */
.grade{display:grid;gap:1.1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
@media(min-width:900px){.grade--3{grid-template-columns:repeat(3,1fr)}}
.cartao{background:#fff;border-radius:var(--raio);overflow:hidden;box-shadow:var(--sombra)}
.cartao img{width:100%;aspect-ratio:4/5;object-fit:cover}
.cartao__txt{padding:1.1rem 1.2rem 1.3rem}
.cartao__txt h3{margin-bottom:.3rem}
.cartao__txt p{font-size:.93rem;margin:0}
.cartao--sem-foto{padding:1.6rem 1.4rem;background:var(--pessego);box-shadow:none}
.cartao--sem-foto h3{margin-bottom:.5rem}
.cartao--sem-foto p{margin:0;font-size:.95rem}
.num{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--oliva);color:var(--pessego);font-weight:600;margin-bottom:1rem}

.galeria{display:grid;gap:.9rem;grid-template-columns:repeat(2,1fr)}
@media(min-width:760px){.galeria{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1040px){.galeria{grid-template-columns:repeat(4,1fr)}}
.galeria figure{margin:0;position:relative;border-radius:var(--raio);overflow:hidden;background:#fff;box-shadow:var(--sombra)}
.galeria{align-items:start}
.galeria a{display:block;cursor:zoom-in}
.galeria img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .6s}
.galeria figure:hover img{transform:scale(1.05)}
.galeria figcaption{position:absolute;left:0;right:0;bottom:0;padding:1.6rem .9rem .8rem;font-size:.86rem;font-weight:500;color:#fff;
  background:linear-gradient(180deg,transparent,rgba(43,45,29,.82))}

.lista-doces{display:grid;gap:1.6rem;margin-top:2.4rem}
@media(min-width:760px){.lista-doces{grid-template-columns:1fr 1fr}}
.lista-doces h3{font-family:var(--font-script);font-weight:400;font-size:1.9rem;color:var(--marrom);margin-bottom:.5rem}
.lista-doces ul{display:flex;flex-wrap:wrap;gap:.45rem}
.lista-doces li{font-size:.9rem;background:#fff;border:1px solid rgba(89,94,64,.18);border-radius:999px;padding:.35rem .85rem}

/* ---------- blocos de duas colunas ---------- */
.duas{display:grid;gap:2.2rem;align-items:center}
@media(min-width:860px){.duas{grid-template-columns:1fr 1fr;gap:4rem}.duas--inv>:first-child{order:2}}
.duas img{border-radius:var(--raio);width:100%;box-shadow:var(--sombra)}
.retrato{display:block}
.retrato img{width:100%;max-width:460px;margin-inline:auto;border-radius:var(--raio);box-shadow:var(--sombra)}
.retrato--larga img{max-width:520px}

.passos{display:grid;gap:1.1rem;counter-reset:p}
@media(min-width:760px){.passos{grid-template-columns:repeat(4,1fr)}}
.passo{background:#fff;border-radius:var(--raio);padding:1.5rem 1.3rem;box-shadow:var(--sombra)}
.passo p{font-size:.93rem;margin:0}

.sazonais{display:grid;gap:1.1rem}
@media(min-width:700px){.sazonais{grid-template-columns:1fr 1fr}}
.sazonal{position:relative;border-radius:var(--raio);overflow:hidden;min-height:340px;display:flex;align-items:flex-end;isolation:isolate}
.sazonal img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.sazonal::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 30%,rgba(43,45,29,.86))}
.sazonal div{padding:1.5rem;color:#fff}
.sazonal h3{color:var(--pessego);margin-bottom:.2rem}
.sazonal p{margin:0;font-size:.93rem}

/* ---------- informações ---------- */
.info{display:grid;gap:1rem}
.info li{display:grid;grid-template-columns:28px 1fr;gap:.8rem;align-items:start}
.info svg{width:24px;height:24px;color:var(--marrom);margin-top:.2rem}
.info b{display:block;color:var(--oliva)}
.mapa{border:0;width:100%;height:360px;border-radius:var(--raio);box-shadow:var(--sombra);background:var(--pessego)}

details.faq{background:#fff;border-radius:14px;padding:0 1.3rem;margin-bottom:.7rem;box-shadow:0 8px 22px -18px rgba(59,62,41,.6)}
details.faq summary{cursor:pointer;list-style:none;padding:1.1rem 0;font-weight:600;color:var(--oliva);display:flex;justify-content:space-between;gap:1rem}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--marrom);transition:transform .25s}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq p{padding-bottom:1.1rem;margin:0;font-size:.97rem}

/* ---------- formulário ---------- */
.form-cx{background:#fff;border-radius:24px;padding:clamp(1.4rem,4vw,2.4rem);box-shadow:var(--sombra)}
.campos{display:grid;gap:1rem}
@media(min-width:640px){.campos{grid-template-columns:1fr 1fr}.campos .cheio{grid-column:1/-1}}
.campo label{display:block;font-size:.86rem;font-weight:600;color:var(--oliva);margin-bottom:.35rem}
.campo input,.campo select,.campo textarea{width:100%;font:inherit;color:var(--oliva-esc);background:var(--papel);border:1.5px solid rgba(89,94,64,.28);border-radius:12px;padding:.85rem .95rem}
.campo textarea{min-height:104px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--oliva);box-shadow:0 0 0 3px rgba(216,157,103,.45)}
.campo [aria-invalid="true"]{border-color:#9a2a14}
.erro{display:none;color:#9a2a14;font-size:.82rem;margin-top:.3rem}
.campo [aria-invalid="true"]+.erro{display:block}
.form-nota{font-size:.82rem;color:#6a6d52;margin:1rem 0 0}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}

/* ---------- pendências (só aparecem na prévia) ---------- */
.pendente{display:none}
html.previa .pendente{display:inline-block;background:#FFF3B0;color:#5a4a00;border:1px dashed #b39500;border-radius:6px;padding:.05rem .45rem;font-size:.82em;font-weight:600}
html.previa div.pendente,html.previa section.pendente{display:block}

/* ---------- rodapé ---------- */
.rodape{background:var(--oliva);color:#E9D9C4;padding:clamp(2.6rem,6vw,4rem) 0 5.5rem}
@media(min-width:760px){.rodape{padding-bottom:2.2rem}}
.rodape__grid{display:grid;gap:2rem}
@media(min-width:760px){.rodape__grid{grid-template-columns:1.2fr 1fr 1fr}}
.rodape img{height:56px;width:auto;margin-bottom:1rem}
.rodape h4{color:var(--areia);margin:0 0 .7rem;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase}
.rodape a{text-decoration:none}
.rodape a:hover{text-decoration:underline}
.rodape li{margin-bottom:.4rem;font-size:.94rem}
.rodape__fim{border-top:1px solid rgba(251,222,196,.2);margin-top:2rem;padding-top:1.2rem;font-size:.8rem;color:#c9b9a2}

/* ---------- WhatsApp fixo no celular ---------- */
.zap-fixo{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:60;box-shadow:0 14px 30px -12px rgba(0,0,0,.55)}
@media(min-width:760px){.zap-fixo{display:none}}

@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}


/* ---------- v2: fotos reais, mosaicos, cardápio, ampliação, status ---------- */
.mini{font-size:.82rem;opacity:.8}
.status{display:inline-flex;align-items:center;gap:.5rem;font-size:.82rem;font-weight:600;color:var(--oliva);background:rgba(89,94,64,.09);padding:.45rem .9rem;border-radius:999px;white-space:nowrap}
.status[hidden]{display:none}
.status::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--terracota);flex:none}
.status[data-estado="aberto"]::before{background:#5f9b4b;box-shadow:0 0 0 4px rgba(95,155,75,.25)}
.topo .status{display:none}
@media(min-width:1040px){.topo .status:not([hidden]){display:inline-flex}}
.status--inline{margin-top:.5rem}

.faixa-info{background:var(--oliva);color:#F3E3D0}
.faixa-info__in{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 2.2rem;padding:1.05rem 0;font-size:.92rem}
.faixa-info span{display:inline-flex;align-items:center;gap:.55rem}
.faixa-info svg{width:20px;height:20px;color:var(--areia);flex:none}
.faixa-info a{text-decoration:none}

.hero__foto--trio{display:grid;grid-template-columns:1.1fr .9fr;gap:.9rem}
.hero__foto--trio img{width:100%;height:100%;object-fit:cover;border-radius:var(--raio);box-shadow:var(--sombra)}
.hero__foto--trio img:first-child{grid-row:1 / span 2}
.hero__foto--trio img:not(:first-child){aspect-ratio:1/1}

.mosaico{display:grid;gap:.9rem;grid-template-columns:repeat(2,1fr)}
.mosaico figure{margin:0;border-radius:var(--raio);overflow:hidden;box-shadow:var(--sombra);background:#fff}
.mosaico a{display:block;height:100%;cursor:zoom-in}
.mosaico img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5;transition:transform .6s}
.mosaico a:hover img{transform:scale(1.04)}
.mosaico .m-a{grid-column:1 / -1}
.mosaico .m-a img{aspect-ratio:4/3}
@media(min-width:860px){
  .mosaico{grid-template-columns:repeat(3,1fr);grid-template-rows:300px 300px}
  .mosaico img,.mosaico .m-a img{aspect-ratio:auto}
  .mosaico .m-a{grid-column:1 / span 2;grid-row:1}
  .mosaico .m-b{grid-column:3;grid-row:1 / span 2}
  .mosaico .m-c{grid-column:1;grid-row:2}
  .mosaico .m-d{grid-column:2;grid-row:2}
  .mosaico--cc{grid-template-columns:repeat(4,1fr);grid-template-rows:280px 280px}
  .mosaico--cc .m-a{grid-column:1 / span 2;grid-row:1 / span 2}
  .mosaico--cc .m-b{grid-column:3 / span 2;grid-row:1}
  .mosaico--cc .m-c{grid-column:3;grid-row:2}
  .mosaico--cc .m-d{grid-column:4;grid-row:2}
}

.menu{display:grid;gap:1.1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.menu__bloco{background:#fff;border-radius:var(--raio);padding:1.4rem 1.5rem 1.2rem;box-shadow:var(--sombra)}
.menu__bloco h3{font-family:var(--font-script);font-weight:400;font-size:1.9rem;color:var(--marrom);margin:0 0 .5rem}
.menu__bloco ul{display:block}
.menu__bloco li{display:flex;align-items:baseline;gap:.55rem;padding:.34rem 0;font-size:.95rem}
.menu__bloco li i{flex:1;min-width:12px;border-bottom:1px dotted rgba(89,94,64,.4);transform:translateY(-3px)}
.menu__bloco li b{font-weight:600;color:var(--oliva);white-space:nowrap}
.menu__nota{text-align:center;font-size:.85rem;margin:1.4rem 0 0;color:#6a6d52}

.duas__foto img{max-width:440px;margin-inline:auto}

html.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s ease}
html.js .reveal.visto{opacity:1;transform:none}
html.js .grade .reveal:nth-child(2),html.js .passos .reveal:nth-child(2){transition-delay:.1s}
html.js .grade .reveal:nth-child(3),html.js .passos .reveal:nth-child(3){transition-delay:.2s}
html.js .passos .reveal:nth-child(4){transition-delay:.3s}

.lb{position:fixed;inset:0;z-index:100;background:rgba(30,32,20,.94);display:none;align-items:center;justify-content:center;padding:1rem}
.lb.aberto{display:flex}
.lb img{max-width:min(94vw,920px);max-height:88vh;width:auto;height:auto;border-radius:12px;object-fit:contain;box-shadow:0 30px 60px -20px rgba(0,0,0,.6)}
.lb button{position:absolute;background:rgba(251,222,196,.16);color:var(--pessego);border:0;width:50px;height:50px;border-radius:50%;font-size:1.7rem;line-height:1;cursor:pointer}
.lb button:hover{background:rgba(251,222,196,.3)}
.lb .fechar{top:1rem;right:1rem}
.lb .ant{left:.8rem;top:50%;transform:translateY(-50%)}
.lb .prox{right:.8rem;top:50%;transform:translateY(-50%)}

.mosaico:not(.mosaico--cc) .m-b img{object-position:22% 50%}

@media(max-width:859px){
  .mosaico:not(.mosaico--cc) .m-d{grid-column:1 / -1}
  .mosaico:not(.mosaico--cc) .m-d img{aspect-ratio:4/3}
  .mosaico--cc .m-b{grid-column:1 / -1}
  .mosaico--cc .m-b img{aspect-ratio:4/3}
}


/* ---------- v3: foto cheia, fita de fotos, preço no cartão, captura antes do WhatsApp ---------- */
.btn--grande{padding:1.15rem 1.9rem;font-size:1.04rem}
.cta-centro{justify-content:center}

.hero-foto{position:relative;min-height:min(88svh,780px);display:flex;align-items:flex-end;color:#fff;isolation:isolate;overflow:hidden;background:var(--oliva-esc)}
.hero-foto__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transform:scale(1.06);animation:zoomlento 16s ease-out forwards}
.hero-foto::after{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(33,35,22,.9) 0%,rgba(33,35,22,.6) 42%,rgba(33,35,22,.08) 78%),linear-gradient(0deg,rgba(33,35,22,.55),transparent 45%)}
@media(max-width:759px){.hero-foto{min-height:86svh}.hero-foto::after{background:linear-gradient(180deg,rgba(33,35,22,.3) 0%,rgba(33,35,22,.72) 32%,rgba(33,35,22,.95) 100%)}}
.hero-foto__in{padding:clamp(5rem,12vw,8rem) 0 clamp(2.6rem,6vw,4.6rem)}
.hero-foto__in>*{max-width:610px}
.hero-foto h1{color:#fff;font-size:clamp(2.4rem,6.2vw,4.4rem);text-shadow:0 2px 24px rgba(0,0,0,.25)}
.hero-foto .script,.hero-foto .eyebrow{color:var(--areia)}
.hero-foto .lead{color:#F6E9DA}
.fatos--claro li{background:rgba(255,255,255,.14);color:#fff;backdrop-filter:blur(6px)}
@keyframes zoomlento{to{transform:scale(1)}}

.fita{overflow:hidden;padding:1.1rem 0;background:var(--oliva)}
.fita__trilho{display:flex;gap:1rem;width:max-content;animation:rolar 60s linear infinite}
.fita img{width:230px;height:230px;object-fit:cover;border-radius:18px;flex:none}
.fita:hover .fita__trilho{animation-play-state:paused}
@keyframes rolar{to{transform:translateX(calc(-50% - .5rem))}}
@media(max-width:759px){.fita img{width:150px;height:150px;border-radius:14px}.fita__trilho{animation-duration:45s}}

.faixa-foto{position:relative;isolation:isolate;overflow:hidden;color:#fff;text-align:center;padding:clamp(5.5rem,13vw,10rem) 0}
.faixa-foto__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.faixa-foto::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(33,35,22,.55),rgba(33,35,22,.82));z-index:-1}
.faixa-foto h2{color:#fff;font-size:clamp(2.1rem,5.4vw,3.6rem)}
.faixa-foto .script{color:var(--areia);font-size:clamp(1.8rem,4vw,2.7rem);margin:0 0 .2rem}
.faixa-foto p{max-width:52ch;margin-inline:auto;color:#F6E9DA}

.cartao__foto{position:relative;overflow:hidden}
.cartao__foto img{transition:transform .8s ease}
.cartao:hover .cartao__foto img{transform:scale(1.07)}
.preco{position:absolute;top:.85rem;left:.85rem;background:var(--pessego);color:var(--oliva);font-weight:600;font-size:.88rem;padding:.38rem .8rem;border-radius:999px;box-shadow:0 8px 18px -10px rgba(0,0,0,.6)}
.cartao__pedir{display:inline-flex;align-items:center;gap:.45rem;margin-top:.8rem;font-weight:600;font-size:.9rem;color:var(--marrom);text-decoration:none}
.cartao__pedir svg{width:1.05em;height:1.05em}
.cartao__pedir:hover{text-decoration:underline}

.zm{position:fixed;inset:0;z-index:120;background:rgba(30,32,20,.72);display:flex;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(4px)}
.zm[hidden]{display:none}
.zm__cx{position:relative;background:var(--papel);border-radius:24px;max-width:420px;width:100%;padding:2.1rem 1.6rem 1.4rem;box-shadow:0 30px 60px -20px rgba(0,0,0,.5);text-align:center;animation:sobe .3s ease}
.zm__logo{height:34px;width:auto;margin:0 auto 1rem}
.zm h2{font-size:1.45rem;margin-bottom:.4rem}
.zm form{display:grid;gap:.9rem;text-align:left;margin-top:1.1rem}
.zm__ok{width:100%}
.zm__x{position:absolute;top:.5rem;right:.6rem;background:none;border:0;font-size:1.9rem;line-height:1;color:var(--oliva);cursor:pointer;width:44px;height:44px}
@keyframes sobe{from{transform:translateY(18px);opacity:0}}

.zap-flutua{position:fixed;right:1.5rem;bottom:1.5rem;z-index:70;width:64px;height:64px;border-radius:50%;background:#25D366;color:#fff;display:none;align-items:center;justify-content:center;box-shadow:0 14px 30px -10px rgba(0,0,0,.45);isolation:isolate;transition:transform .2s}
.zap-flutua:hover{transform:scale(1.07)}
.zap-flutua svg{width:33px;height:33px}
.zap-flutua::before{content:"";position:absolute;inset:0;border-radius:50%;background:#25D366;animation:pulso 2.4s ease-out infinite;z-index:-1}
@keyframes pulso{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.65);opacity:0}}
@media(min-width:760px){.zap-flutua{display:flex}}

@media(prefers-reduced-motion:reduce){.fita__trilho,.hero-foto__bg,.zap-flutua::before{animation:none!important}.hero-foto__bg{transform:none}}
