/* ICONES (SVG desenhados, tracos da marca) */
.whats-ic svg,.ep-icon svg{width:26px;height:26px;stroke:#1c1c1c;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;display:block}
.ep-icon svg{width:42px;height:42px}

/* ENTRADA DO TOPO */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.top .read>*,.top .wrap>*,.hero-in>div:first-child>*{animation:fadeUp .85s cubic-bezier(.2,.7,.2,1) both}
.top .read>*:nth-child(1),.top .wrap>*:nth-child(1),.hero-in>div:first-child>*:nth-child(1){animation-delay:.05s}
.top .read>*:nth-child(2),.top .wrap>*:nth-child(2),.hero-in>div:first-child>*:nth-child(2){animation-delay:.15s}
.top .read>*:nth-child(3),.top .wrap>*:nth-child(3),.hero-in>div:first-child>*:nth-child(3){animation-delay:.27s}
.top .read>*:nth-child(4),.top .wrap>*:nth-child(4),.hero-in>div:first-child>*:nth-child(4){animation-delay:.39s}
.top .read>*:nth-child(5),.top .wrap>*:nth-child(5),.hero-in>div:first-child>*:nth-child(5){animation-delay:.5s}
.hero-visual{animation:fadeUp .95s .3s cubic-bezier(.2,.7,.2,1) both}

/* FOTO COM ZOOM LENTO E MENU QUE DESCE SUAVE */
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.07)}}
.hero-visual img{animation:kb 18s ease-in-out infinite alternate;transform-origin:center 25%}
@keyframes menuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
header.nav .nav-links.open{animation:menuIn .22s ease both}
.card:active,.ch-card:active{border-top-color:#ffdd00}

/* ENTRADA AO ROLAR A PAGINA */
html.js .rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
html.js .rv.in{opacity:1;transform:none}

/* MENU COM SOMBRA AO ROLAR */
header.nav{transition:box-shadow .25s ease}
header.nav.scrolled{box-shadow:0 8px 24px rgba(0,0,0,.08)}

/* BOTAO FLUTUANTE DO WHATSAPP */
.wa-float{position:fixed;right:18px;bottom:18px;z-index:80;display:flex;align-items:center;gap:12px;pointer-events:none}
.wa-float > *{pointer-events:auto}
.wa-bubble{position:relative;background:#fff;color:#1c1c1c;border-radius:16px;padding:14px 38px 14px 18px;box-shadow:0 12px 34px rgba(0,0,0,.2);font-family:Calibri,Candara,"Segoe UI",Arial,sans-serif;font-size:.98rem;line-height:1.35;max-width:240px;animation:waIn .6s 3s cubic-bezier(.2,.7,.2,1) both}
.wa-bubble span{display:block;color:#33372c}
.wa-bubble strong{display:block;font-family:Poppins,"Segoe UI",Arial,sans-serif;font-size:.95rem}
.wa-bubble.off{display:none}
.wa-close{position:absolute;top:6px;right:8px;background:none;border:none;font-size:1.4rem;line-height:1;color:#8f8a70;cursor:pointer;padding:2px 6px}
.wa-close:hover{color:#1c1c1c}
.wa-btn{position:relative;width:64px;height:64px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 10px 26px rgba(37,211,102,.45);transition:transform .2s ease;animation:waPulse 3.4s ease-out 4s infinite}
.wa-btn svg{width:34px;height:34px}
.wa-btn::after{content:"Vamos agendar agora mesmo?";position:absolute;right:calc(100% + 14px);top:50%;transform:translate(8px,-50%);background:#1c1c1c;color:#fff;font-family:Poppins,"Segoe UI",Arial,sans-serif;font-weight:500;font-size:.82rem;line-height:1;white-space:nowrap;padding:11px 16px;border-radius:100px;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.wa-btn:hover::after,.wa-btn:focus-visible::after{opacity:1;transform:translate(0,-50%)}
.wa-bubble:not(.off) ~ .wa-btn::after{display:none}
.wa-btn:hover{transform:scale(1.08)}
.wa-btn:focus-visible,.wa-close:focus-visible{outline:3px solid #1c1c1c;outline-offset:3px}
@keyframes waIn{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
@keyframes waPulse{0%{box-shadow:0 10px 26px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,.5)}70%,100%{box-shadow:0 10px 26px rgba(37,211,102,.45),0 0 0 18px rgba(37,211,102,0)}}
@media(max-width:560px){.wa-bubble{max-width:200px;font-size:.9rem;padding:12px 34px 12px 14px}}

/* QUEM PREFERE MENOS MOVIMENTO */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition-duration:.01ms !important}
  html.js .rv{opacity:1;transform:none}
}
@media print{
  html.js .rv{opacity:1 !important;transform:none !important}
  .wa-float{display:none}
}
