/* Padronização de títulos e textos claros/escuros */
.titulo-claro {
    color: #EDE8E3 !important;
}
.titulo-escuro {
    color: #1C1A19 !important;
}
.texto-claro {
    color: #EDE8E3 !important;
}
.texto-escuro {
    color: #1C1A19 !important;
}
.titulo-cor-destaque {
    color: #c9a876  !important;
}
.titulo-destaque {
    font-family: 'Georgia', serif !important;
    font-weight: 700 !important;
    text-align: center !important;
    font-size: 42px !important;
    color: #c9a876 !important;
    letter-spacing: 0.5px;
}

.footer-whatsapp.btn-agendar-footer > i.bi.bi-telephone,
.footer-whatsapp.btn-agendar-footer:hover > i.bi.bi-telephone,
.footer-whatsapp.btn-agendar-footer:focus > i.bi.bi-telephone {
  color: #7a4223 !important;
  transition: color 0.2s;
}
.footer-whatsapp.btn-agendar-footer > i.bi.bi-whatsapp {
  color: #7a4223 !important;
  transition: color 0.2s;
}
.footer-whatsapp.btn-agendar-footer:hover > i.bi.bi-whatsapp,
.footer-whatsapp.btn-agendar-footer:focus > i.bi.bi-whatsapp {
  color: #faf4eb !important;
}
.btn-agendar-footer i {
  color: #7a4223 !important;
  transition: color 0.2s;
}
.btn-agendar-footer:hover i,
.btn-agendar-footer:focus i {
  color: #faf4eb !important;
}
/* Botão especial do rodapé: WhatsApp */
.btn-agendar-footer {
  background: #faf4eb !important;
  color: #c24400 !important;
  border: none !important;
  font-size: 1rem !important;
  font-weight: 600;
  border-radius: 999px !important;
  padding: 0.7rem 1.7rem !important;
  transition: background 0.2s, color 0.2s;
  box-shadow: 0 2px 8px 0 rgba(89,49,24,0.07);
}
.btn-agendar-footer:hover, .btn-agendar-footer:focus {
  background: #7a4223 !important;
  color: #faf4eb !important;
}
/* Navbar fixo com efeito de fundo dinâmico (blur + translucidez) */
.navbar.fixed-top {
  background: rgba(237, 232, 227, 0.92) !important; /* #faf4eb com leve translucidez */
  backdrop-filter: blur(12px) saturate(180%);
  -webkit-backdrop-filter: blur(12px) saturate(180%);
  box-shadow: 0 2px 8px 0 rgba(89,49,24,0.07);
  z-index: 1030;
  transition: background 0.3s;
}

