/* Ajustes finos do tema acalma */
:root {
  --acalma-radius-lg: 24px;
  --acalma-wa: #25D366;
}
.wp-block-image img, .wp-block-cover { border-radius: var(--acalma-radius-lg); }

/* ===== Rodapé ===== */
.acalma-footer { padding: 3.5rem 1.2rem 1.4rem; }
.acalma-footer__inner { max-width: 1180px; margin: 0 auto; }
.acalma-footer__grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 2.5rem; }
@media (max-width: 782px) { .acalma-footer__grid { grid-template-columns: 1fr; gap: 2.2rem; } }
.acalma-footer__logo { font-family: var(--wp--preset--font-family--jost), sans-serif; font-weight: 800; font-size: 1.7rem; color: #fff; line-height: 1; }
.acalma-footer__logo span { display: block; margin-top: .35rem; font-weight: 400; font-size: .68rem; letter-spacing: .38em; text-transform: uppercase; color: var(--wp--preset--color--rosa); }
.acalma-footer__tag { margin: .9rem 0 0; font-size: .9rem; color: #fff; opacity: .8; }
.acalma-footer__warm { margin: .7rem 0 0; font-size: 1rem; color: #fff; opacity: .82; max-width: 34ch; }
.acalma-footer .acalma-script { color: var(--wp--preset--color--rosa); }
.acalma-footer__col h3 { margin: 0 0 1rem; font-family: var(--wp--preset--font-family--jost), sans-serif; font-weight: 700; font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: #fff; opacity: .6; }
.acalma-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .75rem; }
.acalma-footer a { color: var(--wp--preset--color--creme); text-decoration: none; transition: color .15s ease; line-height: 1.45; }
.acalma-footer a:hover { color: var(--wp--preset--color--rosa); }
.acalma-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem; margin-top: 2.6rem; padding-top: 1.3rem; border-top: 1px solid rgba(255,255,255,.16); font-size: .82rem; color: #fff; opacity: .72; }

/* Botão flutuante do WhatsApp — só o ícone (redondo), SVG inline (confiável no iOS) */
.acalma-wa-float {
  position: fixed; right: 18px; bottom: 18px; z-index: 999;
  width: 56px; height: 56px; padding: 0;
  display: flex; align-items: center; justify-content: center;
  background: var(--acalma-wa); border-radius: 50%;
  box-shadow: 0 6px 18px rgba(0,0,0,.25); text-decoration: none;
}
.acalma-wa-float svg { width: 30px; height: 30px; fill: #fff; }
.acalma-wa-float:hover { filter: brightness(1.06); }

/* Psicóloga — pílulas de meta (CRP, modalidade) */
.acalma-pill {
  display: inline-block;
  background: var(--wp--preset--color--creme);
  color: var(--wp--preset--color--marrom);
  font-weight: 700;
  font-size: .8rem;
  padding: .15rem .6rem;
  border-radius: 999px;
  margin: .1rem .2rem;
}

/* Serviço — FAQ em <details>/<summary> */
.acalma-faq-item { border: 1px solid #e4ddcf; border-radius: 12px; padding: .6rem 1rem; margin: .5rem 0; }
.acalma-faq-item summary { font-weight: 700; cursor: pointer; color: var(--wp--preset--color--azul); }

/* Seções de faixa full-width */
.acalma-section{padding:3.5rem 1.2rem}
.acalma-section--salvia{background:#5C6153;color:#fff}
.acalma-section--rosa{background:var(--wp--preset--color--rosa)}

/* Grid de passos "Como funciona" */
.acalma-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media(max-width:782px){.acalma-steps{grid-template-columns:1fr}}
.acalma-step{background:#fff;border-radius:16px;padding:1.2rem;text-align:center}
.acalma-step .n{display:inline-flex;width:2.2rem;height:2.2rem;border-radius:999px;background:var(--wp--preset--color--marrom);color:#fff;align-items:center;justify-content:center;font-weight:800;margin-bottom:.5rem}

/* Fonte manuscrita para detalhes emocionais */
.acalma-script{font-family:var(--wp--preset--font-family--satisfy),cursive;color:var(--wp--preset--color--marrom);font-size:1.15em;line-height:1}

/* Ícone OFICIAL do WhatsApp em todo botão/link de ação para o WhatsApp.
   Usa mask-image (glifo oficial) colorido pela cor do texto do elemento. */
.wp-block-button__link[href*="wa.me"] {
  display: inline-flex; align-items: center; justify-content: center; gap: .5em;
}
.wp-block-button__link[href*="wa.me"]::before {
  content: ""; flex: 0 0 auto; width: 1.15em; height: 1.15em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M.057%2024l1.687-6.163a11.867%2011.867%200%200%201-1.587-5.945C.16%205.335%205.495%200%2012.05%200a11.821%2011.821%200%200%201%208.413%203.488%2011.824%2011.824%200%200%201%203.48%208.414c-.003%206.557-5.338%2011.892-11.893%2011.892a11.9%2011.9%200%200%201-5.688-1.448L.057%2024zm6.597-3.807c1.676.995%203.276%201.591%205.392%201.592%205.448%200%209.886-4.434%209.889-9.885.002-5.462-4.415-9.89-9.881-9.892-5.452%200-9.887%204.434-9.889%209.884a9.86%209.86%200%200%200%201.51%205.26l-.999%203.648%203.978-1.99zm11.387-5.464c-.074-.124-.272-.198-.57-.347-.297-.149-1.758-.868-2.031-.967-.272-.099-.47-.149-.669.149-.198.297-.768.967-.941%201.165-.173.198-.347.223-.644.074-.297-.149-1.255-.462-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.297-.347.446-.521.151-.172.2-.296.3-.495.099-.198.05-.372-.025-.521-.075-.148-.669-1.611-.916-2.206-.242-.579-.487-.501-.669-.51l-.57-.01c-.198%200-.52.074-.792.372-.272.297-1.04%201.016-1.04%202.479%200%201.462%201.065%202.875%201.213%203.074.149.198%202.096%203.2%205.077%204.487.709.306%201.262.489%201.694.625.712.227%201.36.195%201.871.118.571-.085%201.758-.719%202.006-1.413.248-.694.248-1.289.173-1.413z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M.057%2024l1.687-6.163a11.867%2011.867%200%200%201-1.587-5.945C.16%205.335%205.495%200%2012.05%200a11.821%2011.821%200%200%201%208.413%203.488%2011.824%2011.824%200%200%201%203.48%208.414c-.003%206.557-5.338%2011.892-11.893%2011.892a11.9%2011.9%200%200%201-5.688-1.448L.057%2024zm6.597-3.807c1.676.995%203.276%201.591%205.392%201.592%205.448%200%209.886-4.434%209.889-9.885.002-5.462-4.415-9.89-9.881-9.892-5.452%200-9.887%204.434-9.889%209.884a9.86%209.86%200%200%200%201.51%205.26l-.999%203.648%203.978-1.99zm11.387-5.464c-.074-.124-.272-.198-.57-.347-.297-.149-1.758-.868-2.031-.967-.272-.099-.47-.149-.669.149-.198.297-.768.967-.941%201.165-.173.198-.347.223-.644.074-.297-.149-1.255-.462-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.297-.347.446-.521.151-.172.2-.296.3-.495.099-.198.05-.372-.025-.521-.075-.148-.669-1.611-.916-2.206-.242-.579-.487-.501-.669-.51l-.57-.01c-.198%200-.52.074-.792.372-.272.297-1.04%201.016-1.04%202.479%200%201.462%201.065%202.875%201.213%203.074.149.198%202.096%203.2%205.077%204.487.709.306%201.262.489%201.694.625.712.227%201.36.195%201.871.118.571-.085%201.758-.719%202.006-1.413.248-.694.248-1.289.173-1.413z%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
}

/* ===== Navegação ===== */
.wp-block-navigation { font-family: var(--wp--preset--font-family--jost), sans-serif; }
.wp-block-navigation .wp-block-navigation-item__content { color: var(--wp--preset--color--azul); font-weight: 500; }
.wp-block-navigation .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--marrom); }
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close { color: var(--wp--preset--color--azul); }
.wp-block-navigation__responsive-container-open svg,
.wp-block-navigation__responsive-container-close svg { width: 30px; height: 30px; fill: currentColor; }

/* Menu mobile (overlay): fundo creme, links grandes, alvos de toque generosos */
.wp-block-navigation__responsive-container.is-menu-open {
  background-color: var(--wp--preset--color--creme);
  padding: 4.5rem 1.8rem 2rem;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { width: 100%; max-width: 560px; margin: 0 auto; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 0; width: 100%; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
  width: 100%; border-bottom: 1px solid rgba(78,87,115,.14);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
  display: block; width: 100%; padding: 1.05rem .25rem;
  font-family: var(--wp--preset--font-family--jost), sans-serif; font-weight: 700; font-size: 1.45rem;
  color: var(--wp--preset--color--azul);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:active { color: var(--wp--preset--color--marrom); }
.wp-block-navigation__responsive-container-close { top: 1.4rem; right: 1.4rem; }
.wp-block-navigation__responsive-container-close svg { width: 34px; height: 34px; }

/* Mobile: declutter do cabeçalho — esconder o botão CTA (o flutuante cobre) */
@media (max-width: 781px) {
  header.wp-block-group .wp-block-buttons { display: none; }
}

/* ===== Logo (símbolo nuvem+coração da marca) ===== */
.acalma-logo { display: inline-flex; align-items: center; gap: .7rem; text-decoration: none; }
.acalma-logo__mark { width: 56px; height: 56px; display: block; flex: 0 0 auto; }
.acalma-logo__wm { font-family: var(--wp--preset--font-family--jost), sans-serif; font-weight: 800; font-size: 1.7rem; color: var(--wp--preset--color--azul); line-height: 1; }
.acalma-logo__wm i { display: block; margin-top: .15rem; font-style: normal; font-weight: 400; font-size: .66rem; letter-spacing: .36em; text-transform: uppercase; color: var(--wp--preset--color--marrom); }
@media (max-width: 781px) { .acalma-logo__wm { font-size: 1.4rem; } .acalma-logo__mark { width: 46px; height: 46px; } }
.acalma-footer__symbol { width: 64px; height: 64px; display: block; margin-bottom: .8rem; }

/* Ícones de contato no rodapé */
.acalma-footer__contact li a { display: flex; align-items: flex-start; gap: .65rem; }
.acalma-footer__contact svg { width: 18px; height: 18px; flex: 0 0 auto; margin-top: .18rem; fill: currentColor; }

/* =====================================================================
   Desktop & ultra-wide  (tudo sob min-width para não afetar o mobile)
   ===================================================================== */

/* Respiro vertical maior nas faixas a partir do desktop */
@media (min-width: 1024px){
  .acalma-section{ padding-top:5rem; padding-bottom:5rem; }
  section.wp-block-group[style*="padding-top:3.5rem"]{ padding-top:5rem; padding-bottom:5rem; }
}

/* Ultra-wide: impede que grades/conteúdo de faixas full-bleed estiquem
   além de um teto confortável; faixas coloridas seguem de ponta a ponta. */
@media (min-width: 1800px){
  .is-layout-constrained > .wp-block-query.alignwide,
  .acalma-steps,
  .wp-block-cover__inner-container{ max-width:1320px; margin-left:auto; margin-right:auto; }
  /* gutter lateral generoso para o conteúdo não "colar" na borda da faixa */
  .acalma-section, section.wp-block-group.alignfull{ padding-left:clamp(1.2rem,4vw,6rem); padding-right:clamp(1.2rem,4vw,6rem); }
}

/* Cards (serviços) — grade responsiva (auto-fit) em TODAS as larguras:
   1 coluna no celular, 2-3 no desktop. Não depende do colapso do grid do WP
   (columnCount:3 é fixo no core e não colapsaria sozinho no mobile). */
.acalma-cards .wp-block-post-template.is-layout-grid,
.acalma-cards .wp-block-post-template{
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  align-items:stretch; gap:1.25rem;
}
.acalma-cards .wp-block-post{ display:flex; }
.acalma-cards .wp-block-post > .wp-block-group{
  display:flex; flex-direction:column; height:100%; width:100%;
}
/* o excerpt preenche a altura restante e empurra o último filho (CTA "Saiba mais")
   para baixo — funciona quer o link venha em <p> próprio quer inline. */
.acalma-cards .wp-block-post-excerpt{
  display:flex; flex-direction:column; flex:1 1 auto; margin-top:.5rem;
}
.acalma-cards .wp-block-post-excerpt > :last-child{ margin-top:auto; padding-top:1rem; }
.acalma-cards .wp-block-post-excerpt__more-link{ display:inline-block; }
/* Título do card: tamanho controlado + sem corte no meio da palavra */
.acalma-cards .wp-block-post-title{
  font-size:1.3rem; line-height:1.2; overflow-wrap:break-word; hyphens:auto;
}

/* Grade da equipe — fotos redondas equilibradas; responsiva em todas as larguras
   (columnCount do WP é fixo e não colapsa sozinho no mobile). */
.acalma-team .wp-block-post-template.is-layout-grid,
.acalma-team .wp-block-post-template{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:1.5rem; justify-content:center;
}
/* Itens de equipe = avatar + nome empilhados e centrados.
   A imagem é centrada via block+margin auto (não depende de display:flex). */
.acalma-team .wp-block-post{ text-align:center; }
.acalma-team .wp-block-post-featured-image img{
  display:block; margin-inline:auto; aspect-ratio:1; object-fit:cover; width:100%; max-width:200px;
}
@media (min-width: 1800px){
  .acalma-team .wp-block-post-template{ max-width:1320px; margin-left:auto; margin-right:auto; }
}

/* Lista "Você se identifica?" — alinhada à esquerda, 2 colunas no desktop */
.acalma-checklist{ list-style:none; margin:1.6rem auto 0; padding:0; max-width:760px; text-align:left; }
.acalma-checklist li{ position:relative; padding-left:1.8rem; margin:.55rem 0; }
.acalma-checklist li::before{
  content:""; position:absolute; left:0; top:.5em;
  width:.7rem; height:.7rem; border-radius:50%;
  background:var(--wp--preset--color--marrom);
}
@media (min-width: 782px){
  .acalma-checklist{ columns:2; column-gap:2.5rem; }
  .acalma-checklist li{ break-inside:avoid; }
}

/* Valor — composição 2 colunas; arte do símbolo em círculo suave */
.acalma-valor__art{ display:flex; justify-content:center; }
.acalma-valor__art img{ width:min(220px,60%); height:auto; }
@media (min-width: 782px){
  .acalma-valor__art{
    background:radial-gradient(circle, var(--wp--preset--color--rosa) 0%, rgba(212,187,187,0) 70%);
    border-radius:50%; padding:2rem;
  }
  .acalma-valor__art img{ width:240px; }
}

/* Hero — texto com medida confortável; sem esticar no ultra-wide */
.acalma-hero .wp-block-cover__inner-container{ max-width:780px; margin-left:auto; margin-right:auto; }
@media (min-width: 1024px){
  .acalma-hero{ min-height:clamp(480px,58vh,640px) !important; }
}
@media (min-width: 1800px){
  .acalma-hero{ max-height:720px; }
  .acalma-hero .wp-block-cover__image-background{ object-position:center 28%; }
}

/* Perfil da psicóloga — cabeçalho em 2 colunas no desktop */
@media (min-width: 782px){
  .acalma-psi-head{ display:flex; align-items:center; gap:2rem; }
}
.acalma-psi-head .acalma-pill{ margin-top:.4rem; }
