:root{--g:#4b5439;--g2:#2f3623;--gold:#c9a45c;--gold2:#e8cb8a;--cream:#faf5ec;--sand:#f0e6d3;--ink:#2c3122;--mut:#6d7160;
--fd:'Cormorant Garamond',Georgia,serif;--fb:'Jost',system-ui,sans-serif;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{scrollbar-width:thin;scrollbar-color:var(--gold) var(--cream)}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}
::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--cream)}
::-webkit-scrollbar-thumb{background:linear-gradient(var(--g),var(--gold));border-radius:12px;border:3px solid var(--cream)}
::selection{background:var(--gold);color:#fff}
body{font:400 17px/1.75 var(--fb);color:var(--ink);background:var(--cream);overflow-x:hidden}
img{max-width:100%;display:block}a{color:inherit}
h1,h2,h3{font-family:var(--fd);font-weight:500;line-height:1.02;letter-spacing:-.02em;color:var(--g2)}
h1{font-size:clamp(3.1rem,7.2vw,6.8rem)}h2{font-size:clamp(2.3rem,4.8vw,4.4rem)}h3{font-size:1.8rem;line-height:1.1}
em{font-style:italic;background:linear-gradient(100deg,#a9812f,var(--gold2) 45%,#b88d3c);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}
.wrap{width:min(1240px,90%);margin:auto;position:relative}
section{padding:clamp(80px,11vw,160px) 0;position:relative}
.eyebrow{font:500 .72rem var(--fb);letter-spacing:.34em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:22px}
.lead{font-size:1.15rem;color:var(--mut);max-width:560px}
.btn{display:inline-flex;align-items:center;gap:20px;padding:8px 8px 8px 32px;border-radius:99px;background:var(--g);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:500;border:1px solid var(--g);transition:transform .5s var(--ease),box-shadow .5s}
.btn i{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold));display:grid;place-items:center;transition:transform .6s var(--ease)}
.btn svg{width:22px;height:22px;stroke:var(--g2);fill:none;stroke-width:1.6}
.btn:hover{transform:translateY(-4px);box-shadow:0 18px 40px -14px rgba(47,54,35,.55)}.btn:hover i{transform:rotate(-12deg) scale(1.08)}
.btn.o{background:transparent;color:var(--g)}.btn.o i{background:transparent;border:1px solid var(--g)}
.btn.l{background:var(--cream);color:var(--g2);border-color:var(--cream)}
.row{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
/* nav */
.nav{position:fixed;inset:0 0 auto;z-index:50;padding:18px 0;transition:background .5s,padding .5s,box-shadow .5s}
.nav:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(250,245,236,.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(75,84,57,.1);opacity:0;transition:opacity .5s}.nav.s{padding:10px 0}.nav.s:before{opacity:1}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(1240px,90%)}
.nav .logo img{height:clamp(46px,5vw,66px);width:auto}
.nav ul{display:flex;gap:clamp(18px,2.6vw,40px);list-style:none}
.nav ul a{text-decoration:none;font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;font-weight:500;position:relative;padding:6px 0}
.nav ul a:after{content:"";position:absolute;left:0;bottom:0;height:1px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.nav ul a:hover:after,.nav ul a.on:after{transform:scaleX(1);transform-origin:left}
.burger{display:none;width:48px;height:48px;border-radius:50%;border:1px solid var(--g);background:none;cursor:pointer;position:relative;z-index:60}
.burger:before,.burger:after{content:"";position:absolute;left:14px;right:14px;height:1.5px;background:var(--g);transition:.4s var(--ease)}
.burger:before{top:19px}.burger:after{top:28px}.m .burger:before{top:23px;transform:rotate(45deg)}.m .burger:after{top:23px;transform:rotate(-45deg)}
@media(max-width:1020px){.burger{display:block}.nav .btn.hd{display:none}
.nav ul{position:fixed;inset:0;background:var(--g2);flex-direction:column;justify-content:center;align-items:center;gap:26px;clip-path:circle(0 at 92% 6%);transition:clip-path .8s var(--ease);z-index:55}
.m .nav ul{clip-path:circle(150% at 92% 6%)}.nav ul a{color:var(--cream);font:italic 500 2.4rem var(--fd);letter-spacing:0;text-transform:none}.m .burger{border-color:var(--cream)}.m .burger:before,.m .burger:after{background:var(--cream)}}
/* hero */
.hero{min-height:100svh;display:flex;align-items:center;padding:130px 0 90px;overflow:hidden;background:var(--sand)}
.hero-bg{position:absolute;inset:-4% 0;z-index:0}.hero-bg picture{display:block;width:100%;height:100%}.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:72% center;will-change:transform}
.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(250,245,236,.96) 0,rgba(250,245,236,.8) 32%,rgba(250,245,236,0) 62%)}
.hero .wrap{z-index:2;width:min(1240px,90%)}.hero-c{max-width:700px}
.hero h1{margin:6px 0 28px}.hero h1 em{display:inline-block}.hero p.lead{margin-bottom:38px;color:var(--ink);max-width:520px}
.proof{display:flex;gap:26px;flex-wrap:wrap;margin-top:44px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--g)}
.proof span:before{content:"";display:inline-block;width:7px;height:7px;background:var(--gold);transform:rotate(45deg);margin-right:10px}
.swoosh{position:absolute;pointer-events:none;opacity:.9;will-change:transform}
/* marquee */
.mq{padding:34px 0;background:var(--g);overflow:hidden;white-space:nowrap}
.mq div{display:inline-flex;gap:46px;animation:mq 38s linear infinite;font:italic 500 clamp(1.6rem,3vw,2.6rem) var(--fd);color:var(--cream)}
.mq span:after{content:"◆";color:var(--gold);font-size:.55em;margin-left:46px;vertical-align:middle}
@keyframes mq{to{transform:translateX(-50%)}}
/* placeholders de foto */
.ph{position:relative;border-radius:200px 200px 28px 28px;overflow:hidden;aspect-ratio:4/5;background:var(--img,linear-gradient(160deg,var(--sand),#e6d6b8)) center/cover;border:1.5px dashed var(--gold);display:grid;place-items:center;text-align:center;padding:30px}
.ph:after{content:attr(data-label);font:italic 1.3rem/1.3 var(--fd);color:var(--g);max-width:240px}
.ph[style*="--img"]{border:0}.ph[style*="--img"]:after{display:none}
.ph.sq{border-radius:28px;aspect-ratio:4/3}.ph.w{border-radius:28px;aspect-ratio:16/10}
/* grids */
.split{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(40px,7vw,110px);align-items:center}
.split.r{grid-template-columns:1.05fr 1fr}.split h2{margin-bottom:26px}.split p+p{margin-top:16px}
@media(max-width:860px){.split,.split.r{grid-template-columns:1fr}}
.stats{display:flex;gap:40px;margin-top:36px;flex-wrap:wrap}.stats b{display:block;font:italic 500 2.6rem var(--fd);color:var(--g)}.stats small{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.head{max-width:760px;margin-bottom:64px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:960px){.cards{grid-template-columns:1fr 1fr}}@media(max-width:620px){.cards{grid-template-columns:1fr}}
.card{position:relative;overflow:hidden;border-radius:28px;padding:38px 32px 34px;background:#fff;border:1px solid rgba(75,84,57,.12);text-decoration:none;min-height:300px;display:flex;flex-direction:column;transition:color .6s,transform .6s var(--ease)}
.card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--g),var(--g2));transform:translateY(101%);transition:transform .8s var(--ease);z-index:0;border-radius:inherit}
.card>*{position:relative;z-index:1}.card:hover:before{transform:none}.card:hover{color:var(--cream);transform:translateY(-6px)}.card:hover h3,.card:hover small{color:var(--cream)}
.card small{font:500 .72rem var(--fb);letter-spacing:.3em;color:var(--gold)}.card h3{margin:14px 0 12px}.card p{color:inherit;opacity:.8;font-size:.98rem}
.card .more{margin-top:auto;padding-top:22px;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
/* jornada */
.jr{background:var(--sand)}.jr-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;align-items:start}
.jr-tooth{position:sticky;top:16vh;max-width:380px;width:100%;margin:auto}.jr-tooth svg{width:100%;filter:drop-shadow(0 30px 40px rgba(201,164,92,.25))}
.step{padding:40px 0 40px 38px;border-left:1px solid rgba(75,84,57,.25);position:relative;opacity:.35;transition:opacity .6s}
.step:before{content:"";position:absolute;left:-7px;top:52px;width:13px;height:13px;transform:rotate(45deg);background:var(--sand);border:1px solid var(--gold);transition:.6s}
.step.on{opacity:1}.step.on:before{background:var(--gold)}.step b{font:italic 500 1.1rem var(--fd);color:var(--gold)}.step h3{margin:6px 0 10px}
@media(max-width:860px){.jr-grid{grid-template-columns:1fr}.jr-tooth{top:76px;max-width:96px;margin:0 0 -10px;z-index:3}}
/* seção escura */
.dk{background:var(--g2);color:#e9e4d6;overflow:hidden}.dk h2,.dk h3{color:var(--cream)}.dk .lead{color:#cfc9b6}
.ticks{list-style:none;margin:26px 0 34px}.ticks li{padding:10px 0 10px 34px;position:relative;border-bottom:1px solid rgba(255,255,255,.12)}
.ticks li:before{content:"◆";position:absolute;left:0;color:var(--gold);font-size:.7rem;top:16px}
.light .ticks li{border-color:rgba(75,84,57,.15)}
/* comparador */
.cmps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media(max-width:860px){.cmps{grid-template-columns:1fr}}
.cmp{position:relative;border-radius:28px;overflow:hidden;aspect-ratio:4/5;--p:50%;user-select:none;border:1px solid rgba(201,164,92,.5)}
.cmp .a,.cmp .b{position:absolute;inset:0;display:grid;place-items:end start;padding:22px;font:500 .72rem var(--fb);letter-spacing:.3em;color:#fff}
.cmp .b{background:var(--b,linear-gradient(160deg,#d8bb7b,#b58d3d)) center/cover;place-items:end end}.cmp .b:after{content:"DEPOIS"}
.cmp .a{background:var(--a,linear-gradient(160deg,#cfc6b0,#a89f88)) center/cover;clip-path:inset(0 calc(100% - var(--p)) 0 0)}.cmp .a:after{content:"ANTES"}
.cmp:after{content:"";position:absolute;top:0;bottom:0;left:var(--p);width:2px;background:var(--cream);transform:translateX(-1px);pointer-events:none}
.cmp input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}
.note{font-size:.85rem;color:var(--mut);margin-top:26px;max-width:720px}
/* depoimentos */
.dep{background:#fff;border-radius:28px;padding:36px;border:1px solid rgba(75,84,57,.12)}.dep .st{color:var(--gold);letter-spacing:.2em}.dep p{font:italic 500 1.5rem/1.35 var(--fd);margin:14px 0 18px}.dep small{color:var(--mut)}
/* faq */
.faq details{border-bottom:1px solid rgba(75,84,57,.2);padding:24px 0}.faq summary{font:500 1.9rem var(--fd);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;color:var(--g2)}
.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--gold);transition:transform .5s var(--ease)}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{margin-top:12px;color:var(--mut);max-width:760px}
/* page hero */
.ph-hero{padding:190px 0 90px;background:linear-gradient(180deg,var(--sand),var(--cream));overflow:hidden}.ph-hero h1{font-size:clamp(2.8rem,6vw,5.6rem);max-width:980px;margin-bottom:24px}
.crumb{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:22px}.crumb a{text-decoration:none;color:var(--gold)}
.trow{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);align-items:center;padding:60px 0;border-top:1px solid rgba(75,84,57,.15)}.trow:nth-child(even) .ph{order:2}
@media(max-width:860px){.trow{grid-template-columns:1fr}.trow:nth-child(even) .ph{order:0}}
.trow h2{font-size:clamp(2.2rem,4vw,3.4rem);margin:8px 0 16px}
/* footer */
.ft{position:relative;min-height:min(120vh,1100px);color:#e9e4d6;overflow:hidden;display:flex;align-items:flex-end;padding:140px 0 36px;background:var(--g2)}
.ft-bg{position:absolute;inset:-6% 0;background:url(img/hero-bg.jpg) 70% center/cover}.ft:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,var(--g2) 8%,rgba(47,54,35,.9) 45%,rgba(47,54,35,.97))}
.ft .wrap{z-index:2;width:min(1240px,90%)}.ft-cta{text-align:center;margin-bottom:clamp(70px,10vw,140px)}.ft-cta h2{color:var(--cream);font-size:clamp(2.8rem,7vw,6.4rem);margin-bottom:38px}
.ft-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-top:50px;border-top:1px solid rgba(255,255,255,.15)}
@media(max-width:860px){.ft-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.ft-grid{grid-template-columns:1fr}}
.ft h4{font:500 .72rem var(--fb);letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:18px}.ft li{list-style:none;margin-bottom:8px;font-size:.95rem}.ft a{text-decoration:none;opacity:.85;transition:.3s}.ft a:hover{opacity:1;color:var(--gold2)}
.ft .fl{width:92px;filter:brightness(0) invert(1);opacity:.92;margin-bottom:18px}
.ft-word{font:italic 500 clamp(6rem,24vw,22rem)/.8 var(--fd);color:transparent;-webkit-text-stroke:1px rgba(201,164,92,.45);text-align:center;margin:60px 0 10px;user-select:none;white-space:nowrap}
.ft-bot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.78rem;opacity:.65;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}
/* dente preenchendo (widget) + barra de progresso */
.tw{position:fixed;right:22px;bottom:22px;z-index:40;width:58px;height:58px;border-radius:50%;background:rgba(250,245,236,.92);box-shadow:0 10px 30px -8px rgba(47,54,35,.4);display:grid;place-items:center;cursor:pointer;border:0;backdrop-filter:blur(8px)}.tw svg{width:34px}
.bar{position:fixed;top:0;left:0;height:3px;width:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--g),var(--gold),var(--gold2));z-index:70}
/* reveals */
.js [data-r]{opacity:0;transform:translateY(40px)}.js .wipe{clip-path:inset(0 0 100% 0)}
.w{display:inline-block;overflow:hidden;vertical-align:top;padding:.04em .02em .12em}.w>span{display:inline-block}


/* ============ v2 ============ */
:root{--io:cubic-bezier(.76,0,.24,1)}
html.menu{overflow:hidden}
.nav .wrap{position:relative}
.nav .btn.hd{padding:6px 6px 6px 26px}

/* hero: mobile redesenhado (foto no topo, texto embaixo) */
@media(max-width:860px){
.hero{display:block;min-height:0;padding:0;background:var(--cream)}
.hero:before{display:none}
.hero-bg{position:relative;inset:auto;height:clamp(380px,66svh,580px);overflow:hidden}
.hero-bg:after{content:"";position:absolute;inset:auto 0 0 0;height:58%;background:linear-gradient(0deg,var(--cream) 14%,rgba(250,245,236,.82) 40%,rgba(250,245,236,0))}.hm{display:none}
.hero-bg img{object-position:46% 8%}
.hero .wrap{margin-top:-70px;padding-bottom:56px}.hero .eyebrow{margin-bottom:12px}
.hero h1{font-size:clamp(2.7rem,12.4vw,4rem);margin:4px 0 18px}
.hero p.lead{margin-bottom:28px;font-size:1.05rem}
.hero .row{flex-direction:column;align-items:stretch;gap:12px}
.hero .row .btn{justify-content:space-between}
.proof{gap:10px 20px;margin-top:30px;font-size:.7rem}
}

/* cards de tratamento com imagem */
.tg{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px);align-items:start}
.tg .tcard:nth-child(3n+2){margin-top:clamp(0px,4vw,56px)}
.tcard{display:block;text-decoration:none;border-radius:28px;overflow:hidden;background:#fff;border:1px solid rgba(75,84,57,.12);position:relative;transition:transform .7s var(--ease),box-shadow .7s}
.tcard:hover{transform:translateY(-8px);box-shadow:0 30px 60px -28px rgba(47,54,35,.45)}
.tcard-i{display:block;position:relative;aspect-ratio:4/4.4;overflow:hidden;background:var(--sand)}
.tcard-i img{width:100%;height:100%;object-fit:cover;object-position:var(--op,50% 50%);transition:transform 1.4s var(--ease)}
.tcard:hover .tcard-i img{transform:scale(1.07)}
.tcard-i:after{content:"";position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(0deg,rgba(47,54,35,.28),transparent);pointer-events:none}
.tcard-go{position:absolute;right:16px;bottom:16px;z-index:2;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold));display:grid;place-items:center;transition:transform .6s var(--ease)}
.tcard-go svg{width:20px;height:20px;stroke:var(--g2);fill:none;stroke-width:1.7}
.tcard:hover .tcard-go{transform:rotate(-35deg) scale(1.08)}
.tcard-b{display:block;padding:24px 26px 28px}
.tcard-b h3{font-size:1.65rem;margin-bottom:8px}.tcard-b p{font-size:.96rem;color:var(--mut);line-height:1.6}
@media(max-width:960px){.tg{grid-template-columns:1fr 1fr}.tg .tcard:nth-child(3n+2){margin-top:0}.tg .tcard:nth-child(even){margin-top:36px}}

