/* =========================================================
   site.css — institucional unificado (v1.3.5)
   Marca: #516082 (primária) | #d0a156 (secundária)
   Autor: Dr. Marco Comper — drmarcocomper.com
   ========================================================= */

/* ---------------------------
   Variáveis, base e fontes
---------------------------- */
:root{
  --cor-primaria:#516082;
  --cor-secundaria:#d0a156;
  --cor-secundaria-hover:#b78a42;
  --cor-fundo:#fff;
  --cor-neutro:#f6f6f6;
  --cor-texto:#333;
  --mc-borda:#E7E9EE;
  --btn-min:340px;
}

html{scroll-behavior:smooth;scroll-padding-top:80px}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

@font-face{
  font-family:"RobotoLocal";
  src:url("/assets/fonts/roboto/roboto-latin-400.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"RobotoLocal";
  src:url("/assets/fonts/roboto/roboto-latin-700.woff2") format("woff2");
  font-weight:700;font-style:normal;font-display:swap;
}

body{
  font-family:"RobotoLocal",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  background:linear-gradient(to bottom,#fff,#f3f3f3);
  color:var(--cor-texto);
  font-size:1rem;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{max-width:100%;height:auto;display:block}
a:focus-visible,button:focus-visible{outline:3px solid var(--cor-secundaria);outline-offset:2px}
.container{width:min(1100px,92%);margin-inline:auto}

/* ---------------------------
   Seção “premium” (exemplo)
---------------------------- */
.sp-elite{background:linear-gradient(180deg,#fff 0%,#F7F9FC 100%)}
.sp-elite h2{
  text-align:center;color:var(--cor-primaria);
  letter-spacing:.2px;font-size:clamp(1.8rem,2.5vw,2.1rem);
  margin:0 0 24px;position:relative
}
.sp-elite h2::after{
  content:"";display:block;width:66px;height:4px;margin:12px auto 0;
  background:var(--cor-secundaria);border-radius:999px
}
.sp-elite__grid{display:grid;gap:18px;grid-template-columns:repeat(4,1fr)}
@media (max-width:1080px){.sp-elite__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.sp-elite__grid{grid-template-columns:1fr}}
.sp-elite__card{
  background:#fff;border:1px solid var(--mc-borda);border-radius:16px;
  padding:18px 16px;box-shadow:0 10px 24px rgba(0,0,0,.06);
  transition:transform .18s ease,box-shadow .22s ease,border-color .22s ease;
  display:flex;flex-direction:column;gap:10px;min-height:260px;max-width:38ch;margin-inline:auto
}
.sp-elite__card:hover{
  transform:translateY(-2px);border-color:rgba(81,96,130,.25);
  box-shadow:0 16px 34px rgba(0,0,0,.09)
}
@media (max-width:560px){.sp-elite__card{padding:16px 14px}}
.sp-elite__badge{
  align-self:flex-start;display:inline-grid;place-items:center;width:42px;height:32px;border-radius:999px;
  background:rgba(220,179,113,.18);color:#342E1F;font-weight:700;font-size:.95rem;
  box-shadow:inset 0 0 0 1px rgba(220,179,113,.45)
}
.sp-elite__title{margin:0;color:#1f2630;font-size:1.06rem;line-height:1.25;font-weight:800}
.sp-elite__lead{margin:0;color:#5A6676;font-size:.975rem}
.sp-elite__bullets{margin:6px 0 0;padding-left:18px;color:#404B5A;font-size:.95rem}
.sp-elite__bullets li{margin:.22rem 0}
.sp-elite__cta{
  margin-top:auto;align-self:flex-start;background:#EEF2F7;color:#1f2630;text-decoration:none;
  font-weight:700;padding:10px 12px;border-radius:12px;border:1px solid #E3E8F0;
  transition:transform .12s ease,filter .12s ease,box-shadow .18s ease;
  box-shadow:0 6px 16px rgba(81,96,130,.10)
}
.sp-elite__card:hover .sp-elite__cta{transform:translateY(-1px);filter:brightness(1.02)}
.sp-elite__cta:focus{outline:3px solid var(--cor-secundaria);outline-offset:2px}

/* ---------------------------
   Header / Navegação
---------------------------- */
.mc-header{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid var(--mc-borda)}
.mc-wrap{max-width:1200px;margin:0 auto;height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 16px}
.mc-logo{display:flex;align-items:center;gap:12px}
.mc-logo img{height:72px!important;width:auto!important;max-width:none!important;display:block}
.mc-burger{width:42px;height:42px;border:0;background:transparent;display:none;flex-direction:column;justify-content:center;gap:5px;cursor:pointer}
.mc-burger span{width:24px;height:2px;background:var(--cor-primaria);transition:.25s}
.mc-nav{display:flex;align-items:center;gap:10px}
.mc-menu{list-style:none;display:flex;align-items:center;gap:6px;margin:0;padding:0}
.mc-link{display:inline-block;padding:10px 12px;border-radius:8px;font-weight:600;color:#1f2630;text-decoration:none}
.mc-link:hover,.mc-link:focus-visible{background:rgba(81,96,130,.08)}
.mc-ctas{display:flex;align-items:center;gap:10px;margin-left:8px}
.mc-btn{display:inline-block;padding:10px 14px;border-radius:10px;font-weight:700;text-decoration:none}
.mc-btn--outline{border:1px solid var(--cor-primaria);color:var(--cor-primaria);background:#fff}
.mc-btn--solid{background:var(--cor-primaria);color:#fff;border:1px solid var(--cor-primaria)}
.mc-btn--solid:hover{filter:brightness(1.05)}

.mc-item--has-sub{position:relative}
.mc-item--has-sub>.mc-toggle-sub svg{transform-origin:center;transition:transform .2s ease}
.mc-item--has-sub.is-open>.mc-toggle-sub svg{transform:rotate(180deg)}
.mc-sub{
  position:absolute;top:100%;left:0;min-width:260px;background:#fff;border:1px solid var(--mc-borda);
  border-radius:12px;box-shadow:0 10px 28px rgba(0,0,0,.08);padding:8px;display:none
}
.mc-item--has-sub:focus-within .mc-sub,.mc-item--has-sub:hover .mc-sub{display:block}
.mc-sub a{display:block;padding:10px 12px;border-radius:8px;white-space:nowrap;color:#1f2630;text-decoration:none}
.mc-sub a:hover,.mc-sub a:focus-visible{background:rgba(81,96,130,.08)}

@media (max-width:980px){
  .mc-burger{display:inline-flex}
  .mc-nav{
    position:fixed;inset:86px 0 0 0;background:#fff;border-top:1px solid var(--mc-borda);
    transform:translateY(-10px);opacity:0;pointer-events:none;transition:.25s;z-index:1001
  }
  .mc-nav.is-open{transform:translateY(0);opacity:1;pointer-events:auto}
  .mc-menu{flex-direction:column;align-items:stretch;padding:12px}
  .mc-link{padding:14px 12px;font-size:1.05rem}
  .mc-ctas{flex-direction:column;gap:8px;padding:0 12px 12px}
  .mc-sub{position:static;display:none;border:0;border-radius:0;box-shadow:none;padding:0 0 0 8px}
  .mc-item--has-sub.is-open .mc-sub{display:block}
  .mc-toggle-sub{display:flex;align-items:center;justify-content:space-between;width:100%}
}

/* ---------------------------
   Banner unificado
---------------------------- */
.banner-unificado{background:#f9f9fb;padding:56px 0 44px}
.banner-flex{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:36px;align-items:center}
.banner-texto{max-width:640px;min-height:420px}
.banner-texto h1{font-size:clamp(28px,4vw,40px);color:var(--cor-primaria);line-height:1.15;margin-bottom:10px}
.banner-texto .subtitulo{font-size:clamp(16px,2.2vw,18px);color:#4a5266;margin-bottom:14px}
.banner-texto .frase-banner span{display:block;font-size:1.125rem;font-weight:600;margin-bottom:4px;color:var(--cor-primaria)}
.banner-texto .terceira-frase{margin-top:6px;color:#445065}

.foto-circular{
  width:380px;height:380px;border-radius:24px;overflow:hidden;
  border:4px solid rgba(208,161,86,.55);background:#fff;
  box-shadow:0 6px 20px rgba(0,0,0,.08);justify-self:end
}
.foto-circular img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center 5%;
  transform:scale(1.3);
  transform-origin:center 8%;
  will-change:transform;
  transition:transform .3s ease,object-position .3s ease;
}

@media (max-width:920px){
  .banner-flex{grid-template-columns:1fr;gap:24px}
  .foto-circular{justify-self:center;width:300px;height:300px}
  .banner-texto{text-align:center;margin-inline:auto}
  .foto-circular img{
    transform:scale(1.12);
    object-position:center 10%;
  }
}

/* ---------------------------
   Botões / CTAs
---------------------------- */
.botoes-duplos{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px;min-height:52px}

/* Botão base */
.btn,
.btn-principal,
.btn-secundario,
.btn-mapa,
.btn-waze{
  display:inline-flex;align-items:center;justify-content:center;
  height:52px;line-height:52px;padding:0 24px;border-radius:10px;
  font-weight:800;text-decoration:none;white-space:nowrap;user-select:none;
  -webkit-tap-highlight-color:transparent;box-sizing:border-box;
  min-width:var(--btn-min);
  transition:transform .15s ease,box-shadow .15s ease,background-color .2s ease
}

/* Principal (dourado/azul) */
.btn-principal{background:var(--cor-primaria);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.btn-principal:hover,.btn-principal:focus-visible{
  background:var(--cor-secundaria-hover);transform:translateY(-1px);
  box-shadow:0 6px 16px rgba(0,0,0,.12)
}

/* WhatsApp visual — cobre wa.me e api.whatsapp.com */
a[href*="wa.me"].btn-principal,
a[href*="api.whatsapp.com"].btn-principal{
  background:#128C7E!important;color:#fff!important;
  text-shadow:0 1px 1px rgba(0,0,0,.22)
}
a[href*="wa.me"].btn-principal:hover,
a[href*="api.whatsapp.com"].btn-principal:hover{background:#0d7a6e!important}

/* Secundário (azul) */
.btn-secundario{background:var(--cor-primaria);color:#fff}
.btn-secundario:hover,.btn-secundario:focus-visible{
  background:#3d4c64;transform:translateY(-1px);
  box-shadow:0 6px 16px rgba(0,0,0,.12)
}

/* Botões auxiliares */
.btn-mapa{background:var(--cor-primaria)!important;color:#fff!important}
.btn-mapa:hover{background:var(--cor-secundaria-hover)!important;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}
.btn-waze{background:#516082!important;color:#fff!important}
.btn-waze:hover{background:#b78a42!important;color:#fff!important;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}

/* Botão “Ligar” – aparece só no mobile (desktop oculto) */
.btn-ligar{
  background-color:var(--cor-secundaria);
  color:#fff;border-radius:8px;padding:12px 22px;font-weight:500;
  text-decoration:none;display:inline-flex;align-items:center;gap:10px;
  transition:background .3s ease;margin-left:12px
}
.btn-ligar:hover{background-color:var(--cor-secundaria-hover)}
.btn-ligar img{width:22px;height:22px}

@media (min-width:992px){.btn-ligar{display:none}}
@media (max-width:768px){
  .btn,.btn-principal,.btn-secundario,.btn-mapa,.btn-waze{width:100%;min-width:unset;text-align:center;font-size:1.05rem}
  .botoes-duplos{flex-direction:column;gap:10px}
}

/* ---------------------------
   Seções gerais / Títulos
---------------------------- */
section{padding:40px 16px}
@media (max-width:600px){section{padding:32px 14px}}
section h2{
  text-align:center;color:var(--cor-primaria);
  font-size:clamp(22px,2.6vw,28px);margin:0 0 18px;line-height:1.25;
  font-weight:700;letter-spacing:-.2px;position:relative
}
section h2::after{
  content:"";display:block;width:60px;height:3px;margin:10px auto 0;
  background:var(--cor-secundaria);border-radius:2px
}

/* ---------------------------
   Depoimentos — Premium
---------------------------- */
.depoimentos{
  background: linear-gradient(180deg, #F7F9FC 0%, #ffffff 100%);
  border-top: 1px solid var(--mc-borda);
  padding: 64px 0 72px;
}
.depoimentos__wrap{max-width:1160px;margin:0 auto}
.depoimentos__header{margin:0 0 22px;text-align:center}
.depoimentos__header h2{
  color:var(--cor-primaria);
  font:700 clamp(1.6rem,2.6vw,2rem)/1.2 "RobotoLocal",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  margin:0;position:relative;
}
.depoimentos__header h2::after{
  content:"";display:block;width:66px;height:4px;margin:12px auto 0;
  background:var(--cor-secundaria);border-radius:999px;
}
.depoimentos__lead{
  margin:10px auto 0;color:#5A6676;
  font:400 .98rem/1.6 "RobotoLocal",system-ui,sans-serif;
  max-width:62ch;
}

.depoimentos__grid{
  list-style:none;margin:26px 0 0;padding:0;
  display:grid;gap:18px;grid-template-columns:1fr;
}
@media (min-width:720px){.depoimentos__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.depoimentos__grid{grid-template-columns:repeat(3,1fr);gap:22px}}

.dep-card{
  background:#fff;border:1px solid var(--mc-borda);border-radius:16px;
  box-shadow:0 6px 18px rgba(0,0,0,.05);
  padding:18px 18px 14px;display:flex;flex-direction:column;gap:10px;
  min-height:210px;
  transition:transform .22s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;
}
.dep-card:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 32px rgba(0,0,0,.09);
  border-color:rgba(220,179,113,.45);
  background:linear-gradient(180deg,#ffffff 0%,#FBFDFF 100%);
}

/* Estrelas (SVG) */
.dep-card__rating{height:20px}
.dep-card .stars{
  width:110px;height:20px;display:block;
  filter: drop-shadow(0 1px 0 rgba(0,0,0,.05));
}

/* Texto com aspas elegantes */
.dep-card__text{position:relative;margin:6px 0 2px}
.dep-card__text p{
  color:#1f2630;font:500 1rem/1.6 "RobotoLocal",system-ui,sans-serif;
  margin:0;text-wrap:pretty;
}
.dep-card__text::before{
  content:"“";position:absolute;left:-6px;top:-6px;color:rgba(81,96,130,.25);
  font:800 3rem/1 "RobotoLocal",system-ui,sans-serif;transform:translateY(-6px);pointer-events:none;
}

/* Rodapé do card */
.dep-card__footer{
  margin-top:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap;
}
.dep-card__avatar{
  width:34px;height:34px;border-radius:999px;display:grid;place-items:center;
  font:800 .85rem/1 "RobotoLocal",system-ui,sans-serif;color:#342E1F;
  background:rgba(220,179,113,.22);box-shadow:inset 0 0 0 1px rgba(220,179,113,.45);
}
.dep-card__author{font-style:normal;font-weight:700;color:#1f2630}
.dep-card__source{
  color:#5A6676;font:500 .85rem/1 "RobotoLocal",system-ui,sans-serif;
  padding-left:10px;position:relative;
}
.dep-card__source::before{
  content:"•";position:absolute;left:0;top:0;color:#97A3B6;
}

/* CTA da seção */
.depoimentos__more{text-align:center;margin-top:26px}
.depoimentos__more .btn-secundario{box-shadow:0 8px 20px rgba(81,96,130,.18)}
.depoimentos__more .btn-secundario:hover{box-shadow:0 12px 26px rgba(81,96,130,.24)}

@media (prefers-reduced-motion:reduce){
  .dep-card,.depoimentos__more .btn-secundario{transition:none}
}

/* ---------------------------
   BLOG HOME — Premium Section
---------------------------- */
.blog-home{padding:72px 0;background:#fff}
.blog-home .container{max-width:1160px;margin:0 auto;padding:0 20px}

.blog-home__header{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  margin-bottom:28px;
}
.blog-home__header h2{
  font:700 1.875rem/1.2 "RobotoLocal",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  color:#516082;letter-spacing:.2px;margin:0;
}
.blog-home .btn-inline{
  font-weight:500;text-decoration:none;color:#516082;position:relative;
}
.blog-home .btn-inline::after{
  content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;
  background:currentColor;opacity:.25;transition:opacity .25s ease;
}
.blog-home .btn-inline:hover::after{opacity:.6}

/* Grid responsivo */
.blog-grid{
  list-style:none;margin:0;padding:0;display:grid;gap:20px;grid-template-columns:1fr;
}
@media (min-width:700px){.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.blog-grid{grid-template-columns:repeat(3,1fr);gap:24px}}

/* Card */
.post-card{
  background:#fff;border:1px solid var(--mc-borda);
  border-radius:16px;overflow:clip;
  box-shadow:0 2px 8px rgba(0,0,0,.03);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.post-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 26px rgba(0,0,0,.08);
  border-color:rgba(220,179,113,.55);
}

/* Link cobre todo o card */
.post-card__link{
  display:grid;grid-template-rows:auto 1fr auto;height:100%;
  text-decoration:none;color:inherit;outline:none;
}

/* Foco acessível */
.post-card__link:focus-visible{
  box-shadow:0 0 0 3px rgba(81,96,130,.25),0 0 0 6px rgba(220,179,113,.35);
}

/* Mídia 16:9 sem CLS (imagem) */
.post-card__media{position:relative;aspect-ratio:16/9;overflow:clip;background:#f6f6f6}
.post-card__media img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .6s cubic-bezier(.2,.8,.2,1);
}
.post-card:hover .post-card__media img{transform:scale(1.04)}

/* Badge categoria (comum para imagem e SVG) */
.post-card__badge{
  position:absolute;left:12px;top:12px;
  background:#516082;color:#fff;font:600 .75rem/1 "RobotoLocal",system-ui,sans-serif;
  padding:8px 10px;border-radius:999px;letter-spacing:.2px;
  box-shadow:0 2px 6px rgba(0,0,0,.12);
}

/* Corpo */
.post-card__body{padding:16px 16px 6px}
.post-card__title{
  font:700 1.125rem/1.3 "RobotoLocal",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  color:#222;margin:0 0 6px;text-wrap:balance;
}
.post-card__excerpt{
  color:#4a4a4a;font:400 .95rem/1.5 "RobotoLocal",system-ui,sans-serif;margin:0 0 12px;
}

/* Metadados */
.post-card__meta{
  display:inline-flex;gap:8px;align-items:center;
  color:#6b7280;font:500 .8125rem/1 "RobotoLocal",system-ui,sans-serif;
}

/* CTA rodapé do card */
.post-card__cta{
  display:block;margin:12px 16px 16px;font-weight:600;
  color:#516082;transition:color .25s ease;
}
.post-card:hover .post-card__cta{color:#B78A42}

/* Rodapé da seção */
.blog-home__more{text-align:center;margin-top:28px}

/* Acessibilidade utilitária */
.visually-hidden{
  position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;border:0;
  clip:rect(0 0 0 0);overflow:hidden;white-space:nowrap;
}

/* BLOG HOME — Capas SVG (placeholders) */
.post-card__media--svg{
  position:relative;aspect-ratio:16/9;overflow:hidden;background:#f6f6f6;
  border-bottom:1px solid var(--mc-borda);
}
.post-card__media--svg svg{
  width:100%;height:100%;display:block;
  transition:transform .6s cubic-bezier(.2,.8,.2,1);
  transform-origin:center center;
}
.post-card:hover .post-card__media--svg svg{transform:scale(1.02)}
.post-card__media--svg .post-card__badge{z-index:2}

/* ---------------------------
   QR Code (Seção Final)
---------------------------- */
.qrcode-site{
  display:grid;justify-items:center;text-align:center;background-color:var(--cor-neutro);
  padding:60px 20px;border-top:1px solid var(--mc-borda)
}
.qrcode-site h3{
  font-family:"RobotoLocal",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  font-size:1.4rem;font-weight:500;color:var(--cor-primaria);
  margin-bottom:20px;letter-spacing:.5px
}
.qrcode-site img{
  width:200px;height:200px;aspect-ratio:1/1;display:block;margin:0 auto;float:none!important;
  background:#fff;padding:10px;border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,.08);
  image-rendering:crisp-edges;-webkit-print-color-adjust:exact;print-color-adjust:exact;
  transition:transform .3s ease,box-shadow .3s ease
}
.qrcode-site img:hover{transform:scale(1.05);box-shadow:0 6px 20px rgba(0,0,0,.12)}
@media (max-width:600px){
  .qrcode-site{padding:40px 10px}
  .qrcode-site img{width:160px;height:160px}
}
@media (prefers-reduced-motion:reduce){
  .qrcode-site img{transition:none}
  .qrcode-site img:hover{transform:none;box-shadow:0 4px 15px rgba(0,0,0,.08)}
}

/* ---------------------------
   Localização (cards)
---------------------------- */
.localizacao-home{padding:44px 0;background:#f7f9fc;border-top:1px solid var(--mc-borda)}
.localizacao-home h2{color:var(--cor-primaria)}
.localizacao-home h2::after{width:66px;height:4px;background:var(--cor-secundaria);border-radius:999px;margin-top:12px}
.localizacao-home .cards{display:grid;grid-template-columns:1fr;gap:16px;margin-top:14px}
.loc-card{background:#fff;border:1px solid var(--mc-borda);border-radius:16px;padding:16px 18px;box-shadow:0 8px 22px rgba(0,0,0,.05)}
.loc-card h3{margin:0 0 6px;color:var(--cor-primaria);font-size:18px;line-height:1.25}
.loc-card p{margin:0 0 12px;color:#5A6676}
.loc-cta{display:flex;gap:10px;flex-wrap:wrap}
.loc-cta a{
  text-decoration:none;font-weight:700;border-radius:999px;padding:10px 14px;line-height:1;
  transition:transform .12s ease,box-shadow .18s ease,filter .12s ease;will-change:transform
}
.loc-cta .btn-map{background:#EEF2F7;color:#1f2630;border:1px solid #E3E8F0;box-shadow:0 6px 16px rgba(81,96,130,.10)}
.loc-cta .btn-map:hover{transform:translateY(-1px);filter:brightness(1.02)}
.loc-cta .btn-call{background:#fff;color:#1f2630;border:1px solid var(--mc-borda);box-shadow:0 6px 16px rgba(0,0,0,.06)}
.loc-cta .btn-call:hover{transform:translateY(-1px);filter:brightness(1.02)}
.loc-cta a:focus{outline:3px solid var(--cor-secundaria);outline-offset:2px}
.localizacao-home .btn-destaque{
  display:inline-block;background:var(--cor-primaria);color:#fff;font-weight:700;text-decoration:none;
  padding:12px 16px;border-radius:14px;box-shadow:0 8px 22px rgba(81,96,130,.28);
  transition:transform .12s ease,filter .12s ease
}
.localizacao-home .btn-destaque:hover{transform:translateY(-1px);filter:brightness(1.03)}

/* ---------------------------
   Rodapé / WhatsApp flutuante
---------------------------- */
.footer,.rodape{background:var(--cor-primaria);color:#fff;text-align:center;padding:30px 20px}
.footer a,.rodape a{color:#f1f1f1;text-decoration:underline;font-weight:500}
.footer a:hover,.rodape a:hover{color:#f1f1f1cc}

.whatsapp-fixo,.whatsapp-flutuante{
  position:fixed;right:20px;bottom:20px;z-index:1000;width:64px;height:64px;border-radius:50%;
  background:#128C7E;display:grid;place-items:center;box-shadow:0 6px 16px rgba(0,0,0,.18);text-decoration:none
}

/* ---------------------------
   Ajustes finos de responsivo
---------------------------- */
@media (max-width:480px){
  .mc-wrap{height:78px}
  .mc-header .mc-logo img{height:64px!important}
  .mc-burger{transform:translateY(2px)}
}

/* ==========================
   Ajuste premium – Sinais de confiança
========================== */
.confianca {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px;
  margin-top: 25px;
}
.confianca .chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background-color: var(--cor-neutro, #f6f6f6);
  padding: 8px 14px;
  border-radius: 40px;
  font-size: 15px;
  color: var(--cor-primaria, #516082);
  font-weight: 500;
  line-height: 1.4;
  box-shadow: 0 2px 4px rgba(0,0,0,0.06);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.confianca .chip:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}
.confianca .chip svg {
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  stroke-width: 1.8;
  color: var(--cor-primaria, #516082);
  flex-shrink: 0;
  display: inline-block;
}
.confianca .chip strong { font-weight: 600; }

/* ==========================
   Localização — Harmonização com Contato
========================== */
.pagina-localizacao .hero--clean { background: linear-gradient(180deg,#fafbfc 0%,#ffffff 100%); padding-top: 36px; padding-bottom: 12px; }
.pagina-localizacao .titulo-pagina { font-size: clamp(28px,4vw,40px); color:#1f2630; margin: 8px 0 8px; }
.pagina-localizacao .subtitulo-pagina { color:#606b77; margin-bottom: 18px; }
.pagina-localizacao .confianca { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin-top:12px; }
.pagina-localizacao .confianca .chip { display:inline-flex; align-items:center; gap:10px; background:#fff; border:1px solid var(--mc-borda,#E7E9EE); border-radius:999px; padding:10px 14px; font-weight:600; color:#445067; box-shadow:0 2px 10px rgba(0,0,0,.04); }
.pagina-localizacao .confianca .chip svg { width:18px; height:18px; stroke-width:1.8; color:var(--cor-primaria,#516082); }
.bloco { background:#fff; border:1px solid var(--mc-borda,#E7E9EE); border-radius:20px; box-shadow:0 10px 30px rgba(0,0,0,.06); padding:22px; }
.bloco + .bloco { margin-top:20px; }
.bloco__titulo { font-size:20px; color:#1f2630; margin:0 0 16px; display:flex; align-items:center; gap:10px; }
.bloco__risco { display:inline-block; width:48px; height:4px; background:var(--cor-secundaria,#DCB371); border-radius:999px; transform: translateY(2px); }
.linha-dupla { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
@media (max-width: 820px){ .linha-dupla { grid-template-columns:1fr; } }
.btn-linha { display:flex; align-items:center; gap:10px; background:#eef2f7; border:1px solid var(--mc-borda,#E7E9EE); border-radius:14px; padding:12px 16px; text-decoration:none; color:#1f2630; font-weight:600; box-shadow:0 4px 14px rgba(0,0,0,.04); }
.btn-linha svg { width:18px; height:18px; flex:0 0 18px; }
.btn-linha--whats { background:#f3f9f4; border-color:#dbefde; }
.btn-linha--whats svg { color:#0b7a33; }
.btn-linha small { font-weight:500; color:#6b7480; margin-left:6px; }
.grade-unidades { display:grid; grid-template-columns:1fr; gap:18px; }
.card-unidade { background:#fff; border:1px solid var(--mc-borda,#E7E9EE); border-radius:18px; box-shadow:0 10px 30px rgba(0,0,0,.06); overflow:hidden; }
.card-header { padding:18px 22px; border-bottom:1px solid var(--mc-borda,#E7E9EE); background:linear-gradient(180deg,#fff 0%,#fafafa 100%); }
.card-titulo { margin:0; font-size:18px; color:var(--cor-primaria,#516082); }
.card-meta { margin:4px 0 0; color:#6b7480; font-size:14px; }
.card-conteudo { padding:18px 22px; }
.acoes { display:flex; gap:10px; flex-wrap:wrap; margin:10px 0 14px; }
.btn--link { background:#eef2f7; color:#1f2630; border-radius:12px; padding:10px 14px; text-decoration:none; }
.btn--fantasma { background:#fff; border:1px solid var(--mc-borda,#E7E9EE); color:#1f2630; border-radius:12px; padding:10px 14px; text-decoration:none; }
.mapa-embed { border:1px solid var(--mc-borda,#E7E9EE); border-radius:14px; overflow:hidden; }
.mapa-embed iframe { width:100%; height:340px; display:block; }
.faq .secao-titulo { text-align:left; }
.cta-final__grid { display:flex; align-items:center; justify-content:space-between; gap:18px; }
@media (max-width: 900px){ .cta-final__grid{ flex-direction:column; align-items:flex-start; } }

/* =========================================================
   BLOG / ARTIGOS — Patch v2025-11-02 (novo)
   ========================================================= */
.pg-artigo .container{max-width:1120px;margin:0 auto;padding:0 20px}
.breadcrumb{font-size:.9rem;color:#6b7280;margin:18px 0}
.breadcrumb a{color:var(--cor-primaria);text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}

/* Título e blocos base */
.artigo h1{font-size:2rem;line-height:1.25;margin:10px 0 18px;color:var(--cor-primaria)}
.artigo h2{font-size:1.35rem;margin:28px 0 12px;color:#111}
.artigo p{margin:10px 0;color:var(--cor-texto);line-height:1.7}
.artigo ul{margin:8px 0 16px 18px}
.artigo li{margin:6px 0}

/* Nota lateral */
.nota{background:var(--cor-neutro);border:1px solid var(--mc-borda);border-radius:10px;padding:14px 16px;margin:14px 0;color:#374151}

/* TOC / Trilha */
.toc-pro{background:#fff;border:1px solid var(--mc-borda);border-radius:14px;padding:12px 12px 6px;margin:14px 0}
.toc-pro__eyebrow{font-size:.8rem;color:#6b7280;margin:2px 6px 10px}
.toc-pro__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.toc-item{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--mc-borda);border-radius:12px;text-decoration:none;background:#fafafa;transition:transform .2s, box-shadow .2s}
.toc-item:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.06)}
.toc-badge{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--cor-primaria);color:#fff;font-size:.9rem;font-weight:600;flex:0 0 auto}
.toc-title{font-weight:600;color:#111;line-height:1.2}
.toc-desc{font-size:.88rem;color:#6b7280}

/* Hero resumo */
.hero-resumo{background:#fff;border:1px solid var(--mc-borda);border-radius:14px;padding:16px;margin:16px 0}
.badge-soft{display:inline-block;background:#eef2ff;color:#374151;border:1px solid #e5e7eb;border-radius:999px;padding:6px 10px;font-size:.8rem;margin-bottom:10px}
.hero-bullets{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 14px;margin:12px 0}
.hr-soft{height:1px;background:#eaeaea;margin:12px 0}

/* Cards relacionados */
.relacionados-cards{margin:30px 0}
.relacionados-cards h2{font-size:1.25rem;margin-bottom:12px;color:#111}
.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.card{border:1px solid var(--mc-borda);border-radius:14px;overflow:hidden;background:#fff}
.card-link{display:block;color:inherit;text-decoration:none}
.card img{width:100%;height:auto;display:block}
.card-body{padding:12px}
.card .meta{font-size:.8rem;color:#6b7280;margin-bottom:6px}
.card h3{font-size:1.05rem;color:#111;margin-bottom:6px}
.card p{font-size:.95rem;color:#444;margin-bottom:8px}
/* ===== Ajuste visual do botão "Ler artigo" ===== */
.card .cta {
  display:inline-block;
  font-weight:600;
  font-size:0.95rem;
  color:#fff; /* texto claro */
  background-color:var(--cor-primaria,#516082);
  padding:8px 14px;
  border-radius:8px;
  transition:background-color .25s ease, transform .2s ease;
}

.card .cta:hover {
  background-color:var(--cor-secundaria,#d0a156);
  color:#fff;
  transform:translateY(-2px);
}


/* Lista "Leia também" */
.relacionados{margin:30px auto}
.relacionados h2{font-size:1.2rem;margin-bottom:10px}
.relacionados-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rel-item{display:block;border:1px solid var(--mc-borda);border-radius:12px;padding:12px;text-decoration:none;background:#fff}
.rel-item h3{font-size:1rem;color:#111;margin-bottom:6px}
.rel-item p{font-size:.92rem;color:#444}

/* QR Code no artigo */
.qr-section{text-align:center;background:var(--cor-neutro);border:1px solid var(--mc-borda);border-radius:14px;padding:18px;margin:26px 0}
.qr-title{font-size:1.15rem;color:#111;margin-bottom:4px}
.qr-description{color:#6b7280;margin-bottom:10px}
.qr-image{width:200px;height:200px;object-fit:contain;background:#fff;border-radius:10px;padding:10px;box-shadow:0 6px 18px rgba(0,0,0,.06)}

/* CTA central no artigo */
.cta-centro{text-align:center;margin:22px 0}
.cta-centro .btn{display:inline-block;background:var(--cor-primaria);color:#fff;text-decoration:none;padding:12px 18px;border-radius:999px;min-width:var(--btn-min);text-align:center;transition:opacity .2s}
.cta-centro .btn:hover{opacity:.9}

/* WhatsApp fixo — garantindo dimensões */
.whatsapp-fixo img{width:64px;height:64px}

/* Responsivo (artigos) */
@media (max-width:960px){
  .toc-pro__grid{grid-template-columns:1fr}
  .hero-bullets{grid-template-columns:1fr}
  .cards-grid{grid-template-columns:1fr 1fr}
  .relacionados-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .cards-grid,.relacionados-grid{grid-template-columns:1fr}
  .cta-centro .btn{min-width:unset;width:100%}
}

.agradecimento {
  text-align:center;
  font-size:0.95rem;
  color:var(--cor-texto);
  margin:40px 0 20px;
  opacity:.8;
}
.img-artigo {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
  max-width: 960px;
  margin: 0 auto 20px;
  aspect-ratio: 16/9; /* mantém proporção ideal */
}

.img-artigo img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* faz o enquadramento automático */
  object-position: center;
  border-radius: 12px;
}

/* Ajuste apenas para a imagem do artigo "Vasectomia dói?" */
.img-vasectomia-doi img{
  max-width: 820px;        /* deixa um pouco menor */
  height: auto;
  object-fit: contain;     /* mostra mais da ilustração, sem cortar */
  margin: 0 auto 20px;
  display: block;
}
/* =========================================================
   BLOG HOME — Padronização de capas (fix equal height)
   ========================================================= */
.blog-home .post-card picture{
  display:block;
  width:100%;
  aspect-ratio:16/9;      /* garante mesma altura proporcional */
  overflow:hidden;
  background:#f6f6f6;
  border-bottom:1px solid var(--mc-borda);
  border-top-left-radius:16px;
  border-top-right-radius:16px;
}
.blog-home .post-card picture img{
  width:100%;
  height:100%;
  object-fit:cover;       /* corta o excesso mantendo o enquadramento */
  display:block;
}

/* fallback: caso exista um wrapper .post-card__media, mantém o mesmo padrão */
.blog-home .post-card__media{
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#f6f6f6;
}
.blog-home .post-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* opcional: ajusta um pouco no mobile */
@media (max-width:640px){
  .blog-home .post-card picture,
  .blog-home .post-card__media{
    aspect-ratio:16/10; /* deixa a imagem um pouco mais alta no celular */
  }
}
