:root { --moss:#6b7a4a; --moss-deep:#526035; --gold:#c99933; --beige:#e8d5b0; --ink:#111110; --white:#fff; --muted:#ded7c8; --line:rgba(17,17,16,.16); --sans:"Open Sans", Arial, sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:80px; }
body { margin:0; background:var(--white); color:var(--ink); font-family:var(--sans); font-size:16px; line-height:1.6; }
img { display:block; max-width:100%; } a { color:inherit; text-decoration:none; } button { font:inherit; } .sr-only { clip:rect(0,0,0,0); clip-path:inset(50%); height:1px; overflow:hidden; position:absolute; white-space:nowrap; width:1px; }
.skip-link { background:var(--gold); color:var(--ink); left:16px; padding:10px 14px; position:fixed; top:-60px; z-index:20; } .skip-link:focus { top:16px; }
.site-header { align-items:center; background:rgba(255,255,255,.92); border-bottom:1px solid rgba(17,17,16,.07); display:flex; height:80px; justify-content:space-between; left:0; padding:12px clamp(20px,4vw,72px); position:fixed; right:0; top:0; z-index:10; backdrop-filter:blur(12px); }
.brand { display:block; width:142px; } .brand img { width:100%; height:auto; } .main-nav { display:flex; gap:clamp(15px,2vw,34px); } .main-nav a { color:#535348; font-size:13px; font-weight:600; position:relative; } .main-nav a:after { background:var(--gold); bottom:-8px; content:""; height:2px; left:0; position:absolute; transform:scaleX(0); transform-origin:left; transition:transform .25s ease; width:100%; } .main-nav a:hover:after,.main-nav a.active:after { transform:scaleX(1); } .header-cta { background:var(--moss); color:var(--white); font-size:12px; font-weight:700; padding:11px 17px; transition:background .25s ease, transform .25s ease; } .header-cta:hover { background:var(--ink); transform:translateY(-2px); } .header-cta span { color:var(--beige); }
.menu-toggle { display:none; }
.hero { background:var(--ink); color:var(--white); min-height:100svh; overflow:hidden; padding:clamp(150px,18vw,205px) clamp(24px,9vw,150px) 88px; position:relative; } .hero-content { max-width:770px; position:relative; z-index:2; } .eyebrow { font-size:11px; font-weight:700; letter-spacing:.145em; margin:0 0 20px; text-transform:uppercase; } .eyebrow:before { background:currentColor; content:""; display:inline-block; height:1px; margin:0 10px 4px 0; width:30px; } .eyebrow-green { color:var(--moss); } .eyebrow-gold { color:var(--gold); }
h1,h2,h3,p { margin-top:0; } h1,h2,h3 { font-weight:500; letter-spacing:-.055em; line-height:1.06; } h1 { font-size:clamp(48px,7.1vw,104px); margin-bottom:25px; } h2 { font-size:clamp(35px,4.6vw,68px); } h3 { font-size:26px; } .hero-lead { color:#e5e1d8; font-size:clamp(17px,1.45vw,21px); max-width:630px; } .hero-actions { align-items:center; display:flex; flex-wrap:wrap; gap:28px; margin-top:39px; }
.button { align-items:center; display:inline-flex; font-size:13px; font-weight:700; gap:18px; justify-content:center; padding:15px 21px; transition:transform .25s ease, background .25s ease, color .25s ease; } .button span { font-size:18px; line-height:1; } .button:hover { transform:translateY(-3px); } .button-gold { background:var(--gold); color:var(--ink); } .button-gold:hover { background:var(--beige); } .button-outline { border:1px solid currentColor; color:var(--white); } .button-outline:hover { background:var(--white); color:var(--moss); } .text-link { border-bottom:1px solid rgba(255,255,255,.5); color:var(--white); font-size:13px; font-weight:700; padding-bottom:4px; transition:border-color .2s ease,color .2s ease; } .text-link:hover { border-color:var(--gold); color:var(--gold); } .text-link-dark { border-color:var(--moss); color:var(--moss); }
.hero-note { align-items:center; color:#bcb9af; display:flex; font-size:12px; gap:9px; margin-top:55px; } .hero-note span { background:var(--gold); border-radius:50%; display:inline-block; height:7px; width:7px; }.hero-media { background:linear-gradient(90deg, var(--ink) 1%, rgba(17,17,16,.74) 38%, rgba(17,17,16,.14) 90%), url('assets/images/clinica-vert-hero.png') center/cover; inset:0 0 0 42%; opacity:.83; position:absolute; } .hero-media:after { background:linear-gradient(0deg,var(--ink),transparent 32%); content:""; inset:0; position:absolute; }
.spine-art { position:absolute; z-index:1; } .hero-spine { opacity:.22; right:6vw; top:15%; transform:rotate(12deg); } .spine-art i { background:var(--moss); border-radius:60% 40% 55% 45%; display:block; height:clamp(18px,2.8vw,42px); margin:clamp(7px,1vw,14px); transform:rotate(var(--r,0deg)); width:clamp(47px,6.5vw,94px); } .spine-art i:nth-child(odd){--r:8deg;} .spine-art i:nth-child(3n){background:var(--gold);--r:-7deg;} .scroll-cue { align-items:center; bottom:30px; color:#bbb8b0; display:flex; font-size:10px; gap:9px; letter-spacing:.11em; position:absolute; text-transform:uppercase; z-index:2; }.scroll-cue span { border:1px solid var(--gold); border-radius:50%; display:block; height:9px; width:9px; }
.section-space { padding:clamp(88px,11vw,170px) clamp(24px,9vw,150px); }.manifesto { background:#f6f4ef; }.manifesto-grid { display:grid; gap:clamp(35px,9vw,160px); grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); }.manifesto h2 { margin-bottom:0; }.manifesto-copy { max-width:470px; }.manifesto-copy p { font-size:18px; }.manifesto-copy p:last-child { color:var(--moss-deep); font-weight:600; }
.about { background:var(--beige); display:grid; grid-template-columns:1fr 1fr; }.about-image { min-height:670px; overflow:hidden; position:relative; }.about-image-photo { background:url('assets/images/clinica-vert-metodo.png') center/cover; height:100%; inset:0; position:absolute; }.about-badge { background:var(--moss); bottom:0; color:var(--white); display:flex; flex-direction:column; left:0; max-width:250px; padding:27px 30px; position:absolute; }.about-badge strong { color:var(--gold); font-size:43px; font-weight:600; letter-spacing:-.07em; line-height:1; }.about-badge span { font-size:12px; line-height:1.4; margin-top:8px; }.about-content { align-self:center; padding:clamp(70px,10vw,150px) clamp(28px,9vw,130px); }.about-content h2 { margin-bottom:28px; }.about-content > p { max-width:490px; }.credentials { display:flex; flex-wrap:wrap; gap:8px; margin:34px 0; }.credentials span { border:1px solid rgba(82,96,53,.4); color:var(--moss-deep); font-size:11px; font-weight:700; padding:8px 11px; }
.process { background:var(--moss); color:var(--white); }.process-heading { display:flex; gap:30px; justify-content:space-between; }.process-heading h2 { max-width:690px; }.process-list { border-top:1px solid rgba(255,255,255,.35); list-style:none; margin:65px 0 0; padding:0; }.process-list li { align-items:start; border-bottom:1px solid rgba(255,255,255,.35); display:grid; gap:clamp(25px,9vw,160px); grid-template-columns:120px 1fr; padding:30px 0; }.process-list li>span { color:var(--gold); font-size:14px; font-weight:700; }.process-list h3 { margin-bottom:10px; }.process-list p { color:#e5e8db; margin-bottom:0; max-width:500px; }
.services { background:var(--ink); color:var(--white); padding:clamp(88px,11vw,170px) clamp(24px,9vw,150px) 0; }.services-heading { max-width:720px; }.services-heading > p:last-child { color:#c4c1b8; max-width:580px; }.service-grid { display:grid; gap:1px; grid-template-columns:repeat(3,1fr); margin-top:60px; }.service-card { background:#1b1b1a; min-height:315px; padding:30px; position:relative; transition:background .3s ease,transform .3s ease; }.service-card:nth-child(4) { grid-column:1/2; }.service-card:nth-child(5) { grid-column:2/4; }.service-card:hover { background:var(--moss); transform:translateY(-7px); }.service-number { color:var(--gold); font-size:12px; font-weight:700; }.service-card h3 { font-size:27px; margin:48px 0 12px; max-width:275px; }.service-card p { color:#c7c4bd; font-size:14px; max-width:330px; }.service-card a { bottom:27px; color:var(--gold); font-size:12px; font-weight:700; position:absolute; }.service-card a span { font-size:16px; margin-left:8px; }.services-question { align-items:center; background:var(--moss); display:flex; gap:25px; justify-content:space-between; margin:0 -0px; padding:28px 30px; }.services-question p { font-size:18px; font-weight:600; margin:0; }
.testimonials { background:#f6f4ef; display:grid; gap:clamp(40px,9vw,150px); grid-template-columns:.8fr 1.2fr; padding:clamp(88px,11vw,170px) clamp(24px,9vw,150px); }.testimonials-intro h2 { margin-bottom:23px; }.testimonial-stage { background:var(--beige); display:flex; flex-direction:column; min-height:425px; padding:clamp(30px,6vw,70px); position:relative; }.quote-mark { color:var(--gold); font-family:Georgia,serif; font-size:100px; height:65px; line-height:1; margin-bottom:25px; }.testimonial-placeholder { font-size:clamp(22px,2.5vw,34px); letter-spacing:-.04em; line-height:1.25; max-width:610px; }.testimonial-meta { border-top:1px solid rgba(17,17,16,.2); display:flex; font-size:11px; font-weight:700; justify-content:space-between; margin-top:auto; padding-top:17px; text-transform:uppercase; }.slider-controls { align-items:center; bottom:24px; display:flex; gap:16px; position:absolute; right:28px; }.slider-controls button { background:none; border:1px solid rgba(17,17,16,.35); cursor:pointer; height:34px; width:34px; }.slider-controls span { font-size:11px; }.slider-controls i { background:var(--ink); display:inline-block; height:1px; margin:0 4px 3px; width:18px; }
.contact { background:var(--moss); color:var(--white); display:grid; grid-template-columns:1fr 1fr; }.contact-map { background:url('assets/images/clinica-vert-recepcao.png') center/cover; min-height:650px; position:relative; }.contact-map:after { background:rgba(17,17,16,.16); content:""; inset:0; position:absolute; }.contact-map iframe { border:0; bottom:22px; height:190px; left:22px; position:absolute; right:22px; width:calc(100% - 44px); z-index:1; }.contact-content { align-self:center; padding:clamp(70px,10vw,140px) clamp(28px,8vw,130px); }.contact-content h2 { margin-bottom:22px; }.contact-content>p { color:#e4e7dc; max-width:460px; }.contact-content address { border-top:1px solid rgba(255,255,255,.35); font-size:16px; font-style:normal; margin:34px 0; padding-top:25px; }.contact-actions { align-items:center; display:flex; flex-wrap:wrap; gap:25px; }.contact-disclaimer { font-size:11px; margin-top:35px; opacity:.72; }.footer { align-items:center; background:var(--ink); color:#bdb9af; display:flex; font-size:12px; gap:28px; justify-content:space-between; padding:29px clamp(24px,5vw,75px); }.footer .brand { width:116px; }.footer p { margin:0; }.footer>a:last-child { color:var(--gold); }.whatsapp-placeholder { align-items:center; background:var(--gold); border:1px solid rgba(17,17,16,.15); border-radius:30px; bottom:22px; box-shadow:0 8px 25px rgba(0,0,0,.2); color:var(--ink); display:flex; font-size:12px; font-weight:700; gap:7px; padding:10px 15px; position:fixed; right:22px; z-index:8; }.whatsapp-placeholder span:first-child { font-size:21px; line-height:.5; }
.reveal { opacity:0; transform:translateY(22px); transition:opacity .7s ease,transform .7s ease; }.reveal.visible { opacity:1; transform:none; }
.page-hero { align-items:flex-end; background-color:var(--ink); background-position:center; background-size:cover; color:var(--white); display:flex; min-height:65vh; padding:clamp(150px,17vw,220px) clamp(24px,9vw,150px) clamp(65px,8vw,120px); position:relative; }.page-hero:before { background:linear-gradient(90deg,rgba(17,17,16,.95),rgba(17,17,16,.64) 48%,rgba(17,17,16,.14)); content:""; inset:0; position:absolute; }.page-hero-copy { max-width:760px; position:relative; z-index:1; }.page-hero-copy h1 { font-size:clamp(48px,6.4vw,92px); margin-bottom:20px; }.page-hero-copy>p:last-child { color:#e5e1d8; font-size:18px; max-width:580px; }.page-hero-about { background-image:url('assets/images/clinica-vert-metodo.png'); background-position:center 38%; }.page-hero-services { background-image:url('assets/images/clinica-vert-hero.png'); }.page-hero-testimonials { background-image:linear-gradient(90deg,rgba(82,96,53,.94),rgba(82,96,53,.7)),url('assets/images/clinica-vert-recepcao.png'); }.page-hero-contact { background-image:url('assets/images/clinica-vert-recepcao.png'); }.page-about .about-image { min-height:630px; }.services-page { min-height:calc(100vh - 80px); padding-bottom:70px; }.testimonials-page { min-height:550px; }.home-proof { display:grid; gap:clamp(45px,10vw,180px); grid-template-columns:1fr 1fr; }.home-proof-number { align-items:flex-start; color:var(--moss); display:flex; flex-direction:column; justify-content:center; }.home-proof-number span { color:var(--gold); font-size:clamp(72px,11vw,165px); font-weight:600; letter-spacing:-.1em; line-height:.8; }.home-proof-number p { font-size:clamp(18px,1.9vw,26px); line-height:1.3; margin:25px 0 0; }.home-proof-copy { max-width:560px; }.home-proof-copy h2 { margin-bottom:22px; }.final-cta { background:var(--ink); color:var(--white); padding:clamp(80px,11vw,155px) clamp(24px,9vw,150px); text-align:center; }.final-cta h2 { margin:0 auto 36px; max-width:840px; }.final-cta .button { min-width:270px; }
@media (max-width: 850px) { .site-header { height:70px; padding:10px 20px; }.brand { width:120px; }.menu-toggle { background:none; border:0; display:grid; gap:5px; padding:8px; z-index:2; }.menu-toggle span:not(.sr-only) { background:var(--ink); display:block; height:1.5px; transition:transform .2s ease; width:24px; }.main-nav { background:var(--white); box-shadow:0 18px 30px rgba(0,0,0,.1); display:flex; flex-direction:column; gap:0; left:0; opacity:0; padding:80px 24px 25px; pointer-events:none; position:absolute; right:0; top:0; transform:translateY(-12px); transition:opacity .2s ease,transform .2s ease; }.main-nav.open { opacity:1; pointer-events:auto; transform:none; }.main-nav a { border-bottom:1px solid var(--line); font-size:17px; padding:13px 0; }.main-nav a:after { display:none; }.header-cta { display:none; }.hero { padding:145px 24px 95px; }.hero-media { inset:0; opacity:.36; }.hero-spine { right:-15%; top:18%; }.manifesto-grid,.testimonials,.home-proof { grid-template-columns:1fr; }.about,.contact { grid-template-columns:1fr; }.about-image { min-height:520px; }.about-content,.contact-content { padding:75px 24px; }.process-heading { display:block; }.process-list { margin-top:45px; }.service-grid { grid-template-columns:1fr; }.service-card,.service-card:nth-child(4),.service-card:nth-child(5) { grid-column:auto; min-height:280px; }.contact-map { min-height:400px; order:2; }.contact-content { order:1; }.footer { align-items:flex-start; flex-direction:column; gap:12px; }.slider-controls { position:static; margin-top:28px; }.testimonial-stage { min-height:370px; }.section-space,.testimonials { padding-left:24px; padding-right:24px; }.page-hero { min-height:560px; padding:140px 24px 68px; }.page-hero:before { background:linear-gradient(90deg,rgba(17,17,16,.9),rgba(17,17,16,.45)); }.home-proof-number span { font-size:105px; } }
@media (max-width: 480px) { h1 { font-size:47px; } h2 { font-size:37px; }.hero-actions { align-items:flex-start; flex-direction:column; gap:21px; }.hero-note { margin-top:42px; }.about-image { min-height:410px; }.about-badge { max-width:205px; padding:20px; }.process-list li { gap:12px; grid-template-columns:65px 1fr; }.services-question { align-items:flex-start; flex-direction:column; }.button { width:100%; }.contact-actions { align-items:stretch; flex-direction:column; }.contact-actions .text-link { align-self:flex-start; }.whatsapp-placeholder span:last-child { display:none; }.whatsapp-placeholder { border-radius:50%; height:50px; justify-content:center; padding:0; width:50px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } *,*:before,*:after { animation-duration:.01ms!important; scroll-behavior:auto!important; transition-duration:.01ms!important; } .reveal { opacity:1; transform:none; } }
.statement-list p { border-bottom:1px solid var(--line); font-size:clamp(19px,2vw,28px); letter-spacing:-.04em; line-height:1.25; margin:0; padding:16px 0; }.proof-placeholder { border-left:2px solid var(--gold); color:var(--moss-deep); font-size:20px; font-weight:700; padding:12px 0 12px 20px; }.validation-note { color:var(--gold); font-size:12px; font-weight:700; }.process .button { margin-top:48px; }.gallery { background:#f6f4ef; }.gallery h2 { margin-bottom:42px; }.gallery-grid { display:grid; gap:14px; grid-template-columns:1.25fr 1fr 1fr; }.gallery-grid img { height:320px; object-fit:cover; width:100%; }@media (max-width:850px) { .gallery-grid { grid-template-columns:1fr; }.gallery-grid img { height:260px; } }
.site-header { border-bottom-color:rgba(201,153,51,.34); }

/* Direção editorial: fotografia humana, camadas e contraste da Identidade Visual 2026. */
.hero { align-items:flex-end; background:#191a16; display:flex; isolation:isolate; min-height:min(100svh,940px); padding:clamp(135px,14vw,185px) clamp(24px,9vw,150px) clamp(82px,8vw,120px); }
.hero:before { background:linear-gradient(105deg,rgba(10,11,9,.98) 0%,rgba(10,11,9,.9) 27%,rgba(10,11,9,.43) 56%,rgba(10,11,9,.04) 78%),linear-gradient(0deg,rgba(10,11,9,.65),transparent 52%); content:""; inset:0; position:absolute; z-index:0; }
.hero:after { border:1px solid rgba(232,213,176,.55); border-radius:50%; content:""; height:clamp(180px,26vw,430px); position:absolute; right:clamp(-105px,-4vw,-30px); top:clamp(105px,10vw,160px); width:clamp(180px,26vw,430px); z-index:1; }
.hero-media { background:linear-gradient(90deg,rgba(17,17,16,.12),rgba(17,17,16,.05)),url('assets/images/clinica-vert-hero-movimento.png') center/cover; inset:0; opacity:1; transform:scale(1.015); transition:transform 1.4s cubic-bezier(.2,.65,.24,1); }
.hero:hover .hero-media { transform:scale(1.05); }.hero-media:after { background:linear-gradient(0deg,rgba(12,13,11,.62),transparent 36%); }.hero-content { max-width:670px; padding-bottom:12px; }.hero h1 { font-size:clamp(44px,5.45vw,82px); line-height:.98; margin-bottom:28px; text-wrap:balance; }.hero .eyebrow { color:var(--beige); max-width:480px; }.hero-lead { font-size:clamp(16px,1.25vw,19px); max-width:590px; }
.hero-spine { bottom:clamp(95px,9vw,130px); opacity:.7; right:clamp(20px,9vw,150px); top:auto; transform:rotate(-26deg) scale(.62); z-index:1; }.hero-spine i { box-shadow:0 8px 25px rgba(0,0,0,.22); }.scroll-cue { bottom:29px; }
.home-about .about-image-photo { background-image:url('assets/images/clinica-vert-avaliacao.png'); background-position:center; }.page-about .about-image-photo { background-image:url('assets/images/clinica-vert-equilibrio.png'); background-position:center; }.about-image:after { background:linear-gradient(160deg,transparent 52%,rgba(201,153,51,.84) 52% 57%,transparent 57%); content:""; inset:0; pointer-events:none; position:absolute; }
.page-hero-about { background-image:url('assets/images/clinica-vert-avaliacao.png'); background-position:center 42%; }.page-hero-services { background-image:url('assets/images/clinica-vert-movimento-guiado.png'); }.page-hero-testimonials { background-image:linear-gradient(90deg,rgba(82,96,53,.94),rgba(82,96,53,.3)),url('assets/images/clinica-vert-movimento-guiado.png'); }.page-hero-contact { background-image:url('assets/images/clinica-vert-hero-movimento.png'); background-position:center; }.page-hero:after { border:1px solid rgba(232,213,176,.48); content:""; height:110px; position:absolute; right:8vw; top:112px; transform:rotate(45deg); width:110px; }
.service-card { isolation:isolate; overflow:hidden; }.service-card:before { background:var(--card-image,none) center/cover; content:""; inset:0; opacity:0; position:absolute; transform:scale(1.08); transition:opacity .45s ease,transform .7s cubic-bezier(.2,.65,.24,1); z-index:-2; }.service-card:after { background:linear-gradient(165deg,rgba(17,17,16,.15),rgba(17,17,16,.88) 70%); content:""; inset:0; opacity:0; position:absolute; transition:opacity .4s ease; z-index:-1; }.service-card:nth-child(1) { --card-image:url('assets/images/clinica-vert-equilibrio.png'); }.service-card:nth-child(2) { --card-image:url('assets/images/clinica-vert-movimento-guiado.png'); }.service-card:nth-child(3) { --card-image:url('assets/images/clinica-vert-hero-movimento.png'); }.service-card:nth-child(4) { --card-image:url('assets/images/clinica-vert-avaliacao.png'); }.service-card:nth-child(5) { --card-image:url('assets/images/clinica-vert-metodo.png'); }.service-card:hover:before,.service-card:hover:after { opacity:1; }.service-card:hover:before { transform:scale(1); }.service-card:hover { background:var(--moss-deep); }
.footer-rich { align-items:start; background:var(--ink); display:grid; gap:42px; grid-template-columns:1.55fr .8fr .85fr; padding:clamp(62px,8vw,115px) clamp(24px,9vw,150px) 32px; position:relative; }.footer-rich:before { background:linear-gradient(90deg,var(--gold),var(--beige),transparent); content:""; height:2px; left:clamp(24px,9vw,150px); position:absolute; right:clamp(24px,9vw,150px); top:0; }.footer-rich .footer-brand { max-width:285px; }.footer-rich .brand { margin-bottom:28px; width:165px; }.footer-rich p { color:#cbc7bd; font-size:13px; line-height:1.55; }.footer-label { color:var(--gold)!important; font-size:10px!important; font-weight:700; letter-spacing:.15em; margin:4px 0 17px!important; text-transform:uppercase; }.footer-column nav { display:grid; gap:9px; }.footer-column a { color:var(--white); display:block; font-size:13px; transition:color .2s ease,transform .2s ease; }.footer-column a:hover { color:var(--gold); transform:translateX(4px); }.footer-contact>p:not(.footer-label) { margin-bottom:16px; }.footer-contact a { margin-bottom:9px; }.footer-contact span { color:var(--gold); margin-left:5px; }.footer-legal { border-top:1px solid rgba(255,255,255,.18); color:#8f8c84!important; font-size:10px!important; grid-column:1/-1; letter-spacing:.1em; margin:15px 0 0!important; padding-top:20px; text-transform:uppercase; }
@media (max-width:850px) { .hero { min-height:760px; padding-top:128px; }.hero:before { background:linear-gradient(90deg,rgba(10,11,9,.95),rgba(10,11,9,.64)),linear-gradient(0deg,rgba(10,11,9,.65),transparent 56%); }.hero:after { right:-80px; top:95px; }.hero h1 { font-size:clamp(46px,12.6vw,66px); }.hero-spine { right:-20px; bottom:102px; transform:rotate(-26deg) scale(.44); }.page-hero:after { right:20px; top:92px; }.footer-rich { gap:32px; grid-template-columns:1.2fr 1fr; }.footer-rich .footer-brand { grid-column:1/-1; }.footer-legal { margin-top:0!important; } }
@media (max-width:540px) { .hero { min-height:690px; padding-bottom:75px; }.hero h1 { font-size:clamp(43px,12.8vw,59px); }.hero-lead { font-size:15px; }.hero-spine { display:none; }.footer-rich { grid-template-columns:1fr; }.footer-rich .footer-brand { grid-column:auto; }.footer-legal { grid-column:auto; }.footer-rich .brand { width:145px; } }
@media (prefers-reduced-motion:reduce) { .hero-media,.service-card:before { transition:none; }.hero:hover .hero-media { transform:none; } }
.service-card>* { position:relative; z-index:1; }.service-card:before { opacity:.32; z-index:0; }.service-card:after { opacity:1; z-index:0; }.service-grid-home .service-card:before { opacity:.2; }.service-card:hover:before { opacity:.78; }.service-card:hover:after { opacity:1; }

/* Navegação flutuante em formato de cápsula. */
.site-header { border:1px solid rgba(232,213,176,.84); border-radius:999px; box-shadow:0 16px 42px rgba(17,17,16,.18),0 3px 9px rgba(17,17,16,.08); height:70px; left:clamp(12px,1.7vw,28px); padding:9px 12px 9px clamp(16px,2vw,27px); right:clamp(12px,1.7vw,28px); top:16px; transition:background .3s ease,box-shadow .3s ease,transform .3s ease; }
.site-header:hover { box-shadow:0 20px 50px rgba(17,17,16,.24),0 3px 9px rgba(17,17,16,.08); transform:translateY(1px); }.site-header .brand { width:130px; }.main-nav { align-items:center; background:rgba(232,213,176,.34); border:1px solid rgba(107,122,74,.14); border-radius:999px; gap:3px; padding:4px; }.main-nav a { border-radius:999px; color:var(--moss-deep); font-size:12px; letter-spacing:.005em; padding:9px 14px; transition:background .25s ease,color .25s ease,box-shadow .25s ease,transform .25s cubic-bezier(.2,.9,.25,1); }.main-nav a:after { display:none; }.main-nav a:hover { background:var(--white); box-shadow:0 5px 14px rgba(17,17,16,.12); color:var(--ink); transform:translateY(-2px); }.main-nav a.active { background:var(--moss); box-shadow:0 5px 14px rgba(82,96,53,.32); color:var(--white); }.main-nav a:focus-visible,.header-cta:focus-visible,.menu-toggle:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }.header-cta { align-items:center; border:1px solid rgba(17,17,16,.12); border-radius:999px; box-shadow:0 7px 17px rgba(82,96,53,.27); display:inline-flex; font-size:12px; gap:9px; padding:13px 20px; }.header-cta:hover { background:var(--gold); box-shadow:0 10px 24px rgba(201,153,51,.35); color:var(--ink); transform:translateY(-3px) scale(1.025); }.header-cta span { transition:transform .25s ease; }.header-cta:hover span { color:var(--ink); transform:translate(2px,-2px); }
@media (max-width:850px) { .site-header { border-radius:24px; height:64px; left:9px; padding:8px 12px 8px 17px; right:9px; top:9px; }.site-header .brand { width:111px; }.menu-toggle { align-items:center; background:var(--moss); border-radius:50%; display:flex; height:40px; justify-content:center; padding:0; width:40px; }.menu-toggle span:not(.sr-only) { background:var(--white); width:18px; }.main-nav { background:rgba(255,255,255,.98); border:1px solid rgba(232,213,176,.9); border-radius:25px; box-shadow:0 18px 42px rgba(17,17,16,.18); gap:5px; left:0; padding:10px; right:0; top:calc(100% + 10px); transform:translateY(-8px) scale(.98); }.main-nav.open { transform:translateY(0) scale(1); }.main-nav a { border:0; border-radius:15px; font-size:16px; padding:12px 15px; }.main-nav a.active { box-shadow:none; }.menu-toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(3.25px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }.menu-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-3.25px) rotate(-45deg); } }
.hero-highlight { color:var(--gold); font-weight:700; position:relative; text-shadow:0 7px 22px rgba(201,153,51,.14); white-space:nowrap; }.hero-highlight:after { background:var(--gold); bottom:-.07em; content:""; height:.055em; left:.03em; opacity:.68; position:absolute; right:.03em; transform:scaleX(0); transform-origin:left; transition:transform .65s cubic-bezier(.2,.9,.25,1) .28s; }.hero .reveal.visible .hero-highlight:after { transform:scaleX(1); }
.services { background:#f6f4ef; color:var(--ink); padding-bottom:clamp(74px,9vw,130px); }.services-heading { max-width:810px; }.services-heading h2 { max-width:720px; }.services-heading .eyebrow { color:var(--moss); }.service-grid { gap:18px; margin-top:52px; }.service-card { background:var(--white); border:1px solid rgba(107,122,74,.18); border-radius:25px; box-shadow:0 12px 30px rgba(82,96,53,.12); min-height:335px; padding:32px; transition:box-shadow .35s ease,transform .35s cubic-bezier(.2,.9,.25,1),border-color .35s ease; }.service-card:before { opacity:.7; }.service-card:after { background:linear-gradient(180deg,rgba(255,255,255,.06) 5%,rgba(255,255,255,.93) 81%); opacity:1; }.service-number { color:var(--moss); }.service-card h3 { color:var(--ink); margin-top:46px; max-width:300px; }.service-card p { color:#435038; font-size:14px; font-weight:500; }.service-card a { color:var(--moss-deep); }.service-card a span { color:var(--gold); }.service-card:hover { background:var(--white); border-color:rgba(201,153,51,.65); box-shadow:0 21px 43px rgba(82,96,53,.2); transform:translateY(-8px); }.service-card:hover:before { opacity:.92; }.service-card:hover:after { background:linear-gradient(180deg,rgba(255,255,255,.03) 8%,rgba(255,255,255,.88) 78%); }.services-question { background:var(--moss); border-radius:0 0 25px 25px; box-shadow:0 15px 30px rgba(82,96,53,.17); margin:18px 0 0; }.services-question .button-outline { border-radius:999px; }.services-page { min-height:auto; }.services-page .service-card { min-height:370px; }
@media (max-width:850px) { .service-grid { gap:13px; margin-top:36px; }.service-card { border-radius:20px; min-height:272px; padding:26px; }.services-question { border-radius:0 0 20px 20px; margin-top:13px; }.services-page .service-card { min-height:320px; } }
.services { background:var(--beige); }.service-grid-home .service-card:before { opacity:.74; }.service-card:after { background:linear-gradient(180deg,rgba(255,255,255,.04) 8%,rgba(255,255,255,.82) 78%); }.service-card:hover:after { background:linear-gradient(180deg,rgba(255,255,255,.02) 8%,rgba(255,255,255,.76) 74%); }
.service-card:after { background:linear-gradient(180deg,rgba(255,255,255,.02) 10%,rgba(255,255,255,.68) 76%); }.service-card:hover:after { background:linear-gradient(180deg,rgba(255,255,255,0) 10%,rgba(255,255,255,.61) 74%); }
@keyframes whatsapp-pulse { 0%,100% { box-shadow:0 10px 24px rgba(17,17,16,.22),0 0 0 0 rgba(201,153,51,.52); } 50% { box-shadow:0 14px 30px rgba(17,17,16,.27),0 0 0 11px rgba(201,153,51,0); } }
.whatsapp-placeholder { animation:whatsapp-pulse 2.2s ease-in-out infinite; background:var(--gold); border:2px solid rgba(255,255,255,.74); bottom:28px; border-radius:999px; font-size:14px; gap:11px; min-height:60px; padding:0 23px 0 10px; right:28px; transition:background .25s ease,box-shadow .25s ease,transform .25s cubic-bezier(.2,.9,.25,1); }.whatsapp-placeholder span:first-child { align-items:center; background:var(--moss); border-radius:50%; display:flex; height:40px; justify-content:center; width:40px; }.whatsapp-placeholder svg { fill:var(--white); height:22px; width:22px; }.whatsapp-placeholder span:last-child { font-size:14px; letter-spacing:.01em; }.whatsapp-placeholder:hover { animation-play-state:paused; background:var(--beige); box-shadow:0 16px 32px rgba(17,17,16,.25); transform:translateY(-5px) scale(1.04); }
@media (max-width:480px) { .whatsapp-placeholder { bottom:18px; height:58px; min-height:58px; padding:0; right:18px; width:58px; }.whatsapp-placeholder span:first-child { height:44px; width:44px; } }
@media (prefers-reduced-motion:reduce) { .whatsapp-placeholder { animation:none; } }
.footer-rich { grid-template-columns:1.15fr minmax(235px,.92fr) .62fr .78fr; }.footer-map { border:1px solid rgba(232,213,176,.42); border-radius:22px; box-shadow:0 14px 30px rgba(0,0,0,.18); min-height:190px; overflow:hidden; position:relative; }.footer-map:after { background:linear-gradient(0deg,rgba(17,17,16,.64),transparent 54%); content:""; inset:0; pointer-events:none; position:absolute; }.footer-map iframe { border:0; filter:saturate(.65) contrast(.92); height:100%; inset:0; position:absolute; width:100%; }.footer-map a { align-items:center; background:rgba(17,17,16,.78); border:1px solid rgba(232,213,176,.72); border-radius:999px; bottom:13px; color:var(--white); display:inline-flex; font-size:11px; font-weight:700; gap:7px; left:13px; padding:8px 12px; position:absolute; transition:background .2s ease,transform .2s ease; z-index:2; }.footer-map a:hover { background:var(--moss); transform:translateY(-2px); }.footer-map a span { color:var(--gold); font-size:14px; }.footer-legal { align-items:center; display:flex; gap:16px; justify-content:space-between; }.footer-legal span:last-child { color:var(--beige); text-align:right; }
@media (max-width:850px) { .footer-rich { grid-template-columns:1fr 1fr; }.footer-map { grid-column:1/-1; min-height:205px; }.footer-legal { flex-direction:column; align-items:flex-start; }.footer-legal span:last-child { text-align:left; } }
@media (max-width:540px) { .footer-map { min-height:185px; }.footer-legal { gap:8px; } }
.final-cta { background:linear-gradient(90deg,rgba(82,96,53,.96) 0%,rgba(82,96,53,.78) 46%,rgba(17,17,16,.22) 100%),url('assets/images/clinica-vert-movimento-guiado.png') center/cover; isolation:isolate; overflow:hidden; position:relative; }.final-cta:before { border:1px solid rgba(232,213,176,.56); border-radius:50%; content:""; height:clamp(180px,28vw,390px); left:clamp(-150px,-6vw,-75px); position:absolute; top:50%; transform:translateY(-50%); width:clamp(180px,28vw,390px); }.final-cta:after { background:linear-gradient(0deg,rgba(17,17,16,.18),transparent 48%); content:""; inset:0; position:absolute; z-index:-1; }.final-cta h2,.final-cta .button { position:relative; z-index:1; }.final-cta h2 { max-width:900px; text-shadow:0 8px 24px rgba(17,17,16,.18); }.cta-highlight { color:var(--beige); font-weight:700; }.final-cta .button { border:1px solid rgba(255,255,255,.65); border-radius:999px; box-shadow:0 12px 25px rgba(17,17,16,.2); }.final-cta .button:hover { box-shadow:0 18px 31px rgba(17,17,16,.24); }
.page-hero-about { background-color:var(--moss); min-height:370px; padding-bottom:58px; padding-top:155px; }.page-hero-about:before { background:linear-gradient(90deg,rgba(82,96,53,.9),rgba(82,96,53,.52) 55%,rgba(232,213,176,.12)); }.page-hero-about .page-hero-copy h1 { font-size:clamp(46px,5.2vw,68px); margin:0; }.page-hero-about:after { border-color:rgba(232,213,176,.78); top:95px; }
.process { background:#edf0e3; color:var(--ink); overflow:hidden; position:relative; }.process:before { background:var(--beige); border-radius:50%; content:""; height:430px; position:absolute; right:-200px; top:-245px; width:430px; }.process-heading { background:var(--white); border:1px solid rgba(107,122,74,.17); border-radius:28px 28px 0 0; justify-content:center; padding:clamp(38px,5vw,66px) 30px; position:relative; text-align:center; }.process-heading h2 { font-size:clamp(40px,5vw,72px); margin:0; }.process-list { border:0; display:grid; gap:18px; grid-template-columns:repeat(3,1fr); margin:18px 0 0; position:relative; }.process-list:before { background:var(--moss); content:""; height:1px; left:12%; opacity:.35; position:absolute; right:12%; top:52px; }.process-list li { background:var(--white); border:1px solid rgba(107,122,74,.16); border-radius:24px; box-shadow:0 16px 32px rgba(82,96,53,.11); display:block; min-height:275px; padding:30px; position:relative; transition:box-shadow .3s ease,transform .3s cubic-bezier(.2,.9,.25,1); }.process-list li:hover { box-shadow:0 24px 38px rgba(82,96,53,.18); transform:translateY(-8px); }.process-list li>span { align-items:center; background:var(--moss); border:4px solid #edf0e3; border-radius:50%; color:var(--beige); display:flex; font-size:12px; height:47px; justify-content:center; position:relative; width:47px; z-index:1; }.process-list li:nth-child(2)>span { background:var(--gold); color:var(--ink); }.process-list h3 { color:var(--moss-deep); font-size:27px; margin:46px 0 12px; }.process-list p { color:#435038; font-size:15px; margin:0; }.process .button { border-radius:999px; box-shadow:0 12px 24px rgba(201,153,51,.24); position:relative; }.process .button:hover { box-shadow:0 17px 30px rgba(201,153,51,.3); }
@media (max-width:850px) { .page-hero-about { min-height:295px; padding:132px 24px 45px; }.page-hero-about .page-hero-copy h1 { font-size:48px; }.process-heading { border-radius:22px 22px 0 0; }.process-list { grid-template-columns:1fr; }.process-list:before { bottom:10%; height:auto; left:52px; right:auto; top:52px; width:1px; }.process-list li { min-height:0; padding:26px; }.process-list h3 { margin-top:32px; }.process:before { right:-285px; } }
.hero { height:min(100svh,860px); min-height:min(100svh,760px); }.hero-content { max-width:min(860px,64vw); width:100%; }.hero h1 { font-size:clamp(44px,4.95vw,76px); line-height:1.01; max-width:850px; }.hero-highlight { margin-right:.12em; }.hero-highlight:after { bottom:-.045em; }
@media (max-width:850px) { .hero { height:auto; min-height:720px; }.hero-content { max-width:690px; }.hero h1 { font-size:clamp(46px,11vw,65px); } }
@media (max-width:540px) { .hero { min-height:690px; }.hero-content { max-width:100%; }.hero h1 { font-size:clamp(43px,12.2vw,58px); } }
.services-heading,.services-heading h2 { max-width:1100px; }.service-card:before { filter:saturate(.96) contrast(1.06); opacity:.94; }.service-grid-home .service-card:before { opacity:.94; }.service-card:after { background:linear-gradient(180deg,rgba(17,17,16,.08) 5%,rgba(17,17,16,.46) 100%); }.service-card:hover:after { background:linear-gradient(180deg,rgba(17,17,16,.02) 4%,rgba(17,17,16,.35) 100%); }.service-card h3 { backdrop-filter:blur(13px); -webkit-backdrop-filter:blur(13px); background:rgba(255,255,255,.74); border:1px solid rgba(255,255,255,.58); border-radius:17px; box-shadow:0 9px 20px rgba(17,17,16,.11); display:inline-block; line-height:1.05; padding:13px 15px; }.service-card .service-number { background:rgba(255,255,255,.64); backdrop-filter:blur(10px); border-radius:999px; display:inline-block; padding:6px 9px; }.services-page .service-card p { backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); background:rgba(255,255,255,.62); border-radius:14px; padding:10px 12px; }.services-page .service-card a { backdrop-filter:blur(9px); background:rgba(255,255,255,.66); border-radius:999px; padding:7px 11px; }
.services-heading h2 { line-height:1.04; }.services-heading h2 br { display:block; }@media (max-width:540px) { .services-heading h2 br { display:none; } }

/* Editorial portrait, client photography and high-conversion controls — v21 */
.button { border-radius:999px; box-shadow:0 10px 22px rgba(82,96,53,.16); font-size:14px; letter-spacing:.01em; overflow:hidden; padding:17px 27px; position:relative; transition:box-shadow .32s ease,transform .32s cubic-bezier(.2,.9,.25,1),background .32s ease,color .32s ease; }
.button:before { background:linear-gradient(110deg,transparent 16%,rgba(255,255,255,.46) 45%,transparent 70%); content:""; inset:0; position:absolute; transform:translateX(-125%); transition:transform .62s cubic-bezier(.2,.85,.25,1); }
.button>* { position:relative; z-index:1; }.button:hover { box-shadow:0 18px 32px rgba(82,96,53,.28); transform:translateY(-5px) scale(1.018); }.button:hover:before { transform:translateX(125%); }.button-gold { box-shadow:0 12px 26px rgba(201,153,51,.32); }.button-gold:hover { background:#deb34d; box-shadow:0 20px 36px rgba(201,153,51,.42); }.button-outline { background:rgba(255,255,255,.08); backdrop-filter:blur(8px); }
@keyframes primary-cta-pulse { 0%,100% { box-shadow:0 12px 26px rgba(201,153,51,.32),0 0 0 0 rgba(201,153,51,.38); } 50% { box-shadow:0 19px 35px rgba(201,153,51,.42),0 0 0 10px rgba(201,153,51,0); } }
.hero .button-gold { animation:primary-cta-pulse 2.8s ease-in-out infinite; font-size:15px; min-width:278px; padding:20px 31px; }.hero .button-gold span { font-size:21px; }.hero .button-gold:hover { animation-play-state:paused; }

.home-about { background:#fff; overflow:hidden; }.home-about .about-image { background:linear-gradient(135deg,#f4f5ed 0%,#fff 67%); min-height:680px; overflow:hidden; position:relative; }.home-about .about-image:after { display:none; }.marcela-collage { height:100%; inset:0; overflow:hidden; position:absolute; }.marcela-collage:before { background:var(--moss); border-radius:48% 52% 44% 56% / 42% 45% 55% 58%; content:""; height:78%; left:13%; position:absolute; top:14%; transform:rotate(-13deg); width:74%; }.marcela-collage:after { background:linear-gradient(135deg,var(--gold),#e3bd66); border-radius:50%; content:""; height:172px; left:5%; position:absolute; top:13%; width:172px; }.marcela-cutout { bottom:-1px; filter:drop-shadow(0 20px 24px rgba(41,53,27,.18)); height:91%; left:17%; object-fit:contain; object-position:bottom center; position:absolute; width:75%; z-index:2; }.marcela-space-card { background:#fff; border:7px solid #fff; border-radius:20px; box-shadow:0 22px 38px rgba(53,66,35,.18); height:180px; overflow:hidden; position:absolute; right:6%; top:11%; transform:rotate(8deg); width:150px; z-index:3; }.marcela-space-card img { height:100%; object-fit:cover; width:100%; }.marcela-metric { align-items:flex-start; background:var(--beige); border-radius:18px; bottom:9%; box-shadow:0 16px 30px rgba(82,96,53,.18); display:flex; flex-direction:column; left:7%; padding:15px 19px; position:absolute; transform:rotate(-4deg); z-index:4; }.marcela-metric strong { color:var(--moss-deep); font-size:30px; letter-spacing:-.075em; line-height:1; }.marcela-metric span { color:var(--moss-deep); font-size:10px; font-weight:700; letter-spacing:.05em; margin-top:5px; text-transform:uppercase; }.marcela-orbit { border:1px solid rgba(201,153,51,.75); border-radius:50%; position:absolute; z-index:1; }.orbit-one { height:230px; right:-54px; top:35%; width:230px; }.orbit-two { border-color:rgba(107,122,74,.35); bottom:11%; height:160px; left:-67px; width:160px; }

.page-hero-services { background-image:url('assets/images/clinica-vert-movimento-guiado.png'); min-height:570px; padding-bottom:74px; padding-top:145px; }.page-hero-services .page-hero-copy { max-width:960px; }.page-hero-services .page-hero-copy h1 { font-size:clamp(44px,5vw,70px); line-height:1.02; }.page-title-highlight { color:var(--gold); font-weight:700; text-shadow:0 8px 21px rgba(201,153,51,.2); }.page-hero-services .page-title-highlight { white-space:nowrap; }.services-page { padding-bottom:74px; padding-top:clamp(58px,7vw,94px); }.services-page .service-grid { gap:12px; margin-top:35px; }.services-page .service-card { border-radius:21px; min-height:324px; padding:27px; }.services-page .service-card h3 { margin-top:34px; }.services-page .service-card p { margin-bottom:18px; }.services-page .services-question { margin-top:12px; padding:25px 28px; }

.page-hero-contact { background-image:url('assets/images/clinica-vert-recepcao-real.jpeg'); background-position:center; min-height:570px; }.page-hero-contact:before { background:linear-gradient(90deg,rgba(82,96,53,.88),rgba(82,96,53,.56) 48%,rgba(232,213,176,.12)); }.page-hero-contact .page-hero-copy { max-width:880px; }.page-hero-contact .page-hero-copy h1 { font-size:clamp(46px,5.5vw,76px); line-height:1.03; }.contact { background:#eef1e5; color:var(--ink); }.contact-content>p { color:#435038; }.contact-content address { border-top-color:rgba(107,122,74,.3); }.contact-map { background:none; min-height:650px; overflow:hidden; }.contact-map:after { background:linear-gradient(20deg,rgba(107,122,74,.18),transparent 52%); }.contact-space-photo { height:100%; object-fit:cover; position:absolute; width:100%; }.contact .button-outline { border-color:var(--moss); color:var(--moss-deep); }.contact .button-outline:hover { background:var(--moss); color:var(--white); }.contact-disclaimer { color:var(--moss-deep)!important; }
.gallery { background:var(--beige); overflow:hidden; padding-bottom:clamp(72px,9vw,116px); }.gallery-grid.clinic-carousel { display:block; margin-right:calc(clamp(24px,9vw,150px) * -1); overflow:hidden; }.clinic-carousel-track { animation:clinic-gallery-scroll 62s linear infinite; display:flex; gap:16px; width:max-content; }.clinic-carousel:hover .clinic-carousel-track { animation-play-state:paused; }.clinic-carousel-track img { border:5px solid rgba(255,255,255,.8); border-radius:22px; box-shadow:0 13px 27px rgba(82,96,53,.16); flex:0 0 300px; height:225px; object-fit:cover; width:300px; }@keyframes clinic-gallery-scroll { from { transform:translateX(0); } to { transform:translateX(calc(-50% - 8px)); } }

.process>.button { display:flex; font-size:15px; margin:46px auto 0; min-width:430px; padding:20px 32px; width:max-content; }.process>.button span { font-size:21px; }
@media (max-width:850px) { .home-about .about-image { min-height:580px; }.marcela-cutout { height:89%; left:16%; width:79%; }.marcela-space-card { height:146px; right:7%; width:122px; }.marcela-metric { bottom:8%; }.page-hero-services,.page-hero-contact { min-height:480px; padding-bottom:55px; padding-top:135px; }.page-hero-services .page-hero-copy h1,.page-hero-contact .page-hero-copy h1 { font-size:clamp(42px,9vw,62px); }.page-hero-services .page-title-highlight { white-space:normal; }.contact-map { min-height:420px; }.clinic-carousel-track img { flex-basis:250px; height:190px; width:250px; }.process>.button { min-width:min(100%,430px); }.services-page .service-grid { gap:13px; }.services-page .service-card { min-height:300px; } }

/* Rodapé mais compacto e legível, com verde sólido da identidade. */
.footer-rich { background-color:var(--moss-deep); background-image:none; gap:30px; padding-bottom:28px; padding-top:clamp(48px,6vw,78px); }
.footer-rich p { font-size:14px; line-height:1.6; }
.footer-label { font-size:11px!important; margin-bottom:14px!important; }
.footer-column nav { gap:11px; }
.footer-column a { font-size:15px; }
.footer-contact>p:not(.footer-label) { margin-bottom:18px; }
.footer-map { border-color:rgba(232,213,176,.7); min-height:230px; }
.footer-map:after { display:none; }
.footer-map a { background:var(--gold); border-color:rgba(17,17,16,.15); color:var(--ink); font-size:13px; padding:9px 14px; }
.footer-map a:hover { background:var(--beige); }
.footer-legal { font-size:11px!important; }
@media (max-width:850px) { .footer-rich { gap:28px; padding-top:48px; }.footer-map { min-height:220px; } }

/* Menu mobile: três barras nítidas, centralizadas e com transição segura para X. */
@media (max-width:850px) {
  .menu-toggle { align-items:center; flex-direction:column; gap:4px; height:42px; justify-content:center; width:42px; }
  .menu-toggle span:not(.sr-only) { flex:0 0 2px; height:2px; width:21px; }
  .menu-toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(6px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; transform:scaleX(.4); }
  .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }
}

/* Cards de serviços: hierarquia mais limpa e CTA com presença visual. */
.services-page .service-card { display:flex; flex-direction:column; gap:0; padding:32px; }
.services-page .service-card .service-number { align-self:flex-start; }
.services-page .service-card h3 { margin:22px 0 0; max-width:100%; }
.services-page .service-card p { line-height:1.5; margin:18px 0 0; max-width:100%; }
.services-page .service-card a { align-items:center; align-self:flex-start; background:var(--gold); border:1px solid rgba(17,17,16,.12); border-radius:999px; bottom:auto; box-shadow:0 10px 22px rgba(201,153,51,.3); color:var(--ink); display:inline-flex; font-size:13px; gap:12px; margin-top:auto; padding:12px 18px; position:relative; transition:background .25s ease,box-shadow .25s ease,transform .25s ease; }
.services-page .service-card a span { margin-left:0; }
.services-page .service-card a:hover { background:#deb34d; box-shadow:0 16px 30px rgba(201,153,51,.42); transform:translateY(-4px) scale(1.03); }
@media (max-width:850px) { .services-page .service-card { padding:27px; }.services-page .service-card h3 { margin-top:18px; }.services-page .service-card p { margin-top:14px; }.services-page .service-card a { padding:12px 17px; } }

/* Link de tratamentos: branco para preservar contraste no bloco moss. */
.services-question .button-outline,
.services-question .button-outline:hover,
.services-question .button-outline:focus-visible { color:var(--white); }
.services-page .services-question > p { color:var(--white); }
.contact-map iframe { filter:brightness(.62) saturate(.92) contrast(1.18); }

/* Remover a faixa diagonal decorativa das imagens, conforme solicitado. */
.about-image:after { display:none; }
@media (max-width:850px) { .page-about .about-image { align-self:start; height:440px; min-height:0; } }
@media (max-width:540px) { .button { font-size:14px; padding:16px 23px; }.hero .button-gold { min-width:0; padding:18px 26px; width:100%; }.home-about .about-image { min-height:480px; }.marcela-collage:before { height:77%; left:8%; top:14%; width:84%; }.marcela-cutout { height:89%; left:9%; width:88%; }.marcela-space-card { border-width:5px; height:112px; right:5%; width:94px; }.marcela-metric { bottom:5%; left:5%; padding:12px 14px; }.marcela-metric strong { font-size:25px; }.marcela-metric span { font-size:8px; }.marcela-collage:after { height:110px; width:110px; }.process>.button { margin-top:34px; min-width:0; width:100%; }.page-hero-contact .page-hero-copy h1 { font-size:clamp(41px,11vw,56px); }.gallery-grid.clinic-carousel { margin-right:-24px; }.clinic-carousel-track img { flex-basis:220px; height:170px; width:220px; } }

/* Ajuste de harmonia: navegação mais compacta e mais respiro no início da home. */
.site-header .main-nav { gap:2px; padding:3px 4px; }
.site-header .main-nav a { padding-left:10px; padding-right:10px; }
.hero { padding-top:clamp(174px,20vw,230px); }
@media (max-width:850px) { .hero { padding-top:138px; } }
.validation-note { display:none; }
.home-about { background:#fff; }.home-about .about-image { background:radial-gradient(circle at 14% 18%,rgba(232,213,176,.45),transparent 25%),#f8f8f4; min-height:720px; }.home-about .about-image:after { display:none; }.home-about .about-image-photo { background-image:url('assets/images/marcela-jabour-editorial.png'); background-position:center bottom; background-repeat:no-repeat; background-size:contain; }.home-about .about-content h2 { max-width:600px; }.expert-highlight { color:var(--gold); font-weight:700; position:relative; white-space:nowrap; }.expert-highlight:after { background:var(--gold); bottom:-.09em; content:""; height:.055em; left:.02em; opacity:.72; position:absolute; right:.02em; }
@media (max-width:850px) { .home-about .about-image { min-height:590px; }.home-about .about-image-photo { background-size:auto 96%; } }@media (max-width:540px) { .home-about .about-image { min-height:470px; }.home-about .about-image-photo { background-size:auto 94%; }.expert-highlight { white-space:normal; } }
.manifesto-impact { background:#edf0e3; overflow:hidden; position:relative; }.manifesto-impact:before { background:var(--beige); border-radius:50%; content:""; height:420px; position:absolute; right:-215px; top:-235px; width:420px; }.manifesto-impact .eyebrow { background:var(--white); border:1px solid rgba(107,122,74,.16); border-radius:28px 28px 0 0; color:var(--moss-deep); font-size:clamp(29px,3.6vw,54px); letter-spacing:-.055em; line-height:1.05; margin:0; padding:clamp(35px,5vw,63px) 38px; position:relative; text-align:center; text-transform:none; }.manifesto-impact .eyebrow:before { display:none; }.manifesto-impact .manifesto-grid { display:grid; gap:18px; grid-template-columns:repeat(4,1fr); margin-top:18px; position:relative; }.manifesto-impact .statement-list { display:contents; }.manifesto-impact .manifesto-card { background:var(--white); border:1px solid rgba(107,122,74,.16); border-radius:24px; box-shadow:0 15px 31px rgba(82,96,53,.1); display:flex; flex-direction:column; justify-content:space-between; margin:0; min-height:242px; padding:29px; position:relative; transition:box-shadow .3s ease,transform .3s cubic-bezier(.2,.9,.25,1); }.manifesto-impact .manifesto-card:hover { box-shadow:0 23px 38px rgba(82,96,53,.18); transform:translateY(-7px); }.manifesto-card-number { align-items:center; background:var(--moss); border:4px solid #edf0e3; border-radius:50%; color:var(--beige); display:flex; font-size:12px; font-weight:700; height:46px; justify-content:center; width:46px; }.manifesto-impact .manifesto-card:nth-child(2) .manifesto-card-number,.manifesto-impact .manifesto-card:nth-child(4) .manifesto-card-number { background:var(--gold); color:var(--ink); }.manifesto-card-copy { color:var(--ink); font-size:clamp(18px,1.65vw,24px); letter-spacing:-.045em; line-height:1.2; }.manifesto-impact .manifesto-copy { background:var(--moss); border-radius:24px; box-shadow:0 17px 32px rgba(82,96,53,.18); color:var(--white); display:grid; gap:clamp(24px,6vw,85px); grid-column:1/-1; grid-template-columns:1fr 1fr; max-width:none; padding:clamp(32px,5vw,56px); }.manifesto-impact .manifesto-copy p { color:var(--white); font-size:clamp(17px,1.45vw,20px); line-height:1.55; margin:0; max-width:560px; }.manifesto-impact .manifesto-copy p:last-child { color:var(--beige); font-weight:600; }
@media (max-width:1020px) { .manifesto-impact .manifesto-grid { grid-template-columns:repeat(2,1fr); }.manifesto-impact .manifesto-card { min-height:205px; } }@media (max-width:620px) { .manifesto-impact .eyebrow { border-radius:22px 22px 0 0; font-size:37px; padding:31px 22px; }.manifesto-impact .manifesto-grid { gap:13px; grid-template-columns:1fr; margin-top:13px; }.manifesto-impact .manifesto-card { min-height:175px; padding:25px; }.manifesto-card-copy { font-size:21px; }.manifesto-impact .manifesto-copy { border-radius:20px; display:block; padding:29px 25px; }.manifesto-impact .manifesto-copy p + p { margin-top:20px; } }
.gallery { padding-left:0; padding-right:0; }.gallery>div:first-child { padding-left:clamp(24px,9vw,150px); padding-right:clamp(24px,9vw,150px); }.gallery-grid.clinic-carousel { margin:0; width:100%; }.clinic-carousel-track { gap:14px; }.clinic-carousel-track img { border:2px solid rgba(255,255,255,.76); border-radius:14px; flex:0 0 clamp(340px,26vw,470px); height:clamp(245px,18vw,335px); width:clamp(340px,26vw,470px); }@media (max-width:540px) { .gallery>div:first-child { padding-left:24px; padding-right:24px; }.clinic-carousel-track { gap:10px; }.clinic-carousel-track img { border-width:2px; border-radius:12px; flex-basis:290px; height:215px; width:290px; } }
.page-about .about-image-photo { background-image:url('assets/images/marcela-jabour-sobre.jpg'); background-position:center top; }
.footer-rich { background-color:var(--moss-deep); background-image:linear-gradient(106deg,rgba(55,67,38,.98) 0%,rgba(82,96,53,.94) 57%,rgba(82,96,53,.79) 100%),url('assets/images/clinica-vert-recepcao-real.jpeg'); background-position:center; background-size:cover; overflow:hidden; }.footer-rich:before { background:linear-gradient(90deg,var(--gold),var(--beige),rgba(232,213,176,.12)); }.footer-rich:after { border:1px solid rgba(232,213,176,.3); border-radius:50%; content:""; height:280px; pointer-events:none; position:absolute; right:-115px; top:65px; width:280px; }
html,body { overflow-x:clip; }
.home-about .about-image-photo { background-size:auto 112%; background-position:center calc(100% + 48px); }
@media (max-width:540px) { .home-about .about-image-photo { background-size:auto 108%; background-position:center calc(100% + 32px); } }
.contact-map { align-items:stretch; background:var(--moss); display:flex; min-height:690px; padding:clamp(22px,3vw,42px); }.contact-map:after { background:linear-gradient(145deg,rgba(232,213,176,.18),transparent 42%); }.contact-map iframe { border:6px solid rgba(255,255,255,.88); border-radius:28px; bottom:auto; filter:saturate(1.12) contrast(1.06); height:100%; left:auto; position:relative; right:auto; width:100%; z-index:1; }.contact-disclaimer { display:none; }
@media (max-width:850px) { .contact-map { min-height:460px; padding:20px; }.contact-map iframe { border-width:4px; border-radius:22px; } }
.hero { padding-top:clamp(185px,15vw,215px); }.hero-content { max-width:min(950px,67vw); }.hero h1 { font-size:clamp(43px,4.45vw,70px); max-width:930px; }
@media (max-width:850px) { .hero { padding-top:145px; }.hero-content { max-width:690px; }.hero h1 { font-size:clamp(46px,11vw,65px); } }

/* Rodapé: fundo verde sólido, mapa sem degradê e conteúdo mais presente. */
.footer-rich { background-color:var(--moss-deep); background-image:none; gap:30px; padding-bottom:28px; padding-top:clamp(48px,6vw,78px); }
.footer-rich p { font-size:14px; line-height:1.6; }
.footer-label { font-size:11px!important; margin-bottom:14px!important; }
.footer-column nav { gap:11px; }
.footer-column a { font-size:15px; }
.footer-contact>p:not(.footer-label) { margin-bottom:18px; }
.footer-map { border-color:rgba(232,213,176,.7); min-height:230px; }
.footer-map:after { display:none; }
.footer-map a { background:var(--gold); border-color:rgba(17,17,16,.15); color:var(--ink); font-size:13px; padding:9px 14px; }
.footer-map a:hover { background:var(--beige); }
.footer-legal { font-size:11px!important; }
@media (max-width:850px) { .footer-rich { gap:28px; padding-top:48px; }.footer-map { min-height:220px; } }

/* Harmonia final: menu enxuto e respiro claro entre o cabeçalho e a abertura. */
.site-header .main-nav { gap:2px; padding:3px 4px; }
.site-header .main-nav a { padding-left:10px; padding-right:10px; }
.hero { padding-top:clamp(205px,17vw,245px); }
@media (max-width:850px) { .hero { padding-top:145px; } }
.hero-content { top:30px; }
@media (max-width:850px) { .hero-content { top:14px; } }
.contact-map iframe { filter:brightness(.62) saturate(.92) contrast(1.18); }