@media (max-width: 991.98px) {
  .navbar.fixed-top {
    background: #faf4eb !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}
/* FAQ customizado */
.custom-faq .accordion-item {
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 2px 12px 0 rgba(89,49,24,0.07);
  margin-bottom: 1.2rem;
  border: none;
}
.custom-faq .accordion-button {
  background: transparent;
  color: #593118;
  font-family: 'Questrial', Arial, sans-serif;
  font-size: 1.1rem;
  font-weight: 600;
  border-radius: 14px;
  box-shadow: none;
  padding: 1.1rem 1.5rem;
  transition: background 0.2s, color 0.2s;
}
.custom-faq .accordion-button:not(.collapsed) {
  background: #f5ede3;
  color: #593118;
  box-shadow: none;
}
.custom-faq .accordion-button:focus {
  box-shadow: none;
  border-color: #c9bca9;
}
.custom-faq .accordion-body {
  color: #593118;
  font-size: 1rem;
  font-family: 'Questrial', Arial, sans-serif;
  padding: 1.2rem 1.5rem 1.5rem 1.5rem;
  background: #fff;
  border-radius: 0 0 14px 14px;
}
.custom-faq .accordion-item:last-child {
  margin-bottom: 0;
}
.custom-faq .accordion {
  border: none;
}
/* Rodapé */
.footer-logo {
  max-height: 65px;
  margin-bottom: 0.25rem;
}
.footer-info {
  color: #faf4eb;
  font-size: 0.9rem;
  font-family: inherit;
  font-weight: 400;
  margin-bottom: 0.25rem;
}
.footer-info-2 {
  color: #faf4eb;
  font-size: 1.1rem;
  font-family: inherit;
  font-weight: 400;
  margin-bottom: 0.25rem;
}
.footer-whatsapp {
  margin-top: 0.5rem;
}
/* Título do rodapé: comportamento padrão alinhado à direita */
.footer-title {
  color: #faf4eb;
  font-weight: bold;
  margin-bottom: 0.5rem;
  text-align: end;
}
/* Título 'Fale comigo' sempre centralizado */
.footer-title.fale-comigo-title {
  text-align: center !important;
}

@media (max-width: 767px) {
  .footer-title {
    text-align: center !important;
  }
  .footer-title.fale-comigo-title {
    text-align: center !important;
  }
}
.footer-icon {
  color: #faf4eb;
  margin-right: 0.25rem;
}
.footer-text {
  color: #faf4eb;
}
.footer-social {
  background: #faf4eb;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 0.25rem;
  margin-left: 0.25rem;
}
.footer-social i {
  color: #593118;
  font-size: 1.2rem;
}
.footer-mapa-container {
  margin-top: 0.5rem;
  text-align: right !important;
}
.footer-mapa {
  max-width: 320px;
  margin-left: 0;
}
@media (max-width: 767.98px) {
  .footer-mapa {
    max-width: 100%;
    margin: 0 auto;
  }
  .footer-mapa-container {
    text-align: center !important;
  }
}
/* Rodapé - Coluna 1 */
.footer-logo {
  max-height: 56px;
  margin-bottom: 0.25rem;
}
.footer-nome {
  color: #faf4eb;
  font-size: 1.1rem;
  font-family: inherit;
  font-weight: 700;
}
.footer-cargo {
  color: #faf4eb;
}
.footer-frase {
  color: #faf4eb;
  margin-bottom: 1rem;
}
/* Centraliza as imagens dos cards de serviço */
.card-servico .servico-img-col {
  justify-content: center !important;
  align-items: center !important;
  display: flex;
}
/* Imagem de serviço: Foto da Psicóloga ocupa 85% da largura da div */
.img-servico-foto-psicologa {
  width: 85%;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.img-CTA-foto-psicologa {
  width: 75%;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.color-whit{
  color: #fff;
}

/* Garante que o texto não quebre em mais de uma linha */
.nowrap {
  white-space: nowrap;
}
/* Destaque principal do banner */
.destaque-principal {
  color: #593118;
  font-family: 'Lora', serif;
  font-weight: 500;
  font-size: 1.35em;
  letter-spacing: 0.01em;
  line-height: 1.18;
  display: block;
  margin-bottom: 0.2em;
}
/* Ajustes para o banner de apresentação */
.texto-apresentacao {
  font-size: 1.05rem;
  font-weight: 400;
  color: #7a4223;
  line-height: 1.5;
  max-width: 420px;
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

.titulo-banner {
  font-size: 1.6rem;
  font-weight: 500;
  color: #593118;
  line-height: 1.3;
  max-width: 420px;
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}
/* Alinhar botão do banner à esquerda em desktop, centralizar em mobile */
.banner .whatsapp-btn {
  display: inline-block;
  text-align: left;
}
@media (max-width: 767px) {
  .texto-apresentacao,
  .titulo-banner {
    text-align: center !important;
    margin-left: auto;
    margin-right: auto;
  }
  .banner .whatsapp-btn {
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
}

/* Destaques personalizados para o banner */
.destaque-nome {
  color: #7a4223;
  font-family: 'Sora', sans-serif;
  font-weight: 700;
  font-size: 1.28em;
  letter-spacing: 0.01em;
  display: block;
  margin-top: 0.15em;
  margin-bottom: 0.1em;
}
.destaque-funcao {
  color: #a08a7a;
  font-family: 'Questrial', sans-serif;
  font-weight: 400;
  font-size: 0.98em;
  background: none;
  padding: 0;
  border-radius: 0;
  display: block;
  margin-bottom: 0.2em;
}
/* Reset básico */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Paleta de cores personalizada */
:root {
  --cor-texto: #2f2e2c;
  --cor-contraste: #c9bca9;
  --cor-destaque: #7a4223;
  --cor-fundo: #faf4eb;
  --cor-titulo: #593118;
}

/* Tipografia */
body {
  font-family: 'Questrial', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  background: var(--cor-fundo);
  color: var(--cor-texto);
  line-height: 1.6;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Lora', serif;
  color: var(--cor-titulo);
  margin-bottom: 1rem;
}

/* Subtítulos e destaques */
.card-title,
.fw-bold,
.subtitle {
  font-family: 'Sora', sans-serif;
}

/* MENU TRANSPARENTE E SEM BORDAS */
.navbar {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  transition: background 0.3s, box-shadow 0.3s;
}

/* Navbar links cor padrão (sobre banner) */
.navbar .navbar-brand, .navbar .nav-link {
  color: var(--cor-titulo-nav) !important;
  transition: color 0.3s;
}

/* Navbar scrolled: cor sólida e sombra */
.navbar.scrolled {
  background: #faf4eb !important;
  box-shadow: 0 2px 16px 0 rgba(41,34,23,0.07) !important;
}
.navbar.scrolled .navbar-brand, .navbar.scrolled .nav-link {
  color: var(--cor-texto) !important;
}

/* Navbar sobre seção de contraste */
.navbar.on-contraste {
  background: var(--cor-contraste) !important;
  box-shadow: 0 2px 16px 0 rgba(41,34,23,0.07) !important;
}
.navbar.on-contraste .navbar-brand, .navbar.on-contraste .nav-link {
  color: var(--cor-titulo) !important;
}

/* Navbar sobre seção escura (exemplo: rodapé) */
.navbar.on-dark {
  background: #593118 !important;
  box-shadow: 0 2px 16px 0 rgba(41,34,23,0.07) !important;
}
.navbar.on-dark .navbar-brand, .navbar.on-dark .nav-link {
  color: #faf4eb !important;
}

/* Banner */
.banner {
  background: #EDE8E3 !important;
  min-height: 80vh;
  display: flex;
  align-items: center;
  padding-top: 80px;
}
.banner h1, .banner p {
  color: var(--cor-titulo);
}
.banner img {
  max-height: 350px;
  animation: bannerMove 4s ease-in-out infinite alternate;
}

@keyframes bannerMove {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(18px);
  }
}

/* Seções principais */
main {
  padding: 2rem 0;
}

h2, h3, h4, h5 {
  color: var(--cor-titulo);
  margin-bottom: 1rem;
}

section {
  margin-bottom: 2rem;
}

/* Imagens */
img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

/* Botões principais (WhatsApp, Agendamento) */
.btn-success, .whatsapp-btn {
  background: var(--cor-destaque) !important;
  border: none;
  color: #fff !important;
  font-weight: 600;
  transition: background 0.2s;
}
.btn-success:hover, .whatsapp-btn:hover {
  background: var(--cor-titulo) !important;
  color: #fff !important;
}
.whatsapp-btn {
  border-radius: 999px !important;
  padding: 0.85rem 2.2rem !important;
  font-size: 1.18rem;
}

/* Cards de serviços */
.card {
  border: 1px solid var(--cor-destaque);
  background: #fff;
}
.card-title {
  color: var(--cor-titulo);
  font-weight: 700;
}

/* Cards de serviços com imagem e texto lado a lado */
.card.d-flex.flex-row.align-items-stretch {
  flex-direction: row !important;
  min-height: 160px;
  border: 1px solid var(--cor-destaque);
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
}
.card .col-5 {
  background: var(--cor-contraste);
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid var(--cor-destaque);
}
.card .col-7 {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.card-title {
  color: var(--cor-titulo);
  font-family: 'Sora', sans-serif;
  font-weight: 700;
  margin-bottom: 0.5rem;
}
.card-text {
  font-family: 'Questrial', sans-serif;
  color: var(--cor-texto);
  font-size: 1.05rem;
}
@media (max-width: 991px) {
  .card.d-flex.flex-row.align-items-stretch {
    flex-direction: column !important;
    min-height: unset;
  }
  .card .col-5, .card .col-7 {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid var(--cor-destaque);
  }
  .card .col-7 {
    border-bottom: none;
  }
}

/* Cards de serviços centralizados, 30% imagem, 70% texto, espaçamento lateral, sem borda, apenas sombra */
.card-servico {
  border: none;
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5rem;
  box-shadow: 0 4px 24px 0 rgba(41, 34, 23, 0.13);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.servico-img-col {
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: none;
  width: 100%;
  max-width: 100%;
  margin-bottom: 1rem;
}
.servico-text-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #fff;
  align-items: center;
  text-align: center;
}
.card-title {
  color: var(--cor-titulo);
  font-family: 'Sora', sans-serif;
  font-weight: 700;
  margin-bottom: 0.5rem;
}
.card-text {
  font-family: 'Questrial', sans-serif;
  color: var(--cor-texto);
  font-size: 1.05rem;
}
@media (max-width: 991px) {
  .card-servico {
    flex-direction: column !important;
    max-width: 98vw !important;
    min-height: unset !important;
    height: auto !important;
  }
  .servico-img-col, .servico-text-col {
    max-width: 100% !important;
    flex: 0 0 100% !important;
    border-right: none;
    border-bottom: 1px solid var(--cor-destaque);
    min-height: unset !important;
    height: auto !important;
  }
  .servico-text-col {
    border-bottom: none;
    padding: 1.2rem 1.2rem 1.2rem 1.2rem !important;
    min-height: unset !important;
    height: auto !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .servico-img-col {
    min-height: unset !important;
    height: auto !important;
    padding: 1.2rem 1.2rem 0 1.2rem !important;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .servico-img-col img {
    max-height: 100px;
    width: auto;
    height: auto;
    object-fit: contain;
    margin: 0 auto;
    display: block;
  }
}
@media (max-width: 575px) {
  .card-servico {
    padding: 0 !important;
    border-radius: 12px;
  }
  .servico-img-col, .servico-text-col {
    padding: 1.2rem !important;
  }
  .servico-img-col {
    height: 120px;
    min-height: 80px;
  }
  .servico-img-col img {
    max-height: 100px;
  }
}

/* Remover qualquer borda dos cards de serviço, inclusive sobrescrevendo variáveis */
.card-servico,
.card-servico .servico-img-col {
  border: none !important;
  box-shadow: 0 4px 24px 0 rgba(41, 34, 23, 0.13);
}
.card-servico {
  /* Remove borda de fallback do Bootstrap */
  border-width: 0 !important;
}
.card {
  border: none !important;
}

/* Seções alternadas */
section.bg-white {
  background: var(--cor-fundo);
}

.bg-contraste {
  background: #c9bca9;
}

.bg-fundo{
  background: #faf4eb;
}

/* Depoimentos - balão de fala */
.carousel-inner {
  background: none;
  border-radius: 0;
  color: var(--cor-texto);
}
.carousel-item blockquote {
  background: var(--cor-contraste);
  border-radius: 24px 24px 24px 0;
  padding: 2rem 2.5rem 2rem 2rem;
  margin: 0 auto 2rem auto;
  max-width: 600px;
  position: relative;
  box-shadow: 0 2px 16px 0 rgba(0,0,0,0.04);
}
.carousel-item blockquote:after {
  content: '';
  position: absolute;
  left: 32px;
  bottom: -24px;
  width: 32px;
  height: 24px;
  background: var(--cor-contraste);
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
.carousel-item blockquote p {
  font-size: 1.1rem;
  color: var(--cor-texto);
}
.blockquote-footer {
  color: var(--cor-titulo);
  font-size: 0.95rem;
  margin-top: 1rem;
}

/* Depoimentos - balão de fala em 2 colunas */
.depoimento-balao {
  background: #fff !important;
  border-radius: 24px 24px 24px 0;
  padding: 2rem 2.5rem 2rem 2rem;
  margin: 0 auto 2rem auto;
  position: relative;
  box-shadow: 0 2px 16px 0 rgba(0,0,0,0.04);
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 260px;
  height: 100%;
}
.depoimento-balao:after {
  background: #fff !important;
}
.carousel-inner .row.align-items-stretch {
  display: flex;
}
.carousel-inner .col-md-6.d-flex {
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
  height: 100%;
}
@media (max-width: 991px) {
  .carousel-inner .col-md-6.d-flex {
    flex: 0 0 100%;
    max-width: 100%;
    margin-bottom: 1.5rem;
  }
  .carousel-inner .row.align-items-stretch {
    flex-direction: column;
    align-items: center !important;
    justify-content: center !important;
  }
  .depoimento-balao {
    min-height: 180px;
    padding: 1.2rem 1rem 1.2rem 1rem;
  }
  .depoimento-balao:after {
    left: 24px;
    bottom: -18px;
    width: 24px;
    height: 18px;
  }
}
@media (max-width: 575px) {
  .depoimento-balao {
    min-height: 120px;
    padding: 1rem 0.7rem 1rem 0.7rem;
  }
  .depoimento-balao:after {
    left: 16px;
    bottom: -12px;
    width: 16px;
    height: 12px;
  }
}

/* Setas do carrossel de depoimentos */
.depoimento-arrow .carousel-control-prev-icon,
.depoimento-arrow .carousel-control-next-icon {
  filter: invert(27%) sepia(80%) saturate(600%) hue-rotate(355deg) brightness(90%) contrast(90%);
  /* cor aproximada de #593118 */
}
.carousel-inner .row.align-items-stretch {
  display: flex;
}
.carousel-inner .col-md-4.d-flex {
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
  height: 100%;
}
@media (max-width: 991px) {
  .carousel-inner .col-md-4.d-flex {
    flex: 0 0 100%;
    max-width: 100%;
    margin-bottom: 1.5rem;
  }
  .carousel-inner .row.align-items-stretch {
    flex-direction: column;
  }
  .depoimento-balao {
    min-height: 180px;
    padding: 1.2rem 1rem 1.2rem 1rem;
  }
  .depoimento-balao:after {
    left: 24px;
    bottom: -18px;
    width: 24px;
    height: 18px;
  }
}
@media (max-width: 575px) {
  .depoimento-balao {
    min-height: 120px;
    padding: 1rem 0.7rem 1rem 0.7rem;
  }
  .depoimento-balao:after {
    left: 16px;
    bottom: -12px;
    width: 16px;
    height: 12px;
  }
}

/* Rodapé */
footer {
  background: var(--cor-texto) !important;
  color: var(--cor-fundo) !important;
  margin-top: 0 !important;
}
footer small {
  color: var(--cor-contraste);
}

/* Ajuste da logo no menu para não deformar o navbar */
.navbar-brand img {
  max-height: 40px;
  height: 40px;
  width: auto;
  vertical-align: middle;
}

/* Links */
a {
  color: var(--cor-destaque);
}
a:hover {
  color: var(--cor-titulo);
}

/* Outros detalhes visuais */
hr {
  border-color: var(--cor-contraste);
}

/* Responsividade extra para banner */
@media (max-width: 767px) {
  .banner img {
    max-height: 220px;
  }
}
@media (max-width: 991px) {
  .banner {
    padding-top: 70px;
  }
}

/* Rodapé customizado - ajuste de cor dos textos e ícones sociais */
.footer-site {
  background: #593118 !important;
  color: #faf4eb !important;
}
.footer-site .fw-bold,
.footer-site .footer-link,
.footer-site .bi,
.footer-site .footer-social {
  color: #faf4eb !important;
}
.footer-site .footer-link {
  text-decoration: none;
  transition: color 0.2s;
}
.footer-site .footer-link:hover {
  color: #c9bca9 !important;
  text-decoration: underline;
}
.footer-site .footer-social {
  width: 38px;
  height: 38px;
  background: transparent !important;
  color: #faf4eb !important;
  font-size: 1.2rem;
  border: 2px solid #faf4eb;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, color 0.2s, border 0.2s;
}
.footer-site .footer-social i {
  color: #faf4eb !important;
  transition: color 0.2s;
}
.footer-site .footer-social:hover {
  background: #faf4eb !important;
  color: #593118 !important;
  border-color: #593118;
}
.footer-site .footer-social:hover i {
  color: #593118 !important;
}
.footer-site ul {
  padding-left: 0;
}
.footer-site li {
  margin-bottom: 0.3rem;
}

/* Rodapé - linha branca fina separadora e textos de créditos */
.footer-site-credits-hr {
  border: none;
  border-top: 1px solid #fff;
  opacity: 1;
  margin: 1.2rem 0 0.7rem 0;
}
.footer-site-credits-text {
  color: #faf4eb;
  font-size: 0.95rem;
}
.footer-site-credits-text-light {
  color: #c9bca9;
  font-size: 0.95rem;
  text-align: end;
  display: block;
}

@media (max-width: 767px) {
  .footer-site-credits-text-light {
    text-align: center !important;
  }
}

/* Onda orgânica entre Contato e Rodapé */
.footer-wave-organic {
  width: 100%;
  height: 70px;
  background: #593118;
  clip-path: ellipse(120% 40% at 50% 0%);
  margin-top: -30px;
  margin-bottom: -30px;
  z-index: 2;
  position: relative;
}

.footer-site {
  padding-top: 60px !important;
}

/* Onda SVG no topo do rodapé */
.footer-wave-svg {
  width: 100%;
  height: 90px;
  overflow: hidden;
  line-height: 0;
  margin-bottom: -2px;
  background: transparent;
}
.footer-wave-svg svg {
  display: block;
  width: 100%;
  height: 90px;
}
@media (max-width: 767px) {
  .footer-wave-svg {
    height: 48px;
  }
  .footer-wave-svg svg {
    height: 48px;
  }
}

/* Onda SVG na base do banner */
.banner-wave-svg {
  width: 100%;
  height: 90px;
  overflow: hidden;
  line-height: 0;
  background: transparent;
  z-index: 2;
  position: relative;
  margin-bottom: -2px;
}
.banner-wave-svg svg {
  display: block;
  width: 100%;
  height: 90px;
}
@media (max-width: 767px) {
  .banner-wave-svg {
    height: 48px;
  }
  .banner-wave-svg svg {
    height: 48px;
  }
}

/* Ajustes nos cards de serviço para imagens responsivas */
.card-servico .servico-img-col {
  flex: 0 0 30%;
  max-width: 30%;
  height: 100%;
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.card-servico .servico-img-col img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: 100%;
  max-height: 100%;
  border-radius: 0.5rem;
  margin: 0;
  padding: 0;
  
}

/* Animação de entrada dos cards de serviço */
.card-servico {
  opacity: 0;
  transform: translateX(0);
  transition: opacity 0.7s cubic-bezier(.4,0,.2,1), transform 0.7s cubic-bezier(.4,0,.2,1);
}
.card-servico.animate-from-left {
  transform: translateX(-80px);
}
.card-servico.animate-from-right {
  transform: translateX(80px);
}
.card-servico.visible {
  opacity: 1;
  transform: translateX(0);
}

@media (max-width: 991px) {
  .card-servico.animate-from-left,
  .card-servico.animate-from-right {
    transform: translateY(40px);
  }
  /* Sobrescreve o Bootstrap .d-flex nos cards de serviço para evitar conflitos de flexbox em mobile */
  .card-servico.d-flex {
    display: block !important;
    flex-direction: unset !important;
    align-items: unset !important;
    justify-content: unset !important;
  }
}

.bg-servicos {
  background: #f8f9fa;
}
.card-servico-1,
.card-servico-2,
.card-servico-3,
.card-servico-4 {
  max-width: 800px;
  width: 100%;
}

@media (max-width: 991px) {
  .card-servico-1,
  .card-servico-2,
  .card-servico-3,
  .card-servico-4 {
    max-width: 98vw !important;
  }

  .text-end {
  text-align: right !important;
}
}

/* Centralizar depoimentos no modo responsivo */
@media (max-width: 991px) {
  .carousel-inner .row.align-items-stretch {
    flex-direction: column;
    align-items: center !important;
    justify-content: center !important;
  }
  .carousel-inner .col-md-6.d-flex {
    margin-left: auto;
    margin-right: auto;
    display: flex !important;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    max-width: 500px;
  }
}

/* Setas do carrossel fora dos balões */
#carouselDepoimentos {
  position: relative;
}
#carouselDepoimentos .depoimento-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 48px;
  height: 48px;
  background: none;
  border: none;
  padding: 0;
}
#carouselDepoimentos .carousel-control-prev.depoimento-arrow {
  left: -56px;
}
#carouselDepoimentos .carousel-control-next.depoimento-arrow {
  right: -56px;
}
@media (max-width: 991px) {
  #carouselDepoimentos .carousel-control-prev.depoimento-arrow {
    left: 0;
  }
  #carouselDepoimentos .carousel-control-next.depoimento-arrow {
    right: 0;
  }
}
#carouselDepoimentos .carousel-control-prev-icon,
#carouselDepoimentos .carousel-control-next-icon {
  filter: invert(27%) sepia(80%) saturate(600%) hue-rotate(355deg) brightness(90%) contrast(90%);
}

/* Estilo para o avatar de depoimento circular centralizado no topo do balão */
.depoimento-avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 8px 0 rgba(41,34,23,0.08);
  margin-bottom: 0.5rem;
}
.depoimento-avatar svg {
  display: block;
  width: 48px;
  height: 48px;
}
#sobre {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
  margin-bottom: 0 !important;
}

