:root{
  --cream:#f1e2d7;--paper:#fbf7f2;--paper2:#f7eee7;--caramel:#905f3c;--caramel-dark:#6d432d;--rose:#e2c1ab;--bronze:#c7a691;--taupe:#a17f69;--ink:#402b21;--muted:#80695d;--cocoa:#352219;--line:rgba(144,95,60,.18);--max:1240px;--shadow:0 22px 70px rgba(78,47,30,.12);--ease:cubic-bezier(.2,.8,.2,1)
}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-width:280px;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}[id]{scroll-margin-top:90px}.shell{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:9999;background:#fff;padding:10px 14px}.scroll-progress{position:fixed;z-index:9999;top:0;left:0;width:0;height:3px;background:var(--caramel);box-shadow:0 0 14px rgba(144,95,60,.35)}.eyebrow{display:inline-block;color:var(--caramel);font-size:.67rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.eyebrow.light{color:#efcfbb}h1,h2,h3{font-family:"Playfair Display",Georgia,serif;font-weight:500;letter-spacing:-.045em;margin-top:0}em{font-weight:500}.section{padding:clamp(76px,7vw,108px) 0}.btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px;border-radius:999px;border:1px solid transparent;font-weight:800;transition:transform .24s var(--ease),background .24s ease,box-shadow .24s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{position:relative;overflow:hidden;background:var(--caramel);color:#fff;box-shadow:0 12px 30px rgba(144,95,60,.2)}.btn-primary:after{content:"";position:absolute;inset:-80% auto -80% -30%;width:30%;transform:rotate(14deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transition:left .55s var(--ease)}.btn-primary:hover:after{left:115%}.btn-primary:hover{background:var(--caramel-dark);box-shadow:0 16px 34px rgba(144,95,60,.25)}.btn-outline{border-color:rgba(144,95,60,.34);color:var(--caramel);background:rgba(255,255,255,.18)}.btn-outline:hover{background:rgba(144,95,60,.07)}.btn-cream{background:var(--paper);color:var(--caramel-dark);box-shadow:0 12px 28px rgba(0,0,0,.08)}.text-link{font-size:.8rem;font-weight:800;color:var(--caramel)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .72s var(--ease),transform .72s var(--ease)}.reveal.in-view{opacity:1;transform:none}.hero-reveal{opacity:0;transform:translateY(20px);animation:heroIn .82s .08s var(--ease) forwards}.hero-photo.hero-reveal{animation-delay:.2s}@keyframes heroIn{to{opacity:1;transform:none}}

/* Header */
.site-header{position:fixed;top:12px;left:0;right:0;z-index:200;padding-top:env(safe-area-inset-top);pointer-events:none}.nav{pointer-events:auto;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:7px 9px 7px 15px;border:1px solid rgba(144,95,60,.13);border-radius:999px;background:rgba(251,247,242,.93);backdrop-filter:blur(18px);box-shadow:0 14px 42px rgba(83,51,31,.09)}.brand{display:flex;align-items:center;gap:9px}.brand-mark{width:40px;height:40px;object-fit:contain;border-radius:50%}.brand-text{font-weight:800;line-height:1.04}.brand-text small{display:block;margin-top:4px;font-size:.62rem;letter-spacing:.13em;color:var(--muted);text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:22px;font-size:.72rem;font-weight:700}.nav-links>a:not(.nav-cta){opacity:.7;transition:opacity .2s,color .2s}.nav-links>a:not(.nav-cta):hover{opacity:1;color:var(--caramel)}.nav-cta{padding:11px 16px;border-radius:999px;background:var(--caramel);color:#fff}

/* Hero */
.hero{position:relative;isolation:isolate;padding:108px 0 64px;background:linear-gradient(120deg,#fbf8f4,#f4e4d8);overflow:hidden}.hero-glow{position:absolute;z-index:-1;border-radius:50%;filter:blur(2px);pointer-events:none}.hero-glow-a{width:520px;height:520px;right:-140px;top:-160px;background:rgba(226,193,171,.46)}.hero-glow-b{width:360px;height:360px;left:-220px;bottom:-160px;background:rgba(199,166,145,.18)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);gap:clamp(48px,7vw,92px);align-items:center}.hero h1{font-size:clamp(4rem,6.3vw,6.5rem);line-height:.91;margin:14px 0 20px;max-width:8em}.hero h1 em{color:var(--caramel)}.hero-copy>p{max-width:620px;color:var(--muted);font-size:clamp(1rem,1.18vw,1.08rem)}.hero-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:24px}.trust-row{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:30px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem}.trust-row b{display:block;color:var(--ink);font-size:.8rem}.hero-photo{position:relative;margin:0;aspect-ratio:4/5;border-radius:38px 38px 96px 38px;overflow:hidden;background:var(--rose);box-shadow:var(--shadow);transform-style:preserve-3d;will-change:transform}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 28%;transition:transform .8s var(--ease)}.hero-photo:hover>img{transform:scale(1.015)}.hero-photo figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:14px 15px;border-radius:17px;background:rgba(251,247,242,.92);backdrop-filter:blur(12px);z-index:3}.hero-photo strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.16rem}.hero-photo figcaption span{display:block;margin-top:2px;color:var(--muted);font-size:.7rem}.hero-badge{position:absolute;z-index:2;padding:8px 11px;border-radius:999px;background:rgba(251,247,242,.88);backdrop-filter:blur(12px);color:var(--caramel-dark);font-size:.6rem;font-weight:800;box-shadow:0 10px 24px rgba(63,38,24,.08)}.badge-one{top:22%;left:14px}.badge-two{top:11%;right:14px}

/* Shared heads */
.section-head{max-width:820px;margin-bottom:34px}.section-head h2{font-size:clamp(3.2rem,5.35vw,5.2rem);line-height:.94;margin:10px 0 12px}.section-head h2 em{color:var(--caramel)}.section-head>p{max-width:650px;margin:0;color:var(--muted);font-size:.84rem}.section-head-split{max-width:none;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.5fr);gap:48px;align-items:end}.section-head-split>p{justify-self:end}

/* Goal finder */
.goal-section{background:var(--paper)}.goal-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:22px;align-items:stretch}.goal-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.goal-card{position:relative;min-height:430px;border:0;padding:0;border-radius:28px;overflow:hidden;background:#d8c5b8;color:#fff;cursor:pointer;text-align:left;box-shadow:0 14px 38px rgba(63,39,25,.08);transform-style:preserve-3d;transition:box-shadow .25s var(--ease),transform .25s var(--ease)}.goal-card:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 22%,rgba(40,23,16,.12) 50%,rgba(40,23,16,.84) 100%)}.goal-card:after{content:"";position:absolute;inset:8px;border:1px solid transparent;border-radius:22px;z-index:3;pointer-events:none;transition:border-color .25s}.goal-card.is-active:after{border-color:rgba(255,255,255,.78)}.goal-card.is-active{box-shadow:0 18px 50px rgba(63,39,25,.16)}.goal-card img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease),filter .35s}.goal-card:hover img,.goal-card.is-active img{transform:scale(1.025);filter:brightness(1.02)}.goal-card>span{position:absolute;z-index:2;left:20px;right:20px;bottom:20px}.goal-card small{display:block;color:#f0d1bc;font-family:"Playfair Display",Georgia,serif;font-size:1rem}.goal-card strong{display:block;margin:3px 0 2px;font-family:"Playfair Display",Georgia,serif;font-size:1.7rem;line-height:1}.goal-card em{font-style:normal;color:#eadbd0;font-size:.66rem}.goal-detail{position:relative;display:flex;flex-direction:column;justify-content:center;padding:34px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,#fff,#f6ebe3);overflow:hidden}.goal-detail-number{position:absolute;right:18px;top:-14px;color:rgba(144,95,60,.09);font-family:"Playfair Display",Georgia,serif;font-size:7.8rem;line-height:1}.goal-detail h3{font-size:clamp(2.2rem,3.4vw,3.5rem);line-height:.98;margin:9px 0 14px}.goal-detail>p{color:var(--muted);font-size:.8rem}.goal-tags{display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 24px}.goal-tags span{padding:8px 10px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.63rem;font-weight:700}.goal-detail .btn{align-self:flex-start}.unsure-link{align-self:flex-start;margin-top:14px;padding:0;border:0;background:none;color:var(--muted);font-size:.65rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* Care explorer */
.care-explorer{background:var(--paper2)}.care-tabs,.compare-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.care-tab,.compare-tab{border:1px solid var(--line);background:rgba(255,255,255,.48);padding:10px 16px;border-radius:999px;color:var(--muted);font-size:.68rem;font-weight:800;cursor:pointer;transition:.2s ease}.care-tab:hover,.compare-tab:hover{border-color:rgba(144,95,60,.36);color:var(--caramel)}.care-tab.is-active,.compare-tab.is-active{background:var(--caramel);border-color:var(--caramel);color:#fff}.care-stage{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);min-height:570px;border:1px solid var(--line);border-radius:32px;overflow:hidden;background:rgba(255,255,255,.64);box-shadow:0 16px 52px rgba(78,47,30,.08)}.care-stage-media{position:relative;overflow:hidden;background:#dccac0}.care-stage-media img{width:100%;height:100%;object-fit:cover;transition:opacity .28s ease,transform .7s var(--ease)}.care-stage:hover .care-stage-media img{transform:scale(1.012)}.care-index{position:absolute;left:18px;top:14px;font-family:"Playfair Display",Georgia,serif;font-size:4rem;color:rgba(255,255,255,.84);text-shadow:0 4px 18px rgba(0,0,0,.16)}.care-stage-copy{display:grid;grid-template-columns:180px 1fr;min-width:0}.care-options{padding:22px 14px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.care-option{width:100%;border:0;background:transparent;padding:12px 11px;border-radius:14px;text-align:left;color:var(--muted);font-size:.68rem;font-weight:800;cursor:pointer;transition:.2s ease}.care-option:hover{background:rgba(144,95,60,.06);color:var(--caramel)}.care-option.is-active{background:var(--cream);color:var(--caramel-dark)}.care-description{align-self:center;padding:clamp(30px,5vw,60px)}.care-description h3{font-size:clamp(2.8rem,4.4vw,4.4rem);line-height:.93;margin:9px 0 15px}.care-description>p{max-width:580px;color:var(--muted);font-size:.83rem}.care-benefits{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 24px}.care-benefits span{padding:8px 10px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.62rem;font-weight:700}.care-description .btn{margin-top:2px}

/* Compare */
.compare-section{background:#fff}.compare-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:38px;align-items:center}.compare-frame{position:relative;min-height:520px;aspect-ratio:1.45/1;border-radius:30px;overflow:hidden;background:#e6d9d1;box-shadow:0 18px 55px rgba(69,42,27,.1);isolation:isolate}.compare-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.compare-after{clip-path:inset(0 calc(100% - var(--position)) 0 0)}.compare-handle{position:absolute;z-index:5;top:0;bottom:0;left:var(--position);width:2px;background:rgba(255,255,255,.96);transform:translateX(-1px);box-shadow:0 0 0 1px rgba(64,43,33,.09)}.compare-handle span{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--caramel-dark);font-weight:800;transform:translate(-50%,-50%);box-shadow:0 8px 22px rgba(43,27,18,.22)}.compare-range{position:absolute;z-index:10;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}.compare-label{position:absolute;z-index:4;top:16px;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.86);backdrop-filter:blur(8px);font-size:.58rem;font-weight:800;letter-spacing:.1em}.compare-label-before{left:16px}.compare-label-after{right:16px}.compare-copy h3{font-size:clamp(2.5rem,4vw,3.8rem);line-height:.96;margin:10px 0 14px}.compare-copy>p{color:var(--muted);font-size:.8rem}.compare-copy>small{display:block;color:#8b7467;font-size:.59rem;line-height:1.5}.compare-tip{display:flex;gap:11px;align-items:center;margin:20px 0;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--paper)}.compare-tip .tip-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:var(--cream);color:var(--caramel);font-weight:800}.compare-tip p{margin:0;color:var(--muted);font-size:.68rem}.compare-tip b{color:var(--ink)}

/* Journey */
.journey{background:linear-gradient(135deg,#f8eee7,#fbf8f4)}.journey-grid{display:grid;grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr);gap:clamp(44px,7vw,92px);align-items:start}.journey-media{min-height:100%}.journey-sticky{position:sticky;top:104px;overflow:hidden;border-radius:30px;background:#dfcec2;box-shadow:var(--shadow)}.journey-sticky img{width:100%;height:min(72vh,720px);min-height:540px;object-fit:cover;transition:opacity .28s ease,transform .6s var(--ease)}.journey-sticky.is-changing img{opacity:.25;transform:scale(1.015)}.journey-caption{position:absolute;left:14px;right:14px;bottom:14px;display:flex;align-items:center;gap:12px;padding:14px;border-radius:17px;background:rgba(251,247,242,.93);backdrop-filter:blur(10px)}.journey-caption span{font-family:"Playfair Display",Georgia,serif;color:var(--caramel);font-size:1.7rem}.journey-caption strong{font-size:.72rem}.journey-copy .section-head{margin-bottom:10px}.journey-step{display:grid;grid-template-columns:58px 1fr;gap:18px;padding:30px 0;border-bottom:1px solid var(--line);opacity:.56;transition:opacity .25s,transform .25s}.journey-step.is-active{opacity:1}.journey-step>span{font-family:"Playfair Display",Georgia,serif;color:var(--bronze);font-size:1.8rem}.journey-step h3{font-size:2rem;margin:0 0 7px;color:var(--caramel-dark)}.journey-step p{margin:0;color:var(--muted);font-size:.78rem}.journey-copy>.btn{margin-top:28px}

/* Profile + clinic + testimonials */
.proof{background:var(--cocoa);color:#fff}.profile-grid{display:grid;grid-template-columns:minmax(260px,.68fr) minmax(300px,.92fr) minmax(320px,.9fr);gap:18px;align-items:stretch}.profile-photo,.clinic-viewer{margin:0;border-radius:28px;overflow:hidden}.profile-photo img{width:100%;height:100%;min-height:580px;object-fit:cover;object-position:center 28%}.profile-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(20px,3vw,40px)}.profile-copy h2{font-size:clamp(3rem,4.5vw,4.8rem);line-height:.93;margin:11px 0 18px}.profile-copy h2 em{color:#e7c6b1}.profile-copy>p{color:#ddcbbf;font-size:.78rem}.profile-facts{display:grid;grid-template-columns:1fr;gap:8px;margin:20px 0 24px}.profile-facts span{padding-top:10px;border-top:1px solid rgba(255,255,255,.16);color:#cdb8ab;font-size:.66rem}.profile-facts b{display:block;color:#fff}.profile-copy .btn{align-self:flex-start}.clinic-viewer{display:flex;flex-direction:column;background:#24160f}.clinic-viewer-main{position:relative;min-height:430px;flex:1;overflow:hidden}.clinic-viewer-main img{width:100%;height:100%;object-fit:cover;transition:opacity .22s ease,transform .5s var(--ease)}.clinic-viewer-main span{position:absolute;left:12px;top:12px;padding:8px 10px;border-radius:999px;background:rgba(251,247,242,.88);color:var(--caramel-dark);font-size:.56rem;font-weight:800}.clinic-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:7px}.clinic-thumb{border:1px solid transparent;background:none;padding:0;border-radius:10px;overflow:hidden;cursor:pointer;opacity:.56;transition:.2s}.clinic-thumb.is-active{border-color:#efcfbb;opacity:1}.clinic-thumb img{width:100%;aspect-ratio:1/1;object-fit:cover}.clinic-address{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px 15px;color:#ddcbbf;font-size:.61rem}.clinic-address p{margin:0}.clinic-address a{white-space:nowrap;color:#fff;font-weight:800}.testimonial-zone{margin-top:54px;padding-top:38px;border-top:1px solid rgba(255,255,255,.16)}.testimonial-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:20px}.testimonial-heading h3{font-size:clamp(2.4rem,4vw,4rem);line-height:.95;margin:0;max-width:10em}.testimonial-heading h3 em{color:#e7c6b1}.testimonial-carousel{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:16px;align-items:center}.carousel-arrow{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);color:#fff;font-size:1.1rem;cursor:pointer;transition:.2s}.carousel-arrow:hover{background:rgba(255,255,255,.1)}.testimonial-stage{position:relative;min-height:250px;border-radius:24px;background:#f7eee7;color:var(--ink);overflow:hidden}.testimonial-slide{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(26px,4vw,46px);opacity:0;transform:translateX(20px);pointer-events:none;transition:opacity .35s var(--ease),transform .35s var(--ease)}.testimonial-slide.is-active{opacity:1;transform:none;pointer-events:auto}.testimonial-person{display:flex;align-items:center;gap:12px}.testimonial-person img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid rgba(199,166,145,.58);box-shadow:0 5px 16px rgba(70,43,28,.1)}.testimonial-person strong{color:var(--caramel-dark);font-size:.78rem}.testimonial-slide p{max-width:920px;margin:20px 0 0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.35rem,2vw,2rem);line-height:1.22}.testimonial-progress{height:2px;margin:14px 70px 0;background:rgba(255,255,255,.14);overflow:hidden}.testimonial-progress span{display:block;height:100%;width:20%;background:#efcfbb;transition:transform .35s var(--ease);transform-origin:left}.testimonial-zone>small{display:block;margin:10px 70px 0;color:#bfa99b;font-size:.56rem}

/* FAQ */
.faq{background:#f4e7de}.faq-layout{display:grid;grid-template-columns:.62fr 1.38fr;gap:60px}.faq-title h2{font-size:clamp(3rem,4.7vw,4.8rem);line-height:.95;margin:10px 0 14px}.faq-title h2 em{color:var(--caramel)}.faq-title p{max-width:360px;color:var(--muted);font-size:.76rem}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-question{width:100%;min-height:70px;border:0;background:transparent;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;text-align:left;font-weight:800;cursor:pointer}.faq-icon{font-family:Georgia,serif;color:var(--caramel);font-size:1.2rem}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s var(--ease)}.faq-answer>p{overflow:hidden;margin:0;color:var(--muted);font-size:.78rem}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-item.open .faq-answer>p{padding-bottom:18px}

/* CTA/footer */
.final-cta{padding:clamp(72px,8vw,118px) 0;background:#271710;color:#fff}.final-panel{max-width:920px;text-align:center}.final-panel h2{font-size:clamp(3.5rem,6vw,6.2rem);line-height:.9;margin:14px auto 18px}.final-panel h2 em{color:#e7c6b1}.final-panel p{max-width:660px;margin:0 auto 24px;color:#ddcbbf}.final-panel .btn{min-width:260px}footer{padding:28px 0 88px;background:#1d110c;color:#cbb9ae}.footer-row{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer-brand strong{display:block;color:#fff}.footer-brand span{font-size:.58rem;letter-spacing:.15em}.footer-contacts{display:flex;gap:18px;font-size:.68rem;font-weight:700}.floating-whatsapp{position:fixed;z-index:150;right:20px;bottom:20px;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--caramel);color:#fff;box-shadow:0 14px 34px rgba(87,53,33,.28);opacity:0;transform:translateY(16px) scale(.94);pointer-events:none;transition:.25s var(--ease)}.floating-whatsapp svg{width:28px}.floating-whatsapp.is-visible{opacity:1;transform:none;pointer-events:auto}.mobile-cta{display:none}

/* Tilt */
.tilt{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .22s ease,box-shadow .22s ease}.tilt:hover{transition:transform .08s linear,box-shadow .22s ease}

@media(max-width:1120px){
  .nav-links>a:not(.nav-cta){display:none}.goal-layout{grid-template-columns:1fr}.goal-detail{min-height:340px}.care-stage{grid-template-columns:.72fr 1.28fr}.profile-grid{grid-template-columns:.68fr 1.32fr}.clinic-viewer{grid-column:1/-1;display:grid;grid-template-columns:1.4fr .6fr;grid-template-rows:1fr auto}.clinic-viewer-main{grid-row:1/-1;min-height:430px}.clinic-thumbs{grid-template-columns:repeat(2,1fr)}.clinic-address{align-items:flex-start;flex-direction:column;justify-content:flex-end}.journey-grid{gap:44px}
}

@media(max-width:820px){
  .shell{width:min(calc(100% - 28px),var(--max))}.section{padding:64px 0}.site-header{top:8px}.nav{min-height:52px}.brand-mark{width:36px;height:36px}.brand-text{font-size:.83rem}.brand-text small{font-size:.54rem}.nav-cta{font-size:.66rem;padding:10px 13px}.hero{padding:94px 0 52px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-copy{order:1}.hero-photo{order:2;max-width:620px;width:100%;margin:auto;aspect-ratio:4/4.7}.hero h1{font-size:clamp(3.6rem,14vw,5.6rem);max-width:8.4em}.hero-copy>p{font-size:.92rem}.badge-one{top:24%}.badge-two{top:12%}.section-head,.section-head-split{display:block;margin-bottom:24px}.section-head h2{font-size:clamp(3rem,11vw,4.4rem)}.section-head-split>p{margin-top:13px}.goal-cards{display:flex;overflow-x:auto;gap:10px;margin-inline:-14px;padding:0 14px 8px;scroll-snap-type:x mandatory;scrollbar-width:none}.goal-cards::-webkit-scrollbar{display:none}.goal-card{flex:0 0 74vw;min-height:390px;scroll-snap-align:center}.goal-detail{padding:26px;min-height:330px}.goal-detail h3{font-size:2.8rem}.care-stage{grid-template-columns:1fr;min-height:0}.care-stage-media{aspect-ratio:4/3}.care-stage-copy{grid-template-columns:1fr}.care-options{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;overflow-x:auto;padding:12px}.care-option{flex:0 0 auto;width:auto}.care-description{padding:28px}.compare-layout{grid-template-columns:1fr;gap:24px}.compare-frame{min-height:0;aspect-ratio:1/1}.compare-copy h3{font-size:3rem}.journey-grid{grid-template-columns:1fr;gap:28px}.journey-sticky{position:relative;top:auto}.journey-sticky img{height:auto;min-height:0;aspect-ratio:4/4.6}.journey-step{padding:23px 0}.profile-grid{grid-template-columns:1fr}.profile-photo img{min-height:0;aspect-ratio:4/4.7}.profile-copy{padding:20px 2px 26px}.profile-copy h2{font-size:3.8rem}.clinic-viewer{grid-column:auto;display:block}.clinic-viewer-main{min-height:390px}.clinic-thumbs{grid-template-columns:repeat(4,1fr)}.clinic-address{flex-direction:row;align-items:center}.testimonial-heading{display:block}.testimonial-heading h3{margin-top:8px}.testimonial-carousel{grid-template-columns:42px 1fr 42px;gap:9px}.carousel-arrow{width:42px;height:42px}.testimonial-stage{min-height:290px}.testimonial-progress{margin-inline:52px}.testimonial-zone>small{margin-inline:52px}.faq-layout{grid-template-columns:1fr;gap:24px}.faq-title h2{font-size:3.8rem}.footer-row{align-items:flex-start;flex-direction:column}.floating-whatsapp{display:none}.mobile-cta{position:fixed;z-index:160;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));display:block;opacity:0;transform:translateY(14px);pointer-events:none;transition:.25s var(--ease)}.mobile-cta.is-visible{opacity:1;transform:none;pointer-events:auto}.mobile-cta a{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-radius:18px;background:var(--caramel);color:#fff;box-shadow:0 15px 36px rgba(72,43,27,.26)}.mobile-cta span{font-size:.6rem;opacity:.8}.mobile-cta strong{font-size:.73rem}footer{padding-bottom:100px}
}

@media(max-width:520px){
  .nav-cta{display:none}.brand-text{font-size:.78rem}.hero{padding-top:86px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-actions .btn{width:100%}.hero-photo{border-radius:28px 28px 66px 28px}.trust-row{gap:10px 18px}.goal-card{flex-basis:82vw;min-height:360px}.goal-card strong{font-size:1.55rem}.goal-detail-number{font-size:6rem}.goal-detail .btn{width:100%}.care-tabs,.compare-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px;scrollbar-width:none}.care-tabs::-webkit-scrollbar,.compare-tabs::-webkit-scrollbar{display:none}.care-tab,.compare-tab{flex:0 0 auto}.care-stage-media{aspect-ratio:1/1}.care-description h3{font-size:2.7rem}.care-description .btn{width:100%}.compare-frame{aspect-ratio:.92/1}.compare-image{object-fit:cover}.compare-handle span{width:40px;height:40px}.journey-step{grid-template-columns:44px 1fr;gap:12px}.journey-step h3{font-size:1.75rem}.profile-copy h2{font-size:3.2rem}.clinic-viewer-main{min-height:340px}.clinic-address{align-items:flex-start;flex-direction:column}.testimonial-carousel{grid-template-columns:1fr}.carousel-arrow{position:absolute;z-index:3;margin-top:115px}.testimonial-carousel{position:relative}.carousel-arrow:first-child{left:10px}.carousel-arrow:last-child{right:10px}.testimonial-stage{min-height:320px}.testimonial-slide{padding:28px 58px 28px}.testimonial-slide p{font-size:1.3rem}.testimonial-progress,.testimonial-zone>small{margin-inline:0}.faq-title h2{font-size:3.3rem}.final-panel h2{font-size:clamp(3.4rem,14vw,4.8rem)}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.hero-reveal{opacity:1;transform:none;animation:none;transition:none}.tilt,.goal-card img,.hero-photo>img,.care-stage-media img,.journey-sticky img,.testimonial-slide,.compare-after{transition:none!important}.btn-primary:after{display:none}}

/* ==========================================================================\n   V9.1 — regressao de estrutura V8 + interacoes V9\n   ========================================================================== */

/* Procedimentos: seis opcoes visiveis e um palco interativo */
.procedure-explorer{background:var(--paper2)}
.procedure-selector{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:18px}
.procedure-thumb{position:relative;min-width:0;padding:0 0 12px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:rgba(255,255,255,.62);text-align:left;cursor:pointer;box-shadow:0 8px 24px rgba(77,47,30,.04);transition:transform .22s var(--ease),border-color .22s ease,background .22s ease,box-shadow .22s ease}
.procedure-thumb:hover{transform:translateY(-2px);border-color:rgba(144,95,60,.38);box-shadow:0 12px 30px rgba(77,47,30,.08)}
.procedure-thumb.is-active{border-color:rgba(144,95,60,.72);background:#fff;box-shadow:0 13px 34px rgba(77,47,30,.11)}
.procedure-thumb img{width:100%;aspect-ratio:1.42/1;object-fit:cover;transition:transform .45s var(--ease),filter .25s ease}
.procedure-thumb:hover img,.procedure-thumb.is-active img{transform:scale(1.025);filter:brightness(1.02)}
.procedure-thumb span{display:block;padding:10px 11px 0}
.procedure-thumb small{display:block;margin-bottom:2px;color:var(--caramel);font-family:"Playfair Display",Georgia,serif;font-size:.75rem}
.procedure-thumb strong{display:block;overflow:hidden;color:var(--ink);font-size:.64rem;line-height:1.25;text-overflow:ellipsis}
.procedure-stage{display:grid;grid-template-columns:minmax(330px,.92fr) minmax(0,1.08fr);min-height:575px;border:1px solid var(--line);border-radius:32px;overflow:hidden;background:rgba(255,255,255,.72);box-shadow:0 18px 58px rgba(78,47,30,.08)}
.procedure-stage-media{position:relative;margin:0;overflow:hidden;background:#ddcbc0}
.procedure-stage-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(38,23,16,.64) 100%);pointer-events:none}
.procedure-stage-media>img{width:100%;height:100%;object-fit:cover;object-position:center 48%;transition:opacity .22s ease,transform .65s var(--ease)}
.procedure-stage:hover .procedure-stage-media>img{transform:scale(1.012)}
.procedure-index{position:absolute;z-index:2;left:20px;top:12px;color:rgba(255,255,255,.88);font-family:"Playfair Display",Georgia,serif;font-size:4.6rem;line-height:1;text-shadow:0 4px 18px rgba(0,0,0,.16)}
.procedure-stage-media figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;color:#fff}
.procedure-stage-media figcaption span{display:block;color:#efd2c0;font-size:.55rem;font-weight:800;letter-spacing:.14em}
.procedure-stage-media figcaption strong{display:block;margin-top:2px;font-family:"Playfair Display",Georgia,serif;font-size:1.18rem;font-weight:500}
.procedure-stage-copy{position:relative;align-self:center;padding:clamp(34px,5vw,68px)}
.procedure-counter{position:absolute;right:34px;top:34px;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.62rem;font-weight:800}
.procedure-counter i{display:block;width:34px;height:1px;background:var(--line)}
.procedure-stage-copy h3{max-width:8em;margin:10px 0 15px;font-size:clamp(3.1rem,5vw,5.2rem);line-height:.91}
.procedure-stage-copy>p{max-width:610px;margin:0;color:var(--muted);font-size:.84rem}
.procedure-stage-copy>small{display:block;max-width:560px;margin-top:15px;color:#8a7367;font-size:.59rem;line-height:1.5}
.procedure-benefits{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 25px}
.procedure-benefits span{padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--caramel-dark);font-size:.62rem;font-weight:700}

/* Produtos e materiais — preserva o bloco aprovado da V8.6 */
.professional-products{position:relative;overflow:hidden;background:linear-gradient(135deg,#f8eee7 0%,#fbf8f4 58%,#f1e2d7 100%)}
.professional-products:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-260px;top:-240px;background:rgba(226,193,171,.22);pointer-events:none}
.products-layout{position:relative;display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(42px,6vw,76px);align-items:center}
.products-copy h2{max-width:8.5em;margin:10px 0 18px;font-size:clamp(3.15rem,5.1vw,5.05rem);line-height:.93}
.products-copy h2 em{color:var(--caramel)}
.products-copy>p:not(.products-note){max-width:590px;margin:0;color:var(--muted);font-size:.87rem}
.product-principles{display:grid;grid-template-columns:1fr;gap:0;margin:24px 0;border-top:1px solid var(--line)}
.product-principles span{display:grid;grid-template-columns:140px 1fr;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}
.product-principles b{color:var(--caramel-dark);font-size:.7rem}
.product-principles small{color:var(--muted);font-size:.68rem;line-height:1.45}
.products-copy .btn{margin-top:1px}.products-note{max-width:580px;margin:14px 0 0!important;color:#8b7467!important;font-size:.61rem!important;line-height:1.5}
.products-swipe-hint{display:none}.products-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.product-shot{position:relative;margin:0;aspect-ratio:4/5;overflow:hidden;border-radius:24px;background:#e8ddd5;box-shadow:0 14px 38px rgba(72,44,29,.09)}
.product-shot img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease),filter .35s var(--ease)}
.product-shot:hover img{transform:scale(1.018);filter:brightness(1.02)}
.product-shot:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(39,23,17,.72) 100%);pointer-events:none}
.product-shot figcaption{position:absolute;z-index:2;left:16px;right:16px;bottom:15px;color:#fff}
.product-shot figcaption small{display:block;margin-bottom:3px;color:#f0d3c1;font-size:.56rem;font-weight:800;letter-spacing:.13em}
.product-shot figcaption strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:1.23rem;line-height:1.06;font-weight:500}
.product-shot-main img{object-position:center 60%}.products-gallery .product-shot:nth-child(2) img{object-position:center 58%}.products-gallery .product-shot:nth-child(3) img{object-position:center 56%}.products-gallery .product-shot:nth-child(4) img{object-position:center 55%}

/* Antes/depois — esquerda = ANTES, direita = DEPOIS e logo permanente */
.compare-section{background:#fff}
.compare-frame{min-height:0;aspect-ratio:var(--compare-ratio,2 / 1);transition:aspect-ratio .25s var(--ease),opacity .18s ease}
.compare-frame.is-switching{opacity:.5}
.compare-image{object-fit:contain;background:#e6d9d1}
.compare-after{z-index:1;clip-path:none!important}
.compare-before{z-index:2;clip-path:inset(0 calc(100% - var(--position)) 0 0);transition:clip-path .04s linear}
.compare-watermark{position:absolute;z-index:6;left:14px;top:14px;width:82px;height:auto;opacity:.9;pointer-events:none;filter:drop-shadow(0 1px 3px rgba(255,255,255,.84)) drop-shadow(0 1px 7px rgba(50,31,22,.12))}
.compare-label{z-index:7;top:auto;bottom:15px;background:rgba(255,255,255,.9);box-shadow:0 5px 18px rgba(50,31,22,.08)}
.compare-label-before{left:15px}.compare-label-after{right:15px}
.compare-handle{z-index:8}.compare-range{z-index:10}
.compare-procedure-badge{display:inline-flex;padding:8px 10px;border-radius:999px;background:var(--cream);color:var(--caramel-dark);font-size:.57rem;font-weight:800;letter-spacing:.1em}
.compare-copy h3{margin-top:13px}
.compare-benefits{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 4px}
.compare-benefits span{padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--caramel-dark);font-size:.61rem;font-weight:700}
.compare-copy .btn{margin:2px 0 16px}

/* Depoimentos em bloco proprio, mantendo o carrossel interativo */
.testimonials-interactive{background:#f4e7de}
.testimonial-carousel-light .testimonial-stage{min-height:300px;background:#fff;box-shadow:0 16px 46px rgba(72,44,29,.07)}
.testimonial-carousel-light .carousel-arrow{border-color:rgba(144,95,60,.22);background:rgba(255,255,255,.56);color:var(--caramel-dark)}
.testimonial-carousel-light .carousel-arrow:hover{background:#fff;border-color:rgba(144,95,60,.42)}
.testimonial-carousel-light .testimonial-slide{padding:clamp(30px,4vw,54px)}
.testimonial-carousel-light .testimonial-slide p{max-width:980px}
.testimonial-progress-light{background:rgba(144,95,60,.13)}
.testimonial-progress-light span{background:var(--caramel)}
.testimonial-note-light{margin:10px 70px 0;color:#8a7468;font-size:.58rem}

/* Wendy + consultorio ficam depois dos depoimentos, na ordem aprovada */
.proof{padding-top:clamp(76px,7vw,108px);padding-bottom:clamp(76px,7vw,108px)}

/* Objetivos — unico bloco para as tres frentes */
.goal-section{background:var(--paper)}

/* Avaliacao + tecnologia — interacao simples sem duplicar os tres objetivos */
.evaluation-interactive{background:linear-gradient(135deg,#f8eee7,#fbf8f4)}
.evaluation-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(360px,1.12fr);gap:clamp(44px,7vw,90px);align-items:center}
.evaluation-copy h2{max-width:8.5em;margin:10px 0 18px;font-size:clamp(3.2rem,5.2vw,5.1rem);line-height:.93}
.evaluation-copy h2 em{color:var(--caramel)}
.evaluation-copy>p{max-width:610px;color:var(--muted);font-size:.82rem}
.analyzer-pills{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}
.analyzer-pills span{padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--caramel-dark);font-size:.62rem;font-weight:700}
.evaluation-switch{display:flex;gap:8px;margin:2px 0 18px}
.evaluation-tab{padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.52);color:var(--muted);font-size:.65rem;font-weight:800;cursor:pointer;transition:.2s ease}
.evaluation-tab:hover{border-color:rgba(144,95,60,.38);color:var(--caramel)}
.evaluation-tab.is-active{border-color:var(--caramel);background:var(--caramel);color:#fff}
.evaluation-note{font-size:.61rem!important;line-height:1.5}.evaluation-copy .btn{margin-top:4px}
.evaluation-viewer{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.evaluation-viewer figure{grid-column:1/-1;position:relative;margin:0;aspect-ratio:1.25/1;overflow:hidden;border-radius:30px;background:#ddcdc2;box-shadow:var(--shadow)}
.evaluation-viewer figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(36,21,15,.6) 100%);pointer-events:none}
.evaluation-viewer figure img{width:100%;height:100%;object-fit:cover;object-position:center 48%;transition:opacity .2s ease,transform .55s var(--ease)}
.evaluation-viewer figure:hover img{transform:scale(1.012)}
.evaluation-viewer figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;color:#fff}
.evaluation-viewer figcaption span{display:block;color:#f0d0bc;font-size:.55rem;font-weight:800;letter-spacing:.14em}
.evaluation-viewer figcaption strong{display:block;margin-top:2px;font-family:"Playfair Display",Georgia,serif;font-size:1.18rem;font-weight:500}
.evaluation-mini-card{display:flex;gap:9px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.7)}
.evaluation-mini-card>span{font-family:"Playfair Display",Georgia,serif;color:var(--caramel);font-size:1.15rem}.evaluation-mini-card p{margin:0;color:var(--muted);font-size:.58rem;line-height:1.35}.evaluation-mini-card b{color:var(--ink)}

@media(max-width:1120px){
  .procedure-selector{grid-template-columns:repeat(3,minmax(0,1fr))}
  .procedure-thumb{display:grid;grid-template-columns:86px 1fr;align-items:center;padding:0 10px 0 0}.procedure-thumb img{height:72px;aspect-ratio:1/1;border-radius:0 13px 13px 0}.procedure-thumb span{padding:8px 9px}.procedure-thumb strong{font-size:.66rem}
  .products-layout{grid-template-columns:.8fr 1.2fr;gap:34px}.product-principles span{grid-template-columns:120px 1fr}
  .evaluation-layout{grid-template-columns:.92fr 1.08fr;gap:38px}
}

@media(max-width:820px){
  .procedure-selector{display:flex;overflow-x:auto;gap:9px;margin-inline:-14px;padding:0 14px 8px;scroll-snap-type:x mandatory;scrollbar-width:none}.procedure-selector::-webkit-scrollbar{display:none}
  .procedure-thumb{display:block;flex:0 0 42vw;min-width:150px;padding:0 0 10px;scroll-snap-align:center}.procedure-thumb img{width:100%;height:auto;aspect-ratio:1.45/1;border-radius:0}.procedure-thumb span{padding:9px 10px 0}.procedure-thumb strong{font-size:.64rem}
  .procedure-stage{grid-template-columns:1fr;min-height:0}.procedure-stage-media{aspect-ratio:4/3}.procedure-stage-copy{padding:30px}.procedure-stage-copy h3{font-size:3.6rem}.procedure-counter{right:26px;top:26px}
  .professional-products.section{padding-top:64px;padding-bottom:64px}.products-layout{grid-template-columns:1fr;gap:26px}.products-copy h2{max-width:none;margin-bottom:14px;font-size:clamp(2.9rem,12vw,4.05rem)}.products-copy>p:not(.products-note){font-size:.76rem}.product-principles{margin:19px 0 20px}.product-principles span{grid-template-columns:105px 1fr;gap:12px;padding:11px 0}.product-principles b{font-size:.64rem}.product-principles small{font-size:.63rem}.products-copy .btn{width:100%}.products-note{margin-top:11px!important;font-size:.56rem!important}.products-swipe-hint{display:block;margin:-8px 0 -13px;color:var(--caramel);font-size:.62rem;font-weight:800;text-align:right}.products-gallery{display:flex;overflow-x:auto;gap:10px;margin-inline:-12px;padding:0 12px 8px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.products-gallery::-webkit-scrollbar{display:none}.product-shot{flex:0 0 78vw;aspect-ratio:4/5;border-radius:22px;scroll-snap-align:center}.product-shot figcaption{left:14px;right:14px;bottom:14px}.product-shot figcaption strong{font-size:1.12rem}
  .compare-layout{grid-template-columns:1fr;gap:24px}.compare-frame{width:100%;min-height:260px}.compare-watermark{width:70px}.compare-copy h3{font-size:3rem}.compare-copy .btn{width:100%}
  .testimonial-note-light{margin-inline:52px}
  .evaluation-layout{grid-template-columns:1fr;gap:30px}.evaluation-copy h2{max-width:none;font-size:clamp(3rem,11vw,4.4rem)}.evaluation-viewer figure{aspect-ratio:4/3}
}

@media(max-width:520px){
  .procedure-thumb{flex-basis:48vw}.procedure-stage-media{aspect-ratio:1/1}.procedure-index{font-size:3.8rem}.procedure-stage-copy{padding:26px}.procedure-stage-copy h3{font-size:3rem}.procedure-counter{position:static;justify-content:flex-end;margin:-4px 0 4px}.procedure-stage-copy .btn{width:100%}
  .product-shot{flex-basis:78vw}
  .compare-frame{min-height:250px;border-radius:22px}.compare-watermark{left:10px;top:10px;width:62px}.compare-label{bottom:10px;padding:7px 9px}.compare-label-before{left:10px}.compare-label-after{right:10px}.compare-handle span{width:40px;height:40px}.compare-procedure-badge{font-size:.52rem}
  .testimonial-carousel-light .testimonial-stage{min-height:330px}.testimonial-note-light{margin-inline:0}
  .evaluation-switch{overflow-x:auto}.evaluation-viewer{grid-template-columns:1fr}.evaluation-viewer figure{grid-column:auto;aspect-ratio:1/1}.evaluation-mini-card{padding:11px}
}

@media(max-width:390px){.product-shot{flex-basis:84vw}.procedure-thumb{flex-basis:54vw}}

@media(prefers-reduced-motion:reduce){.procedure-stage-media>img,.procedure-thumb img,.evaluation-viewer figure img,.compare-before{transition:none!important}}
@media(max-width:820px){.mobile-cta.is-suppressed{opacity:0!important;transform:translateY(14px)!important;pointer-events:none!important;visibility:hidden!important}}

/* V9.3 — avaliação simplificada e interativa */
.evaluation-simple{padding:clamp(68px,6vw,88px) 0;background:linear-gradient(135deg,#f8eee7 0%,#fbf8f4 72%,#f3e4da 100%)}
.evaluation-simple-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.48fr);gap:48px;align-items:end;margin-bottom:28px}
.evaluation-simple-head h2{max-width:10em;margin:9px 0 0;font-size:clamp(3rem,4.7vw,4.7rem);line-height:.94}
.evaluation-simple-head h2 em{color:var(--caramel)}
.evaluation-simple-head>p{max-width:520px;justify-self:end;margin:0;color:var(--muted);font-size:.79rem}
.evaluation-simple-card{overflow:hidden;border:1px solid var(--line);border-radius:30px;background:rgba(255,255,255,.62);box-shadow:0 18px 55px rgba(78,47,30,.08)}
.evaluation-steps{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);background:rgba(251,247,242,.66)}
.evaluation-step{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;min-height:78px;padding:16px 20px;border:0;border-right:1px solid var(--line);background:transparent;text-align:left;cursor:pointer;transition:background .22s ease,color .22s ease}
.evaluation-step:last-child{border-right:0}
.evaluation-step:after{content:"";position:absolute;left:20px;right:20px;bottom:-1px;height:2px;background:var(--caramel);transform:scaleX(0);transform-origin:left;transition:transform .24s var(--ease)}
.evaluation-step:hover{background:rgba(144,95,60,.045)}
.evaluation-step.is-active{background:#fff;color:var(--caramel-dark)}
.evaluation-step.is-active:after{transform:scaleX(1)}
.evaluation-step>span{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;font-family:"Playfair Display",Georgia,serif;color:var(--caramel);font-size:1rem;background:var(--paper)}
.evaluation-step strong{align-self:end;font-size:.69rem;line-height:1.15}
.evaluation-step small{align-self:start;margin-top:2px;color:var(--muted);font-size:.55rem;line-height:1.2}
.evaluation-simple-content{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:0;align-items:stretch;padding:16px}
.evaluation-simple-media{position:relative;margin:0;min-height:390px;aspect-ratio:4/3;overflow:hidden;border-radius:23px;background:#ddcdc2}
.evaluation-simple-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(36,21,15,.62) 100%);pointer-events:none}
.evaluation-simple-media img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transition:opacity .2s ease,transform .55s var(--ease)}
.evaluation-simple-media:hover img{transform:scale(1.012)}
.evaluation-simple-media figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;color:#fff}
.evaluation-simple-media figcaption span{display:block;color:#f0d0bc;font-size:.54rem;font-weight:800;letter-spacing:.13em}
.evaluation-simple-media figcaption strong{display:block;max-width:470px;margin-top:3px;font-family:"Playfair Display",Georgia,serif;font-size:1.16rem;line-height:1.1;font-weight:500}
.evaluation-simple-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4vw,52px)}
.evaluation-simple-copy h3{max-width:11em;margin:9px 0 13px;font-size:clamp(2.25rem,3.5vw,3.55rem);line-height:.97}
.evaluation-simple-copy>p:not(.evaluation-note){max-width:570px;margin:0;color:var(--muted);font-size:.78rem}
.evaluation-points{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 16px}
.evaluation-points span{padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--caramel-dark);font-size:.61rem;font-weight:750}
.evaluation-simple-copy .evaluation-note{max-width:560px;margin:0 0 18px;color:#8b7467;font-size:.59rem;line-height:1.5}
.evaluation-simple-copy .btn{align-self:flex-start}
@media(max-width:820px){.evaluation-simple{padding:64px 0}.evaluation-simple-head{grid-template-columns:1fr;gap:14px;margin-bottom:22px}.evaluation-simple-head h2{max-width:none;font-size:clamp(3rem,10vw,4rem)}.evaluation-simple-head>p{justify-self:start;font-size:.74rem}.evaluation-simple-card{border-radius:24px}.evaluation-steps{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.evaluation-steps::-webkit-scrollbar{display:none}.evaluation-step{flex:0 0 44%;min-width:180px;scroll-snap-align:start}.evaluation-simple-content{grid-template-columns:1fr;padding:12px}.evaluation-simple-media{min-height:0;aspect-ratio:4/3;border-radius:18px}.evaluation-simple-copy{padding:28px 16px 20px}.evaluation-simple-copy h3{max-width:none;font-size:clamp(2.45rem,8vw,3.15rem)}.evaluation-simple-copy .btn{width:100%}}
@media(max-width:520px){.evaluation-step{flex-basis:62%;padding:14px 16px;min-height:72px}.evaluation-step:after{left:16px;right:16px}.evaluation-simple-media{aspect-ratio:1/1}.evaluation-simple-media figcaption strong{font-size:1.05rem}.evaluation-simple-copy{padding:25px 12px 16px}.evaluation-simple-copy>p:not(.evaluation-note){font-size:.72rem}}
@media(prefers-reduced-motion:reduce){.evaluation-simple-media img{transition:none!important}}
/* QA V9.3 — evita que a mídia ultrapasse a coluna no desktop */
.evaluation-simple-media{min-width:0;aspect-ratio:auto}
@media(max-width:820px){.evaluation-simple-media{aspect-ratio:4/3}}
@media(max-width:520px){.evaluation-simple-media{aspect-ratio:1/1}}
/* QA V9.3 — mantém a avaliação compacta */
.evaluation-simple-media{height:clamp(390px,32vw,460px);min-height:0}
@media(max-width:820px){.evaluation-simple-media{height:auto;aspect-ratio:4/3}}
@media(max-width:520px){.evaluation-simple-media{aspect-ratio:4/3}}
/* QA V9.3 — as três etapas ficam sempre visíveis em telas menores */
@media(max-width:820px){
  .evaluation-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}
  .evaluation-step{min-width:0;flex:none}
}
@media(max-width:520px){
  .evaluation-step{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:86px;padding:10px 5px;text-align:center}
  .evaluation-step>span{grid-row:auto;width:30px;height:30px;font-size:.88rem}
  .evaluation-step strong{font-size:.56rem;line-height:1.05}
  .evaluation-step small{display:none}
}

/* ==========================================================================
   V9.5 — Mobile clarity pass
   Desktop permanece visualmente igual à V9.4. As regras abaixo atuam apenas
   em telas menores para reduzir densidade, eliminar carrosseis ambíguos e
   tornar as interações mais óbvias.
   ========================================================================== */
.copy-mobile{display:none}
.testimonial-mobile-nav{display:none}
.compare-drag-hint{display:none}

@media(max-width:820px){
  .copy-desktop{display:none}
  .copy-mobile{display:inline}

  /* Ritmo geral: menos rolagem sem comprimir leitura. */
  .section{padding:56px 0}
  .section-head,.section-head-split{margin-bottom:20px}
  .section-head h2{font-size:clamp(2.75rem,9.8vw,3.85rem);line-height:.95}
  .section-head>p,.section-head-split>p{font-size:.76rem;line-height:1.55}

  /* Procedimentos: todos ficam visíveis; nada escondido fora da tela. */
  .procedure-selector{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
    overflow:visible!important;
    margin:0 0 16px!important;
    padding:0!important;
    scroll-snap-type:none!important;
  }
  .procedure-thumb{
    display:block!important;
    min-width:0!important;
    flex:none!important;
    padding:0 0 9px!important;
    border-radius:16px;
    scroll-snap-align:none!important;
  }
  .procedure-thumb img{
    width:100%;
    height:auto!important;
    aspect-ratio:1.38/1!important;
    border-radius:0!important;
  }
  .procedure-thumb span{padding:8px 9px 0!important}
  .procedure-thumb small{font-size:.68rem}
  .procedure-thumb strong{font-size:.6rem;line-height:1.22;white-space:normal}

  /* Comparador: respeita a proporção real das fotos em qualquer largura. */
  .compare-frame{
    width:100%;
    min-height:0!important;
    aspect-ratio:var(--compare-ratio)!important;
    background:#fff!important;
    border-radius:22px;
  }
  .compare-image{object-fit:cover!important;background:#fff!important}
  .compare-drag-hint{
    position:absolute;
    z-index:9;
    top:11px;
    right:11px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 9px;
    border-radius:999px;
    background:rgba(53,34,25,.78);
    color:#fff;
    font-size:.5rem;
    font-weight:800;
    letter-spacing:.08em;
    backdrop-filter:blur(8px);
    pointer-events:none;
    transition:opacity .2s ease,transform .2s ease;
    animation:dragHintPulse 1.7s ease-in-out 2;
  }
  .compare-drag-hint b{font-size:.8rem;line-height:1}
  .compare-drag-hint.is-used{opacity:0;transform:translateY(-4px)}
  .compare-handle span{animation:handleNudge 1.6s ease-in-out 2}

  /* Objetivos: três escolhas sempre visíveis, sem swipe oculto. */
  .goal-cards{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
    overflow:visible!important;
    margin:0!important;
    padding:0!important;
    scroll-snap-type:none!important;
  }
  .goal-card{min-height:250px;flex:none!important;scroll-snap-align:none!important}
  .goal-card>span{left:14px;right:14px;bottom:14px}
  .goal-card strong{font-size:1.18rem}
  .goal-card em{font-size:.58rem}
  .goal-detail{min-height:0;padding:24px}
}

@media(max-width:520px){
  .shell{width:min(calc(100% - 28px),var(--max))}
  .section{padding:50px 0}

  /* Cabeçalhos mais contidos: a tipografia continua premium sem dominar a tela. */
  .section-head h2{font-size:clamp(2.6rem,11vw,3.25rem)}
  .section-head>p,.section-head-split>p{font-size:.71rem}
  .eyebrow{font-size:.6rem;letter-spacing:.16em}

  /* Procedimentos: 2 x 3, todos visíveis. O detalhe perde a foto duplicada. */
  .procedure-selector{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px!important}
  .procedure-thumb{border-radius:15px}
  .procedure-thumb img{aspect-ratio:1.45/1!important}
  .procedure-thumb small{font-size:.64rem}
  .procedure-thumb strong{font-size:.61rem}
  .procedure-stage{display:block;min-height:0;border-radius:20px;box-shadow:0 12px 34px rgba(78,47,30,.07)}
  .procedure-stage-media{display:none!important}
  .procedure-stage-copy{padding:21px 18px!important}
  .procedure-counter{position:absolute;right:18px;top:19px;margin:0!important}
  .procedure-stage-copy h3{max-width:8.2em;margin:8px 0 10px;font-size:2.35rem!important;line-height:.94}
  .procedure-stage-copy>p{font-size:.71rem;line-height:1.5}
  .procedure-benefits{gap:5px;margin:14px 0 16px}
  .procedure-benefits span{padding:7px 8px;font-size:.54rem}
  .procedure-stage-copy>small{margin-top:11px;font-size:.52rem}
  .procedure-stage-copy .btn{min-height:46px}

  /* Resultados: quatro opções aparecem em 2 x 2. */
  .compare-tabs{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    overflow:visible!important;
    padding:0!important;
    margin-bottom:14px;
  }
  .compare-tab{width:100%;padding:9px 7px;font-size:.58rem;text-align:center;white-space:normal}
  .compare-frame{border-radius:18px!important;box-shadow:0 10px 30px rgba(69,42,27,.09)}
  .compare-watermark{left:9px;top:9px;width:58px}
  .compare-label{bottom:9px;padding:6px 8px;font-size:.5rem}
  .compare-label-before{left:9px}.compare-label-after{right:9px}
  .compare-handle span{width:38px;height:38px;font-size:.8rem}
  .compare-layout{gap:18px}
  .compare-copy h3{margin:10px 0 9px;font-size:2.5rem!important}
  .compare-copy>p{font-size:.71rem;line-height:1.5}
  .compare-procedure-badge{padding:7px 9px;font-size:.49rem}
  .compare-benefits{gap:5px;margin:13px 0 14px}
  .compare-benefits span{padding:7px 8px;font-size:.54rem}
  .compare-tip{display:none}
  .compare-copy .btn{width:100%;min-height:46px;margin:0 0 12px}
  .compare-copy>small{font-size:.5rem;line-height:1.45}

  /* Produtos: 4 fotos visíveis em uma grade 2 x 2, sem conteúdo escondido. */
  .professional-products.section{padding-top:50px;padding-bottom:50px}
  .products-layout{gap:18px}
  .products-copy h2{font-size:clamp(2.6rem,11vw,3.25rem);line-height:.95}
  .products-copy>p:not(.products-note){font-size:.71rem;line-height:1.52}
  .product-principles{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin:14px 0 16px;
    border:0;
  }
  .product-principles span{
    display:block;
    width:auto;
    padding:7px 9px;
    border:1px solid var(--line);
    border-radius:999px;
    background:rgba(255,255,255,.56);
  }
  .product-principles b{font-size:.54rem}
  .product-principles small{display:none}
  .products-note{display:none}
  .products-swipe-hint{display:none!important}
  .products-gallery{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    overflow:visible!important;
    margin:0!important;
    padding:0!important;
    scroll-snap-type:none!important;
  }
  .product-shot{
    width:auto;
    min-width:0;
    flex:none!important;
    aspect-ratio:4/5;
    border-radius:16px;
    scroll-snap-align:none!important;
  }
  .product-shot figcaption{left:10px;right:10px;bottom:10px}
  .product-shot figcaption small{font-size:.45rem;letter-spacing:.09em}
  .product-shot figcaption strong{font-size:.86rem;line-height:1.05}

  /* Depoimentos: uma única área de swipe, agora com setas + pontos + contador. */
  .testimonials-interactive .section-head{margin-bottom:18px}
  .testimonial-carousel-light .testimonial-stage{min-height:265px;border-radius:20px}
  .testimonial-carousel-light .testimonial-slide{padding:24px 48px 22px!important}
  .testimonial-person{gap:9px}
  .testimonial-person img{width:46px;height:46px}
  .testimonial-person strong{font-size:.72rem}
  .testimonial-slide p{margin-top:17px;font-size:1.12rem!important;line-height:1.24}
  .testimonial-carousel .carousel-arrow{width:38px;height:38px;margin-top:105px;background:rgba(255,255,255,.9)}
  .testimonial-mobile-nav{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:12px 2px 0;
    color:var(--muted);
    font-size:.54rem;
    font-weight:700;
  }
  .testimonial-dots{display:flex;align-items:center;gap:6px}
  .testimonial-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(144,95,60,.22);cursor:pointer;transition:width .2s var(--ease),background .2s ease}
  .testimonial-dots button.is-active{width:20px;border-radius:999px;background:var(--caramel)}
  .testimonial-progress-light{display:none}
  .testimonial-note-light{margin-top:10px;font-size:.5rem}

  /* Objetivos: três cartões compactos lado a lado. */
  .goal-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .goal-card{min-height:190px;border-radius:17px}
  .goal-card:after{inset:5px;border-radius:13px}
  .goal-card>span{left:9px;right:9px;bottom:10px}
  .goal-card small{font-size:.65rem}
  .goal-card strong{font-size:.9rem;line-height:1.02}
  .goal-card em{display:none}
  .goal-detail{margin-top:10px;padding:20px;border-radius:20px}
  .goal-detail-number{font-size:5.4rem}
  .goal-detail h3{font-size:2.2rem;margin:7px 0 10px}
  .goal-detail>p{font-size:.7rem;line-height:1.5}
  .goal-tags{gap:5px;margin:4px 0 16px}
  .goal-tags span{padding:7px 8px;font-size:.54rem}
  .goal-detail .btn{width:100%;min-height:46px}

  /* Avaliação: mantém as três etapas visíveis e reduz repetição visual. */
  .evaluation-simple{padding:50px 0}
  .evaluation-simple-head{gap:10px;margin-bottom:17px}
  .evaluation-simple-head h2{font-size:clamp(2.7rem,11vw,3.35rem);line-height:.95}
  .evaluation-simple-head>p{font-size:.7rem;line-height:1.5}
  .evaluation-simple-card{border-radius:20px}
  .evaluation-step{min-height:74px!important;padding:8px 4px!important}
  .evaluation-step>span{width:28px;height:28px;font-size:.8rem}
  .evaluation-step strong{font-size:.54rem}
  .evaluation-simple-content{padding:9px}
  .evaluation-simple-media{aspect-ratio:4/3!important;border-radius:15px}
  .evaluation-simple-media figcaption{left:13px;right:13px;bottom:12px}
  .evaluation-simple-media figcaption span{font-size:.48rem}
  .evaluation-simple-media figcaption strong{font-size:.95rem}
  .evaluation-simple-copy{padding:20px 10px 12px}
  .evaluation-simple-copy h3{font-size:2.18rem!important;line-height:.97;margin:8px 0 10px}
  .evaluation-simple-copy>p:not(.evaluation-note){font-size:.7rem;line-height:1.5}
  .evaluation-points{gap:5px;margin:13px 0 13px}
  .evaluation-points span{padding:7px 8px;font-size:.54rem}
  .evaluation-simple-copy .evaluation-note{display:none}
  .evaluation-simple-copy .btn{min-height:46px}

  /* CTA móvel: continua disponível, mas deixa de ocupar toda a largura. */
  .mobile-cta{left:auto;right:12px;width:auto;max-width:190px}
  .mobile-cta a{gap:8px;padding:11px 14px;border-radius:999px}
  .mobile-cta span{display:none}
  .mobile-cta strong{font-size:.65rem;white-space:nowrap}
}

@keyframes dragHintPulse{
  0%,100%{transform:translateX(0);opacity:.92}
  50%{transform:translateX(-4px);opacity:1}
}
@keyframes handleNudge{
  0%,100%{transform:translate(-50%,-50%)}
  35%{transform:translate(calc(-50% - 3px),-50%)}
  65%{transform:translate(calc(-50% + 3px),-50%)}
}

@media(prefers-reduced-motion:reduce){
  .compare-drag-hint,.compare-handle span{animation:none!important}
}

/* V9.5 QA — no telefone, CTA flutuante vira apenas o ícone do WhatsApp para não cobrir conteúdo. */
@media(max-width:520px){
  .mobile-cta{display:none!important}
  .floating-whatsapp{
    display:grid!important;
    right:12px;
    bottom:calc(12px + env(safe-area-inset-bottom));
    width:48px;
    height:48px;
    box-shadow:0 12px 28px rgba(87,53,33,.24);
  }
  .floating-whatsapp svg{width:24px}
}

/* V9.5 — também em tablets, produtos ficam todos visíveis; nenhum swipe escondido. */
@media(max-width:820px){
  .products-swipe-hint{display:none!important}
  .products-gallery{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    overflow:visible!important;
    margin:0!important;
    padding:0!important;
    scroll-snap-type:none!important;
  }
  .product-shot{flex:none!important;min-width:0;scroll-snap-align:none!important}
}


/* ==========================================================================
   V9.6 — mobile framing + before/after performance
   - neutraliza text autosizing de WebViews/iOS;
   - protege títulos longos contra enquadramento inconsistente;
   - remove interpolação do clip-path durante o arraste no mobile;
   - entrega o gesto horizontal ao comparador sem bloquear a rolagem vertical.
   ========================================================================== */
@media(max-width:820px){
  .compare-frame{
    touch-action:pan-y;
    -webkit-user-select:none;
    user-select:none;
    overscroll-behavior-x:contain;
  }
  .compare-before{
    transition:none!important;
    will-change:clip-path;
    backface-visibility:hidden;
    transform:translateZ(0);
  }
  .compare-handle{
    will-change:left;
    backface-visibility:hidden;
  }
  .compare-frame.compare-pointer-ready .compare-range{pointer-events:none}
  .compare-frame.is-dragging .compare-handle span{transform:translate(-50%,-50%) scale(1.04)}
  .compare-frame.is-dragging .compare-drag-hint{opacity:0;animation:none}
}

@media(max-width:520px){
  /* Segurança tipográfica para Safari/WhatsApp WebView. */
  h1,h2,h3,.section-head h2,.products-copy h2,.profile-copy h2,.faq-title h2,.final-panel h2,
  .procedure-stage-copy h3,.compare-copy h3,.goal-detail h3,.evaluation-simple-head h2,.evaluation-simple-copy h3{
    max-width:100%;
    overflow-wrap:break-word;
    word-break:normal;
    hyphens:none;
    text-wrap:balance;
  }
  .section-head>p,.section-head-split>p,.products-copy>p,.profile-copy>p,.goal-detail>p,
  .compare-copy>p,.evaluation-simple-head>p,.evaluation-simple-copy>p,.faq-title>p{
    max-width:100%;
    overflow-wrap:break-word;
  }

  /* O painel de avaliação era o ponto mais sensível a text autosizing do iOS. */
  .evaluation-simple-content{min-width:0;overflow:hidden}
  .evaluation-simple-copy{min-width:0;overflow:hidden;padding:18px 14px 14px}
  .evaluation-simple-copy h3{
    max-width:9.8em;
    font-size:clamp(1.92rem,8.2vw,2.08rem)!important;
    line-height:1;
    letter-spacing:-.04em;
    margin:7px 0 9px;
  }
  .evaluation-simple-copy>p:not(.evaluation-note){font-size:.69rem;line-height:1.48}
  .evaluation-points{margin:12px 0 12px}
  .evaluation-simple-copy .btn{width:100%;max-width:100%;padding-inline:14px;font-size:.68rem}

  /* Pequeno ajuste de títulos fixos para telas estreitas (320–390px). */
  .profile-copy h2{font-size:clamp(2.7rem,12.5vw,3.05rem)}
  .faq-title h2{font-size:clamp(2.75rem,12.5vw,3.1rem)}
  .compare-copy h3{font-size:clamp(2.15rem,10vw,2.4rem)!important}
  .procedure-stage-copy h3{font-size:clamp(2.05rem,10vw,2.3rem)!important}
}

@media(max-width:360px){
  .shell{width:min(calc(100% - 24px),var(--max))}
  .section-head h2,.products-copy h2,.evaluation-simple-head h2{font-size:clamp(2.35rem,10.6vw,2.7rem)}
  .evaluation-simple-copy h3{font-size:1.88rem!important}
}

/* ==========================================================================
   V9.7 — geometria mobile: alinhamento matemático de controles e conteúdo
   Mantém o desktop intacto e corrige exclusivamente a composição em telas
   pequenas, com centros, áreas de toque e respiros calculados pelo container.
   ========================================================================== */
@media(max-width:520px){
  /* Avaliação: cada aba é uma célula 1/3 perfeitamente centralizada.
     O strong herdava align-self:end do desktop, deslocando o rótulo para a
     direita. No mobile número e rótulo passam a compartilhar o mesmo eixo X. */
  .evaluation-steps{
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:stretch;
  }
  .evaluation-step{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:32px auto!important;
    place-items:center!important;
    align-content:center!important;
    gap:5px!important;
    min-width:0!important;
    min-height:88px!important;
    padding:10px 5px!important;
    text-align:center!important;
  }
  .evaluation-step>span{
    grid-row:auto!important;
    justify-self:center!important;
    align-self:center!important;
    width:30px;
    height:30px;
    margin:0!important;
  }
  .evaluation-step strong{
    display:block;
    width:100%;
    min-width:0;
    justify-self:center!important;
    align-self:center!important;
    margin:0!important;
    padding:0 2px;
    text-align:center!important;
    line-height:1.12!important;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  .evaluation-step:after{left:10%;right:10%}

  /* Depoimentos: as setas deixam de usar a posição estática + margin-top.
     O centro vertical passa a ser exatamente 50% da área do depoimento. */
  .testimonial-carousel{position:relative}
  .testimonial-carousel-light .testimonial-stage{
    min-height:292px;
    border-radius:20px;
  }
  .testimonial-carousel-light .testimonial-slide{
    padding:24px 58px 24px!important;
    justify-content:center;
  }
  .testimonial-carousel .carousel-arrow{
    position:absolute!important;
    z-index:5;
    top:50%!important;
    bottom:auto!important;
    margin:0!important;
    transform:translateY(-50%)!important;
    width:38px;
    height:38px;
  }
  .testimonial-carousel .carousel-arrow:first-child{left:10px!important}
  .testimonial-carousel .carousel-arrow:last-child{right:10px!important}
  .testimonial-slide p{
    max-width:100%;
    overflow-wrap:break-word;
    text-wrap:pretty;
  }

  /* Margens de segurança comuns aos cards densos do mobile. */
  .evaluation-simple-card,.testimonial-stage,.procedure-stage,.goal-detail,
  .compare-frame,.product-shot{max-width:100%}
  .evaluation-simple-card,.testimonial-stage,.procedure-stage,.goal-detail{min-width:0}
}

@media(max-width:360px){
  .evaluation-step{min-height:84px!important;padding-inline:3px!important}
  .evaluation-step strong{font-size:.51rem!important}
  .testimonial-carousel-light .testimonial-slide{padding-inline:54px!important}
  .testimonial-carousel .carousel-arrow:first-child{left:8px!important}
  .testimonial-carousel .carousel-arrow:last-child{right:8px!important}
}

/* V9.7 QA — o mesmo eixo central é mantido em todo o breakpoint mobile/tablet. */
@media(max-width:820px){
  .evaluation-step{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:34px auto!important;
    place-items:center!important;
    align-content:center!important;
    gap:5px!important;
    min-width:0!important;
    min-height:88px!important;
    padding:10px 6px!important;
    text-align:center!important;
  }
  .evaluation-step>span{
    grid-row:auto!important;
    justify-self:center!important;
    align-self:center!important;
    margin:0!important;
  }
  .evaluation-step strong{
    width:100%;
    min-width:0;
    justify-self:center!important;
    align-self:center!important;
    margin:0!important;
    text-align:center!important;
    line-height:1.12!important;
  }
  .evaluation-step small{display:none!important}
}


/* ==========================================================================\n   V9.13 — Rodape legal e pagina de privacidade\n   ========================================================================== */
.footer-wrap{display:grid;gap:22px}
.footer-legal{display:flex;align-items:center;justify-content:center;gap:10px;padding-top:18px;border-top:1px solid rgba(255,255,255,.10);color:#9f8d82;font-size:.64rem;line-height:1.4;text-align:center}
.footer-legal a{color:#d8c7bc;font-weight:700;text-decoration:underline;text-decoration-color:rgba(216,199,188,.42);text-underline-offset:4px;transition:color .2s ease,text-decoration-color .2s ease}
.footer-legal a:hover{color:#fff;text-decoration-color:#fff}
.footer-dot{opacity:.55}

.privacy-page{background:linear-gradient(180deg,#fbf8f4 0,#f7ede5 38%,#fbf7f2 100%)}
.privacy-header .nav{padding-right:15px}
.privacy-back{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.56);color:var(--caramel-dark);font-size:.68rem;font-weight:800;transition:.2s ease}
.privacy-back:hover{background:#fff;transform:translateY(-1px)}
.privacy-hero{padding:132px 0 56px;background:linear-gradient(120deg,#fbf8f4,#f2dfd2)}
.privacy-hero-inner{max-width:930px}
.privacy-hero h1{max-width:9em;margin:12px 0 18px;font-size:clamp(3.8rem,7vw,6.5rem);line-height:.92}
.privacy-hero h1 em{color:var(--caramel)}
.privacy-hero p{max-width:720px;margin:0;color:var(--muted);font-size:.92rem}
.privacy-updated{display:inline-flex;margin-top:22px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.48);color:var(--muted);font-size:.62rem;font-weight:700}
.privacy-content{padding:58px 0 92px}
.privacy-grid{display:grid;grid-template-columns:minmax(210px,.34fr) minmax(0,1fr);gap:44px;align-items:start}
.privacy-summary{position:sticky;top:92px;padding:24px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.72);box-shadow:0 14px 38px rgba(78,47,30,.05)}
.privacy-summary strong{display:block;margin-bottom:12px;font-family:"Playfair Display",Georgia,serif;font-size:1.35rem;font-weight:500}
.privacy-summary p{margin:0 0 16px;color:var(--muted);font-size:.72rem}
.privacy-summary a{display:inline-flex;color:var(--caramel);font-size:.68rem;font-weight:800}
.privacy-article{display:grid;gap:14px}
.privacy-section{padding:28px 30px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.72)}
.privacy-section h2{margin:0 0 10px;font-size:1.65rem;line-height:1.05;letter-spacing:-.025em}
.privacy-section p,.privacy-section li{color:var(--muted);font-size:.78rem}
.privacy-section p{margin:0 0 10px}.privacy-section p:last-child{margin-bottom:0}
.privacy-section ul{margin:10px 0 0;padding-left:18px}.privacy-section li+li{margin-top:6px}
.privacy-callout{padding:18px 20px;border-radius:18px;background:#f3e5da;color:var(--caramel-dark);font-size:.74rem;font-weight:600}
.privacy-contact{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.privacy-contact a{display:inline-flex;align-items:center;padding:10px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--caramel-dark);font-size:.67rem;font-weight:800}

@media(max-width:820px){
  .footer-legal{justify-content:flex-start;flex-wrap:wrap;padding-top:16px;text-align:left}
  .privacy-hero{padding-top:104px}.privacy-hero h1{font-size:clamp(3.4rem,13vw,5rem)}
  .privacy-content{padding:40px 0 72px}.privacy-grid{grid-template-columns:1fr;gap:18px}.privacy-summary{position:relative;top:auto}
  .privacy-section{padding:23px 22px}.privacy-section h2{font-size:1.5rem}
}
@media(max-width:520px){
  .privacy-back{padding:9px 12px;font-size:.62rem}.privacy-hero{padding-top:94px;padding-bottom:42px}
  .privacy-hero p{font-size:.82rem}.privacy-section p,.privacy-section li{font-size:.74rem}
  .footer-legal{gap:7px;font-size:.59rem}.footer-dot{display:none}.footer-legal a{width:100%}
}


/* ========================================================================== 
   V9.15 — Procedimentos mobile: detalhe contextual sob a linha tocada
   Desktop preservado. No celular, o feedback aparece imediatamente junto
   aos cards, sem exigir que o visitante procure um painel mais abaixo.
   ========================================================================== */
.procedure-card{min-width:0}
.procedure-card>.procedure-thumb{width:100%;height:100%}
.procedure-mobile-detail,.procedure-expand-icon{display:none}

@media(max-width:520px){
  .procedure-stage{display:none!important}
  .procedure-selector{align-items:start}
  .procedure-card{min-width:0}
  .procedure-card>.procedure-thumb{height:auto}
  .procedure-thumb span{position:relative;padding-right:31px!important}
  .procedure-expand-icon{
    position:absolute;
    right:9px;
    bottom:8px;
    display:block;
    width:19px;
    height:19px;
    border:1px solid rgba(144,95,60,.26);
    border-radius:50%;
    background:rgba(255,255,255,.7);
  }
  .procedure-expand-icon:before,.procedure-expand-icon:after{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    width:7px;
    height:1px;
    background:var(--caramel);
    transform:translate(-50%,-50%);
    transition:transform .24s var(--ease),opacity .18s ease;
  }
  .procedure-expand-icon:after{transform:translate(-50%,-50%) rotate(90deg)}
  .procedure-card.is-open>.procedure-thumb{
    border-color:rgba(144,95,60,.72);
    background:#fff;
    box-shadow:0 11px 30px rgba(77,47,30,.1);
  }
  .procedure-card.is-open .procedure-expand-icon{background:#f7eee8}
  .procedure-card.is-open .procedure-expand-icon:after{opacity:0;transform:translate(-50%,-50%) rotate(0)}

  .procedure-mobile-detail{
    grid-column:1/-1;
    display:grid;
    grid-template-rows:0fr;
    min-width:0;
    margin:-2px 0 1px;
    opacity:0;
    transform:translateY(-5px);
    border:1px solid rgba(144,95,60,.22);
    border-radius:16px;
    background:rgba(255,255,255,.9);
    box-shadow:0 13px 34px rgba(78,47,30,.08);
    transition:grid-template-rows .36s var(--ease),opacity .24s ease,transform .3s var(--ease);
  }
  .procedure-mobile-detail.is-visible{grid-template-rows:1fr;opacity:1;transform:translateY(0)}
  .procedure-mobile-detail-inner{min-height:0;overflow:hidden;padding:0 17px;transition:padding .3s var(--ease)}
  .procedure-mobile-detail.is-visible .procedure-mobile-detail-inner{padding:18px 17px 17px}
  .procedure-mobile-category{
    display:block;
    margin-bottom:5px;
    color:var(--caramel);
    font-size:.55rem;
    font-weight:800;
    letter-spacing:.14em;
  }
  .procedure-mobile-detail h3{
    margin:0 0 8px;
    color:var(--ink);
    font-family:"Playfair Display",Georgia,serif;
    font-size:1.55rem;
    font-weight:500;
    line-height:1;
  }
  .procedure-mobile-detail p{margin:0;color:var(--muted);font-size:.71rem;line-height:1.55}
  .procedure-mobile-benefits{display:flex;flex-wrap:wrap;gap:6px;margin:13px 0 15px}
  .procedure-mobile-benefits span{
    padding:7px 9px;
    border:1px solid rgba(144,95,60,.18);
    border-radius:999px;
    background:#fbf6f2;
    color:#735543;
    font-size:.53rem;
    font-weight:700;
  }
  .procedure-mobile-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:44px;
    padding:0 14px;
    border-radius:12px;
    background:var(--ink);
    color:#fff;
    font-size:.65rem;
    font-weight:800;
    text-decoration:none;
    letter-spacing:.02em;
  }
  .procedure-mobile-cta b{font-size:.9rem;font-weight:400}
  .procedure-mobile-detail small{display:block;margin-top:10px;color:#907a6f;font-size:.5rem;line-height:1.45}
}

@media(prefers-reduced-motion:reduce){
  .procedure-mobile-detail,.procedure-expand-icon:before,.procedure-expand-icon:after{transition:none!important}
}
