/* =========================================================
   Jardim dos Pets — site público
   Cores e fontes vêm do painel (variáveis no <head>).
   ========================================================= */
:root{
  --primaria-escura: color-mix(in srgb, var(--primaria) 78%, #000);
  --sec-suave: color-mix(in srgb, var(--secundaria) 16%, var(--fundo));
  --dest-suave: color-mix(in srgb, var(--destaque) 22%, var(--fundo));
  --papel: color-mix(in srgb, #fff 72%, var(--fundo));
  --texto-suave: color-mix(in srgb, var(--texto) 72%, var(--fundo));
  --linha: color-mix(in srgb, var(--texto) 14%, transparent);
  --largura: 1180px;
  --gutter: clamp(16px, 4vw, 40px);
  --raio: 18px;
  --sombra: 0 18px 40px -22px color-mix(in srgb, var(--primaria) 45%, transparent);
  --topo-h: 78px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--topo-h) + 8px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fundo);color:var(--texto);font-family:var(--fonte-textos);font-size:1.0625rem;line-height:1.65;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--fonte-titulos);color:var(--primaria);font-weight:400;line-height:1.15;margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(2.3rem,5.2vw,4.1rem);line-height:1.06;letter-spacing:-.01em}
h2{font-size:clamp(1.85rem,3.6vw,2.75rem)}
h3{font-size:1.25rem}
h4{font-size:1.2rem}
p{margin:0 0 1em}
strong{font-weight:700}
.ico{width:1.25em;height:1.25em;flex:none}
:focus-visible{outline:3px solid var(--destaque);outline-offset:3px;border-radius:6px}
.pular{position:absolute;left:-999px;top:8px;z-index:100;background:var(--primaria);color:#fff;padding:10px 16px;border-radius:999px}
.pular:focus{left:12px}

/* ---------- Botões ---------- */
.btn{display:inline-flex;align-items:center;gap:.55em;padding:.85em 1.5em;border-radius:999px;font-weight:600;font-size:1rem;text-decoration:none;border:1.5px solid transparent;cursor:pointer;line-height:1.2;transition:background .2s,color .2s,transform .2s,box-shadow .2s;font-family:inherit}
.btn:active{transform:translateY(1px)}
.btn-cheio{background:var(--primaria);color:#fff}
.btn-cheio:hover{background:var(--primaria-escura);box-shadow:var(--sombra)}
.btn-linha{border-color:var(--primaria);color:var(--primaria);background:transparent}
.btn-linha:hover{background:var(--primaria);color:#fff}
.btn-destaque,.btn-zap{background:var(--destaque);color:var(--primaria-escura)}
.btn-destaque:hover,.btn-zap:hover{background:color-mix(in srgb,var(--destaque) 85%,#fff)}

/* ---------- Topo ---------- */
.topo{position:fixed;inset:0 0 auto;z-index:50;height:var(--topo-h);transition:height .3s,background .3s,box-shadow .3s}
.topo.rolou{--topo-h:64px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 6px 24px -16px color-mix(in srgb,var(--primaria) 60%,transparent);background:color-mix(in srgb,var(--fundo) 94%,transparent)}
.topo-in{max-width:var(--largura);margin:0 auto;height:100%;padding:0 var(--gutter);display:flex;align-items:center;gap:24px}
.marca{display:flex;align-items:center;text-decoration:none;flex:none}
.marca img{height:calc(var(--topo-h) - 22px);width:auto;transition:height .3s}
.marca-txt{font-family:var(--fonte-titulos);color:var(--primaria);font-size:1.35rem}
.menu{display:flex;align-items:center;gap:20px;margin-left:auto}
.menu ul{list-style:none;display:flex;gap:4px;margin:0;padding:0}
.menu ul a{display:block;padding:.5em .8em;border-radius:999px;text-decoration:none;font-weight:500;font-size:.98rem;color:var(--texto);transition:background .2s,color .2s}
.menu ul a:hover,.menu ul a.atual{background:var(--sec-suave);color:var(--primaria)}
.menu-contatos{display:flex;align-items:center;gap:14px}
.tel{display:inline-flex;align-items:center;gap:.4em;text-decoration:none;font-weight:600;color:var(--primaria);white-space:nowrap}
.btn-zap{padding:.65em 1.15em}
.menu-botao{display:none;margin-left:auto;background:none;border:0;color:var(--primaria);padding:8px;cursor:pointer;border-radius:12px}
.menu-botao .ico{width:30px;height:30px}
.menu-botao .fechar{display:none}

/* ---------- Hero ---------- */
.hero{position:relative;padding:calc(var(--topo-h) + clamp(28px,6vw,72px)) var(--gutter) clamp(48px,7vw,96px);overflow:hidden;
  background:
    radial-gradient(60% 70% at 100% 0%, var(--dest-suave), transparent 70%),
    radial-gradient(50% 60% at 0% 100%, var(--sec-suave), transparent 70%),
    var(--fundo)}
.hero-in{max-width:var(--largura);margin:0 auto;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(32px,6vw,80px);align-items:center}
.hero-marca{display:flex;align-items:center;gap:.6em;flex-wrap:wrap;font-weight:600;color:var(--secundaria);margin-bottom:1.1em}
.hero-marca::before{content:"";width:34px;height:2px;background:var(--destaque);border-radius:2px}
.hero-marca span{font-weight:400;color:var(--texto-suave)}
.hero h1{max-width:13ch}
.hero-sub{font-size:clamp(1.08rem,1.6vw,1.25rem);color:var(--texto-suave);max-width:44ch;margin-bottom:1.8em}
.hero-botoes{display:flex;flex-wrap:wrap;gap:12px}
.hero-arco{position:relative;justify-self:center;width:min(100%,440px)}
.arco{position:relative;aspect-ratio:4/5;border-radius:999px 999px 28px 28px;overflow:hidden;background:linear-gradient(160deg,var(--sec-suave),var(--dest-suave));box-shadow:var(--sombra)}
.arco-moldura{position:relative}
.arco-moldura::before{content:"";position:absolute;inset:-14px;border:1.5px solid color-mix(in srgb,var(--secundaria) 55%,transparent);border-radius:999px 999px 40px 40px;pointer-events:none}
.arco .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity 1.4s ease,transform 7s ease-out;z-index:1}
.arco .slide.ativo{opacity:1;transform:scale(1)}
.arco-vazio{position:absolute;inset:0;display:grid;place-items:center;color:color-mix(in srgb,var(--primaria) 30%,transparent)}
.arco-vazio .ico{width:96px;height:96px}
.pontos{display:flex;justify-content:center;gap:8px;margin-top:26px}
.pontos button{width:10px;height:10px;padding:0;border-radius:999px;border:0;background:color-mix(in srgb,var(--primaria) 25%,transparent);cursor:pointer;transition:width .3s,background .3s}
.pontos button[aria-selected="true"]{width:28px;background:var(--primaria)}
.folhas{position:absolute;inset:-40px -30px;pointer-events:none;z-index:2}
.folhas i{position:absolute;top:-30px;color:var(--secundaria);opacity:0}
.folhas i:nth-child(3n){color:var(--destaque)}
.folhas .ico{width:22px;height:22px}
.folhas .f1{left:6%}.folhas .f2{left:30%}.folhas .f3{left:52%}.folhas .f4{left:74%}.folhas .f5{left:92%}.folhas .f6{left:18%}.folhas .f7{left:64%}

/* ---------- Faixa ---------- */
.faixa{background:var(--primaria);color:#fff}
.faixa-in{max-width:var(--largura);margin:0 auto;padding:16px var(--gutter);display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.faixa p{margin:0;flex:1 1 300px}
.faixa-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--destaque);color:var(--primaria-escura);flex:none}
.faixa-link{display:inline-flex;align-items:center;gap:.4em;font-weight:700;text-decoration:none;color:var(--destaque);white-space:nowrap}

/* ---------- Seções ---------- */
.secao{padding:clamp(64px,9vw,120px) var(--gutter)}
.secao > *{max-width:var(--largura);margin-left:auto;margin-right:auto}
.secao.alt{background:var(--fundo-alt)}
.secao.escura{background:var(--primaria);color:#fff}
.secao.escura h2{color:#fff}
.cabeca{margin-bottom:clamp(32px,5vw,56px)}
.cabeca > p{max-width:56ch;color:var(--texto-suave);font-size:1.1rem}
.prosa p{max-width:62ch}
.ico-circ{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--papel);color:var(--secundaria);flex:none}
.ico-circ .ico{width:26px;height:26px}
.ico-circ.claro{background:color-mix(in srgb,#fff 14%,transparent);color:var(--destaque);margin-bottom:20px}
.obs{font-size:.92rem;color:var(--texto-suave)}

/* Sobre */
.sobre-grade{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,80px);align-items:center}
.sobre-foto{margin:0;aspect-ratio:4/5;border-radius:180px 16px 180px 16px;overflow:hidden;background:linear-gradient(150deg,var(--sec-suave),var(--dest-suave))}
.sobre-foto img{width:100%;height:100%;object-fit:cover}
.sobre-blocos{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,48px);margin-top:clamp(40px,6vw,72px)}
.bloco{padding-top:24px;border-top:1px solid var(--linha)}
.bloco-ico{color:var(--destaque);display:inline-block;margin-bottom:8px}
.bloco-ico .ico{width:28px;height:28px}
.numeros{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-top:clamp(40px,6vw,72px)}
.numeros li{display:flex;flex-direction:column;gap:4px}
.numeros strong{font-family:var(--fonte-titulos);font-weight:400;font-size:clamp(2.6rem,5vw,3.6rem);line-height:1;color:var(--primaria)}
.numeros li > span{color:var(--texto-suave)}
.numeros li::after{content:"";order:-1;width:40px;height:4px;border-radius:4px;background:var(--destaque);margin-bottom:14px}

/* Estrutura */
.estrutura-lista{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:clamp(28px,4vw,44px) clamp(24px,3vw,40px)}
.estrutura-lista li{display:flex;gap:16px;align-items:flex-start}
.estrutura-lista h3{font-size:1.15rem;margin-bottom:.3em}
.estrutura-lista p{margin:0;color:var(--texto-suave);font-size:.98rem}

/* Como funciona */
.trilha{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:32px;position:relative;counter-reset:p}
.trilha li{position:relative}
.trilha li:not(:last-child)::after{content:"";position:absolute;top:28px;left:72px;right:-20px;border-top:2px dashed color-mix(in srgb,var(--secundaria) 55%,transparent)}
.passo-n{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--destaque);color:var(--primaria-escura);font-family:var(--fonte-titulos);font-size:1.5rem;margin-bottom:18px;position:relative;z-index:1}
.trilha h3{font-size:1.2rem}
.trilha p{color:var(--texto-suave);font-size:.98rem}

/* Planos */
.selo{display:inline-flex;align-items:center;gap:.6em;background:var(--papel);border-radius:999px;padding:.6em 1.1em;font-weight:600;color:var(--primaria);margin-top:.6em;font-size:.98rem;max-width:none}
.selo .ico{color:var(--destaque);width:22px;height:22px}
.abas{display:flex;width:fit-content;gap:6px;padding:6px;background:var(--papel);border-radius:999px;margin-bottom:28px}
.abas button{display:inline-flex;align-items:center;gap:.5em;border:0;background:transparent;padding:.75em 1.4em;border-radius:999px;font:inherit;font-weight:600;color:var(--texto-suave);cursor:pointer;transition:background .25s,color .25s}
.abas button[aria-selected="true"]{background:var(--primaria);color:#fff}
.painel{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px,4vw,48px);align-items:start}
.painel[hidden]{display:none}
.painel.entrando{animation:painel .45s ease}
@keyframes painel{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.painel-sub{font-weight:600;color:var(--secundaria)}
.lista-planos{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:14px}
.plano{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--papel);border-radius:var(--raio);padding:22px 24px;border:2px solid transparent}
.plano.destaque{border-color:var(--destaque)}
.plano h4{margin-bottom:.2em}
.plano p{margin:0;color:var(--texto-suave);font-size:.98rem}
.plano-acao{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex:none}
.preco{font-family:var(--fonte-titulos);font-size:1.4rem;color:var(--primaria)}
.nota{font-size:.95rem;color:var(--texto-suave)}
.inclusos{background:var(--primaria);color:#fff;border-radius:120px 24px 24px 24px;padding:clamp(28px,4vw,44px)}
.inclusos h3{color:#fff;margin-bottom:1em}
.inclusos ul{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:12px}
.inclusos li{display:flex;gap:12px;align-items:flex-start}
.inclusos li .ico{color:var(--destaque);margin-top:.15em}
.inclusos .obs{color:color-mix(in srgb,#fff 75%,transparent);margin:.4em 0 0}
.importante{display:flex;gap:20px;align-items:flex-start;margin-top:clamp(32px,5vw,56px);background:var(--papel);border-left:5px solid var(--destaque);border-radius:var(--raio);padding:24px clamp(20px,3vw,32px)}
.importante h3{margin-bottom:.3em}
.importante p{margin:.2em 0 .5em}

/* Crematório */
.crem-grade{display:grid;grid-template-columns:6fr 5fr;gap:clamp(32px,6vw,80px);align-items:center}
.crem-texto .prosa{color:color-mix(in srgb,#fff 86%,transparent);margin-bottom:24px}
.crem-foto{margin:0;aspect-ratio:1;border-radius:16px 200px 16px 200px;overflow:hidden;background:color-mix(in srgb,#fff 10%,transparent)}
.crem-foto img{width:100%;height:100%;object-fit:cover}

/* Lembranças */
.galeria{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:clamp(20px,3vw,36px) clamp(16px,2.5vw,28px)}
.moldura{all:unset;display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;cursor:pointer;border-radius:999px 999px 16px 16px}
.moldura:focus-visible{outline:3px solid var(--destaque);outline-offset:6px}
.moldura-arco{position:relative;display:block;width:100%;aspect-ratio:3/4;border-radius:999px 999px 16px 16px;overflow:hidden;border:6px solid var(--papel);background:linear-gradient(160deg,var(--sec-suave),var(--dest-suave));box-shadow:var(--sombra)}
.moldura-arco img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease;z-index:1}
.moldura:hover img{transform:scale(1.06)}
.moldura-arco .vazio{position:absolute;inset:0;margin:auto;width:48px;height:48px;color:color-mix(in srgb,var(--primaria) 35%,transparent)}
.moldura-nome{font-family:var(--fonte-titulos);color:var(--primaria);font-size:1.15rem;text-align:center}

/* Dúvidas */
.duvidas-grade{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,80px);align-items:start}
.duvidas .cabeca{position:sticky;top:calc(var(--topo-h) + 24px)}
.sanfona details{border-bottom:1px solid var(--linha)}
.sanfona summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;cursor:pointer;font-weight:600;font-size:1.08rem;color:var(--primaria)}
.sanfona summary::-webkit-details-marker{display:none}
.sanfona .sinal{transition:transform .3s;color:var(--secundaria);width:24px;height:24px}
.sanfona details[open] .sinal{transform:rotate(45deg)}
.sanfona .resp{overflow:hidden;color:var(--texto-suave)}
.sanfona .resp p:last-child{margin-bottom:20px}

/* Depoimentos */
.deps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px}
.deps li{background:var(--papel);border-radius:var(--raio);padding:28px}
.deps blockquote{margin:0 0 16px;font-family:var(--fonte-titulos);font-size:1.15rem;color:var(--primaria);line-height:1.5}
.dep-autor{display:flex;align-items:center;gap:12px;margin:0;color:var(--texto-suave);font-size:.95rem}
.dep-autor img{width:48px;height:48px;border-radius:50%;object-fit:cover}
.dep-autor strong{color:var(--texto);display:block}

/* Contato */
.contato-grade{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,80px);align-items:start}
.contato-info > p{color:var(--texto-suave);max-width:44ch}
.canais{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px}
.canais a,.canais .item{display:flex;gap:16px;align-items:center;text-decoration:none}
.canais a:hover .ico-circ{background:var(--destaque);color:var(--primaria-escura)}
.canais .ico-circ{transition:background .2s,color .2s}
.canais small{display:block;color:var(--texto-suave);font-size:.85rem}
.canais a > span:last-child,.canais .item > span:last-child{font-weight:600}
.form-contato{background:var(--papel);border-radius:28px;padding:clamp(24px,4vw,40px);display:grid;gap:16px}
.form-contato h3{margin:0}
.form-contato label{display:grid;gap:6px;font-weight:600;font-size:.95rem}
.form-contato input,.form-contato textarea{font:inherit;font-weight:400;width:100%;padding:.8em 1em;border-radius:12px;border:1.5px solid var(--linha);background:var(--fundo);color:var(--texto);transition:border-color .2s}
.form-contato input:focus,.form-contato textarea:focus{border-color:var(--secundaria);outline:none;box-shadow:0 0 0 3px var(--sec-suave)}
.form-contato .dois{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-contato .btn{justify-self:start}
.form-status{margin:0;font-weight:600;min-height:1.4em;color:var(--secundaria)}
.form-status.erro{color:#b3261e}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.mapa{margin-top:clamp(40px,6vw,64px);border-radius:28px;overflow:hidden;height:clamp(280px,40vw,400px);background:var(--sec-suave)}
.mapa iframe{width:100%;height:100%;border:0;filter:saturate(.85)}

/* Rodapé */
.rodape{background:var(--primaria-escura);color:color-mix(in srgb,#fff 82%,transparent);padding:clamp(56px,8vw,88px) var(--gutter) 28px}
.rodape-in{max-width:var(--largura);margin:0 auto;display:grid;grid-template-columns:5fr 3fr 4fr;gap:40px}
.rodape-marca img{max-height:84px;width:auto;margin-bottom:20px}
.rodape-marca p{max-width:40ch}
.rodape ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.rodape a{text-decoration:none}
.rodape nav a:hover{color:var(--destaque)}
.sociais{display:flex;gap:10px}
.sociais a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:color-mix(in srgb,#fff 10%,transparent);transition:background .2s,color .2s}
.sociais a:hover{background:var(--destaque);color:var(--primaria-escura)}
.copy{max-width:var(--largura);margin:48px auto 0;padding-top:24px;border-top:1px solid color-mix(in srgb,#fff 12%,transparent);font-size:.9rem;color:color-mix(in srgb,#fff 60%,transparent)}

/* Flutuantes */
.zap-flutuante{position:fixed;right:20px;bottom:20px;z-index:40;display:flex;align-items:center;gap:10px;background:#25d366;color:#fff;text-decoration:none;font-weight:700;border-radius:999px;padding:14px;box-shadow:0 10px 30px -10px rgba(0,0,0,.35)}
.zap-flutuante .ico{width:28px;height:28px}
.zap-flutuante span{max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .4s,padding .4s}
.zap-flutuante:hover span,.zap-flutuante:focus-visible span{max-width:140px;padding-right:6px}
.zap-flutuante::after{content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid #25d366;opacity:0;pointer-events:none}
.subir{position:fixed;right:28px;bottom:94px;z-index:39;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--papel);color:var(--primaria);box-shadow:var(--sombra);opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .3s,transform .3s}
.subir .ico{transform:rotate(-90deg)}
.subir.visivel{opacity:1;pointer-events:auto;transform:none}

/* Lightbox */
.lightbox{position:fixed;inset:0;z-index:80;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:24px;background:color-mix(in srgb,var(--primaria-escura) 94%,transparent)}
.lightbox[hidden]{display:none}
.lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:16px;max-height:100%;min-width:0}
.lightbox img{max-width:100%;max-height:72vh;border-radius:20px;object-fit:contain}
.lightbox figcaption{color:#fff;text-align:center;max-width:56ch}
.lightbox figcaption strong{display:block;font-family:var(--fonte-titulos);font-weight:400;font-size:1.6rem;color:var(--destaque)}
.lightbox button{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:0;background:color-mix(in srgb,#fff 14%,transparent);color:#fff;cursor:pointer}
.lightbox button:hover{background:color-mix(in srgb,#fff 26%,transparent)}
.lb-fechar{position:absolute;top:18px;right:18px}

/* ---------- Animações (somente com JS, animações ligadas e sem "reduzir movimento") ---------- */
@media (prefers-reduced-motion:no-preference){
  .js .com-animacao .revela{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
  .js .com-animacao .revela.visto{opacity:1;transform:none}
  .js .com-animacao .hero-texto > *{opacity:0;transform:translateY(24px);animation:sobe .9s cubic-bezier(.2,.7,.2,1) forwards}
  .js .com-animacao .hero-texto > :nth-child(2){animation-delay:.12s}
  .js .com-animacao .hero-texto > :nth-child(3){animation-delay:.24s}
  .js .com-animacao .hero-texto > :nth-child(4){animation-delay:.36s}
  .js .com-animacao .arco{clip-path:inset(100% 0 0 0 round 999px 999px 28px 28px);animation:abre 1.3s .2s cubic-bezier(.65,0,.2,1) forwards}
  .js .com-animacao .arco-moldura::before{opacity:0;animation:aparece 1s 1.1s forwards}
  .com-animacao .folhas i{animation:cai 14s linear infinite}
  .com-animacao .folhas .f2{animation-delay:2s;animation-duration:17s}
  .com-animacao .folhas .f3{animation-delay:5s;animation-duration:15s}
  .com-animacao .folhas .f4{animation-delay:8s;animation-duration:18s}
  .com-animacao .folhas .f5{animation-delay:3.5s;animation-duration:16s}
  .com-animacao .folhas .f6{animation-delay:10s;animation-duration:19s}
  .com-animacao .folhas .f7{animation-delay:12.5s;animation-duration:15s}
  .com-animacao .zap-flutuante::after{animation:pulso 3.2s 2s ease-out infinite}
}
@keyframes sobe{to{opacity:1;transform:none}}
@keyframes abre{to{clip-path:inset(0 0 0 0 round 999px 999px 28px 28px)}}
@keyframes aparece{to{opacity:1}}
@keyframes cai{
  0%{opacity:0;transform:translate(0,0) rotate(0)}
  10%{opacity:.75}
  50%{transform:translate(28px,48vh) rotate(160deg)}
  85%{opacity:.6}
  100%{opacity:0;transform:translate(-12px,92vh) rotate(320deg)}
}
@keyframes pulso{0%{opacity:.7;transform:scale(1)}70%,100%{opacity:0;transform:scale(1.5)}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .arco .slide{transition:opacity .4s}
  .folhas{display:none}
}

/* ---------- Responsivo ---------- */
@media (max-width:1080px){
  .menu{position:fixed;top:var(--topo-h);left:0;right:0;bottom:0;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:24px;padding:24px var(--gutter) 40px;background:var(--fundo);overflow-y:auto;transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .25s,transform .25s,visibility .25s}
  .menu.aberto{opacity:1;visibility:visible;transform:none}
  .menu ul{flex-direction:column;gap:2px}
  .menu ul a{font-size:1.25rem;padding:.7em .4em;border-radius:12px;font-family:var(--fonte-titulos);color:var(--primaria)}
  .menu-contatos{flex-direction:column;align-items:stretch;gap:12px;padding-top:20px;border-top:1px solid var(--linha)}
  .menu-contatos .btn,.menu-contatos .tel{justify-content:center;font-size:1.1rem;padding:.9em}
  .menu-botao{display:block}
  .menu-aberto .menu-botao .abrir{display:none}
  .menu-aberto .menu-botao .fechar{display:block}
  .menu-aberto{overflow:hidden}
}
@media (max-width:860px){
  .hero-in,.sobre-grade,.crem-grade,.duvidas-grade,.contato-grade,.painel{grid-template-columns:1fr}
  .hero-arco{width:min(80%,340px);margin-top:12px}
  .arco{aspect-ratio:1/1.08}
  .hero h1{max-width:none}
  .sobre-foto{max-width:420px;aspect-ratio:5/4}
  .crem-foto{max-width:420px;aspect-ratio:5/4}
  .duvidas .cabeca{position:static}
  .rodape-in{grid-template-columns:1fr 1fr}
  .rodape-marca{grid-column:1/-1}
  .trilha li:not(:last-child)::after{display:none}
}
@media (max-width:600px){
  body{font-size:1rem}
  :root{--topo-h:66px}
  .topo.rolou{--topo-h:58px}
  .sobre-blocos{grid-template-columns:1fr}
  .plano{flex-direction:column;align-items:flex-start}
  .plano-acao{align-items:flex-start;flex-direction:row;flex-wrap:wrap;align-items:center}
  .abas{display:flex;width:100%}
  .abas button{flex:1;justify-content:center;padding:.75em .6em;font-size:.95rem}
  .form-contato .dois{grid-template-columns:1fr}
  .galeria{grid-template-columns:repeat(2,1fr)}
  .rodape-in{grid-template-columns:1fr}
  .lightbox{grid-template-columns:1fr;padding:64px 12px 24px}
  .lb-ant,.lb-prox{position:absolute;bottom:24px}
  .lb-ant{left:24px}.lb-prox{right:24px}
  .inclusos{border-radius:64px 20px 20px 20px}
  .faixa-in{gap:10px 14px}
  .selo{border-radius:20px;align-items:flex-start}
  .numeros{grid-template-columns:1fr 1fr}
}
