:root{
  --bg:#ffffff;--bg2:#fdf1f4;--blush:#f9dfe6;--card:#ffffff;--line:#f1dfe4;
  --txt:#151112;--mute:#6b5d60;--cocoa:#2a2224;
  --gold:#b8914f;--gold2:#dcc08c;--rose:#d4728f;--rose2:#b9506f;--wine:#7e2f3f;
  --wa:#25d366;--r:28px;
  --f-display:'Cormorant Garamond',Georgia,serif;--f-body:'Sora',system-ui,sans-serif;--f-script:'Pinyon Script','Snell Roundhand',cursive;--f-logo:'Syne','Sora',sans-serif;
  --ouro:linear-gradient(100deg,#9c7434 0%,#d9b46e 40%,#a8813f 65%,#c9a15e 100%);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{overflow-x:clip}
body{background:var(--bg);color:var(--txt);font-family:var(--f-body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(1140px,100% - 32px);margin-inline:auto}
h1,h2,h3{font-family:var(--f-display);font-weight:500;line-height:1.06;letter-spacing:-.005em}
h2{font-size:clamp(2.2rem,5vw,3.6rem)}
h3{font-size:1.7rem}
em{font-style:italic;color:var(--rose2)}
.ouro{background:var(--ouro);-webkit-background-clip:text;background-clip:text;color:transparent}
.script{font-family:var(--f-script);font-weight:400;letter-spacing:0}
.kicker{display:inline-flex;align-items:center;gap:10px;font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;color:var(--rose)}
.kicker::before,.kicker::after{content:"";width:22px;height:1px;background:currentColor;opacity:.6}
.mute{color:var(--mute)}

/* ---------- topo ---------- */
header.top{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.85);backdrop-filter:blur(14px);border-bottom:1px solid rgba(236,214,206,.7)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.logo img{width:46px;height:46px;filter:drop-shadow(0 6px 10px rgba(163,90,107,.18))}
.logo .nome{display:flex;flex-direction:column;line-height:1}
.logo small{font-family:var(--f-logo);font-size:.58rem;letter-spacing:.55em;text-transform:uppercase;color:var(--rose);margin-bottom:6px}
.logo b{font-family:var(--f-logo);font-weight:700;font-size:1.06rem;letter-spacing:.16em;text-transform:uppercase;color:var(--txt)}
.logo i{font-style:normal;color:var(--gold)}
nav.menu{display:flex;gap:30px;font-size:.86rem}
nav.menu a{text-decoration:none;color:var(--mute);position:relative}
nav.menu a::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1px;background:var(--rose);transition:right .3s}
nav.menu a:hover{color:var(--txt)}
nav.menu a:hover::after{right:0}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:15px 28px;font-weight:600;font-size:.95rem;text-decoration:none;transition:transform .25s,box-shadow .25s,background .25s;border:0;cursor:pointer}
.btn:hover{transform:translateY(-2px)}
.btn svg{width:20px;height:20px}
.btn-wa{background:var(--wa);color:#08210f;box-shadow:0 14px 30px -12px rgba(37,211,102,.6)}
.btn-ghost{background:rgba(255,255,255,.7);border:1px solid var(--line);color:var(--txt)}
.btn-ghost:hover{border-color:var(--rose)}
.btn-rose{background:linear-gradient(135deg,var(--rose),var(--rose2));color:#fff;box-shadow:0 14px 30px -14px rgba(163,90,107,.8)}
.btn-sm{padding:10px 20px;font-size:.84rem}

/* ---------- abertura ---------- */
.hero{position:relative;padding:64px 0 120px;overflow:hidden;overflow:clip;background:
  radial-gradient(900px 500px at 85% 10%,rgba(249,223,230,.95),transparent 60%),
  radial-gradient(600px 400px at 0% 90%,rgba(253,241,244,1),transparent 60%)}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;position:relative}
.marca{font-size:clamp(3.4rem,8.6vw,6.8rem);line-height:.95}
.marca small{display:block;font-family:var(--f-body);font-size:.17em;letter-spacing:.7em;text-transform:uppercase;color:var(--rose);margin:0 0 .6em .2em}
.marca .script{display:block;font-size:.78em;margin:.02em 0 0 .5em;line-height:1.15;padding-bottom:.08em}
.slogan{font-family:var(--f-display);font-style:italic;font-size:clamp(1.45rem,2.8vw,1.9rem);color:var(--cocoa);margin-top:18px}
.hero p.lead{font-size:1.05rem;color:var(--mute);max-width:36ch;margin:14px 0 32px}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap}
.selos{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.selos span{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.75);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:.8rem;color:var(--cocoa)}
.selos span::before{content:"✦";color:var(--gold);font-size:.8rem}

.retrato{position:relative;max-width:440px;margin-inline:auto;width:100%}
.retrato::before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:1px solid var(--gold2);border-radius:260px 260px 34px 34px;pointer-events:none}
.arco{margin:0;width:100%;position:relative;aspect-ratio:3/4;border-radius:240px 240px var(--r) var(--r);overflow:hidden;background:linear-gradient(170deg,#f6e2db,#d9a7a5);box-shadow:0 40px 70px -35px rgba(126,47,63,.45)}
.arco img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.flutua{position:absolute;z-index:3;display:flex;align-items:center;gap:12px;padding:10px 18px 10px 10px;border-radius:999px;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(253,232,238,.94)) padding-box,linear-gradient(120deg,#e9c58f,#f3b6c6,#c9a15e,#f3b6c6) border-box;
  border:1.5px solid transparent;backdrop-filter:blur(10px);box-shadow:0 20px 40px -20px rgba(185,80,111,.55),0 2px 0 rgba(255,255,255,.8) inset;animation:boia 6s ease-in-out infinite}
.flutua .bolinha{width:42px;height:42px;flex:none;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#e07a98,#b9506f);box-shadow:0 6px 14px -6px rgba(185,80,111,.8)}
.flutua .bolinha svg{width:22px;height:22px}
.f2 .bolinha{background:linear-gradient(135deg,#dcc08c,#a8813f);box-shadow:0 6px 14px -6px rgba(168,129,63,.8)}
.flutua .txt{display:flex;flex-direction:column;line-height:1.15}
.flutua b{font-family:var(--f-display);font-size:1.25rem;font-weight:600;color:var(--txt)}
.flutua small{font-size:.74rem;color:var(--mute);letter-spacing:.02em}
.f1{left:-56px;top:auto;bottom:34%}
.f2{right:-36px;bottom:12%;animation-delay:-3s}
.assinatura{position:absolute;left:50%;bottom:-30px;transform:translateX(-50%) rotate(-5deg);font-family:var(--f-script);font-size:3.4rem;white-space:nowrap;line-height:1.2;color:var(--rose2);-webkit-text-fill-color:var(--rose2);text-shadow:0 2px 0 #fff,0 0 18px #fff}
@keyframes boia{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

.brilho{position:absolute;color:var(--gold2);pointer-events:none;animation:pisca 3.6s ease-in-out infinite}
.brilho svg{width:100%;height:100%}
@keyframes pisca{0%,100%{opacity:.25;transform:scale(.8) rotate(0)}50%{opacity:1;transform:scale(1.1) rotate(20deg)}}
.ramo{position:absolute;pointer-events:none;opacity:.6;z-index:0}
section{overflow:clip}
section>.wrap{position:relative;z-index:1}
.galeria .frase,.foto-card,.serv,.passo,.faq details,.post{position:relative;z-index:1}

.onda{display:block;width:100%;height:70px;margin-top:-69px;position:relative;z-index:1}

/* ---------- faixa corrida ---------- */
.faixa-corrida{background:linear-gradient(90deg,var(--rose2),var(--rose),var(--rose2));color:#fff;overflow:hidden;padding:16px 0}
.faixa-corrida .trilho{display:flex;gap:42px;width:max-content;animation:corre 32s linear infinite;font-family:var(--f-display);font-style:italic;font-size:1.35rem;white-space:nowrap}
.faixa-corrida span{display:inline-flex;align-items:center;gap:42px}
.faixa-corrida span::after{content:"✦";font-style:normal;font-size:.9rem;color:var(--gold2)}
.faixa-corrida span::after{color:#fff3d6}
@keyframes corre{to{transform:translateX(-50%)}}

/* ---------- seções ---------- */
section{padding:104px 0;position:relative}
.sec-head{max-width:660px;margin-bottom:52px}
.sec-head.centro{text-align:center;margin-inline:auto}
.sec-head h2{margin:14px 0 14px}
.servicos{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.serv{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:0 0 32px;overflow:hidden;box-shadow:0 26px 50px -36px rgba(90,59,54,.45);transition:transform .35s,box-shadow .35s}
.serv:hover{transform:translateY(-6px);box-shadow:0 34px 60px -34px rgba(126,47,63,.45)}
.serv .capa{height:190px;overflow:hidden;position:relative}
.serv .capa img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.serv:hover .capa img{transform:scale(1.06)}
.serv .capa::after{content:"";position:absolute;inset:auto 0 0 0;height:70px;background:linear-gradient(transparent,var(--card))}
.serv .corpo{padding:6px 32px 0}
.serv .etiqueta{font-family:var(--f-script);font-size:2rem;color:var(--rose);line-height:1}
.serv ul{list-style:none;margin:18px 0 26px;display:grid;gap:12px}
.serv li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--line);padding-bottom:12px;font-size:.95rem}
.serv li span{color:var(--mute);font-size:.82rem;text-align:right}

.faixa{background:linear-gradient(180deg,var(--bg2),var(--bg))}
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:p}
.passo{position:relative;padding:34px 28px 30px;border-radius:var(--r);background:rgba(255,255,255,.75);border:1px solid var(--line);text-align:center}
.passo::before{counter-increment:p;content:counter(p);display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:50%;font-family:var(--f-display);font-size:1.9rem;color:#fff;background:linear-gradient(135deg,var(--gold2),var(--gold))}
.passo h3{font-size:1.5rem;margin-bottom:8px}

.galeria{display:grid;grid-template-columns:1.25fr 1fr;gap:22px;align-items:stretch}
.foto-card{position:relative;margin:0;border-radius:var(--r);overflow:hidden;box-shadow:0 30px 60px -36px rgba(90,59,54,.5)}
.foto-card img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.foto-card figcaption{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,.92);border-radius:999px;padding:8px 16px;font-size:.82rem;color:var(--cocoa)}
.galeria .lado{display:grid;gap:22px}
.galeria .lado .foto-card img{aspect-ratio:auto}
.frase{display:flex;flex-direction:column;justify-content:center;border-radius:var(--r);padding:30px;background:linear-gradient(135deg,var(--rose),var(--rose2));color:#fff}
.frase p{font-family:var(--f-display);font-style:italic;font-size:1.6rem;line-height:1.25}
.frase small{margin-top:12px;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;opacity:.85}

.sobre{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.medalhao{position:relative;max-width:420px;margin-inline:auto}
.medalhao img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:50% 22%;border-radius:50%;border:8px solid #fff;box-shadow:0 30px 60px -30px rgba(126,47,63,.45)}
.medalhao::before{content:"";position:absolute;inset:-18px;border-radius:50%;border:1px dashed var(--gold2);animation:gira 60s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}
.sobre .assina{font-family:var(--f-script);font-size:3.2rem;color:var(--rose2);margin-top:18px;line-height:1}
.valores{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.valores span{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:8px 16px;font-size:.84rem;color:var(--cocoa)}

.faq{max-width:780px;margin-inline:auto;display:grid;gap:12px}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px 24px;transition:box-shadow .3s}
.faq details[open]{box-shadow:0 20px 40px -30px rgba(90,59,54,.45)}
.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--bg2);color:var(--rose2);font-size:1.2rem;transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{color:var(--mute);margin-top:10px}

.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{display:block;text-decoration:none;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:30px;transition:transform .3s,box-shadow .3s}
.post:hover{transform:translateY(-4px);box-shadow:0 26px 50px -34px rgba(126,47,63,.5)}
.post h3{font-size:1.45rem;margin:12px 0 10px}
.post p{color:var(--mute);font-size:.92rem}
.post .ler{display:inline-block;margin-top:16px;font-size:.84rem;color:var(--rose2);font-weight:600}

.final{text-align:center;padding:120px 0;overflow:hidden;background:
  radial-gradient(700px 360px at 50% 100%,rgba(194,119,134,.28),transparent 70%),linear-gradient(180deg,var(--bg),var(--blush))}
.final h2{max-width:15ch;margin:16px auto 18px}
.final p{color:var(--mute);margin-bottom:32px}

footer{background:#151112;color:#efe3e6;padding:40px 0;font-size:.84rem}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
footer a{text-decoration:none}
footer .script{font-size:1.9rem;color:var(--gold2)}

.wa-float{position:fixed;right:18px;bottom:18px;z-index:30;width:60px;height:60px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 12px 30px -8px rgba(37,211,102,.6);animation:pulso 2.6s infinite}
.wa-float svg{width:32px;height:32px}
@keyframes pulso{0%,100%{box-shadow:0 0 0 0 rgba(37,211,102,.45)}50%{box-shadow:0 0 0 14px rgba(37,211,102,0)}}

/* abertura: entra sozinha ao carregar */
.entra{animation:entra 1s ease both}
.retrato.entra{animation-delay:.15s}
@keyframes entra{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
/* aparece ao rolar */
.revela{opacity:0;transform:translateY(26px);transition:opacity .9s ease,transform .9s ease}
.revela.visivel{opacity:1;transform:none}

/* ---------- artigos ---------- */
.artigo{max-width:720px;padding:64px 0 96px}
.artigo h1{font-size:clamp(2.3rem,6vw,3.8rem);margin:14px 0 20px}
.artigo h2{font-size:2rem;margin:42px 0 12px;color:var(--rose2)}
.artigo p,.artigo li{color:#4d3839;margin-bottom:14px}
.artigo ul{padding-left:20px}
.artigo li::marker{color:var(--rose)}
.artigo .cta-box{margin-top:48px;background:linear-gradient(135deg,var(--card),var(--bg2));border:1px solid var(--line);border-radius:var(--r);padding:32px}
.voltar{font-size:.86rem;color:var(--mute);text-decoration:none}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.revela{opacity:1;transform:none}}
@media (max-width:900px){
  nav.menu{display:none}
  .hero{padding:36px 0 110px}
  .hero .wrap,.sobre,.galeria{grid-template-columns:1fr}
  .retrato{max-width:330px;margin-top:20px}
  .f1{left:-12px;bottom:36%}
  .f2{right:-10px;bottom:10%}
  .servicos,.passos,.posts{grid-template-columns:1fr}
  section{padding:76px 0}
  .serv .corpo{padding:6px 24px 0}
  .medalhao{max-width:280px}
  .assinatura{font-size:2.5rem}
  .ramo{opacity:.35;transform-origin:center;scale:.7}
}

/* ---------- efeitos ---------- */
.progresso{position:fixed;top:0;left:0;right:0;height:3px;z-index:50;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,#e07a98,#c9a15e,#e07a98)}
.marca .ouro{background-size:220% 100%;animation:reluz 5s ease-in-out infinite}
@keyframes reluz{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.aura{position:absolute;inset:-26px;border-radius:280px 280px 46px 46px;background:conic-gradient(from var(--ang,0deg),#f3b6c6,#e9c58f,#d4728f,#f9dfe6,#f3b6c6);filter:blur(28px);opacity:.55;z-index:-1;animation:gira-aura 9s linear infinite}
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes gira-aura{to{--ang:360deg}}
.retrato::before{background:none;border:1.5px solid transparent;background:linear-gradient(120deg,#e9c58f,#f3b6c6,#c9a15e) border-box;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.petalas{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.petalas i{position:absolute;top:-30px;width:14px;height:10px;border-radius:70% 0 70% 0;background:linear-gradient(135deg,#f6b9c9,#e07a98);opacity:.7;animation:cai 14s linear infinite}
.petalas i:nth-child(3n){background:linear-gradient(135deg,#f1dcb0,#c9a15e);width:10px;height:8px}
.petalas i:nth-child(1){left:6%;animation-delay:-2s}.petalas i:nth-child(2){left:18%;animation-delay:-9s;animation-duration:17s}
.petalas i:nth-child(3){left:30%;animation-delay:-5s}.petalas i:nth-child(4){left:42%;animation-delay:-12s;animation-duration:19s}
.petalas i:nth-child(5){left:55%;animation-delay:-1s;animation-duration:16s}.petalas i:nth-child(6){left:63%;animation-delay:-7s}
.petalas i:nth-child(7){left:72%;animation-delay:-14s;animation-duration:18s}.petalas i:nth-child(8){left:81%;animation-delay:-4s}
.petalas i:nth-child(9){left:90%;animation-delay:-10s;animation-duration:15s}.petalas i:nth-child(10){left:96%;animation-delay:-6s;animation-duration:20s}
@keyframes cai{0%{transform:translate(0,0) rotate(0)}25%{transform:translate(30px,25vh) rotate(90deg)}50%{transform:translate(-20px,50vh) rotate(200deg)}75%{transform:translate(25px,75vh) rotate(290deg)}100%{transform:translate(-10px,105vh) rotate(380deg);opacity:0}}
.btn{position:relative;overflow:hidden}
.btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);transition:left .7s ease}
.btn:hover::after{left:130%}
.btn-wa:not(.btn-sm){animation:chama 3.2s ease-in-out infinite}
@keyframes chama{0%,100%{box-shadow:0 14px 30px -12px rgba(37,211,102,.6)}50%{box-shadow:0 14px 34px -8px rgba(37,211,102,.85)}}
.serv,.post,.passo,.foto-card{--mx:50%;--my:50%}
.serv::before,.post::before,.passo::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .4s;z-index:2;background:radial-gradient(260px circle at var(--mx) var(--my),rgba(244,182,198,.28),transparent 65%)}
.serv:hover::before,.post:hover::before,.passo:hover::after{opacity:1}
.passo{transition:transform .35s,box-shadow .35s}
.passo:hover{transform:translateY(-6px);box-shadow:0 26px 50px -34px rgba(185,80,111,.6)}
.foto-card img{transition:transform 1s ease}
.foto-card:hover img{transform:scale(1.05)}
.revela.foto-card,.revela .capa{clip-path:inset(0 0 0 0)}
.revela:not(.visivel).foto-card{clip-path:inset(12% 12% 12% 12% round 28px)}
.foto-card{transition:clip-path 1.1s cubic-bezier(.2,.7,.2,1),opacity .9s,transform .9s}
.sec-head h2 em{background:linear-gradient(90deg,#b9506f,#e07a98,#c9a15e,#b9506f);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:reluz 7s ease-in-out infinite}
.passo::before{transition:transform .5s}
.passo:hover::before{transform:rotate(360deg) scale(1.08)}
@media (prefers-reduced-motion:reduce){.petalas,.aura{display:none}}
@media (max-width:900px){.petalas i:nth-child(n+7){display:none}.aura{inset:-14px}.flutua{padding:8px 14px 8px 8px}.flutua .bolinha{width:36px;height:36px}.flutua b{font-size:1.1rem}}

.rosa-forte{color:#b9506f}

/* ---------- chamadas da abertura ---------- */
.zap-wrap{position:relative;display:inline-flex}
.onda-zap{position:absolute;inset:0;border-radius:999px;border:2px solid rgba(37,211,102,.55);pointer-events:none;animation:onda-zap 2.6s ease-out infinite}
.onda-zap+.onda-zap{animation-delay:1.3s}
@keyframes onda-zap{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.18,1.5);opacity:0}}
.cta-wa{position:relative;z-index:1;background:linear-gradient(110deg,#1fbf5b,#25d366 40%,#4be38a 55%,#25d366 70%,#1fbf5b);background-size:250% 100%;animation:verde 4s ease-in-out infinite,chama 3.2s ease-in-out infinite}
@keyframes verde{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.cta-wa::after{animation:varre 4s ease-in-out infinite}
.cta-wa:hover::after{animation:none}
@keyframes varre{0%,55%{left:-60%}80%,100%{left:130%}}
.balanca{transform-origin:50% 60%;animation:balanca 3s ease-in-out infinite}
@keyframes balanca{0%,70%,100%{transform:rotate(0)}74%{transform:rotate(-16deg)}78%{transform:rotate(14deg)}82%{transform:rotate(-10deg)}86%{transform:rotate(6deg)}90%{transform:rotate(0)}}
.cta-wa .seta{display:inline-block;max-width:0;opacity:0;margin-left:-6px;transition:max-width .3s,opacity .3s,margin .3s,transform .3s}
.cta-wa:hover .seta{max-width:20px;opacity:1;margin-left:2px;transform:translateX(3px)}
.cta-wa:hover{transform:translateY(-3px) scale(1.03)}

.cta-ver{color:var(--txt);border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,conic-gradient(from var(--ang,0deg),#e07a98,#e9c58f,#b9506f,#f3b6c6,#e07a98) border-box;animation:gira-aura 4s linear infinite;box-shadow:0 10px 26px -16px rgba(185,80,111,.6)}
.cta-ver:hover{background:linear-gradient(135deg,#fdf1f4,#f9dfe6) padding-box,conic-gradient(from var(--ang,0deg),#e07a98,#e9c58f,#b9506f,#f3b6c6,#e07a98) border-box;color:var(--rose2)}
.cta-ver .desce{display:inline-block;color:var(--rose);animation:desce 1.6s ease-in-out infinite}
@keyframes desce{0%,100%{transform:translateY(-2px)}50%{transform:translateY(4px)}}

.selos span{position:relative;overflow:hidden;opacity:0;transform:translateY(12px) scale(.9);animation:surge .7s cubic-bezier(.2,.9,.3,1.3) forwards;animation-delay:calc(.7s + var(--i)*.18s);transition:transform .3s,box-shadow .3s,border-color .3s;cursor:default}
@keyframes surge{to{opacity:1;transform:none}}
.selos span::before{display:inline-block;animation:pisca-estrela 2.4s ease-in-out infinite;animation-delay:calc(var(--i)*.8s)}
@keyframes pisca-estrela{0%,100%{transform:scale(1) rotate(0);color:var(--gold)}50%{transform:scale(1.45) rotate(90deg);color:var(--rose)}}
.selos span::after{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(243,182,198,.55),transparent);transform:skewX(-20deg);animation:varre-selo 6s ease-in-out infinite;animation-delay:calc(1.6s + var(--i)*.5s)}
@keyframes varre-selo{0%,20%{left:-70%}45%,100%{left:140%}}
.selos span:hover{transform:translateY(-3px);border-color:var(--rose);box-shadow:0 12px 24px -14px rgba(185,80,111,.7)}
@media (prefers-reduced-motion:reduce){.selos span{opacity:1;transform:none}.onda-zap{display:none}}

/* ---------- menu Dock (estilo Mac) ---------- */
.dock{position:relative;z-index:40}
.dock-trilho{display:flex;align-items:flex-start;gap:8px;height:58px;padding:8px 12px;border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(253,236,241,.7));backdrop-filter:blur(16px) saturate(1.4);
  border:1px solid rgba(243,182,198,.7);box-shadow:0 14px 34px -20px rgba(185,80,111,.55),inset 0 1px 0 rgba(255,255,255,.9)}
.dock-item{--k:0;position:relative;display:flex;flex-direction:column;align-items:center;text-decoration:none;color:#fff}
.dock-tile{display:grid;place-items:center;width:calc(40px + 26px*var(--k));height:calc(40px + 26px*var(--k));border-radius:calc(12px + 6px*var(--k));
  transition:width .18s cubic-bezier(.3,.8,.3,1),height .18s cubic-bezier(.3,.8,.3,1),border-radius .18s;box-shadow:0 8px 16px -8px rgba(60,20,30,.45),inset 0 1px 0 rgba(255,255,255,.45)}
.dock-tile{position:relative;overflow:hidden;border-radius:calc(11px + 7px*var(--k))!important;
  box-shadow:0 10px 18px -10px rgba(60,20,30,.55),0 2px 4px -2px rgba(60,20,30,.3),inset 0 -3px 6px rgba(0,0,0,.12),inset 0 1px 1px rgba(255,255,255,.6)!important}
.dock-tile::before{content:"";position:absolute;inset:0 0 48% 0;background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,0));border-radius:inherit;pointer-events:none}
.dock-tile::after{content:"";position:absolute;inset:0;border-radius:inherit;border:1px solid rgba(255,255,255,.28);pointer-events:none}
.dock-tile svg{position:relative;width:calc(26px + 16px*var(--k));height:calc(26px + 16px*var(--k));transition:width .18s,height .18s;filter:drop-shadow(0 2px 2px rgba(60,20,30,.25))}
.t-rosa{background:radial-gradient(120% 90% at 30% 10%,#ffb3c7,#e07a98 45%,#a8435f)}
.t-rosa2{background:radial-gradient(120% 90% at 30% 10%,#ffd6e1,#f19ab3 50%,#d4728f)}
.t-ouro{background:radial-gradient(120% 90% at 30% 10%,#f8e1b6,#d4ab68 45%,#8f672c)}
.t-ouro2{background:radial-gradient(120% 90% at 30% 10%,#f3d7a6,#c79a55 50%,#9c7434)}
.t-preto{background:radial-gradient(120% 90% at 30% 10%,#4a3a3f,#211a1c 50%,#0d0a0b)}
.t-verde{background:radial-gradient(120% 90% at 30% 10%,#7cf0a8,#2fd36d 45%,#169c48)}
.t-verde svg{color:#fff}
.dock-nome{position:absolute;top:calc(100% + 10px + 26px*var(--k));left:50%;transform:translate(-50%,4px);white-space:nowrap;
  font-size:.74rem;font-weight:600;letter-spacing:.02em;color:#fff;background:rgba(21,17,18,.88);padding:5px 10px;border-radius:8px;
  opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
.dock-nome::before{content:"";position:absolute;top:-4px;left:50%;width:8px;height:8px;background:inherit;transform:translateX(-50%) rotate(45deg);border-radius:2px}
.dock-item:hover .dock-nome,.dock-item:focus-visible .dock-nome{opacity:1;transform:translate(-50%,0)}
.dock-ponto{position:absolute;bottom:-7px;width:5px;height:5px;border-radius:50%;background:var(--rose2);opacity:0;transition:opacity .3s}
.dock-item.ativo .dock-ponto{opacity:1}
.dock-sep{width:1px;align-self:stretch;margin:2px 2px;background:linear-gradient(transparent,rgba(185,80,111,.4),transparent)}
.dock-item.pula .dock-tile{animation:pula-dock .7s cubic-bezier(.3,.7,.4,1)}
@keyframes pula-dock{0%,100%{transform:translateY(0)}30%{transform:translateY(10px)}55%{transform:translateY(-2px)}75%{transform:translateY(4px)}}
.dock-zap,.dock-zap+*{display:none}
header.top .wrap{overflow:visible}
@media (max-width:900px){
  .dock{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);z-index:60}
  .dock-trilho{align-items:flex-end;gap:7px;height:62px;padding:9px 10px;border-radius:24px}
  .dock-zap{display:flex}
  .dock-tile{width:calc(44px + 14px*var(--k));height:calc(44px + 14px*var(--k))}
  .dock-nome{top:auto;bottom:calc(100% + 8px + 14px*var(--k))}
  .dock-nome::before{top:auto;bottom:-4px}
  .dock-ponto{bottom:-6px}
  .wa-float{display:none}
  body{padding-bottom:90px}
  header.top{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(255,255,255,.97)}
}
@media (max-width:360px){.dock-trilho{gap:5px;padding:8px}.dock-tile{width:38px;height:38px}}

/* Dock em texto */
.dock-trilho{align-items:center;gap:6px;height:56px;padding:8px 10px}
.dock-txt{width:auto!important;height:auto!important;padding:calc(9px + 4px*var(--k)) calc(15px + 8px*var(--k));
  font-family:var(--f-logo);font-weight:700;font-size:calc(.84rem + .24rem*var(--k));letter-spacing:.04em;color:#fff;white-space:nowrap;line-height:1;
  border-radius:999px!important;transform:translateY(calc(4px*var(--k)));
  transition:padding .18s cubic-bezier(.3,.8,.3,1),font-size .18s cubic-bezier(.3,.8,.3,1),transform .18s;text-shadow:0 1px 2px rgba(60,20,30,.3)}
.dock-txt.t-preto{color:#f6c9d6}
.dock-txt.t-rosa2{color:#7e2f3f;text-shadow:none}
.dock-ponto{bottom:-9px}
.dock-item.ativo .dock-txt{outline:2px solid rgba(255,255,255,.9);outline-offset:-4px}
@media (max-width:900px){
  .dock-trilho{gap:clamp(2px,1vw,4px);height:auto;padding:7px 5px;max-width:calc(100vw - 16px);overflow-x:auto;scrollbar-width:none}
  .dock-trilho::-webkit-scrollbar{display:none}
  .dock-sep{display:none}
  .dock-txt{padding:10px clamp(5px,1.8vw,9px);font-size:clamp(.6rem,2.85vw,.72rem);letter-spacing:0;transform:none}
  .dock-item[href="blog/"]{display:none}
  .dock{bottom:10px}
}

/* pétalas: mais, variadas e girando */
.petalas i{left:auto;top:-40px;width:var(--t,14px);height:calc(var(--t,14px)*.72);opacity:.8;
  animation:cai2 var(--d,15s) linear infinite;animation-delay:var(--a,0s);box-shadow:inset -2px -2px 4px rgba(185,80,111,.25)}
.petalas i.o{background:linear-gradient(135deg,#f6e2b8,#c9a15e);opacity:.75}
.petalas i:nth-child(5n){background:linear-gradient(135deg,#ffffff,#f7c3d1);opacity:.9}
@keyframes cai2{
  0%{transform:translate3d(0,0,0) rotateX(0) rotateZ(0)}
  20%{transform:translate3d(38px,22vh,0) rotateX(160deg) rotateZ(60deg)}
  40%{transform:translate3d(-24px,44vh,0) rotateX(320deg) rotateZ(140deg)}
  60%{transform:translate3d(32px,66vh,0) rotateX(480deg) rotateZ(210deg)}
  80%{transform:translate3d(-18px,88vh,0) rotateX(640deg) rotateZ(290deg);opacity:.8}
  100%{transform:translate3d(10px,110vh,0) rotateX(800deg) rotateZ(360deg);opacity:0}}
.petalas-final{z-index:0}
@media (max-width:900px){.petalas i:nth-child(n+7){display:block}.petalas i:nth-child(n+15){display:none}.petalas-final i:nth-child(n+8){display:none}}
.hero>.petalas{z-index:4}
.final>.petalas{z-index:2}
.petalas i{opacity:.88;filter:drop-shadow(0 2px 3px rgba(185,80,111,.25))}
/* Dock padronizada: mesma cor e mesma largura */
.dock-txt{min-width:calc(112px + 18px*var(--k));justify-content:center;text-align:center;display:inline-flex!important}
@media (max-width:900px){.dock-txt{min-width:0;width:100%!important;padding-left:2px!important;padding-right:2px!important}.dock-item{flex:1 1 0}.dock-trilho{width:calc(100vw - 16px)}}
