/* ============================================================
   BRAND 2026 — Dr Livio Maldonado
   Paleta: Esmeralda / Dourado / Creme
   Carregar DEPOIS de css/style.css
   ============================================================ */

:root{
  --esmeralda-900:#0B3D2E;
  --esmeralda-700:#0B4F3A;
  --esmeralda-500:#0B6E4F;
  --esmeralda-050:#EAF3EE;
  --dourado-600:#B8860B;
  --dourado-400:#C9A227;
  --creme:#F8F5EC;
  --creme-borda:#E7DFC9;
  --tinta:#2F3B35;
  --tinta-suave:#5A665F;
}

/* ---------- Tipografia ---------- */
body{ color:var(--tinta); }

h1,h2,h3,.site-logo a{
  font-family:"Cormorant Garamond", Georgia, "Times New Roman", serif;
  letter-spacing:.01em;
}
h1{ font-weight:700; }
h2{ font-weight:700; color:var(--esmeralda-700); }
h4,h5,h6{ color:var(--esmeralda-700); }

.heading .caption{
  color:var(--dourado-600) !important;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.78rem;
  font-weight:700;
}

/* ---------- Navbar ---------- */
.site-navbar{ background:rgba(248,245,236,.96); box-shadow:0 1px 0 var(--creme-borda); }
.site-logo a, .site-logo a strong{ color:var(--esmeralda-700) !important; font-size:1.35rem; }
.site-navbar .site-navigation .site-menu > li > a{ color:var(--tinta) !important; font-weight:600; }
.site-navbar .site-navigation .site-menu > li > a:hover,
.site-navbar .site-navigation .site-menu > li.active > a{ color:var(--esmeralda-500) !important; }

/* CTA fixo no menu desktop */
.site-menu li.nav-cta > a{
  background:var(--dourado-600);
  color:#fff !important;
  border-radius:30px;
  padding:10px 22px !important;
  margin-left:10px;
  transition:background .2s;
}
.site-menu li.nav-cta > a:hover{ background:var(--esmeralda-500); }

