/* Extras da prévia 2.0: animações, agendamento, cadastro, ampliar fotos · VIXCAPTA · 11/10/2026 */
.progresso{position:fixed;top:0;left:0;right:0;height:3px;z-index:70;background:linear-gradient(90deg,var(--salvia),var(--ouro),var(--ouro2));transform-origin:left;transform:scaleX(0)}

/* Título do herói palavra por palavra */
.hero h1 .pal{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.08em}
.hero h1 .pal>span{display:inline-block;transform:translateY(110%);opacity:0}
.hero h1.pronto .pal>span{animation:sobe .9s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--i)*.09s + .25s)}
@keyframes sobe{to{transform:none;opacity:1}}
.po{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-fundo{position:absolute;inset:0;overflow:hidden}
.brilho-mouse{position:absolute;left:0;top:0;width:400px;height:400px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--ouro2) 45%,transparent),transparent 65%);opacity:0;transition:opacity .4s,transform .25s ease-out;mix-blend-mode:soft-light}
.pc,.un,.fatos li,.passos li,.arco{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s;will-change:transform}
.btn-ouro{transition:translate .25s ease-out,transform .25s,box-shadow .25s}
.arco img{will-change:transform}

/* Caixa de agendamento */
.ag-caixa{background:var(--card);border:1px solid var(--linha);border-radius:28px;box-shadow:var(--sombra);overflow:hidden;max-width:880px;margin-inline:auto}
.ag-abas{display:grid;grid-template-columns:1fr 1fr;background:var(--bg2)}
.ag-abas button{padding:18px 12px;font-weight:500;color:var(--txt2);border-bottom:2px solid transparent;transition:.25s}
.ag-abas button.ativo{color:var(--txt);background:var(--card);border-bottom-color:var(--ouro)}
.ag-painel{padding:30px 30px 26px}
.ag-painel[hidden],.ag-etapa[hidden],.ag-ok[hidden]{display:none}
.ag-passos{list-style:none;display:flex;gap:6px;margin-bottom:26px;counter-reset:p}
.ag-passos li{flex:1;counter-increment:p;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--txt2);border-top:3px solid var(--linha);padding-top:10px;transition:.4s}
.ag-passos li::before{content:counter(p) ". "}
.ag-passos li.atual{color:var(--txt);border-top-color:var(--ouro)}
.ag-passos li.feito{color:var(--salvia);border-top-color:var(--salvia)}
.ag-etapa{display:grid;gap:16px}
.ag-etapa.entra{animation:surge .5s cubic-bezier(.2,.8,.2,1)}
.ag-etapa h3,.ag-ok h3,.ag-cad h3{font-size:1.7rem}
.ag-dica{font-size:.92rem;color:var(--txt2)}
.ag-procs{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.ag-proc{text-align:left;padding:16px 18px;border:1px solid var(--linha);border-radius:16px;background:var(--bg);transition:.25s}
.ag-proc b{display:block;font:500 1.15rem/1.2 var(--serif)}.ag-proc small{color:var(--txt2);font-size:.8rem}
.ag-proc:hover,.ag-proc.ativo{border-color:var(--ouro);background:color-mix(in srgb,var(--ouro2) 18%,var(--card));transform:translateY(-2px)}
.ag-un{display:flex;flex-wrap:wrap;gap:8px}
.ag-dias{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.ag-dia{flex:0 0 76px;scroll-snap-align:start;display:grid;gap:1px;justify-items:center;padding:12px 6px;border:1px solid var(--linha);border-radius:16px;background:var(--bg);transition:.25s}
.ag-dia small{text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;color:var(--txt2)}
.ag-dia b{font:500 1.7rem/1.1 var(--serif)}
.ag-dia em{font-style:normal;font-size:.7rem;color:var(--salvia)}
.ag-dia:disabled{opacity:.45;cursor:not-allowed}.ag-dia:disabled em{color:var(--txt2)}
.ag-dia:not(:disabled):hover,.ag-dia.ativo{border-color:var(--ouro);background:color-mix(in srgb,var(--ouro2) 22%,var(--card));transform:translateY(-2px)}
.ag-horas{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}
.ag-hora{padding:13px 8px;border:1px solid var(--linha);border-radius:14px;background:var(--bg);font-weight:500;transition:.2s}
.ag-hora:not(:disabled):hover{border-color:var(--ouro);background:color-mix(in srgb,var(--ouro2) 25%,var(--card));transform:translateY(-2px)}
.ag-hora:disabled{opacity:.4;text-decoration:line-through;cursor:not-allowed}
.ag-resumo{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.ag-resumo div{background:var(--bg2);border-radius:14px;padding:12px 14px}
.ag-resumo small{display:block;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--salvia)}
.ag-resumo b{font:500 1.15rem/1.25 var(--serif)}
.ag-etapa label small,.ag-cad label small{display:inline}
.ag-etapa label,.ag-cad label{display:grid;gap:6px;font-size:.88rem;color:var(--txt2)}
.ag-etapa input:not([type=checkbox]),.ag-cad input:not([type=checkbox]):not([type=radio]){font:inherit;color:var(--txt);background:var(--bg);border:1px solid var(--linha);border-radius:14px;padding:13px 16px;min-width:0}
.ag-etapa input:focus,.ag-cad input:focus{border-color:var(--ouro);outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--ouro) 25%,transparent)}
.ag-aceite{display:flex!important;gap:10px;align-items:flex-start;font-size:.82rem!important}
.ag-aceite input{margin-top:4px;accent-color:var(--salvia2);width:18px;height:18px;flex:0 0 18px}
.ag-nav{margin-top:18px}.ag-nav[hidden]{display:none}
.ag-ok{text-align:center;display:grid;gap:12px;justify-items:center;padding:10px 0}
.ag-ok p{color:var(--txt2);max-width:480px}
.ag-ok-acoes{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:8px}
.ag-check svg{width:78px;height:78px;fill:none;stroke:var(--salvia);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.ag-check circle{stroke-dasharray:152;stroke-dashoffset:152;animation:desenha .8s ease forwards}
.ag-check path{stroke:var(--ouro);stroke-dasharray:50;stroke-dashoffset:50;animation:desenha .5s .6s ease forwards}
.ag-cad{display:grid;gap:16px}
.ag-duas{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ag-cad fieldset{border:0}.ag-cad legend{font-size:.88rem;color:var(--txt2);margin-bottom:8px}
.ag-chips{display:flex;flex-wrap:wrap;gap:8px}
.aviso-previa{padding:0 30px 24px;text-align:center}
.aviso-previa a{text-decoration:underline;color:var(--ouro)}
.confete{position:fixed;inset:0;z-index:90;pointer-events:none}

/* Ampliar fotos */
.lb{position:fixed;inset:0;z-index:95;background:rgba(14,18,15,.92);display:grid;place-items:center;padding:20px}
.lb[hidden]{display:none}
.lb img{max-width:min(92vw,900px);max-height:80vh;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.lb img.troca{animation:surge .4s}
.lb button{position:absolute;color:#fff;font-size:2.2rem;line-height:1;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.1)}
.lb button:hover{background:rgba(255,255,255,.22)}
.lb-x{top:16px;right:16px}.lb-p{left:12px;top:50%}.lb-n{right:12px;top:50%}
.lb-leg{position:absolute;bottom:22px;left:20px;right:20px;text-align:center;color:#E8E2D6;font-size:.9rem}

@media (max-width:640px){
  .ag-painel{padding:22px 16px 18px}
  .ag-passos{gap:4px}.ag-passos li{font-size:.62rem;letter-spacing:.04em}
  .ag-duas{grid-template-columns:1fr}
  .ag-procs{grid-template-columns:1fr 1fr}.ag-proc{padding:14px 12px}.ag-proc b{font-size:1.02rem}
  .ag-horas{grid-template-columns:repeat(4,1fr)}
  .aviso-previa{padding:0 16px 20px}
  .lb-p,.lb-n{top:auto;bottom:70px}
}
@media (prefers-reduced-motion:reduce){.hero h1 .pal>span{transform:none;opacity:1;animation:none!important}.progresso{transition:none}}