/* FAQ - Estilo do accordion */
#faq .accordion-button {
  background-color: #faf4eb;
  color: var(--cor-titulo);
  border: 1px solid var(--cor-contraste);
  border-radius: 0.5rem;
  padding: 1rem;
  transition: background-color 0.3s, color 0.3s;
}
#faq .accordion-button:not(.collapsed) {
  background-color: #c9bca9;
  color: var(--cor-titulo);
  box-shadow: none;
}
#faq .accordion-button:focus {
  border-color: #c9bca9;
  box-shadow: 0 0 0 0.25rem rgba(201,188,169,0.25);
  
}
#faq .accordion-body {
  background-color: #faf4eb;
  color: var(--cor-texto);
  padding: 1.5rem;
  border-top: 1px solid var(--cor-contraste);
  border-radius: 0 0 0.5rem 0.5rem;
}
#faq .accordion-item {
  margin-bottom: 1rem;
}

/* Remover sombra do collapse (accordion) do FAQ */
.accordion .accordion-collapse,
.accordion .accordion-body {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
}

@font-face {
  font-family: 'Lora';
  src: url('../css/fonts/Lora-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: 'Sora';
  src: url('../css/fonts/Sora-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: 'Questrial';
  src: url('../css/fonts/Questrial-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;           
}
/* Adicione ao seu style.css */
.banner .row.align-items-center {
  gap: 0 !important;
}
.banner .col-md-6 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Aproxima imagem e texto do banner */
#topo .row.align-items-center {
  gap: 0 !important;
}
#topo .col-md-6,
#topo .col-lg-6 {
  padding: 0 !important;
  margin: 0 !important;
}
#topo img {
  margin-bottom: 0 !important;
  margin-top: 0 !important;
  padding: 0 !important;
  display: block;
}
#topo .col-md-6:last-child,
#topo .col-lg-6:last-child {
  justify-content: flex-end !important;
  align-items: center !important;
  display: flex !important;
}
@media (max-width: 767.98px) {
  #topo .col-md-6 img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-top: 60px !important; /* ajuste conforme a altura real do seu menu */
  }
  #topo .col-md-6.text-start {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}