/* ---------- Navegação mobile (substitui o hambúrguer) ---------- */
.mobile-nav-ctas{ display:inline-flex; gap:8px; align-items:center; }
.btn-nav-agendar, .btn-nav-menu{
  display:inline-block;
  font-size:.86rem;
  font-weight:700;
  border-radius:30px;
  padding:9px 16px;
  line-height:1;
  text-decoration:none !important;
}
.btn-nav-agendar{ background:var(--dourado-600); color:#fff !important; }
.btn-nav-agendar:active{ background:var(--esmeralda-500); }
.btn-nav-menu{
  background:transparent;
  color:var(--esmeralda-700) !important;
  border:1.5px solid var(--esmeralda-500);
}
@media (max-width:400px){
  .site-logo a{ font-size:1.02rem !important; }
  .btn-nav-agendar,.btn-nav-menu{ padding:8px 12px; font-size:.8rem; }
}

/* Painel do menu mobile: esmeralda profundo, links grandes */
.site-mobile-menu{ background:var(--esmeralda-900) !important; }
.site-mobile-menu .site-mobile-menu-close span{ color:var(--creme) !important; }
.site-mobile-menu .site-nav-wrap a{
  color:var(--creme) !important;
  font-size:1.15rem !important;
  padding:14px 20px !important;
  border-bottom:1px solid rgba(248,245,236,.08);
}
.site-mobile-menu .site-nav-wrap a:hover,
.site-mobile-menu .site-nav-wrap li.active > a,
.site-mobile-menu .site-nav-wrap li .nav-link.active{ color:var(--dourado-400) !important; }
.site-mobile-menu .site-nav-wrap li.nav-cta > a{
  background:var(--dourado-600);
  border-radius:10px;
  margin:16px 20px 0;
  text-align:center;
  border-bottom:none;
  color:#fff !important;
}
.site-mobile-menu-footer{
  padding:26px 20px;
  color:rgba(248,245,236,.65);
  font-size:.85rem;
}
.site-mobile-menu-footer a{ color:var(--dourado-400); }

/* ---------- Hero ---------- */
.site-section-cover.overlay{ position:relative; }
.site-section-cover.overlay:before{
  background:linear-gradient(180deg, rgba(11,61,46,.55) 0%, rgba(11,61,46,.78) 100%) !important;
  opacity:1 !important;
}
.site-section-cover h1{ color:#fff; text-shadow:0 2px 18px rgba(0,0,0,.35); }
.hero-sub{
  color:rgba(255,255,255,.92);
  font-size:1.12rem;
  max-width:640px;
  margin:18px auto 28px;
}
.hero-ctas .btn{ margin:6px 8px; min-width:240px; }

/* ---------- Botões ---------- */
.btn{ border-radius:32px !important; font-weight:700; letter-spacing:.02em; }
.btn-primary{
  background:var(--esmeralda-500) !important;
  border-color:var(--esmeralda-500) !important;
}
.btn-primary:hover{ background:var(--esmeralda-700) !important; border-color:var(--esmeralda-700) !important; }
.btn-outline-primary{
  color:var(--esmeralda-500) !important;
  border-color:var(--esmeralda-500) !important;
  background:transparent !important;
}
.btn-outline-primary:hover{ background:var(--esmeralda-500) !important; color:#fff !important; }
.btn-gold{
  background:var(--dourado-600) !important;
  border-color:var(--dourado-600) !important;
  color:#fff !important;
}
.btn-gold:hover{ background:var(--dourado-400) !important; border-color:var(--dourado-400) !important; color:var(--esmeralda-900) !important; }
.btn-white-outline{
  background:transparent !important;
  border:2px solid rgba(255,255,255,.85) !important;
  color:#fff !important;
}
.btn-white-outline:hover{ background:#fff !important; color:var(--esmeralda-700) !important; }

/* ---------- Fundos ---------- */
.bg-light{ background:var(--creme) !important; }
.bg-primary{ background:var(--esmeralda-700) !important; }

/* ---------- Barra de confiança ---------- */
.trust-bar{ background:var(--esmeralda-700); padding:34px 0; }
.trust-item{ text-align:center; color:var(--creme); padding:10px 6px; }
.trust-item b{
  display:block;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:2.3rem;
  line-height:1;
  color:var(--dourado-400);
  font-weight:700;
}
.trust-item span{ display:block; margin-top:6px; font-size:.86rem; opacity:.92; }

/* ---------- Cards de serviço ---------- */
.post-entry-1{
  background:#fff;
  border:1px solid var(--creme-borda);
  border-radius:14px;
  overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.post-entry-1:hover{
  transform:translateY(-5px);
  box-shadow:0 14px 34px rgba(11,79,58,.14);
  border-color:var(--dourado-400);
}
.post-entry-1 img{ width:100%; display:block; }
.post-entry-1-contents{ padding:22px 22px 26px; }
.post-entry-1-contents h2{ font-size:1.35rem; margin-bottom:10px; }
.post-entry-1-contents h2 a{ color:var(--esmeralda-700) !important; }
.post-entry-1-contents p{ color:var(--tinta-suave); font-size:.95rem; }
.card-link-more{
  display:inline-block;
  margin-top:6px;
  color:var(--dourado-600) !important;
  font-weight:700;
  font-size:.9rem;
}
.card-link-more:hover{ color:var(--esmeralda-500) !important; text-decoration:none; }

/* ---------- Depoimentos ---------- */
.testimonial-2{
  background:#fff;
  border:1px solid var(--creme-borda);
  border-radius:14px;
  padding:28px 26px;
  height:100%;
  position:relative;
}
.testimonial-2:before{
  content:"\201C";
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:4.2rem;
  line-height:1;
  color:var(--dourado-400);
  position:absolute;
  top:8px; left:18px;
  opacity:.55;
}
.testimonial-2 blockquote{ padding-top:26px; }
.testimonial-2 blockquote p{ color:var(--tinta); font-style:italic; }
.testimonial-2 .author-name span:first-child{ color:var(--esmeralda-700); font-weight:700; }
.testimonial-2 img{ width:52px; height:52px; object-fit:cover; border-radius:50%; border:2px solid var(--dourado-400); }
.google-stars{ color:var(--dourado-600); letter-spacing:2px; }

/* ---------- Faixa CTA ---------- */
.cta{ background:var(--esmeralda-900) !important; }
.cta h2{ color:#fff !important; }
.cta .opa-7{ color:rgba(248,245,236,.8); }
.cta .btn-white, .cta .btn-primary.btn-white{
  background:var(--dourado-600) !important;
  border-color:var(--dourado-600) !important;
  color:#fff !important;
}
.cta .btn-white:hover{ background:var(--dourado-400) !important; color:var(--esmeralda-900) !important; }

/* ---------- Blocos "85 marcadores" e "como funciona" ---------- */
.om-stats{ display:flex; flex-wrap:wrap; gap:16px; }
.om-stat{
  flex:1 1 200px;
  background:#fff;
  border:1px solid var(--creme-borda);
  border-top:4px solid var(--esmeralda-500);
  border-radius:12px;
  padding:22px 20px;
}
.om-stat b{
  display:block;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:2.4rem;
  color:var(--esmeralda-700);
  line-height:1;
}
.om-stat span{ display:block; margin-top:6px; font-size:.9rem; color:var(--tinta-suave); }

.om-steps{
  counter-reset:om;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:18px;
}
.om-step{
  background:#fff;
  border:1px solid var(--creme-borda);
  border-radius:12px;
  padding:22px 18px;
}
.om-step::before{
  counter-increment:om;
  content:counter(om);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px; height:34px;
  border-radius:50%;
  background:var(--esmeralda-500);
  color:#fff;
  font-weight:700;
  margin-bottom:12px;
}
.om-step h4{ font-size:1.02rem; font-weight:700; margin-bottom:6px; font-family:"Raleway",sans-serif; }
.om-step p{ font-size:.9rem; color:var(--tinta-suave); margin:0; }

.om-note{ font-size:.82rem; color:#8a938d; }

/* ---------- Formulário ---------- */
.form-control:active,.form-control:focus{ border-color:var(--esmeralda-500); }
label{ font-weight:600; color:var(--esmeralda-700); font-size:.9rem; }

/* ---------- Footer ---------- */
.site-footer{ background:var(--esmeralda-900); padding:4.5em 0 2.5em; }
.site-footer, .site-footer p{ color:rgba(248,245,236,.72); }
.site-footer a{ color:rgba(248,245,236,.85) !important; }
.site-footer a:hover{ color:var(--dourado-400) !important; }
.site-footer .footer-heading{ color:var(--dourado-400) !important; letter-spacing:.1em; text-transform:uppercase; font-size:.82rem; }
.site-footer .social li{ display:inline-block; margin-right:12px; }
.site-footer .social li a span{ font-size:1.4rem; }
.site-footer .border-top{ border-top:1px solid rgba(248,245,236,.12) !important; }
.site-footer .row.pt-5.mt-5{ padding-top:2rem !important; margin-top:2rem !important; }

/* ---------- Acessibilidade / detalhes ---------- */
a:focus-visible, .btn:focus-visible{ outline:3px solid var(--dourado-400); outline-offset:2px; }
@media (prefers-reduced-motion: reduce){
  .post-entry-1, .whatsapp-float{ transition:none; animation:none; }
}

/* Hero: garantir espaço para subtítulo e CTAs sem cortar em telas baixas */
.site-section-cover,
.site-section-cover .container > .row{
  height:auto !important;
  min-height:72vh !important;
  padding:110px 0 70px;
}
@media (max-width:991.98px){
  .site-section-cover,
  .site-section-cover .container > .row{
    min-height:62vh !important;
    padding:96px 0 54px;
  }
  .hero-ctas .btn{ min-width:0; width:100%; max-width:340px; }
}

/* Estrelas da barra de confiança: nunca estourar a coluna */
.trust-item b{ white-space:nowrap; }
.trust-item b.trust-stars{
  font-family:"Raleway", sans-serif;
  font-size:1.5rem;
  letter-spacing:3px;
  padding-top:.45rem;
}
@media (max-width:576px){
  .trust-item b{ font-size:1.9rem; }
  .trust-item b.trust-stars{ font-size:1.15rem; letter-spacing:2px; }
  .trust-item span{ font-size:.8rem; }
}
