:root{--verm:#D2202C;--verm2:#AE1620;--vinho:#4A0B12;--rosa:#FDECEA;--txt:#1E2329;--sub:#5F6872;--borda:#E6E8EB;--fundo:#F6F7F9;--branco:#fff;--verde:#18A957;--r:18px;--sombra:0 1px 2px rgba(16,24,40,.05),0 12px 32px -16px rgba(16,24,40,.18)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--branco);color:var(--txt);font:400 16.5px/1.6 "Plus Jakarta Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
svg.i{width:20px;height:20px;flex:none}
h1,h2,h3{letter-spacing:-.025em;line-height:1.1}
.w{max-width:1240px;margin:0 auto;padding:0 24px}

/* barra utilitária */
.util{background:var(--vinho);color:#F6D9D6;font-size:13.5px}
.util .w{display:flex;justify-content:space-between;align-items:center;min-height:42px;gap:18px}
.util a{color:#fff;font-weight:600}
.util .d{display:flex;gap:22px;align-items:center}
.status{display:inline-flex;align-items:center;gap:8px}
.status i{width:8px;height:8px;border-radius:50%;background:#4ADE80;display:inline-block;box-shadow:0 0 0 3px rgba(74,222,128,.2)}
.status.fechado i{background:#FBBF24;box-shadow:0 0 0 3px rgba(251,191,36,.2)}

/* header.topo-site */
header.topo-site{background:#fff;border-bottom:1px solid var(--borda);position:sticky;top:0;z-index:30}
header.topo-site .w{display:flex;align-items:center;gap:28px;min-height:82px}
header.topo-site .logo img{height:56px;width:auto;display:block}
header.topo-site nav{display:flex;gap:2px;margin-right:auto}
header.topo-site nav a{font-weight:600;font-size:15px;padding:12px 12px;border-radius:10px;color:#2B323A}
header.topo-site nav a:hover,header.topo-site nav a.on{color:var(--verm);background:var(--rosa)}
.busca-btn{width:46px;height:46px;border-radius:12px;border:1px solid var(--borda);display:grid;place-items:center;color:var(--sub)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:15.5px;padding:0 22px;min-height:52px;border-radius:12px;transition:background .15s,transform .15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-wa{background:var(--verde);color:#fff;box-shadow:0 10px 22px -12px rgba(24,169,87,.8)}
.btn-wa:hover{background:#13924A}
.btn-v{background:var(--verm);color:#fff}
.btn-v:hover{background:var(--verm2)}
.btn-c{background:#fff;color:var(--txt);border:1.5px solid var(--borda)}
.btn-c:hover{border-color:var(--txt)}
.btn.p{min-height:46px;padding:0 18px;font-size:15px}

/* acesso rápido */
.rapido{background:var(--fundo);border-bottom:1px solid var(--borda)}
.rapido .w{display:flex;gap:10px;min-height:58px;align-items:center;overflow-x:auto;scrollbar-width:none}
.rapido a{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14.5px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--borda);white-space:nowrap;min-height:44px}
.rapido a b{color:var(--verm)}
.rapido a:hover{border-color:var(--verm)}

/* hero */
.hero{background:#fff}
.hero .w{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;padding-top:44px;padding-bottom:40px}
.selo{display:inline-flex;gap:10px;align-items:center;font-weight:700;font-size:13px;color:var(--verm);background:var(--rosa);padding:8px 14px;border-radius:999px;letter-spacing:.02em}
.hero h1{font-size:clamp(40px,5.2vw,66px);font-weight:800;margin:20px 0 18px}
.hero h1 em{font-style:normal;color:var(--verm)}
.hero .lead{font-size:19px;color:var(--sub);max-width:46ch}
.precos{display:flex;gap:12px;margin:26px 0 28px;flex-wrap:wrap}
.preco{background:#fff;border:1.5px solid var(--borda);border-radius:16px;padding:14px 20px;min-width:180px}
.preco small{display:block;font-size:13px;color:var(--sub);font-weight:600}
.preco b{font-size:34px;font-weight:800;letter-spacing:-.03em;color:var(--verm);line-height:1.1}
.preco span{font-size:13px;color:var(--sub)}
.acoes{display:flex;gap:12px;flex-wrap:wrap}
.foto{border-radius:24px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:16px;background:radial-gradient(90% 70% at 30% 25%,#F9D5CE 0,transparent 60%),radial-gradient(80% 60% at 80% 90%,#E8A79B 0,transparent 60%),#F0BFB3}
.foto>span{background:rgba(255,255,255,.9);border-radius:10px;padding:7px 11px;font-size:12.5px;font-weight:700;color:var(--vinho)}
.hero .foto{min-height:470px;align-items:flex-start}
.hero .foto>span{margin-top:auto}
.flut{position:absolute;background:#fff;border-radius:16px;box-shadow:var(--sombra);padding:14px 16px;display:flex;gap:12px;align-items:center;font-size:14px;line-height:1.3}
.flut b{display:block;font-size:15px}
.flut .ic{width:40px;height:40px;border-radius:12px;background:var(--rosa);color:var(--verm);display:grid;place-items:center;font-weight:800}
.flut.a{top:22px;right:22px}
.flut.b{left:-26px;bottom:70px}

/* 3 serviços */
.servicos{background:var(--fundo);padding:40px 0 30px}
.servicos .g{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.serv{background:#fff;border-radius:var(--r);padding:26px;box-shadow:var(--sombra);display:flex;flex-direction:column;gap:8px}
.serv .ic{width:48px;height:48px;border-radius:14px;background:var(--verm);color:#fff;display:grid;place-items:center;font-weight:800;font-size:18px}
.serv h3{font-size:22px;font-weight:800;margin-top:8px}
.serv p{color:var(--sub);font-size:15px}
.serv a{margin-top:auto;padding-top:10px;font-weight:700;color:var(--verm)}

/* números */
.nums{background:var(--fundo);padding:34px 0 70px}
.nums .faixa{background:var(--vinho);color:#fff;border-radius:24px;padding:34px 40px;display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:24px;align-items:center}
.nums h2{font-size:24px;font-weight:700;line-height:1.25;color:#FBE4E1}
.nums h2 b{color:#fff}
.nums strong{display:block;font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1}
.nums span{font-size:14px;color:#F3C6C1}

/* seções */
.sec{padding:84px 0;content-visibility:auto;contain-intrinsic-size:900px}
.sec.cinza{background:var(--fundo)}
.cab{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px;flex-wrap:wrap}
.cab h2{font-size:clamp(32px,3.8vw,46px);font-weight:800;max-width:20ch}
.cab p{color:var(--sub);max-width:52ch;margin-top:10px}
.ey{display:inline-block;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--verm);margin-bottom:10px}
.ver{font-weight:700;color:var(--verm);white-space:nowrap;padding:10px 0}

/* especialidades */
.esp{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.esp a{border:1.5px solid var(--borda);border-radius:16px;padding:20px 20px 18px;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,box-shadow .15s;background:#fff}
.esp a:hover{border-color:var(--verm);box-shadow:var(--sombra)}
.esp h3{font-size:18px;font-weight:700}
.esp p{font-size:14px;color:var(--sub)}
.esp .ag{margin-top:10px;font-size:14px;font-weight:700;color:var(--verm)}

/* exames */
.exg{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.exc{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--sombra);display:flex;flex-direction:column}
.exc .foto{height:170px;border-radius:0}
.exc .c{padding:22px 22px 24px;display:flex;flex-direction:column;gap:6px;flex:1}
.exc h3{font-size:21px;font-weight:800}
.exc p{color:var(--sub);font-size:15px}
.exc .pr{margin-top:auto;padding-top:12px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.exc .pr span{font-size:13px;color:var(--sub)}
.exc .pr b{display:block;font-size:24px;font-weight:800;color:var(--txt);letter-spacing:-.02em}
.exc .pr a{font-weight:700;color:var(--verm);font-size:15px;padding:10px 0}

/* check-ups */
.chk-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.chk-tabs button{font:600 15px "Plus Jakarta Sans",sans-serif;border:1.5px solid var(--borda);background:#fff;border-radius:999px;padding:0 18px;min-height:44px;cursor:pointer;color:var(--txt)}
.chk-tabs button.on{background:var(--txt);border-color:var(--txt);color:#fff}
.chk{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ck{background:#fff;border:1.5px solid var(--borda);border-radius:var(--r);padding:24px;display:flex;flex-direction:column}
.ck.dest{border-color:var(--verm);box-shadow:0 0 0 3px var(--rosa)}
.ck .top{display:flex;justify-content:space-between;align-items:start;gap:10px}
.ck .qt{font-size:12.5px;font-weight:700;background:var(--fundo);border-radius:999px;padding:5px 10px;white-space:nowrap}
.ck.dest .qt{background:var(--verm);color:#fff}
.ck h3{font-size:21px;font-weight:800}
.ck .para{font-size:14px;color:var(--sub);margin:6px 0 14px}
.ck ul{list-style:none;display:grid;gap:7px;font-size:14.5px;margin-bottom:18px}
.ck li{display:flex;gap:9px;align-items:flex-start}
.ck li:before{content:"";flex:none;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--rosa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12.5 4 4 8-9' fill='none' stroke='%23D2202C' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.ck .btn{margin-top:auto;width:100%}
.ck.oculto{display:none}

/* gestação */
.gest{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center}
.gest .foto{min-height:440px}
.regua{position:relative;height:12px;background:repeating-linear-gradient(90deg,#D9DDE2 0 2px,transparent 2px 2.5%),#EEF0F3;border-radius:6px;margin:26px 0 8px}
.regua span{position:absolute;top:0;height:12px;border-radius:6px;background:var(--verm)}
.regua span.esc{background:var(--vinho)}
.marcas{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:var(--sub);margin-bottom:22px}
.etp{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.etp a{border:1.5px solid var(--borda);border-radius:16px;padding:16px 18px;display:block;background:#fff}
.etp a:hover{border-color:var(--verm)}
.etp small{font-weight:800;color:var(--verm);font-size:13px}
.etp b{display:block;font-size:17px;margin:4px 0 2px}
.etp span{font-size:14px;color:var(--sub)}

/* unidades */
.un{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.un article{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--sombra);display:flex;flex-direction:column}
.un .foto{height:170px;border-radius:0}
.un .c{padding:22px 24px 24px;display:flex;flex-direction:column;gap:6px;flex:1}
.un h3{font-size:23px;font-weight:800}
.un address{font-style:normal;font-size:15px;color:var(--sub)}
.un dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:14.5px;background:var(--fundo);border-radius:12px;padding:12px 14px;margin-top:8px}
.un dt{font-weight:700}
.un .status{font-size:14px;font-weight:600;margin-top:10px}
.un .ac{display:flex;gap:10px;margin-top:auto;padding-top:16px}
.un .ac a{flex:1}

/* rede */
.rede{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rede article.vc{background:#EAF4F1}
.rede article.vc .ey{color:#0F6E5A}
.rede article.vc a.l{color:#0F6E5A}
.rede article{border-radius:22px;padding:32px;background:var(--fundo);display:flex;flex-direction:column;gap:10px}
.rede article.y{background:var(--vinho);color:#fff}
.rede h3{font-size:28px;font-weight:800}
.rede p{color:var(--sub)}
.rede .y p{color:#F3C6C1}
.rede a.l{font-weight:700;color:var(--verm);padding:10px 0;margin-top:auto}
.rede .y a.l{color:#fff}

/* blog */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.post{display:flex;flex-direction:column;border-radius:var(--r);overflow:hidden;background:#fff;border:1.5px solid var(--borda);transition:box-shadow .15s,border-color .15s}
.post:hover{box-shadow:var(--sombra);border-color:transparent}
.capa{height:180px;position:relative;display:flex;align-items:flex-end;padding:18px;color:#fff;overflow:hidden}
.capa:after{content:"";position:absolute;right:-40px;top:-40px;width:180px;height:180px;border-radius:50%;border:28px solid rgba(255,255,255,.12)}
.capa b{font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1;position:relative;z-index:1;max-width:12ch}
.capa.c1{background:var(--verm)} .capa.c2{background:var(--vinho)} .capa.c3{background:#2B323A} .capa.c4{background:#B4532A}
.post .c{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.post .meta{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--sub)}
.tag{font-size:12px;font-weight:700;color:var(--verm);background:var(--rosa);border-radius:999px;padding:4px 10px}
.post h3{font-size:19px;font-weight:700;line-height:1.3}
.post .ler{margin-top:auto;padding-top:8px;font-weight:700;color:var(--verm);font-size:14.5px}

/* faq */
.faq-w{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px}
.faq details{border-bottom:1px solid var(--borda)}
.faq summary{list-style:none;cursor:pointer;padding:20px 50px 20px 0;font-weight:700;font-size:17.5px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:4px;top:15px;width:32px;height:32px;border-radius:50%;background:var(--fundo);display:grid;place-items:center;font-size:22px;color:var(--verm)}
.faq details[open] summary:after{content:"–"}
.faq p{padding-bottom:20px;color:var(--sub)}

.final{padding:0 0 90px}
.final .cx{background:var(--verm);color:#fff;border-radius:28px;padding:56px;display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap}
.final h2{font-size:clamp(32px,4vw,50px);font-weight:800;max-width:18ch}
.final p{color:#FFE1DE;margin-top:8px}
.final .btn-c{border:0}

footer{background:#15191E;color:#AEB5BD;padding:64px 0 28px;font-size:14.5px}
footer .g{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:32px}
footer h4{color:#fff;font-size:15px;margin-bottom:12px}
footer ul{list-style:none}
footer li a{display:inline-block;padding:5px 0}
footer li a:hover{color:#fff}
footer .logo img{height:56px;margin-bottom:14px}
footer .hor{font-size:13.5px;line-height:1.7}
footer .legal{border-top:1px solid #2A3037;margin-top:44px;padding-top:20px;font-size:13px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

.flutua{position:fixed;right:20px;bottom:20px;width:60px;height:60px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 14px 30px -10px rgba(0,0,0,.4);z-index:40}
.flutua svg{width:30px;height:30px}
.conceito{position:fixed;left:16px;bottom:16px;background:var(--txt);color:#fff;font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:10px 14px;border-radius:999px;z-index:50}

/* blog index */
.bhero{background:var(--fundo);padding:54px 0 40px;border-bottom:1px solid var(--borda)}
.bhero h1{font-size:clamp(36px,4.6vw,56px);font-weight:800}
.bhero p{color:var(--sub);font-size:18px;margin-top:10px;max-width:56ch}
.trilha{font-size:14px;color:var(--sub);margin-bottom:16px}
.trilha a{color:var(--txt);font-weight:600}
.bbusca{display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid var(--borda);border-radius:14px;padding:0 18px;max-width:560px;margin-top:24px;min-height:56px}
.bbusca input{flex:1;border:0;outline:0;font:500 16px "Plus Jakarta Sans",sans-serif;min-height:52px;background:transparent}
.bbusca:focus-within{border-color:var(--verm)}
.cats{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0 26px}
.cats button{font:600 14.5px "Plus Jakarta Sans",sans-serif;border:1.5px solid var(--borda);background:#fff;border-radius:999px;padding:0 16px;min-height:44px;cursor:pointer;color:var(--txt)}
.cats button.on{background:var(--verm);border-color:var(--verm);color:#fff}
.destaque{display:grid;grid-template-columns:1.2fr 1fr;border-radius:24px;overflow:hidden;border:1.5px solid var(--borda);margin-bottom:28px}
.destaque .capa{height:auto;min-height:320px}
.destaque .capa b{font-size:44px}
.destaque .c{padding:36px;display:flex;flex-direction:column;gap:12px;justify-content:center}
.destaque h2{font-size:30px;font-weight:800;line-height:1.15}
.destaque p{color:var(--sub)}
.pag{display:flex;gap:8px;justify-content:center;margin-top:40px}
.pag a{min-width:46px;height:46px;border-radius:12px;border:1.5px solid var(--borda);display:grid;place-items:center;font-weight:700}
.pag a.on{background:var(--txt);color:#fff;border-color:var(--txt)}
.lat{display:grid;grid-template-columns:1fr 320px;gap:40px}
.side{display:flex;flex-direction:column;gap:16px}
.side .bx{border:1.5px solid var(--borda);border-radius:18px;padding:22px}
.side .bx h3{font-size:18px;margin-bottom:10px}
.side .bx.v{background:var(--verm);color:#fff;border:0}
.side .bx.v p{color:#FFE1DE;font-size:15px;margin-bottom:14px}
.side ul{list-style:none}
.side li a{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--borda);font-weight:600;font-size:15px}
.side li a span{color:var(--sub);font-weight:500}
.lat .posts{grid-template-columns:repeat(2,1fr)}
.vazio{display:none;color:var(--sub);padding:20px 0}

@media(max-width:1100px){
  header.topo-site nav{display:none}
  header.topo-site .w{justify-content:space-between}
  .esp{grid-template-columns:repeat(3,1fr)}
  .chk{grid-template-columns:repeat(2,1fr)}
  .nums .faixa{grid-template-columns:repeat(2,1fr)}
  .nums h2{grid-column:1/-1}
  footer .g{grid-template-columns:1fr 1fr}
  .lat{grid-template-columns:1fr}
}
@media(max-width:860px){
  .hero{background:#fff}
  .hero .w{grid-template-columns:1fr;gap:30px;padding-top:28px}
  .hero .foto{min-height:300px}
  .flut.b{left:12px;right:12px;bottom:58px}
  .servicos .g,.exg,.un,.rede,.posts,.gest,.faq-w,.destaque{grid-template-columns:1fr}
  .esp{grid-template-columns:1fr 1fr}
  .gest .foto{min-height:260px}
  .lat .posts{grid-template-columns:1fr}
}
@media(max-width:560px){
  body{font-size:16px}
  .util .d{display:none}
  .flut.a{display:none}
  header.topo-site .w{min-height:72px;gap:10px}
  header.topo-site .logo img{height:46px}
  .busca-btn{display:none}
  .precos .preco{min-width:0;flex:1}
  .preco b{font-size:28px}
  .acoes .btn{width:100%}
  .chk{grid-template-columns:1fr}
  .esp{grid-template-columns:1fr}
  .etp{grid-template-columns:1fr}
  .sec{padding:64px 0}
  .nums .faixa{padding:28px 24px}
  .nums strong{font-size:36px}
  .final .cx{padding:36px 24px}
  .final .btn{width:100%}
  .destaque .c{padding:24px}
  .destaque .capa{min-height:200px}
  .destaque .capa b{font-size:32px}
  footer .g{grid-template-columns:1fr}
  .flutua{right:14px;bottom:14px}
}

/* vacinas */
.vac{background:#0F3D35;color:#E6F2EF;border-radius:28px;padding:44px;display:grid;grid-template-columns:1fr 2fr;gap:40px}
.vac .marca-v{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border-radius:999px;padding:7px 14px;font-weight:700;font-size:13.5px;color:#fff}
.vac .marca-v i{width:10px;height:10px;border-radius:50%;background:#5EE0B8;display:inline-block}
.vac h2{font-size:clamp(30px,3.4vw,42px);font-weight:800;color:#fff;margin:16px 0 12px}
.vac p{color:#B8D6CF;font-size:15.5px}
.vac .info{margin-top:18px;font-size:14px;color:#B8D6CF;display:grid;gap:6px}
.vac .info b{color:#fff}
.vac .acoes{margin-top:22px}
.vac .btn-v2{background:#5EE0B8;color:#0F3D35}
.vac .btn-v2:hover{background:#7CEBC8}
.vac .btn-o{border:1.5px solid rgba(255,255,255,.35);color:#fff;background:transparent}
.idades{display:grid;grid-template-columns:1.15fr 1fr;gap:12px}
.idades .idade:first-child{grid-row:1/4}
.idade{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:10px}
.idade small{font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#5EE0B8}
.idade h3{font-size:21px;font-weight:800;color:#fff}
.idade ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.idade li{font-size:12.5px;font-weight:600;background:rgba(255,255,255,.1);border-radius:999px;padding:4px 9px;color:#E6F2EF}
.idade a{margin-top:auto;font-weight:700;font-size:14px;color:#5EE0B8;padding:8px 0}
@media(max-width:1100px){.servicos .g{grid-template-columns:1fr 1fr}.vac{grid-template-columns:1fr}.idades{grid-template-columns:1fr 1fr}.rede{grid-template-columns:1fr}}
@media(max-width:560px){.servicos .g{grid-template-columns:1fr}.vac{padding:28px 22px}.idades{grid-template-columns:1fr}.vac .btn{width:100%}}
/* ---- página de exame ---- */
.phero{background:var(--fundo);border-bottom:1px solid var(--borda)}
.phero .w{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;padding-top:30px;padding-bottom:56px;align-items:start}
.trilha{font-size:14px;color:var(--sub);margin-bottom:18px}
.trilha a{color:var(--txt);font-weight:600}
.phero h1{font-size:clamp(38px,5vw,62px);font-weight:800;margin-bottom:16px}
.phero h1 em{font-style:normal;color:var(--verm)}
.phero .lead{font-size:19px;color:var(--sub);max-width:52ch}
.fatos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:26px 0}
.fato{background:#fff;border:1.5px solid var(--borda);border-radius:14px;padding:14px 16px}
.fato b{display:block;font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--verm);line-height:1.15}
.fato span{font-size:13.5px;color:var(--sub)}
.resumo{background:#fff;border-left:4px solid var(--verm);border-radius:0 14px 14px 0;padding:16px 20px;font-size:15.5px;color:#39414A}
.resumo strong{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--verm);margin-bottom:4px}
.agenda{background:#fff;border-radius:22px;box-shadow:var(--sombra);padding:28px;position:sticky;top:100px}
.agenda h2{font-size:24px;font-weight:800}
.agenda .sub{color:var(--sub);font-size:15px;margin:4px 0 18px}
.agenda label{display:block;font-weight:700;font-size:14px;margin:12px 0 6px}
.agenda select,.agenda input{width:100%;min-height:50px;border:1.5px solid var(--borda);border-radius:12px;padding:0 14px;font:500 16px "Plus Jakarta Sans",sans-serif;background:#fff;color:var(--txt)}
.agenda select:focus,.agenda input:focus{outline:0;border-color:var(--verm)}
.agenda .btn{width:100%;margin-top:18px}
.agenda .ou{text-align:center;font-size:14px;color:var(--sub);margin-top:12px}
.agenda .ou a{color:var(--txt);font-weight:700}
.agenda .preco-l{display:flex;justify-content:space-between;align-items:center;background:var(--rosa);border-radius:12px;padding:12px 16px;margin-bottom:6px}
.agenda .preco-l span{font-size:14px;font-weight:600;color:var(--vinho)}
.agenda .preco-l b{font-size:26px;font-weight:800;color:var(--verm);letter-spacing:-.02em}

.filtro{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.filtro button{font:600 15px "Plus Jakarta Sans",sans-serif;border:1.5px solid var(--borda);background:#fff;border-radius:999px;padding:0 18px;min-height:44px;cursor:pointer;color:var(--txt)}
.filtro button.on{background:var(--txt);border-color:var(--txt);color:#fff}
.tipos{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tp{border:1.5px solid var(--borda);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:10px;background:#fff;transition:border-color .15s,box-shadow .15s}
.tp:hover{border-color:var(--verm);box-shadow:var(--sombra)}
.tp-top{display:flex;justify-content:space-between;align-items:start;gap:10px}
.tp h3{font-size:20px;font-weight:800}
.tp p{font-size:14.5px;color:var(--sub)}
.pp{font-size:12px;font-weight:700;border-radius:999px;padding:5px 10px;white-space:nowrap}
.pp.j{background:#FFF4D6;color:#8A5A00}
.pp.b{background:#E3F1FF;color:#0D5DA8}
.pp.s{background:#E6F6EC;color:#13753C}
.tp-meta{font-size:13.5px;color:var(--sub);font-weight:600}
.tp-ac{display:flex;justify-content:space-between;margin-top:auto;padding-top:8px;border-top:1px solid var(--borda)}
.tp-ac a{font-weight:700;font-size:14.5px;padding:10px 0;color:var(--sub)}
.tp-ac a.ag{color:var(--verm)}
.tp.oculto{display:none}

.passos4{display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:p}
.passos4 article{padding:0 24px 0 0;position:relative}
.passos4 article:before{counter-increment:p;content:counter(p);display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--verm);color:#fff;font-weight:800;font-size:18px;margin-bottom:16px;position:relative;z-index:1}
.passos4 article:after{content:"";position:absolute;left:46px;right:0;top:22px;height:2px;background:repeating-linear-gradient(90deg,#E8C6C2 0 6px,transparent 6px 12px)}
.passos4 article:last-child:after{display:none}
.passos4 h3{font-size:19px;font-weight:800;margin-bottom:6px}
.passos4 p{font-size:15px;color:var(--sub)}

.tabprep{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1.5px solid var(--borda);border-radius:18px;overflow:hidden;font-size:15px}
.tabprep th,.tabprep td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--borda)}
.tabprep thead th{background:var(--txt);color:#fff;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.tabprep tbody tr:last-child th,.tabprep tbody tr:last-child td{border-bottom:0}
.tabprep tbody th{font-weight:700}
.tabprep tbody tr:nth-child(even){background:#FAFBFC}
.tab-wrap{overflow-x:auto;border-radius:18px}

.cta-meio{background:var(--vinho);color:#fff;border-radius:24px;padding:36px 40px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-meio h2{font-size:clamp(26px,3vw,36px);font-weight:800}
.cta-meio p{color:#F3C6C1;margin-top:6px}

.duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.gcard{border-radius:22px;padding:30px;display:flex;flex-direction:column;gap:8px;background:var(--rosa)}
.gcard .sem{font-weight:800;color:var(--verm);font-size:14px}
.gcard h3{font-size:26px;font-weight:800}
.gcard p{color:#5B3B3E}
.gcard a{margin-top:auto;padding-top:10px;font-weight:700;color:var(--verm)}

.un-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.un-mini article{border:1.5px solid var(--borda);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:4px}
.un-mini h3{font-size:20px;font-weight:800}
.un-mini address{font-style:normal;color:var(--sub);font-size:14.5px}
.un-mini .hor{font-size:14px;margin-top:6px}
.un-mini .status{font-size:13.5px;font-weight:600;margin-top:8px}
.un-mini a{margin-top:auto;padding-top:10px;font-weight:700;color:var(--verm)}

.cross{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
.cross a{border:1.5px solid var(--borda);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:6px;background:#fff}
.cross a:hover{border-color:var(--verm)}
.cross small{font-weight:700;font-size:12.5px;color:var(--verm);letter-spacing:.06em;text-transform:uppercase}
.cross b{font-size:19px}
.cross span{color:var(--sub);font-size:14.5px}

.yas{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1.5px dashed #D9C7C5;border-radius:20px;padding:24px 28px;flex-wrap:wrap}
.yas b{font-size:19px}
.yas p{color:var(--sub);font-size:15px}

.barra-m{display:none}
@media(max-width:1000px){
  .phero .w{grid-template-columns:1fr}
  .agenda{position:static}
  .tipos{grid-template-columns:1fr 1fr}
  .passos4{grid-template-columns:1fr 1fr;row-gap:30px}
  .passos4 article:nth-child(2):after{display:none}
  .cross{grid-template-columns:1fr}
  .un-mini{grid-template-columns:1fr}
}
@media(max-width:600px){
  .fatos{grid-template-columns:1fr 1fr 1fr;gap:8px}
  .fato{padding:12px}
  .fato b{font-size:18px}
  .fato span{font-size:12.5px}
  .tipos,.duo,.passos4{grid-template-columns:1fr}
  .passos4 article:after{display:none}
  .cta-meio{padding:28px 24px}
  .cta-meio .btn{width:100%}
  .tabprep{font-size:14px}
  .tabprep th,.tabprep td{padding:12px}
  .tabprep thead th:nth-child(4),.tabprep td:nth-child(4){display:none}
  .flutua{display:none}
  .barra-m{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;position:fixed;left:0;right:0;bottom:0;padding:10px 12px;background:#fff;border-top:1px solid var(--borda);z-index:40;box-shadow:0 -8px 24px -16px rgba(0,0,0,.25)}
  .barra-m .btn{min-height:50px}
  body{padding-bottom:72px}
  .conceito{bottom:84px}
}
/* ---- página de consulta ---- */
.fato.ph span{display:block}
.fato.ph b{color:var(--txt);background:repeating-linear-gradient(135deg,#FFF4D6 0 6px,#FFEBB0 6px 12px);border-radius:6px;padding:0 6px;display:inline-block}
.sinais{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:start}
.chk-s{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.chk-s label{display:flex;gap:12px;align-items:center;border:1.5px solid var(--borda);border-radius:14px;padding:14px 16px;cursor:pointer;font-weight:600;font-size:15.5px;background:#fff;min-height:58px;transition:border-color .15s,background .15s}
.chk-s input{appearance:none;width:22px;height:22px;border-radius:7px;border:2px solid #C5CBD2;flex:none;display:grid;place-items:center;margin:0}
.chk-s input:checked{background:var(--verm) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12.5 4 4 8-9' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat;border-color:var(--verm)}
.chk-s label:has(input:checked){border-color:var(--verm);background:var(--rosa)}
.painel-s{background:var(--fundo);border-radius:22px;padding:28px;position:sticky;top:100px}
.painel-s h3{font-size:22px;font-weight:800}
.painel-s p{color:var(--sub);font-size:15px;margin:8px 0 16px}
.painel-s .n{font-weight:800;color:var(--verm)}
.painel-s .btn{width:100%}
.alerta{display:flex;gap:14px;background:#FFF1F0;border:1.5px solid #F5C2BE;border-radius:16px;padding:16px 18px;margin-top:16px;font-size:14.5px;color:#7A1A12}
.alerta b{display:block;color:#5C0D0A}
.alerta .ic{flex:none;width:30px;height:30px;border-radius:50%;background:var(--verm);color:#fff;display:grid;place-items:center;font-weight:800}
.trata{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.trata article{border-radius:18px;padding:22px;background:#fff;border:1.5px solid var(--borda)}
.trata .num{font-weight:800;color:var(--verm);font-size:13px;letter-spacing:.08em}
.trata h3{font-size:19px;font-weight:800;margin:6px 0 4px}
.trata p{font-size:14.5px;color:var(--sub)}
.consulta{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.consulta article{background:#fff;border-radius:20px;padding:26px;box-shadow:var(--sombra)}
.consulta .et{display:inline-block;font-weight:800;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--txt);border-radius:999px;padding:5px 12px;margin-bottom:14px}
.consulta article:nth-child(2) .et{background:var(--verm)}
.consulta article:nth-child(3) .et{background:var(--vinho)}
.consulta h3{font-size:21px;font-weight:800;margin-bottom:10px}
.consulta ul{list-style:none;display:grid;gap:8px;font-size:15px;color:#39414A}
.consulta li{display:flex;gap:10px}
.consulta li:before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--verm);margin-top:9px}
.exs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.exs a{border:1.5px solid var(--borda);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:6px;background:#fff}
.exs a:hover{border-color:var(--verm);box-shadow:var(--sombra)}
.exs b{font-size:19px}
.exs span{color:var(--sub);font-size:14.5px}
.exs em{font-style:normal;font-weight:700;color:var(--verm);font-size:14.5px;margin-top:auto;padding-top:6px}
.exs .ckc{background:var(--vinho);border:0;color:#fff}
.exs .ckc span{color:#F3C6C1}
.exs .ckc em{color:#fff}
.rel{display:flex;flex-wrap:wrap;gap:10px}
.rel a{border:1.5px solid var(--borda);border-radius:999px;padding:0 18px;min-height:46px;display:inline-flex;align-items:center;font-weight:600;background:#fff}
.rel a:hover{border-color:var(--verm);color:var(--verm)}
@media(max-width:1000px){
  .sinais{grid-template-columns:1fr}
  .painel-s{position:static}
  .trata,.consulta,.exs{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .chk-s,.trata,.consulta,.exs{grid-template-columns:1fr}
}

/* ===== site completo ===== */
.conceito{display:none}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid #2563EB;outline-offset:2px}
.pular{position:absolute;left:-9999px;top:0;background:#fff;padding:12px 16px;z-index:100;font-weight:700}
.pular:focus{left:12px;top:12px}
/* menu celular */
.mm{display:none;position:relative}
.mm summary{list-style:none;cursor:pointer;width:48px;height:48px;border-radius:12px;border:1.5px solid var(--borda);display:grid;place-items:center;font-size:22px;color:var(--txt)}
.mm summary::-webkit-details-marker{display:none}
.mm[open] summary{background:var(--txt);color:#fff;border-color:var(--txt)}
.mm nav{position:absolute;right:0;top:56px;background:#fff;border:1px solid var(--borda);border-radius:16px;box-shadow:var(--sombra);padding:8px;display:grid;min-width:240px;z-index:60}
.mm nav a{padding:13px 14px;border-radius:10px;font-weight:600}
.mm nav a:hover{background:var(--rosa);color:var(--verm)}
@media(max-width:1100px){.mm{display:block}}
/* preço */
.pzbox{background:var(--rosa);border-radius:14px;padding:14px 16px;margin-bottom:6px}
.pzbox small{display:block;font-size:13px;font-weight:700;color:var(--vinho)}
.pzbox .pz-v{display:block;font-size:30px;font-weight:800;color:var(--verm);letter-spacing:-.03em;line-height:1.15}
.pzbox .pz-v.pz-sem{font-size:20px;color:var(--txt);padding:2px 0}
.pzbox .pz-px{display:block;margin-top:8px;padding-top:8px;border-top:1px dashed #EFC3BF;font-size:14px;color:#2B323A}
.pzbox .pz-px b{color:var(--verde)}
.fato b{display:block}
.pz-l{font-size:13px;color:var(--sub);font-weight:500}
.exc .pr .pz-l{display:block}
.agenda .pzbox{margin:0 0 6px}
/* fotos (a substituir) */
.foto[data-foto]{min-height:220px}
.foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* listas */
.lst{list-style:none;display:grid;gap:10px}
.lst li{display:flex;gap:10px;align-items:flex-start}
.lst li:before{content:"";flex:none;width:20px;height:20px;margin-top:2px;border-radius:50%;background:var(--rosa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12.5 4 4 8-9' fill='none' stroke='%23D2202C' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat}
.duas{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.bloco{background:#fff;border:1.5px solid var(--borda);border-radius:20px;padding:28px}
.bloco h2{font-size:clamp(24px,2.6vw,32px);font-weight:800;margin-bottom:16px}
.bloco h3{font-size:19px;font-weight:800;margin:18px 0 8px}
.bloco p{color:#39414A;margin-bottom:10px}
.texto{max-width:860px}
.texto h2{font-size:clamp(26px,3vw,36px);font-weight:800;margin:34px 0 12px}
.texto h3{font-size:21px;font-weight:800;margin:24px 0 8px}
.texto p,.texto li{color:#39414A;font-size:17px;line-height:1.75}
.texto p{margin-bottom:14px}
.texto ul,.texto ol{margin:0 0 16px 22px}
.texto table{width:100%;border-collapse:collapse;margin:14px 0 20px;font-size:15px}
.texto th,.texto td{border:1px solid var(--borda);padding:10px 12px;text-align:left}
.texto th{background:var(--fundo)}
/* hubs */
.hub{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.hub a{border:1.5px solid var(--borda);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:6px;background:#fff;transition:border-color .15s,box-shadow .15s}
.hub a:hover{border-color:var(--verm);box-shadow:var(--sombra)}
.hub b{font-size:19px;font-weight:800}
.hub span{color:var(--sub);font-size:14.5px}
.hub em{font-style:normal;margin-top:auto;padding-top:8px;font-weight:700;color:var(--verm);font-size:14.5px}
.hub .pr{font-size:14px;color:var(--txt)}
.hub[data-oculto]{display:none}
.hub a.oculto{display:none}
/* unidade */
.mapa-f{position:relative;border-radius:20px;overflow:hidden;min-height:340px;background:radial-gradient(90% 90% at 30% 30%,#F3C3B2,transparent 70%),#E8D9CC}
.mapa-f button{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font:600 15px "Plus Jakarta Sans",sans-serif;color:var(--vinho)}
.mapa-f button b{font-size:20px}
.mapa-f iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* blog */
.art-h{background:var(--fundo);border-bottom:1px solid var(--borda);padding:40px 0 44px}
.art-h h1{font-size:clamp(32px,4.4vw,52px);font-weight:800;max-width:24ch;margin:10px 0 16px}
.art-h .meta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;color:var(--sub);font-size:14.5px}
.art{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;padding:48px 0 80px}
.aviso-wp{border:2px dashed #E7B23C;background:#FFF8E3;border-radius:16px;padding:20px 22px;color:#6B4E00;margin-bottom:24px}
.aviso-wp b{display:block;font-size:17px;margin-bottom:4px}
.autor{display:flex;gap:14px;align-items:center;border-top:1px solid var(--borda);margin-top:30px;padding-top:22px;font-size:14.5px;color:var(--sub)}
.autor b{color:var(--txt);display:block}
.autor .av{width:48px;height:48px;border-radius:50%;background:var(--rosa);color:var(--verm);display:grid;place-items:center;font-weight:800;flex:none}
/* 404 */
.e404{text-align:center;padding:100px 0}
.e404 h1{font-size:clamp(40px,6vw,72px);font-weight:800}
.e404 p{color:var(--sub);margin:12px auto 28px;max-width:46ch}
@media(max-width:1000px){.hub{grid-template-columns:1fr 1fr}.duas{grid-template-columns:1fr}.art{grid-template-columns:1fr}}
@media(max-width:600px){.hub{grid-template-columns:1fr}.bloco{padding:22px}}
.util a{display:inline-block;padding:11px 0}
.f-sociais a{display:inline-block;padding:10px 0}
.side .bx a[href]:not(.btn){display:inline-block;padding:8px 0}
.ck a[href^="/vacinas"]{display:inline-block;padding:10px 0}
.texto .cta-meio h2{color:#fff;margin:0}
.texto .cta-meio p{color:#F3C6C1;margin:6px 0 0}
.texto a.btn{color:#fff}
.texto a.btn-c{color:var(--txt)}
.resumo b{font-weight:700}
.preco b{white-space:nowrap}
@media(max-width:560px){.precos{gap:8px}.precos .preco{padding:12px}.preco b{font-size:24px}}

.foto.tem-foto>span{display:none}
.foto.tem-foto{background:#ddd}
.foto .flut{z-index:2}

.texto .lista-check{list-style:none;margin-left:0}
.texto .lista-check li{position:relative;padding-left:30px;margin-bottom:8px}
.texto .lista-check li:before{content:"";position:absolute;left:0;top:5px;width:20px;height:20px;border-radius:50%;background:var(--rosa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12.5 4 4 8-9' fill='none' stroke='%23D2202C' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat}
.texto .tab-wrap{overflow-x:auto}
.texto a{color:var(--verm);font-weight:600}
.agenda label{display:block;font-weight:700;font-size:14px;margin:12px 0 0}
.agenda label select,.agenda label input{margin-top:6px}
.bhero .trilha,.phero .trilha,.art-h .trilha{font-size:14px;color:var(--sub);margin-bottom:16px}
.bhero .trilha a,.phero .trilha a,.art-h .trilha a{color:var(--txt);font-weight:600}
h3 a{color:inherit}
.esp a .ag{display:block}
.hub a .pr b,.esp .ag b{color:var(--txt)}
.ck .pr b{font-size:18px}

/* ===== WordPress ===== */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.texto img{border-radius:14px;height:auto}
.texto figure{margin:18px 0}
.texto figcaption{font-size:14px;color:var(--sub);margin-top:6px}
.texto .wp-block-image img{width:100%}
.texto blockquote{border-left:4px solid var(--verm);padding:6px 0 6px 18px;margin:18px 0;color:#39414A;font-style:italic}
.texto .wp-block-table table{width:100%}
.texto .wp-block-button__link{background:var(--verm);color:#fff;border-radius:12px;padding:14px 22px;font-weight:700;display:inline-block}
.texto .alignwide{max-width:1100px}
.texto iframe{max-width:100%}
.art-img{margin:0 0 24px}
.art-img img{width:100%;border-radius:18px}
.capa.tem-img{padding:0}
.capa.tem-img img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.capa.tem-img:after{display:none}
.destaque .capa.tem-img{position:relative}
.pag{flex-wrap:wrap}
.pag .page-numbers{min-width:46px;height:46px;padding:0 12px;border-radius:12px;border:1.5px solid var(--borda);display:grid;place-items:center;font-weight:700}
.pag .page-numbers.on,.pag .page-numbers.current{background:var(--txt);color:#fff;border-color:var(--txt)}
.pag .dots{border:0}
.foto.tem-foto{padding:0}
.foto.tem-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.foto.tem-foto>span{display:none}
.foto .flut{z-index:2}
.nums .faixa h2{color:#FBE4E1}
.admin-bar header.topo-site{top:32px}
@media(max-width:782px){.admin-bar header.topo-site{top:0}}

/* imagem destacada das páginas de serviço */
.pcapa{background:linear-gradient(var(--fundo) 0 50%,#fff 50%)}
.pcapa figure{margin:0;border-radius:28px;overflow:hidden;aspect-ratio:21/8;background:var(--borda)}
.pcapa img{width:100%;height:100%;object-fit:cover;display:block}
.phero:has(+.pcapa){border-bottom:0;padding-bottom:0}
@media(max-width:860px){.pcapa figure{aspect-ratio:16/10;border-radius:20px}}