@media (max-width: 991.98px) {
  #topo.banner {
    padding-top: 60px !important; /* ajuste conforme a altura real do seu menu */
  }
}

/* ============================================
   SEÇÃO SOBRE MIM - ESTILOS CUSTOMIZADOS
   ============================================ */

/* Cores principais */
:root {
    --cor-primaria: #c9a876;
    --cor-primaria-escura: #b8956a;
    --cor-fundo: #e8dfd5;
    --cor-card: #ffffff;
    --cor-texto: #5a5a5a;
    --cor-titulo: #c9a876;
    --cor-branco: #ffffff;
    --cor-titulo-nav: #AA7B57
}

/* ============================================
   SEÇÃO PRINCIPAL
   ============================================ */

.sobre-section {
    background: #55443C;
    padding: 60px 0;
    min-height: 600px;
    display: flex;
    align-items: center;
    margin-bottom: 0 !important;
}

/* ============================================
   CABEÇALHO DA SEÇÃO
   ============================================ */


.sobre-crp {
    font-size: 14px;
    color: var(--cor-texto);
    font-weight: 500;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

.sobre-title {
    font-size: 42px;
    color: var(--cor-titulo);
    font-weight: 700;
    font-family: 'Georgia', serif;
    letter-spacing: 0.5px;
}

/* ============================================
   CARDS - SOBRE E FORMAÇÃO
   ============================================ */

.sobre-card {
    background-color: var(--cor-card);
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.sobre-card-title {
    font-size: 24px;
    color: var(--cor-titulo);
    font-weight: 700;
    margin-bottom: 25px;
    font-family: 'Georgia', serif;
}

.sobre-text {
    font-size: 15px;
    color: var(--cor-texto);
    line-height: 1.8;
    margin-bottom: 18px;
    text-align: justify;
}

/* ============================================
   BOTÃO DE CONTATO
   ============================================ */

.btn-contact {
    background-color: var(--cor-primaria);
    color: var(--cor-branco);
    border: none;
    border-radius: 25px;
    padding: 12px 30px;
    font-size: 15px;
    font-weight: 600;
    margin-top: 20px;
    transition: all 0.3s ease;
    align-self: flex-start;
    cursor: pointer;
}

.btn-contact:hover {
    background-color: var(--cor-primaria-escura);
    color: var(--cor-branco);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(201, 168, 118, 0.3);
}

.btn-contact:active {
    transform: translateY(0);
}

/* ============================================
   IMAGEM - FOTO PROFISSIONAL
   ============================================ */

.sobre-image-container {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.sobre-image {
    width: 100%;
    max-width: 300px;
    height: auto;
    border-radius: 20px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15);
    object-fit: cover;
    transition: transform 0.3s ease;
}

.sobre-image:hover {
    transform: scale(1.02);
}

/* ============================================
   CARD DE FORMAÇÃO
   ============================================ */

.formacao-card {
    background: linear-gradient(135deg, #c9a876 0%, #b8956a 100%);
}

.formacao-card .sobre-card-title {
    color: var(--cor-branco);
}

/* ============================================
   LISTA DE FORMAÇÃO
   ============================================ */

.formacao-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.formacao-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
    color: var(--cor-branco);
    font-size: 15px;
    line-height: 1.6;
}
.formacao-item:last-child {
    margin-bottom: 0;
}
.formacao-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    margin-right: 15px;
    font-size: 14px;
    font-weight: bold;
    flex-shrink: 0;
}

.formacao-item span {
    flex: 1;
}

/* ============================================
   RESPONSIVIDADE
   ============================================ */

/* Tablets (768px - 1023px) */
@media (max-width: 1023px) {
    .sobre-section {
        padding: 50px 0;
    }

    .sobre-title {
        font-size: 36px;
    }

    .sobre-card {
        padding: 30px;
        margin-bottom: 30px;
    }

    .sobre-card-title {
        font-size: 22px;
    }

    .sobre-text {
        font-size: 14px;
    }
}

/* Celulares (até 767px) */
@media (max-width: 767px) {
    .sobre-section {
        padding: 40px 0;
        
    }

    .sobre-header {
        margin-bottom: 30px;
    }

    .sobre-crp {
        font-size: 12px;
    }

    .sobre-title {
        font-size: 28px;
    }

    .sobre-card {
        padding: 25px;
        margin-bottom: 25px;
        border-radius: 15px;
    }

    .sobre-card-title {
        font-size: 20px;
        margin-bottom: 20px;
    }

    .sobre-text {
        font-size: 14px;
        line-height: 1.7;
        margin-bottom: 15px;
        text-align: left;
    }

    .btn-contact {
        padding: 10px 25px;
        font-size: 14px;
    }

    .sobre-image {
        max-width: 250px;
    }

    .formacao-item {
        font-size: 14px;
        margin-bottom: 18px;
    }

    .formacao-icon {
        min-width: 22px;
        height: 22px;
        font-size: 12px;
        margin-right: 12px;
    }
}

/* Celulares pequenos (até 480px) */
@media (max-width: 480px) {
    .sobre-section {
        padding: 30px 0;
    }

    .sobre-title {
        font-size: 24px;
    }

    .sobre-card {
        padding: 20px;
        margin-bottom: 20px;
    }

    .sobre-card-title {
        font-size: 18px;
    }

    .sobre-text {
        font-size: 13px;
    }

    .btn-contact {
        width: 100%;
        text-align: center;
    }

    .sobre-image {
        max-width: 200px;
    }

    .formacao-item {
        font-size: 13px;
        margin-bottom: 15px;
    }
}

/* ============================================
   ANIMAÇÕES
   ============================================ */

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.sobre-card {
    animation: fadeInUp 0.6s ease-out;
}

.sobre-image-container {
    animation: fadeInUp 0.6s ease-out 0.2s both;
}

/* ============================================
   SEÇÃO PSICOTERAPIA - ESTILOS CUSTOMIZADOS
   ============================================ */

/* Cores principais (Mantendo a paleta da seção anterior para consistência) */
:root {
    --cor-primaria: #c9a876;
    --cor-primaria-escura: #b8956a;
    --cor-fundo: #e8dfd5;
    --cor-card: #ffffff;
    --cor-texto: #5a5a5a;
    --cor-titulo: #c9a876;
    --cor-branco: #ffffff;
}

/* ============================================
   SEÇÃO PRINCIPAL
   ============================================ */

.psicoterapia-section {
    background-color: #AA7B57 !important;
    padding: 80px 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.psicoterapia-text-card {
    background-color: var(--cor-marrom-fundo);
    color: var(--cor-branco);
    padding: 60px 40px;
    border-radius: 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-shadow: none !important;
}

.psicoterapia-subtitle {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    margin-bottom: 5px;
    opacity: 0.8;
}

.psicoterapia-title {
    font-size: 48px;
    color: var(--cor-branco);
    font-weight: 700;
    font-family: 'Georgia', serif;
    margin-bottom: 30px;
}

.psicoterapia-text {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 20px;
    text-align: justify;
}

/* ============================================
   CARDS DE LISTA
   ============================================ */

.psicoterapia-list-card {
    background-color: var(--cor-card);
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.list-title {
    font-size: 22px;
    color: var(--cor-texto);
    font-weight: 700;
    margin-bottom: 25px;
    font-family: 'Georgia', serif;
}

.psicoterapia-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.psicoterapia-list li {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
    font-size: 15px;
    color: var(--cor-texto);
    line-height: 1.4;
}
.psicoterapia-list li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.list-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    color: var(--cor-primaria);
    font-size: 16px;
    font-weight: bold;
    margin-right: 10px;
    flex-shrink: 0;
}

/* ============================================
   RESPONSIVIDADE
   ============================================ */

/* Tablets (768px - 1023px) */
@media (max-width: 1023px) {
    .psicoterapia-section {
        padding: 60px 0;
    }

    .psicoterapia-text-card {
        padding: 40px 30px;
        margin-bottom: 30px;
    }

    .psicoterapia-title {
        font-size: 40px;
    }

    .psicoterapia-text {
        font-size: 15px;
    }

    .psicoterapia-list-card {
        padding: 30px;
    }

    .list-title {
        font-size: 20px;
    }
}

/* Celulares (até 767px) */
@media (max-width: 767px) {
    .psicoterapia-section {
        padding: 40px 0;
    }

    .psicoterapia-text-card {
        padding: 30px 20px;
        margin-bottom: 20px;
        border-radius: 15px;
    }

    .psicoterapia-title {
        font-size: 32px;
        margin-bottom: 20px;
    }

    .psicoterapia-text {
        font-size: 14px;
        line-height: 1.7;
    }

    .psicoterapia-list-card {
        padding: 25px;
        border-radius: 15px;
    }

    .list-title {
        font-size: 18px;
        margin-bottom: 20px;
    }

    .psicoterapia-list li {
        font-size: 14px;
        margin-bottom: 12px;
        padding-bottom: 12px;
    }
}
/* ============================================
   SEÇÃO DEPOIMENTOS - ESTILOS CUSTOMIZADOS
   ============================================ */

/* Cores principais (Mantendo a paleta para consistência) */
:root {
    --cor-primaria: #c9a876;
    --cor-primaria-escura: #b8956a;
    --cor-fundo: #f0f0f0; /* Fundo mais claro para destacar o card */
    --cor-card: #ffffff;
    --cor-texto: #5a5a5a;
    --cor-titulo: #c9a876;
    --cor-branco: #ffffff;
}

/* ============================================
   SEÇÃO PRINCIPAL
   ============================================ */

.depoimentos-section {
    background-color: #AA7B57 !important;
    padding: 80px 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* ============================================
   CABEÇALHO DA SEÇÃO
   ============================================ */

.depoimentos-subtitle {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 2px;
    margin-bottom: 5px;
    color: var(--cor-primaria-escura);
}

.depoimentos-title {
    font-size: 42px;
    color: var(--cor-primaria-escura);
    font-weight: 700;
    font-family: 'Georgia', serif;
    margin-bottom: 10px;
}

.depoimentos-intro {
    font-size: 16px;
    color: var(--cor-texto);
    margin-bottom: 20px;
}

.rating-stars {
    color: gold;
    font-size: 20px;
    margin-bottom: 5px;
}

.rating-text {
    font-size: 14px;
    color: var(--cor-texto);
    font-weight: 500;
    margin-bottom: 40px;
}

/* ============================================
   CONTEÚDO PRINCIPAL - WRAPPER
   ============================================ */

.depoimentos-content-wrapper {
    background-color: var(--cor-card);
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
    padding: 0; /* O padding será aplicado internamente */
    overflow: hidden; /* Para garantir que a imagem não vaze */
}

/* ============================================
   IMAGEM
   ============================================ */

.depoimentos-image-container {
    position: relative;
    height: 100%;
    min-height: 400px; /* Altura mínima para desktop */
}

.depoimentos-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px 0 0 20px; /* Apenas o lado esquerdo arredondado */
    display: block;
}

/* ============================================
   CARROSSEL E DEPOIMENTO
   ============================================ */

.carousel {
    height: 100%;
}

.depoimento-card {
    height: 380px;
}
.depoimento-text-content {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

@media (max-width: 767px) {
    .depoimento-card {
        height: 240px;
    }
}

.depoimento-text-content {
    padding: 20px;
}

.quote-icon {
    font-size: 48px;
    color: var(--cor-primaria-escura);
    line-height: 1;
    display: block;
    margin-bottom: 15px;
}

.depoimento-text {
    font-size: 18px;
    color: var(--cor-texto);
    line-height: 1.7;
    margin-bottom: 25px;
    font-style: italic;
}

.depoimento-author {
    font-size: 16px;
    font-weight: 700;
    color: var(--cor-texto);
    margin-top: 10px;
}

/* Indicadores do Carrossel */
.carousel-indicators {
    position: static;
    margin-top: 20px;
    margin-bottom: 0;
    justify-content: flex-start;
    padding-left: 40px; /* Alinhar com o texto */
}

.carousel-indicators button {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #ccc;
    border: none;
    margin: 0 5px;
    opacity: 0.5;
    transition: opacity 0.3s, background-color 0.3s;
}

.carousel-indicators .active {
    background-color: var(--cor-primaria-escura);
    opacity: 1;
}

/* ============================================
   RESPONSIVIDADE
   ============================================ */

/* Tablets (768px - 1023px) */
@media (max-width: 1023px) {
    .depoimentos-title {
        font-size: 36px;
    }

    .depoimentos-image-container {
        min-height: 300px;
    }

    .depoimentos-image {
        border-radius: 20px 20px 0 0; /* Arredondamento superior em tablets */
    }

    .depoimento-card {
        padding: 30px;
    }

    .depoimento-text {
        font-size: 16px;
    }

    .carousel-indicators {
        padding-left: 30px;
    }
}

/* Celulares (até 767px) */
@media (max-width: 767px) {
    .depoimentos-section {
        padding: 40px 0;
    }

    .depoimentos-title {
        font-size: 28px;
    }

    .depoimentos-content-wrapper {
        border-radius: 15px;
    }

    .depoimentos-image-container {
        min-height: 250px;
    }

    .depoimentos-image {
        border-radius: 15px 15px 0 0;
    }

    .depoimento-card {
        padding: 20px;
        height: 240px;
    }

    .depoimento-text-content {
        padding: 0;
    }

    .quote-icon {
        font-size: 36px;
        margin-bottom: 10px;
    }

    .depoimento-text {
        font-size: 14px;
        margin-bottom: 15px;
    }

    .carousel-indicators {
        padding-left: 20px;
    }
}

/* ============================================
   SEÇÃO VAMOS CONVERSAR - ESTILOS CUSTOMIZADOS
   ============================================ */

/* Cores principais (Mantendo a paleta para consistência) */
:root {
    --cor-primaria: #c9a876;
    --cor-primaria-escura: #b8956a;
    --cor-fundo: #e8dfd5;
    --cor-card: #ffffff;
    --cor-texto: #5a5a5a;
    --cor-titulo: #c9a876;
    --cor-branco: #ffffff;
}

/* ============================================
   SEÇÃO PRINCIPAL
   ============================================ */

.conversar-section {
    background-color: #EDE8E3 !important;
    padding: 80px 0;
    margin-bottom: 0 !important;
}

/* ============================================
   WRAPPER DO CARD
   ============================================ */

.conversar-wrapper {
    background-color: var(--cor-card);
    border-radius: 25px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

/* ============================================
   CONTEÚDO - TEXTO E CONTATOS
   ============================================ */

.conversar-content {
    padding: 50px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    min-height: 400px;
}

.conversar-title {
    font-size: 42px;
    color: var(--cor-titulo);
    font-weight: 700;
    font-family: 'Georgia', serif;
    margin-bottom: 25px;
}

.conversar-text {
    font-size: 16px;
    color: var(--cor-texto);
    line-height: 1.8;
    margin-bottom: 20px;
    text-align: justify;
}

.conversar-text-destaque {
    font-size: 16px;
    color: var(--cor-texto);
    line-height: 1.8;
    margin-bottom: 40px;
    text-align: justify;
    font-weight: 600;
    font-style: italic;
}

/* ============================================
   CONTATOS
   ============================================ */

.conversar-contacts {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.conversar-contact-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px 20px;
    border-radius: 12px;
    background-color: #f9f9f9;
    text-decoration: none;
    transition: all 0.3s ease;
    border-left: 4px solid var(--cor-primaria);
    margin-bottom: 20px;
}

.conversar-contact-item:hover {
    background-color: var(--cor-fundo);
    transform: translateX(5px);
    box-shadow: 0 5px 15px rgba(201, 168, 118, 0.2);
}

.contact-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-color: var(--cor-primaria);
    color: var(--cor-branco);
    border-radius: 50%;
    font-size: 20px;
    flex-shrink: 0;
}

.contact-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.contact-number {
    font-size: 16px;
    font-weight: 700;
    color: var(--cor-texto);
}

.contact-label {
    font-size: 13px;
    color: #999;
    font-weight: 500;
}

/* ============================================
   IMAGEM
   ============================================ */

.conversar-image-container {
    position: relative;
    height: 100%;
    min-height: 400px;
    overflow: hidden;
}

.conversar-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 0 25px 25px 0;
}

/* ============================================
   RESPONSIVIDADE
   ============================================ */

/* Tablets (768px - 1023px) */
@media (max-width: 1023px) {
    .conversar-content {
        padding: 40px 30px;
        min-height: auto;
    }

    .conversar-title {
        font-size: 36px;
        margin-bottom: 20px;
    }

    .conversar-text {
        font-size: 15px;
        margin-bottom: 15px;
    }

    .conversar-text-destaque {
        margin-bottom: 30px;
    }

    .conversar-image-container {
        min-height: 300px;
    }

    .conversar-image {
        border-radius: 0 20px 20px 0;
    }

    .conversar-wrapper {
        border-radius: 20px;
    }
}

/* Celulares (até 767px) */
@media (max-width: 767px) {
    .conversar-section {
        padding: 40px 0;
    }

    .conversar-wrapper {
        border-radius: 15px;
        overflow: visible;
    }

    .conversar-content {
        padding: 30px 20px;
        min-height: auto;
        border-radius: 15px 15px 0 0;
    }

    .conversar-title {
        font-size: 28px;
        margin-bottom: 15px;
    }

    .conversar-text {
        font-size: 14px;
        margin-bottom: 12px;
        text-align: left;
    }

    .conversar-text-destaque {
        margin-bottom: 25px;
        text-align: left;
    }

    .conversar-image-container {
        min-height: 250px;
        border-radius: 0 0 15px 15px;
    }

    .conversar-image {
        border-radius: 0 0 15px 15px;
    }

    .conversar-contact-item {
        padding: 12px 15px;
        gap: 12px;
    }

    .contact-icon {
        width: 36px;
        height: 36px;
        font-size: 18px;
    }

    .contact-number {
        font-size: 14px;
    }

    .contact-label {
        font-size: 12px;
    }
}

/* Celulares pequenos (até 480px) */
@media (max-width: 480px) {
    .conversar-content {
        padding: 20px 15px;
    }

    .conversar-title {
        font-size: 24px;
    }

    .conversar-text {
        font-size: 13px;
    }

    .conversar-contact-item {
        padding: 10px 12px;
    }

    .contact-icon {
        width: 32px;
        height: 32px;
        font-size: 16px;
    }
}

/* Remove margem entre seções FAQ e Depoimentos */
#FAQ {
    margin-bottom: 0 !important;
    background: #EDE8E3 !important;
}
.depoimentos-section {
    background-color: var(--cor-fundo);
    padding: 80px 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Bordas arredondadas e fundo branco para a seção Sobre */
.sobre-cards-wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 2px 16px rgba(0,0,0,0.04);
    overflow: hidden;
}
.sobre-card-custom {
    flex: 1 1 0;
    min-width: 280px;
    min-height: 420px;
    background: #faf4eb;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 32px 24px;
}
.sobre-card-img {
    
    background-image: url('../img/Fernanda Resende Psicologa.png') !important;
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;

    flex: 1 1 0;
    min-width: 280px;
    min-height: 420px;

    display: flex;
    justify-content: center;
    align-items: center;

    padding: 0;
    overflow: hidden;
    

}
.sobre-image-custom {
    max-width: 260px;
    max-height: 340px;
    object-fit: cover;
    border-radius: 18px;
    box-shadow: 0 2px 16px rgba(0,0,0,0.08);
}
.bg-formacao {
    background: #AA7B57;
    color: #fff;
}
.sobre-card-title {
    font-size: 1.35rem;
    font-weight: bold;
    color: #a05a2c;
}
.btn-sobre-contato {
    background: #c98a5b;
    color: #fff;
    border-radius: 24px;
    font-weight: 600;
    padding: 10px 28px;
    border: none;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    transition: background 0.2s;
    text-decoration: none !important;
}
.btn-sobre-contato:hover {
    background: #a05a2c;
    color: #fff;
}
.formacao-list-custom {
    list-style: none;
    padding-left: 0;
    margin-top: 16px;
}
.formacao-list-custom li {
    margin-bottom: 12px;
    font-size: 1rem;
    display: flex;
    align-items: center;
}
.formacao-icon {
    color: #fff;
    font-weight: bold;
    margin-right: 8px;
}
@media (max-width: 1023px) {
    .sobre-cards-wrapper {
        flex-direction: column;
        border-radius: 18px;
    }
    .sobre-card-custom {
        min-height: 0;
        padding: 24px 12px;
        border-radius: 0 !important;
    }
    .sobre-image-custom {
        max-width: 180px;
        max-height: 220px;
    }
}

@media (max-width: 992.58px) {
  .hero-title {
    margin-top: 50px; 
    text-align: center;
  }
  .hero-description,.hero-purpose{
    text-align: center;
  }
  .hero-actions{
    justify-content: center;
    display: flex;
  }
}
