/* ============================================================
   Dr. Felipe Galvão Abreu — folha de estilo única do site
   Paleta da marca:  verde #536965  ·  dourado #A48E75
   ============================================================ */

:root{
  --verde:#536965; --verde-fundo:#3E4F4C; --verde-profundo:#2C3937; --verde-noite:#212B29;
  --dourado:#A48E75; --dourado-claro:#C3B199; --dourado-vivo:#DCC6A6; --dourado-texto:#836C52;
  --areia:#F1ECE4; --ivory:#FAF8F5; --papel:#FFFFFF;
  --tinta:#242726; --cinza:#6C716F; --linha:rgba(83,105,101,.18);
  --serif:'Cormorant Garamond',Georgia,serif; --sans:'Jost',-apple-system,sans-serif;
  --ico-ig:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.16c3.2 0 3.58.01 4.85.07 1.17.05 1.8.25 2.23.41.56.22.96.48 1.38.9.42.42.68.82.9 1.38.16.42.36 1.06.41 2.23.06 1.27.07 1.65.07 4.85s-.01 3.58-.07 4.85c-.05 1.17-.25 1.8-.41 2.23-.22.56-.48.96-.9 1.38-.42.42-.82.68-1.38.9-.42.16-1.06.36-2.23.41-1.27.06-1.65.07-4.85.07s-3.58-.01-4.85-.07c-1.17-.05-1.8-.25-2.23-.41a3.8 3.8 0 01-1.38-.9 3.8 3.8 0 01-.9-1.38c-.16-.42-.36-1.06-.41-2.23C2.17 15.58 2.16 15.2 2.16 12s.01-3.58.07-4.85c.05-1.17.25-1.8.41-2.23.22-.56.48-.96.9-1.38.42-.42.82-.68 1.38-.9.42-.16 1.06-.36 2.23-.41C8.42 2.17 8.8 2.16 12 2.16zm0 3.29a6.55 6.55 0 100 13.1 6.55 6.55 0 000-13.1zm0 10.8a4.25 4.25 0 110-8.5 4.25 4.25 0 010 8.5zm8.34-11.06a1.53 1.53 0 11-3.06 0 1.53 1.53 0 013.06 0z'/></svg>");
  --ico-wa:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12.04 2C6.58 2 2.13 6.45 2.13 11.91c0 1.75.46 3.45 1.32 4.95L2 22l5.25-1.38a9.9 9.9 0 004.79 1.22h.01c5.46 0 9.91-4.45 9.91-9.91 0-2.65-1.03-5.14-2.9-7.01A9.82 9.82 0 0012.04 2zm5.8 14.13c-.24.68-1.42 1.32-1.96 1.36-.5.05-.98.23-3.3-.69-2.77-1.09-4.53-3.92-4.67-4.1-.14-.18-1.12-1.49-1.12-2.84s.71-2.02.96-2.29c.25-.27.55-.34.73-.34h.53c.17 0 .4-.06.63.48.24.57.8 1.97.87 2.11.07.14.12.3.02.48-.09.18-.14.29-.27.45l-.41.47c-.14.14-.28.29-.12.57.16.27.71 1.17 1.53 1.9 1.05.94 1.94 1.23 2.21 1.37.27.14.43.12.59-.07.16-.18.68-.79.86-1.07.18-.27.36-.23.61-.14.25.09 1.6.75 1.87.89.27.14.45.2.52.32.07.11.07.66-.17 1.34z'/></svg>");
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
html,body{overflow-x:hidden}
body{font-family:var(--sans);font-weight:300;font-size:16.5px;line-height:1.78;color:var(--tinta);background:var(--ivory);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:1220px;margin:0 auto;padding:0 44px}
.narrow{max-width:880px}

h1,h2,h3,h4{font-family:var(--serif);font-weight:300;line-height:1.16}
h1{font-size:clamp(2.5rem,5.2vw,4.2rem);letter-spacing:-.01em}
h2{font-size:clamp(1.9rem,3.4vw,2.8rem)}
h3{font-size:1.45rem}
h4{font-size:1.2rem}
.eyebrow{font-family:var(--sans);font-size:.66rem;font-weight:400;letter-spacing:.34em;text-transform:uppercase;color:var(--dourado-texto)}
.eyebrow.light{color:var(--dourado-claro)}
.rule{width:44px;height:1px;background:var(--dourado);margin:24px 0}
.rule.c{margin:24px auto}
.lead{font-size:1.06rem;color:var(--cinza);font-weight:300}
p+p{margin-top:18px}

.btn{display:inline-block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;padding:16px 34px;border:1px solid var(--dourado);color:var(--dourado-texto);transition:.35s}
.btn:hover{background:var(--dourado);color:#fff}
.btn-solid{background:var(--verde-profundo);border-color:var(--verde-profundo);color:#fff}
.btn-solid:hover{background:var(--dourado);border-color:var(--dourado)}
.btn-gold{background:var(--dourado);border-color:var(--dourado);color:#fff}
.btn-gold:hover{background:var(--verde-profundo);border-color:var(--verde-profundo);color:#fff}
.btn-light{border-color:rgba(255,255,255,.4);color:#fff}
.btn-light:hover{background:#fff;color:var(--verde-profundo);border-color:#fff}
.link{display:inline-block;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado-texto);border-bottom:1px solid rgba(164,142,117,.45);padding-bottom:5px;transition:.3s}
.link:hover{border-color:var(--dourado);color:var(--dourado)}

/* ---------- topbar ---------- */
.topbar{background:var(--verde-noite);color:rgba(255,255,255,.82);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;padding:12px 0}
.topbar .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.topbar b{color:var(--dourado-vivo);font-weight:400}

/* ---------- header ---------- */
header{position:sticky;top:0;z-index:100;background:rgba(250,248,245,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--linha)}
header .wrap{max-width:1500px}
.hrow{display:flex;align-items:center;justify-content:space-between;gap:26px;padding-top:26px;padding-bottom:26px}
.brand{display:flex;align-items:center;gap:16px;flex-shrink:0}
.brand img{height:58px}
.brand .n{font-family:var(--serif);font-size:1.42rem;color:var(--verde-profundo);line-height:1.1;letter-spacing:.015em;white-space:nowrap}
.brand .n small{display:block;font-family:var(--sans);font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dourado);margin-top:7px;font-weight:400}
nav{display:flex;align-items:center;gap:24px}
nav a{font-size:.685rem;letter-spacing:.13em;text-transform:uppercase;color:var(--verde-profundo);position:relative;padding:4px 0;white-space:nowrap}
nav a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--dourado);transition:width .35s}
nav a:hover::after,nav a.on::after{width:100%}
nav a.on{color:var(--dourado-texto)}
nav .only-mobile{display:none}
.mt{display:none;background:none;border:0;cursor:pointer;padding:8px}
.mt span{display:block;width:28px;height:1px;background:var(--verde-profundo);margin:7px 0;transition:.3s}
.tb-cta{color:var(--dourado-vivo);border-bottom:1px solid rgba(224,203,173,.5);padding-bottom:2px;transition:.3s}
.tb-cta:hover{color:#fff;border-color:#fff}
.tb-cta.insta{display:inline-flex;align-items:center;gap:7px;border-bottom:0}
.tb-cta.insta::before{content:'';width:14px;height:14px;background:var(--dourado-vivo);
  -webkit-mask:var(--ico-ig) center/contain no-repeat;mask:var(--ico-ig) center/contain no-repeat;transition:.3s}
.tb-cta.insta:hover{color:#fff}
.tb-cta.insta:hover::before{background:#fff}

/* ---------- hero home ---------- */
.hero{position:relative;background:#293028 url('img/hero-wide.jpg') center right/cover no-repeat;
  border-bottom:1px solid rgba(255,255,255,.08);isolation:isolate}
.hero::before{content:'';position:absolute;inset:0;z-index:0;
  background:linear-gradient(90deg,rgba(28,34,28,.92) 0%,rgba(28,34,28,.80) 34%,rgba(28,34,28,.28) 58%,rgba(28,34,28,0) 78%)}
.hero .wrap{position:relative;z-index:1;display:block;padding:0}
.hero-txt{padding:132px 44px 128px;max-width:44rem;display:flex;flex-direction:column;justify-content:center}
.hero .eyebrow{color:#cbbfa8}
.hero h1{color:#fff;margin-top:16px;line-height:1.02;font-size:clamp(2.6rem,5.6vw,5rem)}
.hero .hero-reg{margin-top:14px;color:rgba(255,255,255,.72);font-size:.94rem;letter-spacing:.06em}
.hero .lead{margin-top:26px;max-width:32em;color:rgba(255,255,255,.86)}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px}
.hero .btn-ghost{color:#fff;border-color:rgba(255,255,255,.45)}
.hero .btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}

/* ---------- cabeçalho de página interna ---------- */
.phead{background:var(--verde-profundo);color:#fff;padding:96px 0 88px;position:relative;overflow:hidden}
.phead::after{content:'';position:absolute;right:-6%;top:-40%;width:min(520px,50vw);height:min(520px,50vw);background:url('img/logo-cream.png') center/contain no-repeat;opacity:.045}
.phead .wrap{position:relative;z-index:2;max-width:900px}
.phead h1{color:#fff;margin-top:16px}
.phead .lead{color:rgba(255,255,255,.75);margin-top:24px;max-width:44em}
.crumb{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:10px}
.crumb a:hover{color:var(--dourado-claro)}

/* ---------- faixa credenciais ---------- */
.trust{background:var(--verde-profundo);padding:26px 0}
.trust .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.trust div{flex:1;min-width:150px;text-align:center;font-size:.63rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.trust b{display:block;font-family:var(--serif);font-size:1.02rem;letter-spacing:.02em;text-transform:none;color:var(--dourado-claro);font-weight:400;margin-bottom:2px}

section{padding:104px 0}
.sec-ivory{background:var(--ivory)}
.sec-areia{background:var(--areia)}
.sec-verde{background:var(--verde-profundo);color:#fff}
.sec-verde h2,.sec-verde h3{color:#fff}
.sec-verde p{color:rgba(255,255,255,.74)}
.sec-verde .rule{background:var(--dourado-claro)}

/* ---------- sobre ---------- */
.split{display:grid;grid-template-columns:.82fr 1.18fr;gap:76px;align-items:start}
.split.rev{grid-template-columns:1.18fr .82fr}
.ph{position:relative;z-index:0}
.ph img{filter:saturate(.94);position:relative;z-index:2}
.ph::after{content:'';position:absolute;left:20px;top:20px;right:-20px;bottom:-20px;border:1px solid var(--dourado);z-index:1}
.creds{list-style:none;margin-top:40px;border-top:1px solid var(--linha)}
.creds li{padding:15px 0;border-bottom:1px solid var(--linha);display:grid;grid-template-columns:130px 1fr;gap:18px;font-size:.94rem;align-items:baseline}
.creds b{font-family:var(--sans);font-weight:400;font-size:.63rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado-texto)}
.sec-verde .creds{border-color:rgba(195,177,153,.28)}
.sec-verde .creds li{border-color:rgba(195,177,153,.28)}
.sec-verde .creds b{color:var(--dourado-claro)}

/* ---------- cards ---------- */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:58px;background:var(--linha);border:1px solid var(--linha)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:58px}
.card{background:var(--areia);padding:48px 38px;transition:background .45s}
.sec-ivory .card{background:var(--ivory)}
.card:hover{background:var(--papel)}
.card .num{font-family:var(--serif);font-style:italic;font-size:1.1rem;color:var(--dourado)}
.card h3{margin:16px 0 12px;color:var(--verde-profundo)}
.card p{font-size:.95rem;color:var(--cinza)}
.card ul{list-style:none;margin:22px 0 26px}
.card li{font-size:.9rem;color:var(--cinza);padding:7px 0;border-bottom:1px solid rgba(83,105,101,.1)}
.card li::before{content:'—';color:var(--dourado);margin-right:10px}

/* ---------- patologias (páginas internas) ---------- */
.pat{border-top:1px solid var(--linha);padding:56px 0;display:grid;grid-template-columns:.34fr .66fr;gap:56px;align-items:start}
.pat:last-child{border-bottom:1px solid var(--linha)}
.pat h3{color:var(--verde-profundo)}
.pat .tag{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado-texto);display:block;margin-bottom:10px}
.pat p{color:var(--cinza);font-size:1rem}
.pat .quando{margin-top:22px;padding:22px 26px;background:var(--areia);border-left:1px solid var(--dourado)}
.pat .quando b{display:block;font-family:var(--sans);font-weight:400;font-size:.63rem;letter-spacing:.2em;text-transform:uppercase;color:var(--verde-profundo);margin-bottom:7px}
.pat .quando p{font-size:.93rem;margin:0}

/* ---------- programas ---------- */
.prog-list{list-style:none;margin-top:34px}
.prog-list li{padding:22px 0;border-top:1px solid rgba(195,177,153,.28);display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:baseline}
.prog-list i{font-family:var(--serif);font-style:italic;color:var(--dourado-claro);font-size:1.05rem;min-width:26px}
.prog-list b{font-family:var(--serif);font-weight:400;font-size:1.2rem;color:#fff;display:block;margin-bottom:4px}
.prog-list span{font-size:.92rem;color:rgba(255,255,255,.68);display:block}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:38px;margin-top:60px}
.step{border-top:1px solid var(--linha);padding-top:22px}
.step i{font-family:var(--serif);font-style:italic;color:var(--dourado);font-size:.9rem}
.step b{font-family:var(--serif);font-size:1.25rem;font-weight:400;color:var(--verde-profundo);display:block;margin:6px 0 8px}
.step span{font-size:.9rem;color:var(--cinza)}
.sec-verde .step{border-color:rgba(195,177,153,.28)}
.sec-verde .step b{color:#fff}
.sec-verde .step i{color:var(--dourado-claro)}
.sec-verde .step span{color:rgba(255,255,255,.68)}

/* ---------- locais ---------- */
.local{background:var(--papel);border:1px solid var(--linha);transition:.4s}
.local:hover{border-color:var(--dourado)}
.local .img{height:230px;overflow:hidden}
.local .img img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.02);transition:transform 1.1s}
.local:hover .img img{transform:scale(1.04)}
.local .body{padding:36px 38px 40px}
.local .cid{font-size:.64rem;letter-spacing:.26em;text-transform:uppercase;color:var(--dourado-texto)}
.local h3{margin:12px 0 0;color:var(--verde-profundo)}
.local .end{font-size:.93rem;color:var(--cinza);margin-top:14px}
.local .hosp{margin-top:24px;padding-top:20px;border-top:1px solid var(--linha);font-size:.88rem;color:var(--cinza)}
.local .hosp b{display:block;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--verde-profundo);font-weight:400;margin-bottom:7px}
.mapa{width:100%;height:340px;border:1px solid var(--linha);filter:grayscale(.35) contrast(1.02)}
.local-full{border-top:1px solid var(--linha);padding:66px 0;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}

/* ---------- novidades ---------- */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:56px}
.post{background:var(--papel);border:1px solid var(--linha);padding:38px 34px 34px;transition:.4s;display:flex;flex-direction:column}
.post:hover{border-color:var(--dourado)}
.post .meta{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado-texto)}
.post h3{margin:14px 0 12px;color:var(--verde-profundo);font-size:1.3rem}
.post p{font-size:.93rem;color:var(--cinza);flex:1}
.post .link{margin-top:22px;align-self:flex-start}
.artigo{max-width:760px;margin:0 auto}
.artigo h2{margin-top:44px;color:var(--verde-profundo)}
.artigo h3{margin-top:32px;color:var(--verde-profundo)}
.artigo p{margin-top:18px}
.artigo blockquote{margin:34px 0;padding:26px 32px;background:var(--areia);border-left:1px solid var(--dourado);font-family:var(--serif);font-size:1.3rem;font-style:italic;color:var(--verde-profundo);line-height:1.5}

/* ---------- avaliações ---------- */
.reviews{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;margin-top:56px}
.review{background:var(--papel);border:1px solid var(--linha);padding:40px 34px 34px;display:flex;flex-direction:column}
.review .stars{color:var(--dourado);font-size:1.05rem;letter-spacing:.22em;margin-bottom:20px}
.review p{font-family:var(--serif);font-size:1.28rem;font-style:italic;line-height:1.5;color:var(--verde-profundo);flex:1}
.review .autor{display:block;margin-top:26px;padding-top:18px;border-top:1px solid var(--linha);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado-texto)}

/* ---------- barra fixa de contato no celular ---------- */
.mobilebar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:150;grid-template-columns:1fr 1fr;border-top:1px solid rgba(195,177,153,.3)}
.mobilebar a{padding:17px 10px;text-align:center;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;background:var(--verde-profundo);color:#fff}
.mobilebar a:last-child{background:var(--dourado);color:#fff}

/* ---------- sociedades / cta / footer ---------- */
.socs{background:var(--verde-noite);padding:64px 0;text-align:center}
.socs .eyebrow{color:var(--dourado-claro)}
.socs-list{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 42px;margin-top:26px}
.socs-list span{font-family:var(--serif);font-size:1.08rem;color:rgba(255,255,255,.72);letter-spacing:.08em}
.cta{background:var(--ivory);text-align:center;padding:118px 0}
.cta h2{color:var(--verde-profundo)}
.cta .lead{max-width:33em;margin:0 auto}
.cta .hero-cta{justify-content:center;margin-top:42px}
footer{background:var(--verde-noite);color:rgba(255,255,255,.55);font-size:.88rem;padding:76px 0 36px}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:44px}
footer img.fm{height:58px;opacity:.9;margin-bottom:20px}
footer h4{font-family:var(--sans);font-size:.63rem;letter-spacing:.24em;text-transform:uppercase;color:var(--dourado-claro);font-weight:400;margin-bottom:16px}
footer li{list-style:none;margin-bottom:9px;font-size:.85rem}
footer a:hover{color:var(--dourado-claro)}
.fbot{margin-top:58px;padding-top:24px;border-top:1px solid rgba(255,255,255,.09);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:.72rem;color:rgba(255,255,255,.38)}
.wa{position:fixed;right:26px;bottom:26px;z-index:200;background:#25D366;color:#fff;
  width:62px;height:62px;border-radius:50%;border:none;padding:0;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 14px 34px -12px rgba(18,140,70,.75);
  font-size:0;transition:transform .3s,box-shadow .3s;
  animation:wa-pulso 2.2s ease-out infinite}
.wa::before{content:'';width:34px;height:34px;flex:0 0 34px;background:#fff;
  -webkit-mask:var(--ico-wa) center/contain no-repeat;mask:var(--ico-wa) center/contain no-repeat}
.wa:hover{transform:scale(1.08);animation-play-state:paused;
  box-shadow:0 18px 40px -12px rgba(18,140,70,.85)}
@keyframes wa-pulso{
  0%{box-shadow:0 14px 34px -12px rgba(18,140,70,.75),0 0 0 0 rgba(37,211,102,.55)}
  70%{box-shadow:0 14px 34px -12px rgba(18,140,70,.75),0 0 0 18px rgba(37,211,102,0)}
  100%{box-shadow:0 14px 34px -12px rgba(18,140,70,.75),0 0 0 0 rgba(37,211,102,0)}
}
@media(prefers-reduced-motion:reduce){.wa{animation:none}}

.rv{opacity:0;transform:translateY(22px);transition:opacity 1s cubic-bezier(.2,.7,.3,1),transform 1s cubic-bezier(.2,.7,.3,1)}
.rv.in{opacity:1;transform:none}

/* ---------- responsivo ---------- */
@media(max-width:1440px){
  nav{gap:20px}
  nav a{font-size:.655rem;letter-spacing:.1em}
  .brand .n{font-size:1.32rem}
}
@media(max-width:1300px){
  .hrow{padding-top:20px;padding-bottom:18px}
  .brand img{height:52px}
  .brand .n{font-size:1.28rem}
  nav{position:fixed;inset:0 0 0 auto;width:84%;max-width:350px;height:100%;background:var(--ivory);flex-direction:column;justify-content:center;align-items:flex-start;gap:26px;transform:translateX(100%);transition:transform .45s;padding:0 36px;box-shadow:-30px 0 80px -40px rgba(0,0,0,.35);z-index:105}
  nav.open{transform:none}
  nav a{font-size:.8rem;letter-spacing:.18em}
  nav .only-mobile{display:inline-block;margin-top:12px}
  .mt{display:block;z-index:110}
}
@media(max-width:1040px){
  .hero-txt{padding:96px 44px 92px;max-width:none}
  .split,.split.rev,.local-full{grid-template-columns:1fr;gap:50px}
  .grid3,.steps,.posts,.reviews{grid-template-columns:1fr 1fr}
  .pat{grid-template-columns:1fr;gap:24px}
  .fgrid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  body{padding-bottom:56px}
  .wrap{padding:0 24px}
  .topbar{font-size:.6rem;letter-spacing:.1em}
  .topbar .wrap{justify-content:center;gap:6px 16px}
  .hrow{padding-top:16px;padding-bottom:14px}
  .brand img{height:46px}
  .brand .n{font-size:1.1rem;white-space:normal}
  .brand .n small{font-size:.52rem;letter-spacing:.14em;margin-top:4px}
  .hcta{display:none}
  .topbar{display:none}
  .hero-txt{padding:72px 24px 64px}
  .hero h1{font-size:2.6rem}
  .hero .lead,.lead{font-size:1.02rem}
  .btn{padding:16px 26px;font-size:.7rem;width:100%;text-align:center}
  nav .btn{width:auto}
  .hero-cta{gap:12px}
  .hero-cta .btn{width:100%}
  .grid3,.grid2,.steps,.posts,.reviews,.fgrid{grid-template-columns:1fr}
  section{padding:64px 0}
  .phead{padding:64px 0 60px}
  .ph::after{display:none}
  .creds li{grid-template-columns:1fr;gap:2px;padding:14px 0}
  .card{padding:38px 28px}
  .local .body{padding:30px 26px 34px}
  .pat{padding:40px 0}
  .pat .quando{padding:20px 22px}
  .review p{font-size:1.15rem}
  .mapa{height:260px}
  .wa{right:16px;bottom:88px;width:56px;height:56px}
  .mobilebar{display:grid}
  .socs-list{gap:10px 26px}
  .fbot{flex-direction:column;gap:8px}
}
@media(max-width:400px){
  .brand .n{font-size:1rem}
  .hero h1{font-size:2.6rem}
}

/* ---------- páginas de patologia ---------- */
.quadro{background:var(--areia);border-left:1px solid var(--dourado);padding:36px 34px}
.sec-areia .quadro{background:var(--papel)}
.quadro b{display:block;font-family:var(--sans);font-weight:400;font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--verde-profundo);margin-bottom:18px}
.quadro ul{list-style:none}
.quadro li{font-size:.95rem;color:var(--cinza);padding:11px 0;border-bottom:1px solid rgba(83,105,101,.13)}
.quadro li:last-child{border-bottom:0}
.quadro li::before{content:'—';color:var(--dourado);margin-right:11px}
.rels{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:34px;background:var(--linha);border:1px solid var(--linha)}
.rels .rel{background:var(--ivory);padding:34px 30px;font-family:var(--serif);font-size:1.3rem;color:var(--verde-profundo);transition:background .4s;display:block}
.rels .rel:hover{background:var(--papel)}
.rels .rel span{display:block;font-family:var(--sans);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado);margin-bottom:10px}
.split .quadro{position:sticky;top:170px}
@media(max-width:1040px){ .rels{grid-template-columns:1fr 1fr} .split .quadro{position:static} }
@media(max-width:760px){ .rels{grid-template-columns:1fr} .quadro{padding:30px 26px} }

/* ---------- vídeos ---------- */
.videos{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:56px}
.video{background:var(--papel);border:1px solid var(--linha);transition:.4s;display:flex;flex-direction:column}
.video:hover{border-color:var(--dourado)}
.video .thumb{position:relative;aspect-ratio:16/9;background:var(--verde-profundo) center/cover no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}
.video .thumb::after{content:'';position:absolute;inset:0;background:rgba(44,57,55,.28);transition:.35s}
.video:hover .thumb::after{background:rgba(44,57,55,.12)}
.video .play{position:relative;z-index:2;width:64px;height:64px;border-radius:50%;border:1px solid rgba(255,255,255,.7);background:rgba(164,142,117,.9);cursor:pointer;transition:.35s}
.video .play::before{content:'';position:absolute;left:52%;top:50%;transform:translate(-50%,-50%);border-style:solid;border-width:9px 0 9px 15px;border-color:transparent transparent transparent #fff}
.video:hover .play{background:var(--dourado);transform:scale(1.08)}
.video .ytframe{width:100%;aspect-ratio:16/9;border:0;display:block}
.video .info{padding:28px 28px 30px}
.video h3{font-size:1.28rem;color:var(--verde-profundo);line-height:1.25}
.video p{font-size:.92rem;color:var(--cinza);margin-top:12px}
.video .meta{display:block;margin-top:18px;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado-texto)}
.video.vazio .thumb{cursor:default;background:var(--areia)}
.video.vazio .thumb::after{display:none}
.video.vazio .thumb span{font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dourado-texto);position:relative;z-index:2}
@media(max-width:1040px){ .videos{grid-template-columns:1fr 1fr} }
@media(max-width:760px){ .videos{grid-template-columns:1fr} }

/* ---------- CTA repetido ao longo da página ---------- */
.cta-inline{display:flex;justify-content:center;margin-top:52px}
.btn-wa{background:#25D366;border-color:#25D366;color:#fff}
.btn-wa:hover{background:#1eb457;border-color:#1eb457;color:#fff}

/* ---------- perguntas frequentes ---------- */
.faq{margin-top:52px;max-width:960px}
.faq details{border-top:1px solid var(--linha)}
.faq details:last-child{border-bottom:1px solid var(--linha)}
.faq summary{list-style:none;cursor:pointer;padding:24px 46px 24px 0;position:relative;
  font-family:var(--serif);font-size:1.16rem;color:var(--verde-profundo);line-height:1.4;
  transition:color .25s}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--dourado-texto)}
.faq summary::after{content:'';position:absolute;right:8px;top:50%;width:11px;height:11px;
  margin-top:-7px;border-right:1px solid var(--dourado);border-bottom:1px solid var(--dourado);
  transform:rotate(45deg);transition:transform .3s}
.faq details[open] summary::after{transform:rotate(-135deg);margin-top:-3px}
.faq .faq-r{padding:0 56px 26px 0}
.faq .faq-r p{color:var(--texto);max-width:46em}
@media(max-width:640px){
  .faq summary{font-size:1.04rem;padding:20px 38px 20px 0}
  .faq .faq-r{padding:0 8px 22px 0}
  .cta-inline{margin-top:40px}
  .cta-inline .btn{width:100%}
}

/* CTA principal do topo, sobre fundo escuro */
.hero .btn-solid{background:var(--dourado);border-color:var(--dourado);color:#fff}
.hero .btn-solid:hover{background:var(--dourado-texto);border-color:var(--dourado-texto)}
