
/* RevisÃ£o editorial de leitura e conversÃ£o, outubro de 2026 */
main p:not(.eyebrow):not(.number):not(.hero-note p),.site-ending>.closing p,.inner-close p{font-size:1.1875rem;line-height:1.8}
main p:not(.eyebrow):not(.number),.site-ending>.closing p,.inner-close p{text-align:left;text-align-last:start;-webkit-hyphens:none;hyphens:none;word-break:normal;overflow-wrap:normal}
main .portrait-caption{font-size:1rem!important;line-height:1.6!important;text-align:left!important;hyphens:none}
main .hero-note p{font-size:1.125rem;line-height:1.75}
main p.complaint-note{margin-top:35px;padding-top:22px;border-top:1px solid var(--terra);color:var(--wine)}
.responsibility p[data-source="50"]{color:var(--wine);margin-top:30px}
.responsibility p[data-source="50"] strong{font-weight:600}
.responsibility .button{margin-top:28px}
.trajectory-contact{margin-top:30px}
.trajectory-contact .button{margin-top:20px}
.patient-story .story-emphasis{color:var(--wine);font-weight:500;border-left:2px solid var(--terra);padding-left:24px;margin-block:30px}
@media(min-width:851px){.hero-portrait{align-self:center}}
@media(max-width:620px){
 main p:not(.eyebrow):not(.number):not(.hero-note p),.site-ending>.closing p,.inner-close p{font-size:1.125rem;line-height:1.8}
 main p:not(.eyebrow):not(.number),.site-ending>.closing p,.inner-close p{text-align:left;hyphens:none}
 main .hero-note p{font-size:1.0625rem}
 .trajectory-contact .button,.responsibility .button{width:100%}
 .patient-story .story-emphasis{padding-left:18px}
}

/* Preservar os trechos editoriais que já eram maiores que o texto corrido. */
.inner-page .concept-band p{font-size:clamp(1.35rem,2.1vw,1.75rem);line-height:1.45;text-align:left}
.inner-page .hands-title p{font-size:1.7rem;line-height:1.35;text-align:left}
.inner-page .hands-reading p:last-child{font-size:2rem;line-height:1.25;text-align:left}


/* Quebras naturais de palavras em todas as páginas, sem hifenização automática. */
body{-webkit-hyphens:none;hyphens:none;word-break:normal;overflow-wrap:normal}

/* Leitura justificada, com palavras inteiras e última linha natural. */
main p:not(.eyebrow):not(.number):not(.portrait-caption),.site-ending>.closing p,.inner-close p{text-align:justify;text-align-last:start;-webkit-hyphens:none;hyphens:none;word-break:normal;overflow-wrap:normal;text-justify:inter-word}
/* Destaques tipográficos e legendas não são texto corrido. */
main .concept-band p,main .hands-title p,main .hands-reading p:last-child{text-align:left}
/* Em colunas móveis curtas, a justificação abre espaços desproporcionais. */
@media(max-width:620px){main p:not(.eyebrow):not(.number):not(.portrait-caption),.site-ending>.closing p,.inner-close p{text-align:left}}

/* Atalho de WhatsApp: círculo estável e onda independente. */
.whatsapp-float{position:fixed;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:1000;isolation:isolate;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#571F2A;color:#F4EFE8;border:1px solid rgba(244,239,232,.2);box-shadow:0 4px 14px rgba(0,0,0,.18);text-decoration:none;transition:background-color .3s ease,color .3s ease,box-shadow .3s ease}
.whatsapp-float::before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:50%;background:rgba(184,109,104,.38);pointer-events:none;animation:whatsapp-wave 2.4s ease-out infinite}
.whatsapp-float svg{position:relative;flex-shrink:0}
.whatsapp-float:hover{background:#B86D68;color:#571F2A;box-shadow:0 5px 17px rgba(0,0,0,.22)}
.whatsapp-float:focus-visible{outline:3px solid #571F2A;outline-offset:4px;box-shadow:0 0 0 6px #F4EFE8,0 4px 14px rgba(0,0,0,.18)}
@keyframes whatsapp-wave{0%{transform:scale(1);opacity:.7}80%,100%{transform:scale(1.6);opacity:0}}
@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}.whatsapp-float::before{animation:none;opacity:0}}

/* No tablet, os blocos editoriais ganham uma coluna de leitura mais ampla. */
@media(min-width:621px) and (max-width:900px){.editorial-grid,.responsibility-grid,.inner-editorial,.contact-grid,.research-grid,.process-grid,.about-hands .container{grid-template-columns:minmax(0,1fr);gap:32px}.process-grid figure{max-width:440px;justify-self:center;width:100%}}
@media(min-width:621px) and (max-width:900px){.photo-grid,.emotion-grid,.personal-grid,.mechanism-grid,.session-grid,.about-opening{grid-template-columns:minmax(0,1fr);gap:36px}.photo-grid>figure,.emotion-grid>figure,.personal-grid>figure,.mechanism-grid>figure,.session-grid>figure,.about-opening>figure{width:100%;max-width:440px;justify-self:center}}


/* Ajustes pontuais da Home: quinto destaque e leitura das sessões. */
main .complaint-list > .complaint-highlight {
  grid-column: 1 / -1;
  border: 1px solid var(--terra);
  padding: 24px 28px;
  background: var(--white);
}
main .section.complaints .complaint-highlight > p {
  margin-top: 14px;
  text-align: left;
  text-align-last: auto;
  word-spacing: normal;
}
main .section.process .session-note > p {
  text-align: left;
  text-align-last: auto;
  word-spacing: normal;
}
@media (max-width: 620px) {
  main .complaint-list > .complaint-highlight {
    padding: 20px;
  }
}


/* Seção de queixas: seis categorias e avaliação individual. */
main .section.complaints .complaint-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
}
main .section.complaints .complaint-card {
  min-width: 0;
}
main .section.complaints .complaint-card > p {
  margin-top: 14px;
  text-align: left;
  text-align-last: auto;
  word-spacing: normal;
}
main .section.complaints .complaint-highlight {
  margin-top: 32px;
  padding: 24px 28px;
  border: 1px solid var(--terra);
  background: var(--white);
}
main .section.complaints .complaint-highlight > h3 {
  font: 400 1.6rem/1.25 var(--serif);
}
@media (min-width: 621px) and (max-width: 900px) {
  main .section.complaints .complaint-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px) {
  main .section.complaints .complaint-list {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }
  main .section.complaints .complaint-highlight {
    padding: 20px;
    margin-top: 28px;
  }
}