/* molduras de foto reais */
.ph.has{border:0;display:block;padding:0;background:var(--sand)}.ph.has:after{display:none}
.ph.has img{position:absolute;left:0;top:-8%;width:100%;height:116%;max-width:none;object-fit:cover;object-position:var(--op,50% 50%)}

/* vídeos */
.vg{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,24px)}
.vc{position:relative;display:block;width:100%;aspect-ratio:9/16;border-radius:26px;overflow:hidden;border:0;padding:0;cursor:pointer;background:var(--g2);text-align:left;color:#fff;isolation:isolate}
.vc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--op,50% 50%);transition:transform 1.4s var(--ease);z-index:-2}
.vc:hover img{transform:scale(1.07)}
.vc:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(31,36,23,.86) 0,rgba(31,36,23,.35) 42%,rgba(31,36,23,0) 70%);z-index:-1}
.vc-play{position:absolute;top:50%;left:50%;width:68px;height:68px;margin:-34px 0 0 -34px;border-radius:50%;background:rgba(250,245,236,.92);display:grid;place-items:center;transition:transform .6s var(--ease)}
.vc-play:before{content:"";position:absolute;inset:-9px;border-radius:50%;border:1px solid rgba(250,245,236,.6);animation:ring 2.4s ease-out infinite}
.vc-play svg{width:24px;height:24px;fill:var(--g2);margin-left:3px}
.vc:hover .vc-play{transform:scale(1.1)}
@keyframes ring{0%{transform:scale(.8);opacity:.9}100%{transform:scale(1.35);opacity:0}}
.vc-t{position:absolute;left:0;right:0;bottom:0;padding:22px 20px 22px}
.vc-t b{display:block;font:500 1.45rem/1.1 var(--fd);margin-bottom:6px}.vc-t span{display:block;font-size:.86rem;line-height:1.45;opacity:.88}
.vb{position:fixed;inset:0;z-index:160;display:grid;place-items:center;background:rgba(24,28,18,.88);backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s}
.vb.on{opacity:1;visibility:visible}
.vb-box{position:relative;height:min(86svh,820px);aspect-ratio:9/16;max-width:92vw;border-radius:22px;overflow:hidden;background:#000;transform:scale(.94);transition:transform .6s var(--ease)}.vb.on .vb-box{transform:none}
.vb video{width:100%;height:100%;object-fit:contain;background:#000}
.vb-x,.qz-x{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(250,245,236,.92);color:var(--g2);font-size:1.5rem;line-height:1;cursor:pointer;z-index:3;display:grid;place-items:center}
.vb-msg{position:absolute;inset:0;display:none;place-items:center;text-align:center;padding:30px;color:var(--cream);font:italic 500 1.6rem/1.3 var(--fd)}.vb.err .vb-msg{display:grid}.vb.err video{visibility:hidden}

/* carrosséis no mobile */
@media(max-width:860px){
.tg,.vg,.cmps{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;margin-inline:-5vw;padding:4px 5vw 14px;scrollbar-width:none}
.tg::-webkit-scrollbar,.vg::-webkit-scrollbar,.cmps::-webkit-scrollbar{display:none}
.tg>*,.vg>*,.cmps>*{scroll-snap-align:center}
.tg .tcard:nth-child(n){margin-top:0}
.vg{grid-auto-columns:62%}
.cmp input{touch-action:pan-y}
}

/* ajustes de mobile */
@media(max-width:860px){
body{font-size:16px;line-height:1.7}
section{padding:68px 0}
.wrap{width:90%}
.head{margin-bottom:34px}
.eyebrow{letter-spacing:.26em;margin-bottom:16px;font-size:.66rem}
.split{gap:34px}
.ph{border-radius:170px 170px 24px 24px;max-width:460px;margin-inline:auto;width:100%}
.btn{gap:14px;padding:6px 6px 6px 24px;letter-spacing:.16em}.btn i{width:44px;height:44px}
.stats{gap:26px}.stats b{font-size:2.1rem}
.card{min-height:0;padding:30px 26px}
.faq summary{font-size:1.45rem}.faq details{padding:18px 0}
.jr-tooth{display:none}.step{padding:28px 0 28px 28px}.step:before{top:40px}
.dep{padding:28px}.dep p{font-size:1.3rem}
.ph-hero{padding:128px 0 56px}.ph-hero h1{font-size:clamp(2.4rem,11vw,3.6rem)}
.trow{padding:40px 0;gap:26px}
.mq{padding:22px 0}
.ft{padding:90px 0 96px}.ft-word{font-size:21vw;margin:34px 0 6px}.ft-bot{font-size:.74rem}
.ft-cta h2{font-size:clamp(2.5rem,12vw,4rem)}
.swoosh{opacity:.35!important}
}
@media(max-width:1020px){
.nav .logo img{height:46px}
.nav ul li{list-style:none}
.nav ul .m-cta{margin-top:18px}
.nav ul a.mc{font:500 .72rem var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--g2);background:var(--cream);padding:8px 8px 8px 28px;display:inline-flex;align-items:center;gap:16px;border-radius:99px}
.nav ul a.mc i{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold));display:grid;place-items:center}
.nav ul a.mc svg{width:22px;height:22px;stroke:var(--g2);fill:none;stroke-width:1.6}
.nav ul a.mc:after{display:none}
.nav ul li{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .8s var(--ease)}
.m .nav ul li{opacity:1;transform:none}
.m .nav ul li:nth-child(1){transition-delay:.25s}.m .nav ul li:nth-child(2){transition-delay:.3s}.m .nav ul li:nth-child(3){transition-delay:.35s}.m .nav ul li:nth-child(4){transition-delay:.4s}.m .nav ul li:nth-child(5){transition-delay:.45s}.m .nav ul li:nth-child(6){transition-delay:.52s}
}
@media(min-width:1021px){.nav ul .m-cta{display:none}}

/* botão fixo no mobile */
.fab{display:none}
@media(max-width:860px){
.fab{display:inline-flex;position:fixed;left:50%;bottom:max(14px,env(safe-area-inset-bottom));z-index:45;white-space:nowrap;transform:translate(-50%,170%);transition:transform .7s var(--ease);box-shadow:0 16px 36px -12px rgba(47,54,35,.65)}
.fab.on,.fab.on:hover{transform:translate(-50%,0)}.tw{display:none}
}

/* ============ loading + transição ============ */
html.v-ld,html.v-pt,html.v-out{overflow:hidden}
#veil{position:fixed;inset:0;z-index:200;display:none;background:var(--cream);will-change:transform;overflow:visible}
html.v-ld #veil,html.v-pt #veil,html.v-out #veil{display:block}
html.v-pt #veil,html.v-out #veil{background:var(--g2)}
#veil:before,#veil:after{content:"";position:absolute;left:-12%;right:-12%;height:10vw;background:inherit}
#veil:after{top:calc(100% - 1px);border-radius:0 0 50% 50%/0 0 100% 100%}
#veil:before{bottom:calc(100% - 1px);border-radius:50% 50% 0 0/100% 100% 0 0}
#veil.lift{transform:translateY(-112%);transition:transform 1.05s var(--io)}
.vl,.vp{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:clamp(18px,3vh,30px)}
html.v-ld .vl{display:flex}html.v-pt .vp,html.v-out .vp{display:flex}html.v-out .vl{display:none}
.vl-mark{position:relative;width:clamp(150px,34vw,210px);aspect-ratio:1}
.vl-mark svg,.vl-mark img{position:absolute;inset:0;width:100%;height:100%}
.vl-mark svg{overflow:visible}
.vl-o{fill:none;stroke:#c9a45c;stroke-width:1.6;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:vlDraw 1.3s .15s var(--io) forwards}
.vl-f{transform:translateY(100px);animation:vlFill .9s .95s var(--io) forwards}
.vl-t{animation:vlOut .7s 1.75s var(--ease) forwards}
.vl-mark img{object-fit:contain;opacity:0;clip-path:inset(0 0 100% 0);animation:vlLogo 1s 1.7s var(--ease) forwards}
.vl-w{font:500 clamp(1.5rem,5.4vw,2.35rem)/1 var(--fd);color:var(--g2);letter-spacing:-.01em;white-space:nowrap;display:flex;overflow:hidden;padding:.1em .05em .18em}
.vl-w span{display:inline-block;transform:translateY(115%);animation:vlLet .9s var(--ease) forwards;animation-delay:calc(2.15s + var(--i)*.03s)}
.vl-s{font:500 .66rem var(--fb);letter-spacing:.5em;text-indent:.5em;text-transform:uppercase;color:var(--gold);opacity:0;animation:vlFade 1s 3s forwards}
@keyframes vlDraw{to{stroke-dashoffset:0}}
@keyframes vlFill{to{transform:none}}
@keyframes vlOut{to{opacity:0;transform:scale(1.06)}}
@keyframes vlLogo{to{opacity:1;clip-path:inset(0)}}
@keyframes vlLet{to{transform:none}}
@keyframes vlFade{to{opacity:1}}
.vp svg{width:54px}.vp-o{fill:none;stroke:#c9a45c;stroke-width:1.8;stroke-linejoin:round}.vp-f{animation:vpf 1.1s ease-in-out infinite alternate}
@keyframes vpf{from{transform:translateY(100px)}to{transform:translateY(8px)}}

/* ============ questionário ============ */
.qz{position:fixed;inset:0;z-index:150;display:grid;place-items:center;padding:16px;visibility:hidden;pointer-events:none}
.qz.on{visibility:visible;pointer-events:auto}
.qz-bg{position:absolute;inset:0;background:rgba(31,36,23,.6);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);opacity:0;transition:opacity .5s}.qz.on .qz-bg{opacity:1}
.qz-p{position:relative;width:min(640px,100%);max-height:min(92svh,780px);display:flex;flex-direction:column;background:var(--cream);border-radius:30px;overflow:hidden;box-shadow:0 40px 90px -30px rgba(20,24,14,.6);transform:translateY(40px) scale(.97);opacity:0;transition:transform .7s var(--ease),opacity .5s}
.qz.on .qz-p{transform:none;opacity:1}
.qz-h{display:flex;align-items:center;gap:14px;padding:20px 72px 16px 26px;border-bottom:1px solid rgba(75,84,57,.12)}
.qz-tooth{width:38px;flex:none}.qz-tooth svg{width:100%}
.qz-step{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.qz-bar{height:3px;background:rgba(75,84,57,.12);position:relative}.qz-bar i{position:absolute;inset:0;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--g),var(--gold));transition:transform .8s var(--ease)}
.qz-b{padding:26px 26px 8px;overflow-y:auto;overscroll-behavior:contain;flex:1}
.qz-b h2{font-size:clamp(1.9rem,5vw,2.5rem);line-height:1.05;margin-bottom:8px}
.qz-sub{color:var(--mut);font-size:.98rem;margin-bottom:22px}
.qz-v{animation:qzIn .6s var(--ease)}@keyframes qzIn{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:none}}
.qz-g{margin-bottom:22px}.qz-g>p,.qz-l{display:block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--g);margin-bottom:10px;font-weight:500}
.chips{display:flex;flex-wrap:wrap;gap:9px}
.chip{font:400 .95rem var(--fb);color:var(--g2);background:#fff;border:1px solid rgba(75,84,57,.28);border-radius:99px;padding:11px 18px;min-height:44px;cursor:pointer;transition:background .3s,color .3s,border-color .3s,transform .4s var(--ease)}
.chip:hover{border-color:var(--gold)}.chip:active{transform:scale(.96)}
.chip[aria-pressed=true]{background:var(--g);border-color:var(--g);color:var(--cream)}
.chip[aria-pressed=true]:before{content:"\2713";color:var(--gold2);margin-right:8px;font-size:.85em}
.qz-f{margin-bottom:18px}
.qz-f input{width:100%;font:400 1.05rem var(--fb);color:var(--ink);background:#fff;border:1px solid rgba(75,84,57,.28);border-radius:16px;padding:14px 16px;min-height:50px;transition:border-color .3s,box-shadow .3s}
.qz-f input:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 4px rgba(201,164,92,.22)}
.qz-f input[aria-invalid=true]{border-color:#b4533c}
.qz-offer{display:flex;gap:14px;align-items:center;margin:2px 0 20px;padding:16px 18px;border-radius:20px;background:linear-gradient(120deg,rgba(232,203,138,.4),rgba(201,164,92,.2));border:1px solid rgba(201,164,92,.55);animation:qzIn .7s var(--ease)}
.qz-offer svg{width:30px;flex:none}.qz-offer b{display:block;font:500 1.25rem/1.1 var(--fd);color:var(--g2)}.qz-offer span{font-size:.88rem;color:var(--ink)}
.qz-err{min-height:1.4em;color:#9d3f2a;font-size:.9rem;margin:-6px 0 8px}
.qz-n{font-size:.78rem;color:var(--mut);margin-bottom:12px}
.qz-sum{border-top:1px solid rgba(75,84,57,.15);margin:6px 0 18px}.qz-sum div{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:11px 0;border-bottom:1px solid rgba(75,84,57,.15);font-size:.95rem}.qz-sum dt{color:var(--mut)}.qz-sum dd{color:var(--ink)}
.qz-ft{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:16px 26px calc(18px + env(safe-area-inset-bottom));border-top:1px solid rgba(75,84,57,.12);background:var(--cream)}
.qz-back{background:none;border:0;font:500 .72rem var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--g);cursor:pointer;padding:12px 6px;min-height:44px}.qz-back[hidden]{display:block;visibility:hidden}
.qz-ft .btn{cursor:pointer;font-family:var(--fb)}
.qz-direct{display:block;text-align:center;font-size:.85rem;color:var(--mut);margin:0 0 14px}
.qz-ok{text-align:center;padding:14px 0 6px}.qz-ok svg{width:74px;margin:0 auto 14px}
@media(max-width:620px){
.qz{align-items:end;padding:0}
.qz-p{width:100%;max-height:94svh;border-radius:28px 28px 0 0;transform:translateY(100%);opacity:1}
.qz-h{padding:16px 64px 12px 20px}.qz-b{padding:22px 20px 6px}.qz-ft{padding:14px 20px calc(16px + env(safe-area-inset-bottom))}
.qz-sum div{grid-template-columns:96px 1fr}
.qz-ft .btn{padding-left:22px}
}



/* palavras douradas: o gradiente precisa estar na própria palavra animada (transform quebra o background-clip do pai) */
em:has(.w){padding-right:0}em .w>span{background:linear-gradient(100deg,#a9812f,var(--gold2) 45%,#b88d3c);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em;margin-right:-.08em}

/* ============ v3: efeitos de scroll ============ */
.nav{transition:padding .5s,transform .7s var(--ease)}.nav.hide{transform:translateY(-115%)}
/* hover por propriedades individuais (não brigam com o GSAP) */
.btn{transition:translate .5s var(--ease),box-shadow .5s}.btn:hover{transform:none;translate:0 -4px}
.tcard-i img,.vc img{scale:1.16;transition:scale 1.4s var(--ease)}
.tcard:hover .tcard-i img,.vc:hover img{transform:none;scale:1.24}
.tcard:hover{transform:none;translate:0 -8px}.tcard{transition:translate .7s var(--ease),box-shadow .7s}
/* palavras que acendem com o scroll */
.sw{opacity:.2;transition:none}
/* linha dourada da jornada */
.jr-grid>div:last-child{position:relative}
.jr-grid>div:last-child:after{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;margin-left:-.5px;background:linear-gradient(var(--gold2),var(--gold));transform-origin:top;transform:scaleY(var(--lp,0));pointer-events:none}
/* tratamentos em rolagem horizontal (desktop) */
@media(min-width:861px){
.hz{padding:0;min-height:100svh;display:flex;align-items:center;overflow:hidden}
.hz .head{margin-bottom:34px}
.hz .tg{display:flex;gap:28px;width:max-content;align-items:flex-start}
.hz .tcard{flex:none;width:min(27vw,380px)}.hz .tcard-i{aspect-ratio:4/3.3}
.hz .tg>.tg-end{flex:none;width:min(24vw,320px);align-self:center;display:flex;justify-content:center}
}
/* brilho que segue o mouse */
.glow{position:fixed;left:0;top:0;width:460px;height:460px;margin:-230px 0 0 -230px;border-radius:50%;pointer-events:none;z-index:35;background:radial-gradient(circle,rgba(232,203,138,.26),rgba(232,203,138,0) 62%);mix-blend-mode:soft-light;opacity:0;transition:opacity .6s}.glow.on{opacity:1}
/* partículas douradas */
.spark{position:absolute;pointer-events:none;width:var(--s,10px);height:var(--s,10px);background:linear-gradient(135deg,var(--gold2),var(--gold));transform:rotate(45deg);opacity:.5;z-index:0;border-radius:2px}
.ft .spark{z-index:1;opacity:.55}
/* indicador de rolagem do hero */
.cue{position:absolute;left:50%;bottom:26px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:.62rem;letter-spacing:.34em;text-transform:uppercase;color:var(--g);pointer-events:none}
.cue i{width:1px;height:54px;background:linear-gradient(var(--gold),transparent);transform-origin:top;animation:cue 2.2s var(--io) infinite}
@keyframes cue{0%{transform:scaleY(0)}60%{transform:scaleY(1);opacity:1}100%{transform:scaleY(1);opacity:0}}
@media(max-width:860px){.cue{display:none}}
/* rodapé */
.ft{will-change:clip-path}
.ft-word{background:linear-gradient(90deg,rgba(201,164,92,.92) var(--wp,0%),transparent var(--wp,0%));-webkit-background-clip:text;background-clip:text}
.ft li a{display:inline-block;transition:transform .5s var(--ease),color .3s,opacity .3s}.ft li a:hover{transform:translateX(7px)}
.ft .fl{transition:transform 1.2s var(--ease)}.ft .fl:hover{transform:rotate(-8deg) scale(1.06)}
.faq details p{overflow:hidden}

/* ===== margens unificadas: tudo usa a mesma largura (1240px / 90%) ===== */
:root{--w:min(1240px,90%)}
.wrap,.nav .wrap,.hero .wrap,.ft .wrap{width:var(--w);margin-inline:auto}
.faqw{display:grid;grid-template-columns:.8fr 1.4fr;gap:clamp(30px,6vw,100px);align-items:start}
.faqw .head{margin-bottom:0;position:sticky;top:120px}
.faqw .faq details:first-child{padding-top:0}
@media(max-width:860px){.faqw{grid-template-columns:1fr;gap:0}.faqw .head{position:static;margin-bottom:26px}}
/* rodapé: ícones e crédito */
.soc{display:flex;gap:12px;margin-top:24px}
.soc a{width:46px;height:46px;border-radius:50%;border:1px solid rgba(232,203,138,.5);display:grid;place-items:center;color:var(--gold2);opacity:1;transition:background .4s,color .4s,transform .5s var(--ease),border-color .4s}
.soc svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.soc a:hover{background:linear-gradient(135deg,var(--gold2),var(--gold));color:var(--g2);border-color:transparent;transform:translateY(-4px) rotate(-6deg)}
.ft-made{display:flex;justify-content:center;margin-top:26px}
.ft-made a{display:inline-flex;align-items:center;gap:12px;font-size:.8rem;letter-spacing:.04em;opacity:.78;text-decoration:none}
.ft-made a:hover{opacity:1}
.ft-made img{height:13px;width:auto;display:block}
